/* A Bison parser, made by GNU Bison 2.4.1. */
/* Skeleton implementation for Bison's Yacc-like parsers in C
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
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. */
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
variables, as they might otherwise be expanded by user macros.
There are some unavoidable exceptions within include files to
define necessary library symbols; they are noted "INFRINGES ON
USER NAME SPACE" below. */
/* Identify Bison output. */
#define YYBISON 1
/* Bison version. */
#define YYBISON_VERSION "2.4.1"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
/* Pure parsers. */
#define YYPURE 1
/* Push parsers. */
#define YYPUSH 0
/* Pull parsers. */
#define YYPULL 1
/* Using locations. */
#define YYLSP_NEEDED 1
/* Substitute the variable and function names. */
#define yyparse obsql_mysql_yyparse
#define yylex obsql_mysql_yylex
#define yyerror obsql_mysql_yyerror
#define yylval obsql_mysql_yylval
#define yychar obsql_mysql_yychar
#define yydebug obsql_mysql_yydebug
#define yynerrs obsql_mysql_yynerrs
#define yylloc obsql_mysql_yylloc
/* Copy the first part of user declarations. */
/* Line 189 of yacc.c */
#line 18 "../../../src/sql/parser/sql_parser_mysql_mode.y"
#include
#define YYDEBUG 1
/* Line 189 of yacc.c */
#line 87 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
/* Enabling traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
#endif
/* Enabling verbose error messages. */
#ifdef YYERROR_VERBOSE
# undef YYERROR_VERBOSE
# define YYERROR_VERBOSE 1
#else
# define YYERROR_VERBOSE 1
#endif
/* Enabling the token table. */
#ifndef YYTOKEN_TABLE
# define YYTOKEN_TABLE 0
#endif
/* Tokens. */
#ifndef YYTOKENTYPE
# define YYTOKENTYPE
/* Put the tokens into the symbol table, so that GDB and other debuggers
know about them. */
enum yytokentype {
NAME_OB = 258,
STRING_VALUE = 259,
INTNUM = 260,
DATE_VALUE = 261,
TIMESTAMP_VALUE = 262,
HINT_VALUE = 263,
BOOL_VALUE = 264,
APPROXNUM = 265,
DECIMAL_VAL = 266,
NULLX = 267,
QUESTIONMARK = 268,
SYSTEM_VARIABLE = 269,
USER_VARIABLE = 270,
CLIENT_VERSION = 271,
MYSQL_DRIVER = 272,
HEX_STRING_VALUE = 273,
OUTLINE_DEFAULT_TOKEN = 274,
KILL_EXPR = 275,
QUERY = 276,
CONNECTION = 277,
LOWER_COMMA = 278,
MINUS = 279,
EXCEPT = 280,
UNION = 281,
INTERSECT = 282,
WINDOW = 283,
INNER = 284,
RIGHT = 285,
FULL = 286,
LEFT = 287,
CROSS = 288,
JOIN = 289,
SET_VAR = 290,
OR_OP = 291,
OR = 292,
XOR = 293,
AND_OP = 294,
AND = 295,
ELSE = 296,
THEN = 297,
WHEN = 298,
CASE = 299,
BETWEEN = 300,
LOWER_THAN_COMP = 301,
REGEXP = 302,
IN = 303,
LIKE = 304,
IS = 305,
COMP_NE = 306,
COMP_LT = 307,
COMP_LE = 308,
COMP_GT = 309,
COMP_GE = 310,
P_NSEQ = 311,
COM = 312,
COMP_EQ = 313,
ESCAPE = 314,
SHIFT_RIGHT = 315,
SHIFT_LEFT = 316,
POW = 317,
DIV = 318,
MOD = 319,
LOWER_THAN_NEG = 320,
CNNOP = 321,
NEG = 322,
LOWER_PARENS = 323,
TRANSACTION = 324,
HIGHER_PARENS = 325,
NOT2 = 326,
NOT = 327,
COLLATE = 328,
BINARY = 329,
INTERVAL = 330,
LOWER_KEY = 331,
KEY = 332,
LOWER_ON = 333,
ON = 334,
LOWER_OVER = 335,
OVER = 336,
LOWER_INTO = 337,
INTO = 338,
LOWER_THAN_BY_ACCESS_SESSION = 339,
ERROR = 340,
PARSER_SYNTAX_ERROR = 341,
READ_STATIC = 342,
INDEX_HINT = 343,
USE_NL = 344,
FROZEN_VERSION = 345,
TOPK = 346,
QUERY_TIMEOUT = 347,
READ_CONSISTENCY = 348,
HOTSPOT = 349,
LOG_LEVEL = 350,
LEADING_HINT = 351,
ORDERED = 352,
FULL_HINT = 353,
USE_MERGE = 354,
USE_HASH = 355,
NO_USE_HASH = 356,
USE_PLAN_CACHE = 357,
USE_JIT = 358,
NO_USE_JIT = 359,
NO_USE_NL = 360,
NO_USE_MERGE = 361,
NO_USE_BNL = 362,
USE_NL_MATERIALIZATION = 363,
NO_USE_NL_MATERIALIZATION = 364,
NO_REWRITE = 365,
TRACE_LOG = 366,
USE_PX = 367,
QB_NAME = 368,
USE_HASH_AGGREGATION = 369,
NO_USE_HASH_AGGREGATION = 370,
NEG_SIGN = 371,
USE_LATE_MATERIALIZATION = 372,
NO_USE_LATE_MATERIALIZATION = 373,
USE_BNL = 374,
MAX_CONCURRENT = 375,
PX_JOIN_FILTER = 376,
NO_USE_PX = 377,
PQ_DISTRIBUTE = 378,
RANDOM_LOCAL = 379,
BROADCAST = 380,
TRACING = 381,
MERGE_HINT = 382,
NO_MERGE_HINT = 383,
NO_EXPAND = 384,
USE_CONCAT = 385,
UNNEST = 386,
NO_UNNEST = 387,
PLACE_GROUP_BY = 388,
NO_PLACE_GROUP_BY = 389,
NO_PRED_DEDUCE = 390,
TRANS_PARAM = 391,
FORCE_REFRESH_LOCATION_CACHE = 392,
LOAD_BATCH_SIZE = 393,
NO_PX_JOIN_FILTER = 394,
DISABLE_PARALLEL_DML = 395,
PQ_MAP = 396,
ENABLE_PARALLEL_DML = 397,
NO_PARALLEL = 398,
_BINARY = 399,
_UTF8 = 400,
_UTF8MB4 = 401,
_GBK = 402,
_UTF16 = 403,
_GB18030 = 404,
SELECT_HINT_BEGIN = 405,
UPDATE_HINT_BEGIN = 406,
DELETE_HINT_BEGIN = 407,
INSERT_HINT_BEGIN = 408,
REPLACE_HINT_BEGIN = 409,
HINT_HINT_BEGIN = 410,
HINT_END = 411,
LOAD_DATA_HINT_BEGIN = 412,
END_P = 413,
DELIMITER = 414,
ACCESSIBLE = 415,
ADD = 416,
ALL = 417,
ALTER = 418,
ANALYZE = 419,
AS = 420,
ASC = 421,
ASENSITIVE = 422,
BEFORE = 423,
BIGINT = 424,
BLOB = 425,
BOTH = 426,
BY = 427,
CALL = 428,
CASCADE = 429,
CHANGE = 430,
CHAR = 431,
CHARACTER = 432,
CHECK = 433,
COLUMN = 434,
CONDITION = 435,
CONSTRAINT = 436,
CONTINUE = 437,
CONVERT = 438,
CREATE = 439,
CURRENT_DATE = 440,
CURRENT_TIME = 441,
CURRENT_TIMESTAMP = 442,
CURRENT_USER = 443,
CURSOR = 444,
DATABASE = 445,
DATABASES = 446,
DAY_HOUR = 447,
DAY_MICROSECOND = 448,
DAY_MINUTE = 449,
DAY_SECOND = 450,
DECLARE = 451,
DECIMAL = 452,
DEFAULT = 453,
DELAYED = 454,
DELETE = 455,
DESC = 456,
DESCRIBE = 457,
DETERMINISTIC = 458,
DISTINCT = 459,
DISTINCTROW = 460,
DOUBLE = 461,
DROP = 462,
DUAL = 463,
EACH = 464,
ELSEIF = 465,
ENCLOSED = 466,
ESCAPED = 467,
EXISTS = 468,
EXIT = 469,
EXPLAIN = 470,
FETCH = 471,
FLOAT = 472,
FLOAT4 = 473,
FLOAT8 = 474,
FOR = 475,
FORCE = 476,
FOREIGN = 477,
FROM = 478,
GENERATED = 479,
GET = 480,
GRANT = 481,
GROUP = 482,
HAVING = 483,
HIGH_PRIORITY = 484,
HOUR_MICROSECOND = 485,
HOUR_MINUTE = 486,
HOUR_SECOND = 487,
IF = 488,
IGNORE = 489,
INDEX = 490,
INFILE = 491,
INOUT = 492,
INSENSITIVE = 493,
INSERT = 494,
INT = 495,
INT1 = 496,
INT2 = 497,
INT3 = 498,
INT4 = 499,
INT8 = 500,
INTEGER = 501,
IO_AFTER_GTIDS = 502,
IO_BEFORE_GTIDS = 503,
ITERATE = 504,
KEYS = 505,
KILL = 506,
LEADING = 507,
LEAVE = 508,
LIMIT = 509,
LINEAR = 510,
LINES = 511,
LOAD = 512,
LOCALTIME = 513,
LOCALTIMESTAMP = 514,
LONG = 515,
LONGBLOB = 516,
LONGTEXT = 517,
LOOP = 518,
LOW_PRIORITY = 519,
MASTER_BIND = 520,
MASTER_SSL_VERIFY_SERVER_CERT = 521,
MATCH = 522,
MAXVALUE = 523,
MEDIUMBLOB = 524,
MEDIUMINT = 525,
MEDIUMTEXT = 526,
MIDDLEINT = 527,
MINUTE_MICROSECOND = 528,
MINUTE_SECOND = 529,
MODIFIES = 530,
NATURAL = 531,
NO_WRITE_TO_BINLOG = 532,
OPTIMIZE = 533,
OPTION = 534,
OPTIONALLY = 535,
ORDER = 536,
OUT = 537,
OUTER = 538,
OUTFILE = 539,
PARTITION = 540,
PRECISION = 541,
PRIMARY = 542,
PROCEDURE = 543,
PURGE = 544,
RANGE = 545,
READ = 546,
READS = 547,
READ_WRITE = 548,
REAL = 549,
REFERENCES = 550,
RELEASE = 551,
RENAME = 552,
REPEAT = 553,
REPLACE = 554,
REQUIRE = 555,
RESIGNAL = 556,
RESTRICT = 557,
RETURN = 558,
REVOKE = 559,
RLIKE = 560,
SCHEMA = 561,
SCHEMAS = 562,
SECOND_MICROSECOND = 563,
SELECT = 564,
SENSITIVE = 565,
SEPARATOR = 566,
SET = 567,
SHOW = 568,
SIGNAL = 569,
SMALLINT = 570,
SPATIAL = 571,
SPECIFIC = 572,
SQL = 573,
SQLEXCEPTION = 574,
SQLSTATE = 575,
SQLWARNING = 576,
SQL_BIG_RESULT = 577,
SQL_CALC_FOUND_ROWS = 578,
SQL_SMALL_RESULT = 579,
SSL = 580,
STARTING = 581,
STORED = 582,
STRAIGHT_JOIN = 583,
TABLE = 584,
TERMINATED = 585,
TINYBLOB = 586,
TINYINT = 587,
TINYTEXT = 588,
TO = 589,
TRAILING = 590,
TRIGGER = 591,
UNDO = 592,
UNIQUE = 593,
UNLOCK = 594,
UNSIGNED = 595,
UPDATE = 596,
USAGE = 597,
USE = 598,
USING = 599,
UTC_DATE = 600,
UTC_TIME = 601,
UTC_TIMESTAMP = 602,
VALUES = 603,
VARBINARY = 604,
VARCHAR = 605,
VARCHARACTER = 606,
VARYING = 607,
VIRTUAL = 608,
WHERE = 609,
WHILE = 610,
WITH = 611,
WRITE = 612,
YEAR_MONTH = 613,
ZEROFILL = 614,
TABLEGROUP = 615,
ACCESS = 616,
ACCOUNT = 617,
ACTION = 618,
ACTIVE = 619,
ADDDATE = 620,
AFTER = 621,
AGAINST = 622,
AGGREGATE = 623,
ALGORITHM = 624,
ALWAYS = 625,
ANALYSE = 626,
ANY = 627,
APPROX_COUNT_DISTINCT = 628,
APPROX_COUNT_DISTINCT_SYNOPSIS = 629,
APPROX_COUNT_DISTINCT_SYNOPSIS_MERGE = 630,
ASCII = 631,
AT = 632,
AUTHORS = 633,
AUTO = 634,
AUTOEXTEND_SIZE = 635,
AUTO_INCREMENT = 636,
AVG = 637,
AVG_ROW_LENGTH = 638,
ACTIVATE = 639,
AVAILABILITY = 640,
ARCHIVELOG = 641,
AUDIT = 642,
BACKUP = 643,
BALANCE = 644,
BASE = 645,
BASELINE = 646,
BASELINE_ID = 647,
BASIC = 648,
BEGI = 649,
BINDING = 650,
BINLOG = 651,
BIT = 652,
BLOCK = 653,
BLOCK_INDEX = 654,
BLOCK_SIZE = 655,
BLOOM_FILTER = 656,
BOOL = 657,
BOOLEAN = 658,
BOOTSTRAP = 659,
BTREE = 660,
BYTE = 661,
BREADTH = 662,
BUCKETS = 663,
BISON_LIST = 664,
BACKUPSET = 665,
CACHE = 666,
CANCEL = 667,
CASCADED = 668,
CAST = 669,
CATALOG_NAME = 670,
CHAIN = 671,
CHANGED = 672,
CHARSET = 673,
CHECKSUM = 674,
CHECKPOINT = 675,
CHUNK = 676,
CIPHER = 677,
CLASS_ORIGIN = 678,
CLEAN = 679,
CLEAR = 680,
CLIENT = 681,
CLOG = 682,
CLOSE = 683,
CLUSTER = 684,
CLUSTER_ID = 685,
CLUSTER_NAME = 686,
COALESCE = 687,
COLUMN_STAT = 688,
CODE = 689,
COLLATION = 690,
COLUMN_FORMAT = 691,
COLUMN_NAME = 692,
COLUMNS = 693,
COMMENT = 694,
COMMIT = 695,
COMMITTED = 696,
COMPACT = 697,
COMPLETION = 698,
COMPRESSED = 699,
COMPRESSION = 700,
CONCURRENT = 701,
CONSISTENT = 702,
CONSISTENT_MODE = 703,
CONSTRAINT_CATALOG = 704,
CONSTRAINT_NAME = 705,
CONSTRAINT_SCHEMA = 706,
CONTAINS = 707,
CONTEXT = 708,
CONTRIBUTORS = 709,
COPY = 710,
COUNT = 711,
CPU = 712,
CREATE_TIMESTAMP = 713,
CTX_ID = 714,
CUBE = 715,
CURDATE = 716,
CURRENT = 717,
CURTIME = 718,
CURSOR_NAME = 719,
CUME_DIST = 720,
CYCLE = 721,
DAG = 722,
DATA = 723,
DATAFILE = 724,
DATA_TABLE_ID = 725,
DATE = 726,
DATE_ADD = 727,
DATE_SUB = 728,
DATETIME = 729,
DAY = 730,
DEALLOCATE = 731,
DECRYPTION = 732,
DEFAULT_AUTH = 733,
DEFINER = 734,
DELAY = 735,
DELAY_KEY_WRITE = 736,
DEPTH = 737,
DES_KEY_FILE = 738,
DENSE_RANK = 739,
DESTINATION = 740,
DIAGNOSTICS = 741,
DIRECTORY = 742,
DISABLE = 743,
DISCARD = 744,
DISK = 745,
DISKGROUP = 746,
DO = 747,
DUMP = 748,
DUMPFILE = 749,
DUPLICATE = 750,
DUPLICATE_SCOPE = 751,
DYNAMIC = 752,
DATABASE_ID = 753,
DEFAULT_TABLEGROUP = 754,
EFFECTIVE = 755,
ENABLE = 756,
ENCRYPTION = 757,
END = 758,
ENDS = 759,
ENGINE_ = 760,
ENGINES = 761,
ENUM = 762,
ENTITY = 763,
ERROR_CODE = 764,
ERROR_P = 765,
ERRORS = 766,
EVENT = 767,
EVENTS = 768,
EVERY = 769,
EXCHANGE = 770,
EXECUTE = 771,
EXPANSION = 772,
EXPIRE = 773,
EXPIRE_INFO = 774,
EXPORT = 775,
OUTLINE = 776,
EXTENDED = 777,
EXTENDED_NOADDR = 778,
EXTENT_SIZE = 779,
EXTRACT = 780,
EXPIRED = 781,
FAILOVER = 782,
FAST = 783,
FAULTS = 784,
FIELDS = 785,
FILEX = 786,
FINAL_COUNT = 787,
FIRST = 788,
FIRST_VALUE = 789,
FIXED = 790,
FLUSH = 791,
FOLLOWER = 792,
FORMAT = 793,
FOUND = 794,
FREEZE = 795,
FREQUENCY = 796,
FUNCTION = 797,
FOLLOWING = 798,
FLASHBACK = 799,
FROZEN = 800,
FILE_ID = 801,
GENERAL = 802,
GEOMETRY = 803,
GEOMETRYCOLLECTION = 804,
GET_FORMAT = 805,
GLOBAL = 806,
GRANTS = 807,
GROUP_CONCAT = 808,
GROUPING = 809,
GTS = 810,
GLOBAL_NAME = 811,
GLOBAL_ALIAS = 812,
HANDLER = 813,
HASH = 814,
HELP = 815,
HISTOGRAM = 816,
HOST = 817,
HOSTS = 818,
HOUR = 819,
ID = 820,
IDC = 821,
IDENTIFIED = 822,
IGNORE_SERVER_IDS = 823,
ILOG = 824,
IMPORT = 825,
INCR = 826,
INDEXES = 827,
INDEX_TABLE_ID = 828,
INFO = 829,
INITIAL_SIZE = 830,
INNODB = 831,
INSERT_METHOD = 832,
INSTALL = 833,
INSTANCE = 834,
INVOKER = 835,
IO = 836,
IO_THREAD = 837,
IPC = 838,
ISOLATE = 839,
ISOLATION = 840,
ISSUER = 841,
IS_TENANT_SYS_POOL = 842,
INVISIBLE = 843,
MERGE = 844,
ISNULL = 845,
INCREMENTAL = 846,
INNER_PARSE = 847,
ILOGCACHE = 848,
INPUT = 849,
JOB = 850,
JSON = 851,
KEY_BLOCK_SIZE = 852,
KEY_VERSION = 853,
KVCACHE = 854,
LAG = 855,
LANGUAGE = 856,
LAST = 857,
LAST_VALUE = 858,
LEAD = 859,
LEADER = 860,
LEAVES = 861,
LESS = 862,
LEAK = 863,
LEAK_MOD = 864,
LINESTRING = 865,
LIST_ = 866,
LISTAGG = 867,
LOCAL = 868,
LOCALITY = 869,
LOCATION = 870,
LOCKED = 871,
LOCKS = 872,
LOGFILE = 873,
LOGONLY_REPLICA_NUM = 874,
LOGS = 875,
LOCK_ = 876,
LOGICAL_READS = 877,
LEVEL = 878,
LN = 879,
LOG = 880,
MAJOR = 881,
MANUAL = 882,
MASTER = 883,
MASTER_AUTO_POSITION = 884,
MASTER_CONNECT_RETRY = 885,
MASTER_DELAY = 886,
MASTER_HEARTBEAT_PERIOD = 887,
MASTER_HOST = 888,
MASTER_LOG_FILE = 889,
MASTER_LOG_POS = 890,
MASTER_PASSWORD = 891,
MASTER_PORT = 892,
MASTER_RETRY_COUNT = 893,
MASTER_SERVER_ID = 894,
MASTER_SSL = 895,
MASTER_SSL_CA = 896,
MASTER_SSL_CAPATH = 897,
MASTER_SSL_CERT = 898,
MASTER_SSL_CIPHER = 899,
MASTER_SSL_CRL = 900,
MASTER_SSL_CRLPATH = 901,
MASTER_SSL_KEY = 902,
MASTER_USER = 903,
MAX = 904,
MAX_CONNECTIONS_PER_HOUR = 905,
MAX_CPU = 906,
MAX_DISK_SIZE = 907,
MAX_IOPS = 908,
MAX_MEMORY = 909,
MAX_QUERIES_PER_HOUR = 910,
MAX_ROWS = 911,
MAX_SESSION_NUM = 912,
MAX_SIZE = 913,
MAX_UPDATES_PER_HOUR = 914,
MAX_USER_CONNECTIONS = 915,
MEDIUM = 916,
MEMORY = 917,
MEMTABLE = 918,
MESSAGE_TEXT = 919,
META = 920,
MICROSECOND = 921,
MIGRATE = 922,
MIN = 923,
MIN_CPU = 924,
MIN_IOPS = 925,
MIN_MEMORY = 926,
MINOR = 927,
MIN_ROWS = 928,
MINUTE = 929,
MODE = 930,
MODIFY = 931,
MONTH = 932,
MOVE = 933,
MULTILINESTRING = 934,
MULTIPOINT = 935,
MULTIPOLYGON = 936,
MUTEX = 937,
MYSQL_ERRNO = 938,
MIGRATION = 939,
MAX_USED_PART_ID = 940,
MAXIMIZE = 941,
MATERIALIZED = 942,
MEMSTORE_PERCENT = 943,
NAME = 944,
NAMES = 945,
NATIONAL = 946,
NCHAR = 947,
NDB = 948,
NDBCLUSTER = 949,
NEW = 950,
NEXT = 951,
NO = 952,
NOAUDIT = 953,
NODEGROUP = 954,
NONE = 955,
NORMAL = 956,
NOW = 957,
NOWAIT = 958,
NO_WAIT = 959,
NULLS = 960,
NUMBER = 961,
NVARCHAR = 962,
NTILE = 963,
NTH_VALUE = 964,
NOARCHIVELOG = 965,
NETWORK = 966,
NOPARALLEL = 967,
OBSOLETE = 968,
OCCUR = 969,
OF = 970,
OFF = 971,
OFFSET = 972,
OLD_PASSWORD = 973,
ONE = 974,
ONE_SHOT = 975,
ONLY = 976,
OPEN = 977,
OPTIONS = 978,
ORIG_DEFAULT = 979,
OWNER = 980,
OLD_KEY = 981,
PACK_KEYS = 982,
PAGE = 983,
PARALLEL = 984,
PARAMETERS = 985,
PARSER = 986,
PARTIAL = 987,
PARTITION_ID = 988,
PARTITIONING = 989,
PARTITIONS = 990,
PASSWORD = 991,
PAUSE = 992,
PERCENT_RANK = 993,
PHASE = 994,
PLAN = 995,
PHYSICAL = 996,
PLANREGRESS = 997,
PLUGIN = 998,
PLUGIN_DIR = 999,
PLUGINS = 1000,
POINT = 1001,
POLYGON = 1002,
PERFORMANCE = 1003,
PROTECTION = 1004,
PRIORITY = 1005,
PL = 1006,
POOL = 1007,
PORT = 1008,
POSITION = 1009,
PREPARE = 1010,
PRESERVE = 1011,
PREV = 1012,
PRIMARY_ZONE = 1013,
PRIVILEGES = 1014,
PROCESS = 1015,
PROCESSLIST = 1016,
PROFILE = 1017,
PROFILES = 1018,
PROXY = 1019,
PRECEDING = 1020,
PCTFREE = 1021,
P_ENTITY = 1022,
P_CHUNK = 1023,
PRIMARY_ROOTSERVICE_LIST = 1024,
PRIMARY_CLUSTER_ID = 1025,
PUBLIC = 1026,
PROGRESSIVE_MERGE_NUM = 1027,
PS = 1028,
QUARTER = 1029,
QUEUE_TIME = 1030,
QUICK = 1031,
REBUILD = 1032,
RECOVER = 1033,
RECYCLE = 1034,
REDO_BUFFER_SIZE = 1035,
REDOFILE = 1036,
REDUNDANT = 1037,
REFRESH = 1038,
REGION = 1039,
RELAY = 1040,
RELAYLOG = 1041,
RELAY_LOG_FILE = 1042,
RELAY_LOG_POS = 1043,
RELAY_THREAD = 1044,
RELOAD = 1045,
REMOVE = 1046,
REORGANIZE = 1047,
REPAIR = 1048,
REPEATABLE = 1049,
REPLICA = 1050,
REPLICA_NUM = 1051,
REPLICA_TYPE = 1052,
REPLICATION = 1053,
REPORT = 1054,
RESET = 1055,
RESOURCE = 1056,
RESOURCE_POOL_LIST = 1057,
RESPECT = 1058,
RESTART = 1059,
RESTORE = 1060,
RESUME = 1061,
RETURNED_SQLSTATE = 1062,
RETURNS = 1063,
REVERSE = 1064,
REWRITE_MERGE_VERSION = 1065,
ROLLBACK = 1066,
ROLLUP = 1067,
ROOT = 1068,
ROOTTABLE = 1069,
ROOTSERVICE = 1070,
ROOTSERVICE_LIST = 1071,
ROUTINE = 1072,
ROW = 1073,
ROLLING = 1074,
ROW_COUNT = 1075,
ROW_FORMAT = 1076,
ROWS = 1077,
RTREE = 1078,
RUN = 1079,
RECYCLEBIN = 1080,
ROTATE = 1081,
ROW_NUMBER = 1082,
RUDUNDANT = 1083,
RECURSIVE = 1084,
RANDOM = 1085,
REDO_TRANSPORT_OPTIONS = 1086,
REMOTE_OSS = 1087,
RT = 1088,
RANK = 1089,
READ_ONLY = 1090,
RECOVERY = 1091,
SAMPLE = 1092,
SAVEPOINT = 1093,
SCHEDULE = 1094,
SCHEMA_NAME = 1095,
SCOPE = 1096,
SECOND = 1097,
SECURITY = 1098,
SEED = 1099,
SERIAL = 1100,
SERIALIZABLE = 1101,
SERVER = 1102,
SERVER_IP = 1103,
SERVER_PORT = 1104,
SERVER_TYPE = 1105,
SESSION = 1106,
SESSION_USER = 1107,
SET_MASTER_CLUSTER = 1108,
SET_SLAVE_CLUSTER = 1109,
SET_TP = 1110,
SHARE = 1111,
SHUTDOWN = 1112,
SIGNED = 1113,
SIMPLE = 1114,
SLAVE = 1115,
SLOW = 1116,
SLOT_IDX = 1117,
SNAPSHOT = 1118,
SOCKET = 1119,
SOME = 1120,
SONAME = 1121,
SOUNDS = 1122,
SOURCE = 1123,
SPFILE = 1124,
SPLIT = 1125,
SQL_AFTER_GTIDS = 1126,
SQL_AFTER_MTS_GAPS = 1127,
SQL_BEFORE_GTIDS = 1128,
SQL_BUFFER_RESULT = 1129,
SQL_CACHE = 1130,
SQL_NO_CACHE = 1131,
SQL_ID = 1132,
SQL_THREAD = 1133,
SQL_TSI_DAY = 1134,
SQL_TSI_HOUR = 1135,
SQL_TSI_MINUTE = 1136,
SQL_TSI_MONTH = 1137,
SQL_TSI_QUARTER = 1138,
SQL_TSI_SECOND = 1139,
SQL_TSI_WEEK = 1140,
SQL_TSI_YEAR = 1141,
STANDBY = 1142,
STAT = 1143,
START = 1144,
STARTS = 1145,
STATS_AUTO_RECALC = 1146,
STATS_PERSISTENT = 1147,
STATS_SAMPLE_PAGES = 1148,
STATUS = 1149,
STATEMENTS = 1150,
STD = 1151,
STDDEV = 1152,
STDDEV_POP = 1153,
STDDEV_SAMP = 1154,
STRONG = 1155,
SYNCHRONIZATION = 1156,
STOP = 1157,
STORAGE = 1158,
STORAGE_FORMAT_VERSION = 1159,
STORAGE_FORMAT_WORK_VERSION = 1160,
STORING = 1161,
STRING = 1162,
SUBCLASS_ORIGIN = 1163,
SUBDATE = 1164,
SUBJECT = 1165,
SUBPARTITION = 1166,
SUBPARTITIONS = 1167,
SUBSTR = 1168,
SUBSTRING = 1169,
SUCCESSFUL = 1170,
SUM = 1171,
SUPER = 1172,
SUSPEND = 1173,
SWAPS = 1174,
SWITCH = 1175,
SWITCHES = 1176,
SWITCHOVER = 1177,
SYSTEM = 1178,
SYSTEM_USER = 1179,
SYSDATE = 1180,
SESSION_ALIAS = 1181,
SYNONYM = 1182,
SIZE = 1183,
TABLE_CHECKSUM = 1184,
TABLE_MODE = 1185,
TABLE_ID = 1186,
TABLE_NAME = 1187,
TABLEGROUPS = 1188,
TABLES = 1189,
TABLESPACE = 1190,
TABLET = 1191,
TABLET_MAX_SIZE = 1192,
TEMPLATE = 1193,
TEMPORARY = 1194,
TEMPTABLE = 1195,
TENANT = 1196,
TEXT = 1197,
THAN = 1198,
TIME = 1199,
TIMESTAMP = 1200,
TIMESTAMPADD = 1201,
TIMESTAMPDIFF = 1202,
TP_NO = 1203,
TP_NAME = 1204,
TRACE = 1205,
TRADITIONAL = 1206,
TRIGGERS = 1207,
TRIM = 1208,
TRUNCATE = 1209,
TYPE = 1210,
TYPES = 1211,
TASK = 1212,
TABLET_SIZE = 1213,
TABLEGROUP_ID = 1214,
TENANT_ID = 1215,
THROTTLE = 1216,
TIME_ZONE_INFO = 1217,
UNCOMMITTED = 1218,
UNDEFINED = 1219,
UNDO_BUFFER_SIZE = 1220,
UNDOFILE = 1221,
UNICODE = 1222,
UNINSTALL = 1223,
UNIT = 1224,
UNIT_NUM = 1225,
UNLOCKED = 1226,
UNTIL = 1227,
UNUSUAL = 1228,
UPGRADE = 1229,
USE_BLOOM_FILTER = 1230,
UNKNOWN = 1231,
USE_FRM = 1232,
USER = 1233,
USER_RESOURCES = 1234,
UNBOUNDED = 1235,
VALID = 1236,
VALUE = 1237,
VARIANCE = 1238,
VARIABLES = 1239,
VERBOSE = 1240,
VERIFY = 1241,
VIEW = 1242,
VISIBLE = 1243,
VIRTUAL_COLUMN_ID = 1244,
VALIDATE = 1245,
VAR_POP = 1246,
VAR_SAMP = 1247,
WAIT = 1248,
WARNINGS = 1249,
WEEK = 1250,
WEIGHT_STRING = 1251,
WHENEVER = 1252,
WITH_ROWID = 1253,
WORK = 1254,
WRAPPER = 1255,
WEAK = 1256,
X509 = 1257,
XA = 1258,
XML = 1259,
YEAR = 1260,
ZONE = 1261,
ZONE_LIST = 1262,
ZONE_TYPE = 1263,
COMP_NSEQ = 1264,
COMMA = 1265
};
#endif
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
typedef union YYSTYPE
{
/* Line 214 of yacc.c */
#line 23 "../../../src/sql/parser/sql_parser_mysql_mode.y"
struct _ParseNode *node;
const struct _NonReservedKeyword *non_reserved_keyword;
const struct _NonReservedKeyword *reserved_keyword;
int32_t ival[2]; //ival[0] means value,
//ival[1] means the number of constants that fast parse can recognize in the corresponding node and its child nodes,
//ival[2] for length_semantics
/* Line 214 of yacc.c */
#line 1144 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
} YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
#endif
#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
typedef struct YYLTYPE
{
int first_line;
int first_column;
int last_line;
int last_column;
} YYLTYPE;
# define yyltype YYLTYPE /* obsolescent; will be withdrawn */
# define YYLTYPE_IS_DECLARED 1
# define YYLTYPE_IS_TRIVIAL 1
#endif
/* Copy the second part of user declarations. */
/* Line 264 of yacc.c */
#line 32 "../../../src/sql/parser/sql_parser_mysql_mode.y"
#include "../../../src/sql/parser/sql_parser_mysql_mode_lex.h"
#include "../../../src/sql/parser/sql_parser_base.h"
/* Line 264 of yacc.c */
#line 1175 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
#ifdef short
# undef short
#endif
#ifdef YYTYPE_UINT8
typedef YYTYPE_UINT8 yytype_uint8;
#else
typedef unsigned char yytype_uint8;
#endif
#ifdef YYTYPE_INT8
typedef YYTYPE_INT8 yytype_int8;
#elif (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
typedef signed char yytype_int8;
#else
typedef short int yytype_int8;
#endif
#ifdef YYTYPE_UINT16
typedef YYTYPE_UINT16 yytype_uint16;
#else
typedef unsigned short int yytype_uint16;
#endif
#ifdef YYTYPE_INT16
typedef YYTYPE_INT16 yytype_int16;
#else
typedef short int yytype_int16;
#endif
#ifndef YYSIZE_T
# ifdef __SIZE_TYPE__
# define YYSIZE_T __SIZE_TYPE__
# elif defined size_t
# define YYSIZE_T size_t
# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
# include /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# else
# define YYSIZE_T unsigned int
# endif
#endif
#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
#ifndef YY_
# if 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
/* Suppress unused-variable warnings by "using" E. */
#if ! defined lint || defined __GNUC__
# define YYUSE(e) ((void) (e))
#else
# define YYUSE(e) /* empty */
#endif
/* Identity function, used to suppress warnings about constant conditions. */
#ifndef lint
# define YYID(n) (n)
#else
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static int
YYID (int yyi)
#else
static int
YYID (yyi)
int yyi;
#endif
{
return yyi;
}
#endif
#if ! defined yyoverflow || YYERROR_VERBOSE
/* The parser invokes alloca or malloc; define the necessary symbols. */
# ifdef YYSTACK_USE_ALLOCA
# if YYSTACK_USE_ALLOCA
# ifdef __GNUC__
# define YYSTACK_ALLOC __builtin_alloca
# elif defined __BUILTIN_VA_ARG_INCR
# include /* 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 _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
# include /* INFRINGES ON USER NAME SPACE */
# ifndef _STDLIB_H
# define _STDLIB_H 1
# endif
# endif
# endif
# endif
# endif
# ifdef YYSTACK_ALLOC
/* Pacify GCC's `empty if-body' warning. */
# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (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 _STDLIB_H \
&& ! ((defined YYMALLOC || defined malloc) \
&& (defined YYFREE || defined free)))
# include /* INFRINGES ON USER NAME SPACE */
# ifndef _STDLIB_H
# define _STDLIB_H 1
# endif
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# ifndef YYFREE
# define YYFREE free
# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
void free (void *); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# endif
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
#if (! defined yyoverflow \
&& (! defined __cplusplus \
|| (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
&& defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
/* A type that is properly aligned for any stack member. */
union yyalloc
{
yytype_int16 yyss_alloc;
YYSTYPE yyvs_alloc;
YYLTYPE yyls_alloc;
};
/* The size of the maximum gap between one aligned stack and the next. */
# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
/* The size of an array large to enough to hold all stacks, each with
N elements. */
# define YYSTACK_BYTES(N) \
((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
+ 2 * YYSTACK_GAP_MAXIMUM)
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
# if defined __GNUC__ && 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
# else
# define YYCOPY(To, From, Count) \
do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
} \
while (YYID (0))
# endif
# endif
/* Relocate STACK from its old location to the new one. The
local variables YYSIZE and YYSTACKSIZE give the old and new number of
elements in the stack, and YYPTR gives the new location of the
stack. Advance YYPTR to a properly aligned location for the next
stack. */
# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
Stack = &yyptr->Stack_alloc; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
} \
while (YYID (0))
#endif
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 1373
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 106652
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 1027
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 622
/* YYNRULES -- Number of rules. */
#define YYNRULES 2902
/* YYNRULES -- Number of states. */
#define YYNSTATES 5026
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 1265
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
static const yytype_uint16 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 1023, 2, 2, 2, 69, 62, 1025,
79, 80, 67, 65, 24, 66, 83, 68, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 1024, 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, 73, 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, 61, 2, 76, 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, 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, 63, 64, 70, 71, 72,
74, 75, 77, 78, 81, 82, 84, 85, 86, 87,
88, 89, 90, 91, 92, 93, 94, 95, 96, 97,
98, 99, 100, 101, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 112, 113, 114, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 133, 134, 135, 136, 137,
138, 139, 140, 141, 142, 143, 144, 145, 146, 147,
148, 149, 150, 151, 152, 153, 154, 155, 156, 157,
158, 159, 160, 161, 162, 163, 164, 165, 166, 167,
168, 169, 170, 171, 172, 173, 174, 175, 176, 177,
178, 179, 180, 181, 182, 183, 184, 185, 186, 187,
188, 189, 190, 191, 192, 193, 194, 195, 196, 197,
198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
208, 209, 210, 211, 212, 213, 214, 215, 216, 217,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, 236, 237,
238, 239, 240, 241, 242, 243, 244, 245, 246, 247,
248, 249, 250, 251, 252, 253, 254, 255, 256, 257,
258, 259, 260, 261, 262, 263, 264, 265, 266, 267,
268, 269, 270, 271, 272, 273, 274, 275, 276, 277,
278, 279, 280, 281, 282, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 294, 295, 296, 297,
298, 299, 300, 301, 302, 303, 304, 305, 306, 307,
308, 309, 310, 311, 312, 313, 314, 315, 316, 317,
318, 319, 320, 321, 322, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, 336, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, 351, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, 389, 390, 391, 392, 393, 394, 395, 396, 397,
398, 399, 400, 401, 402, 403, 404, 405, 406, 407,
408, 409, 410, 411, 412, 413, 414, 415, 416, 417,
418, 419, 420, 421, 422, 423, 424, 425, 426, 427,
428, 429, 430, 431, 432, 433, 434, 435, 436, 437,
438, 439, 440, 441, 442, 443, 444, 445, 446, 447,
448, 449, 450, 451, 452, 453, 454, 455, 456, 457,
458, 459, 460, 461, 462, 463, 464, 465, 466, 467,
468, 469, 470, 471, 472, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 486, 487,
488, 489, 490, 491, 492, 493, 494, 495, 496, 497,
498, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
518, 519, 520, 521, 522, 523, 524, 525, 526, 527,
528, 529, 530, 531, 532, 533, 534, 535, 536, 537,
538, 539, 540, 541, 542, 543, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 554, 555, 556, 557,
558, 559, 560, 561, 562, 563, 564, 565, 566, 567,
568, 569, 570, 571, 572, 573, 574, 575, 576, 577,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 591, 592, 593, 594, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 615, 616, 617,
618, 619, 620, 621, 622, 623, 624, 625, 626, 627,
628, 629, 630, 631, 632, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 643, 644, 645, 646, 647,
648, 649, 650, 651, 652, 653, 654, 655, 656, 657,
658, 659, 660, 661, 662, 663, 664, 665, 666, 667,
668, 669, 670, 671, 672, 673, 674, 675, 676, 677,
678, 679, 680, 681, 682, 683, 684, 685, 686, 687,
688, 689, 690, 691, 692, 693, 694, 695, 696, 697,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 709, 710, 711, 712, 713, 714, 715, 716, 717,
718, 719, 720, 721, 722, 723, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 746, 747,
748, 749, 750, 751, 752, 753, 754, 755, 756, 757,
758, 759, 760, 761, 762, 763, 764, 765, 766, 767,
768, 769, 770, 771, 772, 773, 774, 775, 776, 777,
778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1026
};
#if YYDEBUG
/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
YYRHS. */
static const yytype_uint16 yyprhs[] =
{
0, 0, 3, 5, 7, 9, 12, 16, 17, 19,
21, 23, 25, 27, 29, 31, 33, 35, 37, 39,
41, 43, 45, 47, 49, 51, 53, 55, 57, 59,
61, 63, 65, 67, 69, 71, 73, 75, 77, 79,
81, 83, 85, 87, 89, 91, 93, 95, 97, 99,
101, 103, 105, 107, 109, 111, 113, 115, 117, 119,
121, 123, 125, 127, 129, 131, 133, 135, 137, 139,
141, 143, 145, 147, 149, 151, 153, 155, 157, 159,
161, 163, 167, 169, 173, 175, 179, 183, 185, 189,
193, 197, 201, 207, 213, 219, 225, 230, 235, 240,
242, 245, 248, 250, 252, 254, 256, 258, 260, 262,
264, 266, 268, 270, 272, 274, 276, 278, 280, 282,
284, 286, 288, 292, 294, 296, 298, 300, 302, 304,
306, 308, 310, 314, 317, 320, 322, 324, 328, 333,
337, 344, 348, 355, 359, 366, 370, 374, 381, 385,
392, 396, 403, 405, 409, 414, 421, 427, 431, 436,
442, 449, 456, 464, 469, 475, 482, 490, 498, 507,
511, 516, 521, 527, 529, 531, 534, 538, 542, 546,
550, 554, 558, 564, 570, 574, 578, 582, 586, 590,
594, 596, 599, 602, 604, 606, 610, 613, 616, 619,
622, 624, 628, 634, 641, 644, 654, 656, 658, 660,
662, 667, 671, 672, 676, 680, 684, 688, 692, 695,
699, 704, 708, 713, 715, 719, 721, 723, 725, 727,
729, 731, 733, 735, 739, 745, 753, 761, 769, 776,
783, 790, 798, 806, 814, 822, 830, 838, 846, 854,
862, 870, 878, 888, 898, 904, 910, 916, 922, 929,
935, 940, 945, 950, 955, 966, 968, 970, 973, 974,
976, 978, 981, 982, 988, 993, 999, 1007, 1012, 1014,
1016, 1021, 1025, 1026, 1029, 1031, 1035, 1039, 1043, 1044,
1048, 1050, 1052, 1054, 1056, 1058, 1062, 1065, 1068, 1074,
1077, 1078, 1080, 1082, 1083, 1085, 1088, 1093, 1096, 1097,
1099, 1100, 1107, 1113, 1119, 1125, 1131, 1136, 1141, 1146,
1152, 1158, 1164, 1170, 1176, 1182, 1188, 1194, 1200, 1206,
1212, 1217, 1225, 1234, 1239, 1241, 1243, 1245, 1247, 1249,
1251, 1253, 1260, 1271, 1278, 1285, 1292, 1299, 1304, 1309,
1314, 1319, 1324, 1329, 1334, 1339, 1346, 1351, 1356, 1363,
1368, 1373, 1378, 1383, 1388, 1393, 1398, 1405, 1412, 1417,
1422, 1429, 1434, 1439, 1444, 1449, 1456, 1463, 1468, 1473,
1478, 1485, 1487, 1494, 1503, 1505, 1509, 1514, 1516, 1520,
1525, 1527, 1531, 1535, 1540, 1544, 1549, 1552, 1554, 1556,
1558, 1562, 1567, 1570, 1574, 1576, 1580, 1584, 1587, 1588,
1590, 1592, 1596, 1602, 1606, 1612, 1618, 1624, 1625, 1627,
1628, 1630, 1632, 1633, 1635, 1637, 1639, 1640, 1643, 1650,
1654, 1658, 1663, 1672, 1674, 1678, 1682, 1689, 1696, 1698,
1702, 1703, 1707, 1711, 1715, 1719, 1723, 1727, 1731, 1735,
1737, 1741, 1742, 1746, 1750, 1756, 1760, 1762, 1766, 1768,
1772, 1779, 1780, 1784, 1789, 1795, 1801, 1807, 1821, 1833,
1839, 1845, 1852, 1854, 1858, 1859, 1863, 1868, 1872, 1876,
1880, 1884, 1888, 1894, 1900, 1904, 1908, 1910, 1914, 1916,
1920, 1923, 1927, 1930, 1931, 1934, 1935, 1937, 1941, 1943,
1947, 1954, 1961, 1969, 1974, 1980, 1985, 1990, 1996, 1998,
2000, 2002, 2004, 2005, 2007, 2010, 2012, 2015, 2020, 2025,
2029, 2033, 2035, 2037, 2041, 2044, 2047, 2052, 2058, 2060,
2061, 2077, 2080, 2083, 2084, 2086, 2088, 2089, 2091, 2093,
2094, 2098, 2099, 2103, 2107, 2109, 2111, 2112, 2115, 2119,
2121, 2125, 2127, 2129, 2130, 2133, 2135, 2139, 2143, 2146,
2155, 2166, 2177, 2190, 2192, 2193, 2195, 2197, 2200, 2201,
2203, 2205, 2211, 2219, 2221, 2222, 2224, 2226, 2227, 2229,
2230, 2238, 2248, 2259, 2272, 2282, 2291, 2298, 2306, 2308,
2309, 2311, 2313, 2315, 2317, 2326, 2331, 2335, 2336, 2338,
2342, 2344, 2354, 2362, 2371, 2382, 2389, 2404, 2407, 2408,
2412, 2416, 2418, 2420, 2423, 2426, 2429, 2432, 2433, 2435,
2437, 2439, 2444, 2455, 2458, 2459, 2462, 2463, 2466, 2468,
2471, 2474, 2476, 2479, 2482, 2484, 2486, 2487, 2489, 2493,
2499, 2501, 2505, 2508, 2512, 2515, 2518, 2521, 2524, 2527,
2529, 2531, 2532, 2534, 2536, 2538, 2540, 2542, 2544, 2549,
2554, 2559, 2564, 2566, 2568, 2571, 2573, 2579, 2585, 2588,
2594, 2597, 2600, 2602, 2605, 2613, 2621, 2623, 2627, 2629,
2631, 2633, 2635, 2637, 2639, 2641, 2643, 2645, 2647, 2650,
2653, 2655, 2657, 2659, 2661, 2664, 2666, 2668, 2670, 2672,
2674, 2676, 2678, 2680, 2684, 2685, 2689, 2690, 2696, 2700,
2701, 2707, 2711, 2712, 2716, 2717, 2721, 2722, 2726, 2728,
2729, 2731, 2732, 2734, 2736, 2737, 2739, 2740, 2742, 2743,
2745, 2747, 2751, 2755, 2757, 2759, 2761, 2763, 2765, 2767,
2770, 2771, 2774, 2776, 2777, 2780, 2781, 2784, 2786, 2789,
2792, 2794, 2797, 2800, 2802, 2805, 2809, 2812, 2814, 2816,
2818, 2821, 2824, 2825, 2827, 2829, 2830, 2832, 2833, 2835,
2838, 2840, 2844, 2846, 2848, 2850, 2852, 2854, 2856, 2860,
2864, 2869, 2875, 2879, 2883, 2887, 2891, 2895, 2899, 2903,
2907, 2912, 2917, 2921, 2925, 2929, 2933, 2935, 2939, 2943,
2947, 2951, 2953, 2957, 2959, 2961, 2963, 2965, 2967, 2968,
2970, 2971, 2973, 2975, 2977, 2979, 2982, 2984, 2986, 2993,
2995, 2997, 2999, 3005, 3012, 3020, 3029, 3039, 3049, 3060,
3069, 3079, 3087, 3096, 3106, 3117, 3118, 3120, 3127, 3136,
3138, 3142, 3144, 3148, 3150, 3154, 3156, 3158, 3168, 3179,
3189, 3199, 3210, 3220, 3221, 3228, 3236, 3244, 3251, 3259,
3267, 3271, 3273, 3277, 3282, 3286, 3288, 3292, 3301, 3305,
3307, 3311, 3319, 3321, 3323, 3325, 3326, 3330, 3332, 3336,
3339, 3343, 3345, 3349, 3356, 3360, 3362, 3366, 3372, 3376,
3380, 3382, 3386, 3390, 3392, 3393, 3396, 3398, 3402, 3404,
3406, 3409, 3410, 3413, 3414, 3416, 3418, 3420, 3422, 3424,
3426, 3427, 3433, 3440, 3447, 3456, 3463, 3472, 3479, 3488,
3493, 3499, 3506, 3515, 3516, 3518, 3520, 3522, 3524, 3526,
3533, 3538, 3545, 3550, 3555, 3557, 3558, 3560, 3563, 3565,
3569, 3574, 3578, 3582, 3586, 3590, 3592, 3596, 3599, 3604,
3609, 3611, 3612, 3622, 3624, 3627, 3628, 3630, 3631, 3633,
3637, 3638, 3642, 3643, 3657, 3659, 3660, 3662, 3663, 3665,
3668, 3669, 3671, 3672, 3674, 3676, 3680, 3685, 3686, 3689,
3693, 3694, 3695, 3697, 3699, 3702, 3704, 3706, 3710, 3713,
3718, 3720, 3724, 3726, 3728, 3732, 3736, 3740, 3744, 3746,
3747, 3749, 3752, 3755, 3757, 3759, 3760, 3767, 3769, 3771,
3778, 3779, 3782, 3784, 3788, 3794, 3800, 3805, 3808, 3813,
3819, 3823, 3826, 3828, 3830, 3832, 3834, 3835, 3837, 3838,
3844, 3845, 3846, 3848, 3851, 3853, 3856, 3858, 3862, 3866,
3872, 3874, 3878, 3879, 3881, 3883, 3886, 3888, 3890, 3893,
3897, 3901, 3904, 3907, 3910, 3915, 3924, 3926, 3928, 3930,
3932, 3934, 3937, 3941, 3945, 3949, 3953, 3955, 3957, 3959,
3961, 3963, 3965, 3968, 3972, 3975, 3979, 3982, 3986, 3988,
3991, 3993, 3996, 3998, 4001, 4012, 4014, 4016, 4018, 4020,
4023, 4025, 4026, 4028, 4030, 4032, 4033, 4037, 4038, 4040,
4045, 4048, 4053, 4060, 4064, 4067, 4068, 4070, 4074, 4076,
4078, 4080, 4083, 4084, 4087, 4089, 4093, 4098, 4102, 4106,
4109, 4110, 4113, 4115, 4119, 4123, 4126, 4128, 4132, 4133,
4135, 4138, 4140, 4143, 4147, 4149, 4154, 4161, 4166, 4171,
4177, 4179, 4184, 4191, 4197, 4203, 4205, 4211, 4216, 4222,
4228, 4234, 4240, 4246, 4252, 4258, 4264, 4270, 4276, 4278,
4280, 4283, 4286, 4289, 4292, 4295, 4298, 4301, 4304, 4307,
4312, 4314, 4316, 4318, 4320, 4325, 4330, 4332, 4334, 4341,
4347, 4353, 4355, 4360, 4365, 4370, 4372, 4381, 4386, 4392,
4394, 4396, 4398, 4400, 4402, 4404, 4408, 4409, 4411, 4413,
4415, 4417, 4419, 4421, 4423, 4425, 4427, 4429, 4431, 4433,
4435, 4438, 4439, 4441, 4443, 4444, 4446, 4447, 4451, 4452,
4455, 4458, 4460, 4462, 4464, 4468, 4473, 4478, 4483, 4487,
4491, 4495, 4496, 4500, 4503, 4505, 4509, 4512, 4513, 4515,
4517, 4518, 4521, 4523, 4524, 4528, 4530, 4534, 4537, 4538,
4540, 4542, 4543, 4546, 4548, 4549, 4551, 4554, 4556, 4558,
4560, 4562, 4564, 4567, 4571, 4575, 4577, 4579, 4580, 4582,
4586, 4588, 4590, 4594, 4596, 4598, 4600, 4602, 4604, 4608,
4610, 4613, 4617, 4621, 4626, 4631, 4637, 4640, 4644, 4648,
4653, 4656, 4660, 4665, 4670, 4676, 4682, 4689, 4694, 4700,
4706, 4713, 4720, 4728, 4731, 4735, 4739, 4744, 4749, 4755,
4761, 4768, 4772, 4777, 4782, 4788, 4791, 4796, 4798, 4800,
4801, 4803, 4805, 4807, 4814, 4816, 4817, 4820, 4824, 4826,
4827, 4832, 4834, 4836, 4838, 4839, 4841, 4843, 4844, 4847,
4851, 4855, 4857, 4859, 4861, 4865, 4867, 4868, 4875, 4882,
4884, 4887, 4889, 4891, 4893, 4897, 4900, 4905, 4908, 4909,
4911, 4915, 4919, 4922, 4925, 4928, 4931, 4932, 4934, 4938,
4940, 4941, 4943, 4947, 4951, 4953, 4957, 4961, 4965, 4971,
4979, 4981, 4985, 4987, 4991, 4995, 5001, 5005, 5007, 5010,
5015, 5019, 5025, 5033, 5038, 5044, 5051, 5054, 5058, 5060,
5063, 5066, 5070, 5072, 5075, 5078, 5080, 5081, 5085, 5089,
5093, 5097, 5101, 5103, 5104, 5112, 5122, 5129, 5133, 5136,
5137, 5141, 5144, 5148, 5152, 5156, 5160, 5164, 5168, 5174,
5176, 5178, 5180, 5182, 5184, 5186, 5188, 5190, 5192, 5198,
5203, 5211, 5217, 5223, 5229, 5234, 5239, 5244, 5247, 5253,
5258, 5263, 5268, 5273, 5277, 5281, 5288, 5295, 5299, 5303,
5307, 5311, 5316, 5323, 5327, 5331, 5336, 5340, 5345, 5349,
5352, 5355, 5360, 5362, 5364, 5369, 5372, 5373, 5375, 5378,
5383, 5385, 5386, 5387, 5389, 5391, 5393, 5395, 5396, 5398,
5400, 5402, 5404, 5406, 5408, 5410, 5412, 5414, 5415, 5418,
5419, 5422, 5427, 5430, 5431, 5433, 5435, 5441, 5448, 5450,
5454, 5457, 5463, 5470, 5473, 5476, 5479, 5482, 5485, 5486,
5489, 5491, 5494, 5497, 5499, 5502, 5506, 5509, 5512, 5515,
5517, 5519, 5521, 5523, 5524, 5527, 5529, 5533, 5535, 5539,
5545, 5554, 5561, 5566, 5572, 5576, 5577, 5581, 5587, 5589,
5593, 5599, 5601, 5603, 5607, 5610, 5612, 5616, 5619, 5624,
5627, 5629, 5632, 5634, 5635, 5637, 5638, 5642, 5644, 5650,
5656, 5657, 5660, 5664, 5668, 5672, 5676, 5680, 5684, 5688,
5691, 5694, 5697, 5701, 5705, 5713, 5715, 5718, 5720, 5724,
5726, 5728, 5731, 5733, 5735, 5738, 5740, 5742, 5744, 5746,
5749, 5752, 5755, 5757, 5759, 5761, 5764, 5766, 5769, 5772,
5776, 5780, 5782, 5783, 5785, 5789, 5793, 5795, 5799, 5803,
5804, 5811, 5820, 5825, 5827, 5829, 5831, 5834, 5836, 5840,
5842, 5846, 5848, 5850, 5852, 5854, 5858, 5862, 5864, 5869,
5873, 5877, 5881, 5883, 5885, 5888, 5891, 5893, 5895, 5899,
5902, 5903, 5905, 5909, 5911, 5915, 5917, 5919, 5923, 5927,
5929, 5933, 5937, 5942, 5944, 5948, 5949, 5952, 5954, 5956,
5960, 5962, 5964, 5966, 5968, 5974, 5982, 5986, 5990, 5994,
5996, 6002, 6006, 6010, 6012, 6014, 6018, 6022, 6024, 6030,
6034, 6036, 6040, 6042, 6044, 6046, 6048, 6050, 6052, 6054,
6056, 6065, 6075, 6087, 6091, 6100, 6105, 6111, 6116, 6121,
6137, 6139, 6141, 6145, 6151, 6155, 6160, 6165, 6170, 6174,
6175, 6177, 6180, 6183, 6186, 6188, 6189, 6191, 6192, 6194,
6195, 6197, 6199, 6200, 6204, 6207, 6211, 6215, 6219, 6223,
6226, 6230, 6234, 6238, 6242, 6252, 6256, 6266, 6272, 6278,
6282, 6287, 6295, 6303, 6310, 6316, 6322, 6333, 6344, 6351,
6358, 6368, 6378, 6391, 6397, 6403, 6409, 6415, 6421, 6427,
6434, 6440, 6444, 6452, 6458, 6465, 6472, 6478, 6486, 6492,
6499, 6504, 6509, 6516, 6525, 6530, 6535, 6540, 6545, 6555,
6562, 6568, 6575, 6580, 6587, 6593, 6599, 6604, 6612, 6618,
6625, 6632, 6645, 6651, 6659, 6667, 6677, 6686, 6690, 6694,
6699, 6705, 6710, 6715, 6720, 6726, 6732, 6737, 6743, 6749,
6755, 6761, 6769, 6775, 6780, 6781, 6784, 6787, 6789, 6793,
6797, 6801, 6805, 6809, 6813, 6817, 6818, 6820, 6824, 6826,
6828, 6830, 6832, 6834, 6836, 6838, 6840, 6842, 6844, 6846,
6848, 6850, 6852, 6854, 6856, 6858, 6862, 6863, 6867, 6868,
6874, 6876, 6880, 6882, 6883, 6887, 6888, 6890, 6894, 6904,
6911, 6913, 6915, 6918, 6920, 6922, 6925, 6927, 6929, 6933,
6934, 6940, 6941, 6944, 6946, 6948, 6950, 6953, 6955, 6959,
6963, 6965, 6966, 6970, 6971, 6973, 6975, 6977, 6978, 6982,
6986, 6990, 6992, 6996, 6997, 6999, 7001, 7003, 7007, 7009,
7011, 7012, 7015, 7018, 7021, 7023, 7025, 7027, 7030, 7032,
7034, 7038, 7042, 7044, 7046, 7050, 7052, 7053, 7057, 7059,
7060, 7064, 7068, 7070, 7071, 7075, 7077, 7078, 7082, 7084,
7085, 7088, 7089, 7091, 7095, 7103, 7111, 7119, 7127, 7130,
7131, 7133, 7137, 7138, 7142, 7146, 7150, 7154, 7158, 7160,
7161, 7165, 7169, 7173, 7174, 7176, 7178, 7180, 7182, 7187,
7191, 7195, 7200, 7205, 7210, 7212, 7216, 7222, 7228, 7231,
7234, 7237, 7240, 7243, 7245, 7248, 7252, 7257, 7262, 7266,
7268, 7270, 7272, 7274, 7276, 7278, 7280, 7282, 7284, 7286,
7288, 7290, 7292, 7294, 7296, 7298, 7300, 7302, 7304, 7306,
7308, 7310, 7312, 7314, 7316, 7318, 7320, 7322, 7324, 7326,
7328, 7330, 7332, 7334, 7336, 7338, 7340, 7342, 7344, 7346,
7348, 7350, 7352, 7354, 7356, 7358, 7360, 7362, 7364, 7366,
7368, 7370, 7372, 7374, 7376, 7378, 7380, 7382, 7384, 7386,
7388, 7390, 7392, 7394, 7396, 7398, 7400, 7402, 7404, 7406,
7408, 7410, 7412, 7414, 7416, 7418, 7420, 7422, 7424, 7426,
7428, 7430, 7432, 7434, 7436, 7438, 7440, 7442, 7444, 7446,
7448, 7450, 7452, 7454, 7456, 7458, 7460, 7462, 7464, 7466,
7468, 7470, 7472, 7474, 7476, 7478, 7480, 7482, 7484, 7486,
7488, 7490, 7492, 7494, 7496, 7498, 7500, 7502, 7504, 7506,
7508, 7510, 7512, 7514, 7516, 7518, 7520, 7522, 7524, 7526,
7528, 7530, 7532, 7534, 7536, 7538, 7540, 7542, 7544, 7546,
7548, 7550, 7552, 7554, 7556, 7558, 7560, 7562, 7564, 7566,
7568, 7570, 7572, 7574, 7576, 7578, 7580, 7582, 7584, 7586,
7588, 7590, 7592, 7594, 7596, 7598, 7600, 7602, 7604, 7606,
7608, 7610, 7612, 7614, 7616, 7618, 7620, 7622, 7624, 7626,
7628, 7630, 7632, 7634, 7636, 7638, 7640, 7642, 7644, 7646,
7648, 7650, 7652, 7654, 7656, 7658, 7660, 7662, 7664, 7666,
7668, 7670, 7672, 7674, 7676, 7678, 7680, 7682, 7684, 7686,
7688, 7690, 7692, 7694, 7696, 7698, 7700, 7702, 7704, 7706,
7708, 7710, 7712, 7714, 7716, 7718, 7720, 7722, 7724, 7726,
7728, 7730, 7732, 7734, 7736, 7738, 7740, 7742, 7744, 7746,
7748, 7750, 7752, 7754, 7756, 7758, 7760, 7762, 7764, 7766,
7768, 7770, 7772, 7774, 7776, 7778, 7780, 7782, 7784, 7786,
7788, 7790, 7792, 7794, 7796, 7798, 7800, 7802, 7804, 7806,
7808, 7810, 7812, 7814, 7816, 7818, 7820, 7822, 7824, 7826,
7828, 7830, 7832, 7834, 7836, 7838, 7840, 7842, 7844, 7846,
7848, 7850, 7852, 7854, 7856, 7858, 7860, 7862, 7864, 7866,
7868, 7870, 7872, 7874, 7876, 7878, 7880, 7882, 7884, 7886,
7888, 7890, 7892, 7894, 7896, 7898, 7900, 7902, 7904, 7906,
7908, 7910, 7912, 7914, 7916, 7918, 7920, 7922, 7924, 7926,
7928, 7930, 7932, 7934, 7936, 7938, 7940, 7942, 7944, 7946,
7948, 7950, 7952, 7954, 7956, 7958, 7960, 7962, 7964, 7966,
7968, 7970, 7972, 7974, 7976, 7978, 7980, 7982, 7984, 7986,
7988, 7990, 7992, 7994, 7996, 7998, 8000, 8002, 8004, 8006,
8008, 8010, 8012, 8014, 8016, 8018, 8020, 8022, 8024, 8026,
8028, 8030, 8032, 8034, 8036, 8038, 8040, 8042, 8044, 8046,
8048, 8050, 8052, 8054, 8056, 8058, 8060, 8062, 8064, 8066,
8068, 8070, 8072, 8074, 8076, 8078, 8080, 8082, 8084, 8086,
8088, 8090, 8092, 8094, 8096, 8098, 8100, 8102, 8104, 8106,
8108, 8110, 8112, 8114, 8116, 8118, 8120, 8122, 8124, 8126,
8128, 8130, 8132, 8134, 8136, 8138, 8140, 8142, 8144, 8146,
8148, 8150, 8152, 8154, 8156, 8158, 8160, 8162, 8164, 8166,
8168, 8170, 8172, 8174, 8176, 8178, 8180, 8182, 8184, 8186,
8188, 8190, 8192, 8194, 8196, 8198, 8200, 8202, 8204, 8206,
8208, 8210, 8212, 8214, 8216, 8218, 8220, 8222, 8224, 8226,
8228, 8230, 8232, 8234, 8236, 8238, 8240, 8242, 8244, 8246,
8248, 8250, 8252, 8254, 8256, 8258, 8260, 8262, 8264, 8266,
8268, 8270, 8272, 8274, 8276, 8278, 8280, 8282, 8284, 8286,
8288, 8290, 8292, 8294, 8296, 8298, 8300, 8302, 8304, 8306,
8308, 8310, 8312, 8314, 8316, 8318, 8320, 8322, 8324, 8326,
8328, 8330, 8332, 8334, 8336, 8338, 8340, 8342, 8344, 8346,
8348, 8350, 8352, 8354, 8356, 8358, 8360, 8362, 8364, 8366,
8368, 8370, 8372, 8374, 8376, 8378, 8380, 8382, 8384, 8386,
8388, 8390, 8392, 8394, 8396, 8398, 8400, 8402, 8404, 8406,
8408, 8410, 8412, 8414, 8416, 8418, 8420, 8422, 8424, 8426,
8428, 8430, 8432, 8434, 8436, 8438, 8440, 8442, 8444, 8446,
8448, 8450, 8452, 8454, 8456, 8458, 8460, 8462, 8464, 8466,
8468, 8470, 8472, 8474, 8476, 8478, 8480, 8482, 8484, 8486,
8488, 8490, 8492, 8494, 8496, 8498, 8500, 8502, 8504, 8506,
8508, 8510, 8512, 8514, 8516, 8518, 8520, 8522, 8524, 8526,
8528, 8530, 8532, 8534, 8536, 8538, 8540, 8542, 8544, 8546,
8548, 8550, 8552, 8554, 8556, 8558, 8560, 8562, 8564, 8566,
8568, 8570, 8572, 8574, 8576, 8578, 8580, 8582, 8584, 8586,
8588, 8590, 8592, 8594, 8596, 8598, 8600, 8602, 8604, 8606,
8608, 8610, 8612, 8614, 8616, 8618, 8620, 8622, 8624, 8626,
8628, 8630, 8632, 8634, 8636, 8638, 8640, 8642, 8644, 8646,
8648, 8650, 8652, 8654, 8656, 8658, 8660, 8662, 8664, 8666,
8668, 8670, 8672, 8674, 8676, 8678, 8680, 8682, 8684, 8686,
8688, 8690, 8692, 8694, 8696, 8698, 8700, 8702, 8704, 8706,
8708, 8710, 8712, 8714, 8716, 8718, 8720, 8722, 8724, 8726,
8728, 8730, 8732, 8734, 8736, 8738, 8740, 8742, 8744, 8746,
8748, 8750, 8752, 8754, 8756, 8758, 8760, 8762, 8764, 8766,
8768, 8770, 8772, 8774, 8776, 8778, 8780, 8782, 8784, 8786,
8788, 8790, 8792, 8794, 8796, 8798, 8800, 8802, 8804, 8806,
8808, 8810, 8812, 8814, 8816, 8818, 8820, 8822, 8824, 8826,
8828, 8830, 8832, 8834, 8836, 8838, 8840, 8842, 8844, 8846,
8848, 8850, 8852, 8854, 8856, 8858, 8860, 8862, 8864, 8866,
8868, 8870, 8872, 8874, 8876, 8878, 8880, 8882, 8884, 8886,
8888, 8890, 8892, 8894, 8896, 8898, 8900, 8902, 8904, 8906,
8908, 8910, 8912, 8914, 8916, 8918, 8920, 8922, 8924, 8926,
8928, 8930, 8932, 8934, 8936, 8938, 8940, 8942, 8944, 8946,
8948, 8950, 8952, 8954, 8956, 8958, 8960, 8962, 8964, 8966,
8968, 8970, 8972, 8974, 8976, 8978, 8980, 8982, 8984, 8986,
8988, 8990, 8992, 8994, 8996, 8998, 9000, 9002, 9004, 9006,
9008, 9010, 9012, 9014, 9016, 9018, 9020, 9022, 9024, 9026,
9028, 9030, 9032, 9034, 9036, 9038, 9040, 9042, 9044, 9046,
9048, 9050, 9052, 9054, 9056, 9058, 9060, 9062, 9064, 9066,
9068, 9070, 9072, 9074, 9076, 9078, 9080, 9082, 9084, 9086,
9088, 9090, 9092
};
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
static const yytype_int16 yyrhs[] =
{
1028, 0, -1, 1029, -1, 171, -1, 172, -1, 1031,
171, -1, 1031, 172, 1030, -1, -1, 171, -1, 1338,
-1, 1324, -1, 1161, -1, 1164, -1, 1165, -1, 1160,
-1, 1126, -1, 1134, -1, 1135, -1, 1150, -1, 1101,
-1, 1099, -1, 1318, -1, 1320, -1, 1458, -1, 1454,
-1, 1455, -1, 1456, -1, 1462, -1, 1523, -1, 1526,
-1, 1534, -1, 1544, -1, 1568, -1, 1538, -1, 1476,
-1, 1489, -1, 1491, -1, 1493, -1, 1496, -1, 1515,
-1, 1522, -1, 1506, -1, 1512, -1, 1513, -1, 1301,
-1, 1323, -1, 1514, -1, 1294, -1, 1115, -1, 1122,
-1, 1123, -1, 1124, -1, 1125, -1, 1104, -1, 1113,
-1, 1114, -1, 1629, -1, 1630, -1, 1283, -1, 1284,
-1, 1285, -1, 1541, -1, 1540, -1, 1631, -1, 1151,
-1, 1156, -1, 1635, -1, 1636, -1, 1637, -1, 1498,
-1, 1499, -1, 1565, -1, 1137, -1, 1507, -1, 1508,
-1, 1509, -1, 1510, -1, 1511, -1, 1566, -1, 1567,
-1, 1049, -1, 1032, 24, 1049, -1, 1034, -1, 1033,
24, 1034, -1, 1049, -1, 1049, 1404, 1642, -1, 1049,
1404, 4, -1, 1639, -1, 1640, 83, 1639, -1, 1640,
83, 1648, -1, 1648, 83, 1648, -1, 1640, 83, 67,
-1, 1640, 83, 1640, 83, 1639, -1, 1640, 83, 1640,
83, 1648, -1, 1640, 83, 1648, 83, 1648, -1, 1640,
83, 1640, 83, 67, -1, 83, 1640, 83, 1639, -1,
83, 1640, 83, 1648, -1, 83, 1648, 83, 1648, -1,
4, -1, 1037, 4, -1, 1037, 18, -1, 158, -1,
159, -1, 157, -1, 160, -1, 162, -1, 161, -1,
1036, -1, 6, -1, 7, -1, 5, -1, 10, -1,
11, -1, 9, -1, 12, -1, 18, -1, 5, -1,
11, -1, 1038, -1, 14, -1, 13, -1, 1042, 83,
1639, -1, 4, -1, 6, -1, 7, -1, 5, -1,
10, -1, 11, -1, 9, -1, 12, -1, 14, -1,
1042, 83, 1639, -1, 66, 5, -1, 66, 11, -1,
570, -1, 939, -1, 1043, 51, 12, -1, 1043, 51,
1050, 12, -1, 1043, 54, 1044, -1, 1043, 54, 1052,
79, 1341, 80, -1, 1043, 53, 1044, -1, 1043, 53,
1052, 79, 1341, 80, -1, 1043, 59, 1044, -1, 1043,
59, 1052, 79, 1341, 80, -1, 1043, 1022, 1044, -1,
1043, 56, 1044, -1, 1043, 56, 1052, 79, 1341, 80,
-1, 1043, 55, 1044, -1, 1043, 55, 1052, 79, 1341,
80, -1, 1043, 52, 1044, -1, 1043, 52, 1052, 79,
1341, 80, -1, 1044, -1, 1046, 49, 1053, -1, 1046,
1050, 49, 1053, -1, 1046, 1050, 46, 1046, 41, 1044,
-1, 1046, 46, 1046, 41, 1044, -1, 1046, 50, 1047,
-1, 1046, 50, 4, 1045, -1, 1046, 50, 1047, 60,
1047, -1, 1046, 50, 4, 1045, 60, 1047, -1, 1046,
50, 1047, 60, 4, 1045, -1, 1046, 50, 4, 1045,
60, 4, 1045, -1, 1046, 1050, 50, 1047, -1, 1046,
1050, 50, 4, 1045, -1, 1046, 1050, 50, 1047, 60,
1047, -1, 1046, 1050, 50, 4, 1045, 60, 1047, -1,
1046, 1050, 50, 1047, 60, 4, 1045, -1, 1046, 1050,
50, 4, 1045, 60, 4, 1045, -1, 1046, 48, 1046,
-1, 1046, 48, 4, 1045, -1, 1046, 1050, 48, 1046,
-1, 1046, 1050, 48, 4, 1045, -1, 1046, -1, 4,
-1, 1045, 4, -1, 1046, 61, 1046, -1, 1046, 62,
1046, -1, 1046, 64, 1046, -1, 1046, 63, 1046, -1,
1046, 65, 1046, -1, 1046, 66, 1046, -1, 1046, 65,
88, 1049, 1643, -1, 1046, 66, 88, 1049, 1643, -1,
1046, 67, 1046, -1, 1046, 68, 1046, -1, 1046, 69,
1046, -1, 1046, 72, 1046, -1, 1046, 71, 1046, -1,
1046, 73, 1046, -1, 1047, -1, 1047, 1212, -1, 87,
1047, -1, 1035, -1, 1040, -1, 1047, 75, 1047, -1,
65, 1047, -1, 66, 1047, -1, 76, 1047, -1, 1051,
1047, -1, 1340, -1, 79, 1049, 80, -1, 79, 1032,
24, 1049, 80, -1, 831, 79, 1032, 24, 1049, 80,
-1, 226, 1340, -1, 280, 79, 1334, 80, 380, 79,
4, 1048, 80, -1, 1054, -1, 1080, -1, 1055, -1,
15, -1, 49, 289, 614, 688, -1, 49, 416, 688,
-1, -1, 1049, 41, 1049, -1, 1049, 40, 1049, -1,
1049, 38, 1049, -1, 1049, 37, 1049, -1, 1049, 39,
1049, -1, 85, 1049, -1, 1043, 51, 9, -1, 1043,
51, 1050, 9, -1, 1043, 51, 989, -1, 1043, 51,
1050, 989, -1, 1043, -1, 15, 36, 1049, -1, 85,
-1, 84, -1, 1023, -1, 84, -1, 175, -1, 385,
-1, 878, -1, 1340, -1, 79, 1032, 80, -1, 45,
1075, 1076, 1078, 516, -1, 469, 79, 1079, 67, 80,
94, 1062, -1, 469, 79, 1079, 1049, 80, 94, 1062,
-1, 469, 79, 217, 1032, 80, 94, 1062, -1, 386,
79, 1032, 80, 94, 1062, -1, 387, 79, 1032, 80,
94, 1062, -1, 388, 79, 1049, 80, 94, 1062, -1,
929, 79, 1097, 1049, 80, 94, 1062, -1, 662, 79,
1097, 1049, 80, 94, 1062, -1, 681, 79, 1097, 1049,
80, 94, 1062, -1, 395, 79, 1097, 1049, 80, 94,
1062, -1, 909, 79, 1079, 1049, 80, 94, 1062, -1,
910, 79, 1079, 1049, 80, 94, 1062, -1, 996, 79,
1079, 1049, 80, 94, 1062, -1, 911, 79, 1079, 1049,
80, 94, 1062, -1, 912, 79, 1079, 1049, 80, 94,
1062, -1, 1004, 79, 1079, 1049, 80, 94, 1062, -1,
1005, 79, 1079, 1049, 80, 94, 1062, -1, 566, 79,
1096, 1032, 1394, 1098, 80, 94, 1062, -1, 625, 79,
1096, 1032, 1394, 1098, 80, 94, 1062, -1, 847, 79,
80, 94, 1062, -1, 497, 79, 80, 94, 1062, -1,
751, 79, 80, 94, 1062, -1, 840, 79, 80, 94,
1062, -1, 721, 79, 1049, 80, 94, 1062, -1, 478,
79, 80, 94, 1062, -1, 547, 1060, 94, 1062, -1,
616, 1060, 94, 1062, -1, 617, 1061, 94, 1062, -1,
613, 1061, 94, 1062, -1, 722, 79, 1049, 24, 1049,
80, 1057, 1059, 94, 1062, -1, 546, -1, 615, -1,
236, 1056, -1, -1, 816, -1, 247, -1, 1058, 718,
-1, -1, 79, 1049, 1058, 718, 80, -1, 79, 1049,
80, 1059, -1, 79, 1049, 1058, 718, 80, -1, 79,
1049, 1058, 718, 24, 1032, 80, -1, 79, 1032, 80,
1059, -1, 3, -1, 1063, -1, 79, 3, 1067, 80,
-1, 79, 1067, 80, -1, -1, 29, 1065, -1, 1066,
-1, 1065, 24, 1066, -1, 3, 178, 1063, -1, 1068,
1394, 1074, -1, -1, 298, 185, 1032, -1, 835, -1,
303, -1, 778, -1, 556, -1, 1049, -1, 88, 1049,
1643, -1, 475, 831, -1, 1071, 1070, -1, 1069, 46,
1072, 41, 1072, -1, 1069, 1072, -1, -1, 1073, -1,
1049, -1, -1, 1077, -1, 1076, 1077, -1, 44, 1049,
43, 1049, -1, 42, 1049, -1, -1, 175, -1, -1,
72, 79, 1049, 24, 1049, 80, -1, 469, 79, 1079,
67, 80, -1, 469, 79, 1079, 1049, 80, -1, 469,
79, 217, 1032, 80, -1, 469, 79, 351, 1032, 80,
-1, 386, 79, 1032, 80, -1, 387, 79, 1032, 80,
-1, 388, 79, 1049, 80, -1, 929, 79, 1097, 1049,
80, -1, 662, 79, 1097, 1049, 80, -1, 681, 79,
1097, 1049, 80, -1, 395, 79, 1097, 1049, 80, -1,
909, 79, 1079, 1049, 80, -1, 910, 79, 1079, 1049,
80, -1, 996, 79, 1079, 1049, 80, -1, 911, 79,
1079, 1049, 80, -1, 912, 79, 1079, 1049, 80, -1,
1004, 79, 1079, 1049, 80, -1, 1005, 79, 1079, 1049,
80, -1, 567, 79, 1049, 80, -1, 566, 79, 1096,
1032, 1394, 1098, 80, -1, 246, 79, 1049, 24, 1049,
24, 1049, 80, -1, 603, 79, 1049, 80, -1, 1086,
-1, 1085, -1, 1088, -1, 1089, -1, 1082, -1, 1083,
-1, 1084, -1, 427, 79, 1049, 178, 1181, 80, -1,
252, 79, 1049, 24, 1049, 24, 1049, 24, 1049, 80,
-1, 33, 79, 1049, 24, 1049, 80, -1, 196, 79,
1049, 24, 1181, 80, -1, 196, 79, 1049, 357, 1209,
80, -1, 767, 79, 1046, 49, 1049, 80, -1, 1091,
79, 1092, 80, -1, 966, 79, 1387, 80, -1, 484,
79, 1049, 80, -1, 1018, 79, 1049, 80, -1, 957,
79, 1049, 80, -1, 958, 79, 1049, 80, -1, 690,
79, 1049, 80, -1, 1008, 79, 1049, 80, -1, 1008,
79, 1049, 24, 1049, 80, -1, 787, 79, 1049, 80,
-1, 855, 79, 1049, 80, -1, 563, 79, 1184, 24,
1049, 80, -1, 687, 79, 1049, 80, -1, 679, 79,
1049, 80, -1, 577, 79, 1049, 80, -1, 485, 79,
1093, 80, -1, 486, 79, 1093, 80, -1, 378, 79,
1093, 80, -1, 922, 79, 1093, 80, -1, 378, 79,
1049, 24, 1049, 80, -1, 922, 79, 1049, 24, 1049,
80, -1, 960, 79, 1094, 80, -1, 959, 79, 1094,
80, -1, 538, 79, 1643, 236, 1049, 80, -1, 389,
79, 1049, 80, -1, 211, 79, 1179, 80, -1, 361,
79, 1179, 80, -1, 190, 79, 1032, 80, -1, 190,
79, 1032, 357, 1209, 80, -1, 638, 79, 1049, 24,
1049, 80, -1, 638, 79, 1049, 80, -1, 637, 79,
1049, 80, -1, 1641, 79, 1095, 80, -1, 1640, 83,
1641, 79, 1095, 80, -1, 1081, -1, 88, 79, 1049,
24, 1049, 80, -1, 88, 79, 1049, 24, 1049, 24,
1032, 80, -1, 360, -1, 360, 79, 80, -1, 360,
79, 5, 80, -1, 359, -1, 359, 79, 80, -1,
359, 79, 5, 80, -1, 358, -1, 358, 79, 80,
-1, 938, 79, 80, -1, 938, 79, 5, 80, -1,
715, 79, 80, -1, 715, 79, 5, 80, -1, 1087,
1090, -1, 200, -1, 271, -1, 272, -1, 476, 79,
80, -1, 476, 79, 5, 80, -1, 199, 1090, -1,
474, 79, 80, -1, 198, -1, 198, 79, 80, -1,
79, 5, 80, -1, 79, 80, -1, -1, 926, -1,
927, -1, 1049, 24, 1049, -1, 1049, 24, 1049, 24,
1049, -1, 1049, 236, 1049, -1, 1049, 236, 1049, 233,
1049, -1, 1049, 24, 88, 1049, 1643, -1, 1643, 24,
1049, 24, 1049, -1, -1, 1033, -1, -1, 217, -1,
351, -1, -1, 175, -1, 217, -1, 351, -1, -1,
324, 4, -1, 1353, 236, 1410, 1359, 1394, 1384, -1,
1353, 1100, 1359, -1, 1430, 236, 1407, -1, 236, 1430,
357, 1407, -1, 1352, 1329, 1407, 325, 1102, 1359, 1394,
1384, -1, 1103, -1, 1102, 24, 1103, -1, 1179, 59,
1337, -1, 197, 814, 982, 1166, 1640, 1105, -1, 197,
814, 765, 1166, 1640, 1107, -1, 1106, -1, 1105, 24,
1106, -1, -1, 682, 1228, 1041, -1, 683, 1228, 1041,
-1, 684, 1228, 1041, -1, 664, 1228, 1041, -1, 667,
1228, 1041, -1, 666, 1228, 1041, -1, 665, 1228, 1041,
-1, 670, 1228, 1041, -1, 1108, -1, 1107, 24, 1108,
-1, -1, 982, 1228, 1227, -1, 983, 1228, 5, -1,
1020, 1228, 79, 1120, 80, -1, 810, 1228, 4, -1,
1112, -1, 1109, 24, 1112, -1, 5, -1, 1110, 24,
5, -1, 213, 982, 1228, 79, 1110, 80, -1, -1,
982, 1228, 1227, -1, 983, 1228, 5, 1111, -1, 1020,
1228, 79, 1120, 80, -1, 176, 814, 982, 1640, 1105,
-1, 176, 814, 765, 1640, 1109, -1, 176, 814, 765,
1640, 883, 96, 79, 1121, 80, 92, 79, 1120, 80,
-1, 176, 814, 765, 602, 79, 1121, 80, 96, 79,
1121, 80, -1, 220, 814, 982, 1321, 1640, -1, 220,
814, 765, 1321, 1640, -1, 197, 954, 1166, 1640, 1116,
1118, -1, 1117, -1, 1116, 24, 1117, -1, -1, 632,
1228, 5, -1, 627, 1228, 4, 1157, -1, 809, 1228,
5, -1, 823, 1228, 5, -1, 917, 1228, 5, -1,
918, 1228, 5, -1, 771, 1228, 1223, -1, 815, 1228,
79, 1121, 80, -1, 1020, 1228, 79, 1120, 80, -1,
1131, 1228, 1209, -1, 86, 1228, 1206, -1, 1133, -1,
452, 1228, 4, -1, 1292, -1, 785, 1228, 5, -1,
325, 1527, -1, 325, 997, 1527, -1, 997, 1527, -1,
-1, 997, 1527, -1, -1, 4, -1, 1120, 1219, 4,
-1, 4, -1, 1121, 24, 4, -1, 176, 954, 1640,
1562, 1116, 1119, -1, 176, 954, 175, 1562, 1116, 1119,
-1, 176, 954, 1640, 310, 569, 347, 1640, -1, 176,
954, 1640, 1497, -1, 220, 954, 1321, 1640, 1158, -1,
197, 818, 759, 1640, -1, 220, 818, 759, 1640, -1,
197, 1127, 1166, 1128, 1129, -1, 203, -1, 319, -1,
1640, -1, 1130, -1, -1, 1132, -1, 1130, 1132, -1,
431, -1, 190, 325, -1, 1229, 1131, 1228, 1209, -1,
1229, 86, 1228, 1206, -1, 809, 1228, 5, -1, 771,
1228, 1223, -1, 1133, -1, 1292, -1, 511, 1228, 5,
-1, 304, 734, -1, 304, 370, -1, 220, 1127, 1321,
1128, -1, 176, 1127, 1136, 1562, 1130, -1, 3, -1,
-1, 1138, 1139, 249, 4, 1140, 96, 342, 1429, 1418,
1141, 1366, 1369, 1142, 1144, 1147, -1, 270, 481, -1,
170, 1372, -1, -1, 626, -1, 845, -1, -1, 247,
-1, 312, -1, -1, 190, 325, 1210, -1, -1, 247,
5, 1143, -1, 237, 5, 1143, -1, 269, -1, 835,
-1, -1, 79, 80, -1, 79, 1145, 80, -1, 1146,
-1, 1145, 24, 1146, -1, 1179, -1, 15, -1, -1,
325, 1148, -1, 1149, -1, 1148, 24, 1149, -1, 1179,
59, 1337, -1, 356, 1128, -1, 197, 1296, 1152, 940,
1153, 233, 1155, 1154, -1, 197, 1296, 1152, 940, 1128,
83, 1153, 233, 1155, 1154, -1, 197, 1296, 1152, 940,
1153, 233, 1128, 83, 1155, 1154, -1, 197, 1296, 1152,
940, 1128, 83, 1153, 233, 1128, 83, 1155, 1154, -1,
784, -1, -1, 3, -1, 1644, -1, 1024, 1590, -1,
-1, 3, -1, 1644, -1, 220, 1152, 940, 1153, 1157,
-1, 220, 1152, 940, 1128, 83, 1153, 1157, -1, 234,
-1, -1, 234, -1, 302, -1, -1, 952, -1, -1,
197, 1159, 342, 1166, 1429, 50, 1429, -1, 197, 1159,
342, 1166, 1429, 79, 50, 1429, 80, -1, 197, 1159,
342, 1166, 1429, 79, 1167, 80, 1220, 1231, -1, 197,
1159, 342, 1166, 1429, 79, 1167, 80, 1220, 1231, 1404,
1338, -1, 197, 1159, 342, 1166, 1429, 1222, 1231, 1404,
1338, -1, 197, 1159, 342, 1166, 1429, 1230, 1404, 1338,
-1, 197, 1159, 342, 1166, 1429, 1338, -1, 197, 1159,
342, 1166, 1429, 178, 1338, -1, 381, -1, -1, 920,
-1, 259, -1, 307, -1, 210, -1, 197, 1162, 555,
3, 821, 1163, 879, 4, -1, 220, 555, 1321, 3,
-1, 246, 1050, 226, -1, -1, 1168, -1, 1167, 24,
1168, -1, 1174, -1, 1305, 300, 90, 1315, 79, 1244,
80, 1315, 1622, -1, 1422, 1303, 1315, 79, 1308, 80,
1312, -1, 351, 1421, 1303, 1315, 79, 1308, 80, 1312,
-1, 194, 1306, 351, 1421, 1303, 1315, 79, 1308, 80,
1312, -1, 194, 1307, 191, 79, 1049, 80, -1, 1305,
235, 90, 1303, 79, 1244, 80, 308, 1429, 79, 1244,
80, 1172, 1169, -1, 1169, 1170, -1, -1, 92, 354,
1171, -1, 92, 213, 1171, -1, 315, -1, 187, -1,
325, 12, -1, 710, 376, -1, 325, 211, -1, 280,
1173, -1, -1, 872, -1, 32, -1, 745, -1, 1179,
1185, 1214, 1558, -1, 1179, 1185, 1175, 178, 79, 1049,
80, 1178, 1176, 1558, -1, 237, 383, -1, -1, 1176,
1177, -1, -1, 85, 12, -1, 12, -1, 351, 90,
-1, 1218, 90, -1, 351, -1, 452, 4, -1, 578,
5, -1, 366, -1, 340, -1, -1, 1639, -1, 1640,
83, 1639, -1, 1640, 83, 1640, 83, 1639, -1, 1174,
-1, 1180, 24, 1174, -1, 87, 1202, -1, 190, 1202,
1205, -1, 1183, 1199, -1, 719, 1197, -1, 210, 1197,
-1, 871, 1182, -1, 353, 1182, -1, 219, -1, 259,
-1, -1, 487, -1, 484, -1, 957, -1, 487, -1,
484, -1, 957, -1, 1188, 1194, 1203, 1204, -1, 1189,
1196, 1203, 1204, -1, 719, 1197, 1203, 1204, -1, 210,
1197, 1203, 1204, -1, 415, -1, 416, -1, 1190, 1199,
-1, 1191, -1, 190, 1201, 1205, 1211, 1213, -1, 363,
1200, 1205, 1211, 1213, -1, 1193, 1202, -1, 1192, 1202,
1205, 1211, 1213, -1, 87, 1201, -1, 362, 1200, -1,
4, -1, 410, 1195, -1, 520, 79, 1186, 80, 1205,
1211, 1213, -1, 325, 79, 1186, 80, 1205, 1211, 1213,
-1, 1187, -1, 1186, 24, 1187, -1, 4, -1, 18,
-1, 345, -1, 328, -1, 283, -1, 259, -1, 182,
-1, 230, -1, 219, -1, 307, -1, 219, 299, -1,
307, 299, -1, 487, -1, 958, -1, 957, -1, 484,
-1, 1018, 1198, -1, 346, -1, 955, -1, 284, -1,
275, -1, 344, -1, 183, -1, 282, -1, 274, -1,
79, 5, 80, -1, -1, 79, 5, 80, -1, -1,
79, 5, 24, 5, 80, -1, 79, 5, 80, -1,
-1, 79, 5, 24, 5, 80, -1, 79, 5, 80,
-1, -1, 79, 5, 80, -1, -1, 79, 5, 80,
-1, -1, 79, 1039, 80, -1, 1200, -1, -1, 1200,
-1, -1, 353, -1, 871, -1, -1, 372, -1, -1,
87, -1, -1, 3, -1, 4, -1, 1025, 4, 1025,
-1, 1025, 4, 1025, -1, 5, -1, 3, -1, 4,
-1, 87, -1, 1209, -1, 211, -1, 1131, 1209, -1,
-1, 86, 1206, -1, 1212, -1, -1, 1214, 1215, -1,
-1, 1050, 12, -1, 12, -1, 211, 1216, -1, 737,
1216, -1, 394, -1, 351, 90, -1, 1218, 90, -1,
351, -1, 452, 4, -1, 92, 354, 1086, -1, 578,
5, -1, 1086, -1, 1217, -1, 1038, -1, 65, 1039,
-1, 66, 1039, -1, -1, 300, -1, 24, -1, -1,
1222, -1, -1, 1225, -1, 1225, 1221, -1, 1221, -1,
1225, 24, 1222, -1, 211, -1, 843, -1, 15, -1,
1227, -1, 4, -1, 211, -1, 943, 1228, 4, -1,
509, 1228, 4, -1, 627, 1228, 1224, 1157, -1, 532,
1228, 79, 1049, 80, -1, 785, 1228, 5, -1, 413,
1228, 5, -1, 944, 1228, 5, -1, 809, 1228, 5,
-1, 458, 1228, 4, -1, 834, 1228, 1282, -1, 917,
1228, 5, -1, 988, 1228, 9, -1, 1229, 1131, 1228,
1209, -1, 1229, 86, 1228, 1206, -1, 452, 1228, 4,
-1, 771, 1228, 1223, -1, 373, 1228, 1227, -1, 394,
1228, 1275, -1, 1133, -1, 518, 1228, 1227, -1, 971,
1228, 5, -1, 779, 1228, 5, -1, 698, 1228, 5,
-1, 1226, -1, 742, 1228, 5, -1, 725, -1, 1640,
-1, 4, -1, 175, -1, 59, -1, -1, 211, -1,
-1, 1236, -1, 1238, -1, 1239, -1, 1237, -1, 1230,
1240, -1, 1240, -1, 1232, -1, 1234, 298, 941, 1233,
748, 392, -1, 1041, -1, 392, -1, 1235, -1, 298,
185, 303, 79, 80, -1, 298, 185, 303, 79, 1049,
80, -1, 298, 185, 303, 451, 79, 1244, 80, -1,
298, 185, 572, 79, 1049, 80, 1245, 1273, -1, 298,
185, 572, 79, 1049, 80, 1245, 1273, 1248, -1, 298,
185, 422, 79, 1049, 80, 1245, 1273, 1254, -1, 298,
185, 422, 451, 79, 1244, 80, 1245, 1273, 1254, -1,
298, 185, 90, 79, 1244, 80, 1245, 1273, -1, 298,
185, 90, 79, 1244, 80, 1245, 1273, 1248, -1, 298,
185, 90, 79, 80, 1245, 1273, -1, 298, 185, 90,
79, 80, 1245, 1273, 1248, -1, 298, 185, 303, 79,
1049, 80, 1245, 1273, 1251, -1, 298, 185, 303, 451,
79, 1244, 80, 1245, 1273, 1251, -1, -1, 1241, -1,
298, 185, 192, 79, 1243, 80, -1, 298, 185, 192,
79, 1243, 24, 1242, 80, -1, 1243, -1, 1242, 24,
1243, -1, 1639, -1, 79, 1244, 80, -1, 1639, -1,
1244, 24, 1639, -1, 1246, -1, 1247, -1, 924, 185,
303, 79, 1049, 80, 924, 951, 1261, -1, 924, 185,
303, 451, 79, 1244, 80, 924, 951, 1261, -1, 924,
185, 572, 79, 1049, 80, 924, 951, 1258, -1, 924,
185, 422, 79, 1049, 80, 924, 951, 1264, -1, 924,
185, 422, 451, 79, 1244, 80, 924, 951, 1264, -1,
924, 185, 90, 79, 1244, 80, 924, 951, 1258, -1,
-1, 924, 185, 303, 79, 1049, 80, -1, 924, 185,
303, 451, 79, 1244, 80, -1, 924, 185, 572, 79,
1049, 80, 1274, -1, 924, 185, 422, 79, 1049, 80,
-1, 924, 185, 422, 451, 79, 1244, 80, -1, 924,
185, 90, 79, 1244, 80, 1274, -1, 79, 1249, 80,
-1, 1250, -1, 1249, 24, 1250, -1, 298, 1429, 1270,
1257, -1, 79, 1252, 80, -1, 1253, -1, 1252, 24,
1253, -1, 298, 1429, 361, 620, 956, 1269, 1270, 1257,
-1, 79, 1255, 80, -1, 1256, -1, 1255, 24, 1256,
-1, 298, 1429, 361, 49, 1267, 1270, 1257, -1, 1258,
-1, 1261, -1, 1264, -1, -1, 79, 1259, 80, -1,
1260, -1, 1259, 24, 1260, -1, 924, 1429, -1, 79,
1262, 80, -1, 1263, -1, 1262, 24, 1263, -1, 924,
1429, 361, 620, 956, 1269, -1, 79, 1265, 80, -1,
1266, -1, 1265, 24, 1266, -1, 924, 1429, 361, 49,
1267, -1, 79, 1268, 80, -1, 79, 211, 80, -1,
1049, -1, 1268, 24, 1049, -1, 79, 1271, 80, -1,
281, -1, -1, 578, 5, -1, 1272, -1, 1271, 24,
1272, -1, 1049, -1, 281, -1, 748, 5, -1, -1,
925, 5, -1, -1, 5, -1, 11, -1, 1277, -1,
1278, -1, 1279, -1, 1280, -1, -1, 298, 185, 572,
1281, 1273, -1, 298, 185, 90, 5, 1281, 1273, -1,
298, 185, 303, 1281, 1273, 1251, -1, 298, 185, 303,
451, 5, 1281, 1273, 1251, -1, 298, 185, 422, 1281,
1273, 1254, -1, 298, 185, 422, 451, 5, 1281, 1273,
1254, -1, 924, 185, 303, 924, 951, 1261, -1, 924,
185, 303, 451, 5, 924, 951, 1261, -1, 924, 185,
572, 1274, -1, 924, 185, 90, 5, 1274, -1, 924,
185, 422, 924, 951, 1264, -1, 924, 185, 422, 451,
5, 924, 951, 1264, -1, -1, 795, -1, 455, -1,
510, -1, 457, -1, 211, -1, 197, 373, 1166, 1640,
1286, 1276, -1, 220, 373, 1321, 1640, -1, 176, 373,
1640, 174, 1293, 1322, -1, 176, 373, 1640, 1290, -1,
176, 373, 1640, 1550, -1, 1288, -1, -1, 1289, -1,
1289, 1287, -1, 1287, -1, 1289, 24, 1288, -1, 627,
1228, 1224, 1157, -1, 771, 1228, 1223, -1, 972, 1228,
5, -1, 408, 1228, 9, -1, 698, 1228, 5, -1,
1291, -1, 1290, 24, 1291, -1, 1562, 1287, -1, 1229,
373, 1228, 1640, -1, 1229, 373, 1228, 12, -1, 342,
-1, -1, 197, 1296, 1297, 1000, 1298, 1299, 1300, 178,
1295, -1, 1338, -1, 38, 312, -1, -1, 700, -1,
-1, 1429, -1, 79, 1244, 80, -1, -1, 944, 59,
5, -1, -1, 197, 1302, 248, 1166, 1433, 1315, 92,
1429, 79, 1308, 80, 1312, 1231, -1, 351, -1, -1,
1304, -1, -1, 1640, -1, 194, 1306, -1, -1, 1307,
-1, -1, 1640, -1, 1309, -1, 1308, 24, 1309, -1,
1639, 1311, 1398, 1310, -1, -1, 578, 5, -1, 79,
5, 80, -1, -1, -1, 1313, -1, 1314, -1, 1313,
1314, -1, 564, -1, 626, -1, 413, 1228, 5, -1,
452, 4, -1, 919, 79, 1244, 80, -1, 1011, -1,
369, 744, 4, -1, 1316, -1, 1556, -1, 483, 1228,
5, -1, 586, 1228, 5, -1, 1002, 1228, 5, -1,
698, 1228, 5, -1, 1226, -1, -1, 1316, -1, 357,
418, -1, 357, 572, -1, 952, -1, 700, -1, -1,
220, 1317, 1319, 1321, 1322, 1563, -1, 342, -1, 947,
-1, 220, 1297, 1000, 1321, 1322, 1563, -1, -1, 246,
226, -1, 1429, -1, 1322, 24, 1429, -1, 220, 248,
1640, 92, 1429, -1, 1333, 1329, 1328, 1325, 1330, -1,
1332, 1329, 1328, 1325, -1, 1411, 1326, -1, 1411, 79,
80, 1326, -1, 1411, 79, 1334, 80, 1326, -1, 1411,
325, 1102, -1, 1327, 1335, -1, 1338, -1, 995, -1,
361, -1, 96, -1, -1, 247, -1, -1, 92, 508,
90, 354, 1102, -1, -1, -1, 312, -1, 167, 1372,
-1, 252, -1, 166, 1372, -1, 1179, -1, 1334, 24,
1179, -1, 79, 1336, 80, -1, 1335, 24, 79, 1336,
80, -1, 1337, -1, 1336, 24, 1337, -1, -1, 1049,
-1, 211, -1, 1341, 1331, -1, 1340, -1, 1339, -1,
1341, 1362, -1, 79, 1341, 80, -1, 79, 1340, 80,
-1, 1343, 1385, -1, 1345, 1385, -1, 1344, 1385, -1,
1351, 1400, 1405, 1363, -1, 1351, 1400, 1405, 1363, 236,
221, 1359, 1064, -1, 1342, -1, 1348, -1, 1354, -1,
1349, -1, 1350, -1, 1345, 1395, -1, 1345, 1394, 1361,
-1, 1345, 1357, 1346, -1, 1344, 1357, 1346, -1, 1347,
1357, 1346, -1, 1342, -1, 1354, -1, 1340, -1, 1348,
-1, 1349, -1, 1346, -1, 1342, 1395, -1, 1342, 1394,
1361, -1, 1354, 1395, -1, 1354, 1394, 1361, -1, 1340,
1395, -1, 1340, 1394, 1361, -1, 322, -1, 163, 1372,
-1, 354, -1, 164, 1372, -1, 213, -1, 165, 1372,
-1, 1351, 1400, 1405, 1363, 236, 1406, 1359, 1388, 1399,
1064, -1, 27, -1, 28, -1, 26, -1, 25, -1,
1355, 1358, -1, 1356, -1, -1, 175, -1, 217, -1,
351, -1, -1, 367, 1360, 1049, -1, -1, 8, -1,
267, 1383, 730, 1383, -1, 267, 1383, -1, 267, 1383,
24, 1383, -1, 96, 297, 4, 1211, 1366, 1369, -1,
96, 507, 4, -1, 96, 1364, -1, -1, 1362, -1,
1364, 24, 1365, -1, 1365, -1, 15, -1, 1638, -1,
1469, 1367, -1, -1, 1367, 1368, -1, 1368, -1, 343,
185, 4, -1, 293, 224, 185, 4, -1, 224, 185,
4, -1, 225, 185, 4, -1, 269, 1370, -1, -1,
1370, 1371, -1, 1371, -1, 343, 185, 4, -1, 339,
185, 4, -1, 1373, 169, -1, 1374, -1, 1373, 24,
1374, -1, -1, 1376, -1, 1374, 1376, -1, 3, -1,
1375, 3, -1, 1375, 24, 3, -1, 123, -1, 106,
79, 1378, 80, -1, 101, 79, 1436, 1435, 3, 80,
-1, 105, 79, 5, 80, -1, 103, 79, 5, 80,
-1, 104, 79, 5, 5, 80, -1, 107, -1, 108,
79, 3, 80, -1, 108, 79, 1025, 4, 1025, 80,
-1, 109, 79, 1436, 1442, 80, -1, 109, 79, 1436,
1437, 80, -1, 110, -1, 111, 79, 1436, 1435, 80,
-1, 115, 79, 1379, 80, -1, 112, 79, 1436, 1443,
80, -1, 119, 79, 1436, 1443, 80, -1, 113, 79,
1436, 1443, 80, -1, 114, 79, 1436, 1443, 80, -1,
102, 79, 1436, 1443, 80, -1, 118, 79, 1436, 1443,
80, -1, 132, 79, 1436, 1443, 80, -1, 120, 79,
1436, 1443, 80, -1, 121, 79, 1436, 1443, 80, -1,
122, 79, 1436, 1443, 80, -1, 127, -1, 128, -1,
140, 1377, -1, 141, 1377, -1, 142, 1377, -1, 143,
1377, -1, 144, 1377, -1, 145, 1377, -1, 146, 1377,
-1, 147, 1377, -1, 148, 1377, -1, 116, 79, 1380,
80, -1, 117, -1, 130, -1, 131, -1, 124, -1,
901, 79, 1444, 80, -1, 139, 79, 1444, 80, -1,
125, -1, 135, -1, 149, 79, 1207, 1219, 1208, 80,
-1, 134, 79, 1436, 1443, 80, -1, 152, 79, 1436,
1443, 80, -1, 150, -1, 126, 79, 3, 80, -1,
133, 79, 5, 80, -1, 742, 79, 5, 80, -1,
156, -1, 136, 79, 1436, 1439, 1219, 1381, 1382, 80,
-1, 151, 79, 5, 80, -1, 154, 79, 1436, 1435,
80, -1, 3, -1, 171, -1, 99, -1, 1, -1,
155, -1, 153, -1, 79, 1436, 80, -1, -1, 1014,
-1, 913, -1, 558, -1, 713, -1, 211, -1, 392,
-1, 234, -1, 713, -1, 298, -1, 843, -1, 137,
-1, 572, -1, 138, -1, 1219, 1381, -1, -1, 5,
-1, 13, -1, -1, 1361, -1, -1, 233, 354, 1386,
-1, -1, 1006, 11, -1, 1006, 5, -1, 716, -1,
717, -1, 1049, -1, 1049, 236, 1049, -1, 184, 1049,
236, 1049, -1, 265, 1049, 236, 1049, -1, 348, 1049,
236, 1049, -1, 184, 236, 1049, -1, 265, 236, 1049,
-1, 348, 236, 1049, -1, -1, 240, 185, 1389, -1,
1390, 1393, -1, 1391, -1, 1390, 24, 1391, -1, 1049,
1392, -1, -1, 179, -1, 214, -1, -1, 369, 825,
-1, 1395, -1, -1, 294, 185, 1396, -1, 1397, -1,
1396, 24, 1397, -1, 1049, 1398, -1, -1, 179, -1,
214, -1, -1, 241, 1049, -1, 1401, -1, -1, 1402,
-1, 1402, 1402, -1, 175, -1, 217, -1, 351, -1,
336, -1, 1049, -1, 1049, 1642, -1, 1049, 178, 1642,
-1, 1049, 1404, 4, -1, 67, -1, 178, -1, -1,
1403, -1, 1405, 24, 1403, -1, 1407, -1, 1408, -1,
1407, 24, 1408, -1, 1409, -1, 1446, -1, 1410, -1,
1417, -1, 1340, -1, 79, 1407, 80, -1, 1429, -1,
1429, 1419, -1, 1429, 1419, 1428, -1, 1429, 1419, 1415,
-1, 1429, 1419, 1415, 1412, -1, 1429, 1419, 1415, 1428,
-1, 1429, 1419, 1415, 1412, 1428, -1, 1429, 1415, -1,
1429, 1415, 1412, -1, 1429, 1415, 1428, -1, 1429, 1415,
1412, 1428, -1, 1429, 1428, -1, 1429, 178, 1640, -1,
1429, 1419, 178, 1640, -1, 1429, 1415, 178, 1640, -1,
1429, 1415, 1412, 178, 1640, -1, 1429, 1419, 1415, 178,
1640, -1, 1429, 1419, 1415, 1412, 178, 1640, -1, 1429,
178, 1640, 1428, -1, 1429, 1419, 178, 1640, 1428, -1,
1429, 1415, 178, 1640, 1428, -1, 1429, 1415, 1412, 178,
1640, 1428, -1, 1429, 1419, 1415, 178, 1640, 1428, -1,
1429, 1419, 1415, 1412, 178, 1640, 1428, -1, 1429, 1640,
-1, 1429, 1419, 1640, -1, 1429, 1640, 1428, -1, 1429,
1419, 1640, 1428, -1, 1429, 1415, 1412, 1640, -1, 1429,
1419, 1415, 1412, 1640, -1, 1429, 1415, 1412, 1640, 1428,
-1, 1429, 1419, 1415, 1412, 1640, 1428, -1, 1429, 1415,
1640, -1, 1429, 1419, 1415, 1640, -1, 1429, 1415, 1640,
1428, -1, 1429, 1419, 1415, 1640, 1428, -1, 1429, 1418,
-1, 857, 79, 5, 80, -1, 5, -1, 11, -1,
-1, 175, -1, 403, -1, 584, -1, 850, 1416, 1414,
79, 1413, 80, -1, 411, -1, -1, 1340, 1640, -1,
1340, 178, 1640, -1, 1419, -1, -1, 298, 79, 1375,
80, -1, 234, -1, 247, -1, 1422, -1, -1, 90,
-1, 248, -1, -1, 233, 35, -1, 233, 294, 185,
-1, 233, 240, 185, -1, 3, -1, 300, -1, 1424,
-1, 1425, 24, 1424, -1, 1425, -1, -1, 356, 1422,
1423, 79, 1426, 80, -1, 1420, 1422, 1423, 79, 1425,
80, -1, 1427, -1, 1427, 1428, -1, 1433, -1, 1434,
-1, 1431, -1, 1430, 24, 1431, -1, 1640, 1432, -1,
1640, 83, 1640, 1432, -1, 83, 67, -1, -1, 1640,
-1, 1640, 83, 1640, -1, 1640, 83, 1648, -1, 83,
1640, -1, 83, 1648, -1, 1433, 1436, -1, 1024, 3,
-1, -1, 1435, -1, 1437, 1438, 1435, -1, 24, -1,
-1, 1435, -1, 79, 1437, 80, -1, 79, 1437, 80,
-1, 1440, -1, 1441, 1438, 1440, -1, 1441, 1438, 1435,
-1, 79, 1441, 80, -1, 79, 1437, 1438, 1441, 80,
-1, 1441, 1438, 79, 1437, 1438, 1441, 80, -1, 1441,
-1, 1437, 1438, 1441, -1, 1435, -1, 79, 1437, 80,
-1, 1443, 1438, 1435, -1, 1443, 1438, 79, 1437, 80,
-1, 5, 1438, 1444, -1, 5, -1, 92, 1049, -1,
357, 79, 1334, 80, -1, 1408, 1449, 1447, -1, 1408,
1449, 1447, 92, 1049, -1, 1408, 1449, 1447, 357, 79,
1334, 80, -1, 1408, 1452, 1447, 1445, -1, 1408, 32,
35, 1447, 1445, -1, 1408, 32, 296, 35, 1447, 1445,
-1, 1408, 32, -1, 1408, 1448, 1447, -1, 1409, -1,
1409, 32, -1, 289, 1451, -1, 289, 1450, 35, -1,
35, -1, 30, 35, -1, 34, 35, -1, 30, -1,
-1, 32, 1453, 35, -1, 33, 1453, 35, -1, 31,
1453, 35, -1, 33, 1453, 35, -1, 31, 1453, 35,
-1, 296, -1, -1, 197, 1296, 534, 1640, 92, 1460,
1457, -1, 197, 1296, 534, 1640, 92, 4, 357, 168,
1372, -1, 176, 534, 1640, 174, 1460, 1457, -1, 220,
534, 1429, -1, 347, 1460, -1, -1, 1459, 1429, 1475,
-1, 1459, 1460, -1, 1459, 406, 1460, -1, 1459, 534,
1460, -1, 1459, 535, 1460, -1, 1459, 536, 1460, -1,
1459, 755, 1460, -1, 1459, 748, 1460, -1, 1459, 551,
59, 1461, 1460, -1, 228, -1, 215, -1, 214, -1,
1338, -1, 1099, -1, 1324, -1, 1101, -1, 964, -1,
609, -1, 326, 1625, 947, 1473, 1474, -1, 326, 1463,
1466, 1474, -1, 326, 1625, 1469, 1472, 1429, 1473, 1474,
-1, 326, 342, 907, 1473, 1474, -1, 326, 301, 907,
1473, 1474, -1, 326, 555, 907, 1473, 1474, -1, 326,
965, 1473, 1474, -1, 326, 860, 907, 1474, -1, 326,
1468, 997, 1474, -1, 326, 319, -1, 326, 197, 1470,
1166, 1128, -1, 326, 197, 342, 1429, -1, 326, 197,
1000, 1429, -1, 326, 197, 301, 1429, -1, 326, 197,
555, 1429, -1, 326, 1007, 1464, -1, 326, 524, 1464,
-1, 326, 469, 79, 67, 80, 1007, -1, 326, 469,
79, 67, 80, 524, -1, 326, 565, 1465, -1, 326,
1131, 1474, -1, 326, 963, 1474, -1, 326, 448, 1474,
-1, 326, 743, 1474, 1614, -1, 326, 1471, 1472, 1429,
1473, 1359, -1, 326, 1625, 774, -1, 326, 946, 1474,
-1, 326, 1468, 907, 1474, -1, 326, 954, 1466, -1,
326, 197, 954, 1640, -1, 326, 1467, 519, -1, 326,
772, -1, 326, 838, -1, 326, 197, 373, 1640, -1,
204, -1, 320, -1, 267, 5, 24, 5, -1, 267,
5, -1, -1, 1492, -1, 233, 201, -1, 233, 201,
79, 80, -1, 907, -1, -1, -1, 916, -1, 564,
-1, 864, -1, 626, -1, -1, 451, -1, 543, -1,
203, -1, 319, -1, 248, -1, 585, -1, 263, -1,
236, -1, 49, -1, -1, 1472, 1128, -1, -1, 50,
4, -1, 50, 4, 60, 4, -1, 367, 1049, -1,
-1, 4, -1, 1639, -1, 197, 991, 1166, 1477, 1480,
-1, 197, 991, 1166, 1477, 1479, 1480, -1, 1478, -1,
1477, 24, 1478, -1, 1485, 1486, -1, 1485, 1486, 580,
185, 1488, -1, 1485, 1486, 580, 185, 749, 1488, -1,
313, 713, -1, 313, 338, -1, 313, 1015, -1, 313,
1483, -1, 369, 1481, -1, -1, 1481, 1482, -1, 1482,
-1, 663, 5, -1, 673, 5, -1, 1484, -1, 1483,
1484, -1, 1483, 41, 1484, -1, 435, 4, -1, 599,
4, -1, 923, 4, -1, 4, -1, 3, -1, 1644,
-1, 15, -1, -1, 1485, 1486, -1, 4, -1, 220,
991, 1490, -1, 1487, -1, 1490, 24, 1487, -1, 325,
749, 1492, 59, 4, -1, 325, 749, 1492, 59, 749,
79, 1488, 80, -1, 176, 991, 1487, 580, 185, 1488,
-1, 176, 991, 1487, 1479, -1, 176, 991, 1487, 369,
1481, -1, 233, 1485, 1486, -1, -1, 310, 991, 1495,
-1, 1485, 1486, 347, 1485, 1486, -1, 1494, -1, 1495,
24, 1494, -1, 176, 991, 1490, 375, 1497, -1, 634,
-1, 352, -1, 634, 1319, 1500, -1, 352, 947, -1,
1501, -1, 1500, 24, 1501, -1, 1429, 1502, -1, 1429,
1404, 1640, 1502, -1, 304, 1503, -1, 370, -1, 277,
370, -1, 626, -1, -1, 1012, -1, -1, 369, 460,
876, -1, 1633, -1, 369, 460, 876, 24, 1633, -1,
1633, 24, 369, 460, 876, -1, -1, 407, 1504, -1,
902, 81, 1505, -1, 1016, 902, 4, -1, 1016, 407,
4, -1, 1016, 516, 4, -1, 1016, 768, 4, -1,
1016, 453, 4, -1, 1016, 824, 4, -1, 453, 1504,
-1, 824, 1504, -1, 264, 1049, -1, 264, 22, 1049,
-1, 264, 21, 1049, -1, 239, 1516, 92, 1520, 347,
1477, 1521, -1, 1517, -1, 175, 1519, -1, 1518, -1,
1517, 24, 1518, -1, 176, -1, 197, -1, 197, 991,
-1, 213, -1, 220, -1, 239, 292, -1, 252, -1,
354, -1, 322, -1, 248, -1, 197, 1000, -1, 326,
1000, -1, 326, 204, -1, 930, -1, 773, -1, 355,
-1, 197, 940, -1, 544, -1, 176, 954, -1, 176,
936, -1, 197, 814, 765, -1, 197, 814, 982, -1,
772, -1, -1, 67, -1, 67, 83, 67, -1, 1640,
83, 67, -1, 1640, -1, 1640, 83, 1640, -1, 369,
239, 292, -1, -1, 317, 1516, 92, 1520, 236, 1490,
-1, 317, 175, 1519, 24, 239, 292, 236, 1490, -1,
768, 1524, 236, 1525, -1, 1642, -1, 1187, -1, 15,
-1, 325, 1528, -1, 1531, -1, 1527, 24, 1531, -1,
1530, -1, 1528, 24, 1530, -1, 1049, -1, 92, -1,
87, -1, 211, -1, 15, 1533, 1049, -1, 15, 36,
1049, -1, 1531, -1, 1532, 1639, 1533, 1529, -1, 14,
1533, 1529, -1, 1638, 1533, 1529, -1, 1638, 36, 1529,
-1, 564, -1, 864, -1, 570, 83, -1, 939, 83,
-1, 347, -1, 59, -1, 529, 1524, 1535, -1, 357,
1536, -1, -1, 1537, -1, 1536, 24, 1537, -1, 15,
-1, 1539, 768, 1524, -1, 489, -1, 220, -1, 967,
1293, 1429, -1, 310, 342, 1542, -1, 1543, -1, 1542,
24, 1543, -1, 1429, 347, 1429, -1, 176, 342, 1429,
1545, -1, 1546, -1, 1545, 24, 1546, -1, -1, 1562,
1221, -1, 1557, -1, 1559, -1, 310, 1561, 1429, -1,
1554, -1, 1548, -1, 1547, -1, 1555, -1, 220, 194,
79, 1375, 80, -1, 174, 194, 1307, 191, 79, 1049,
80, -1, 220, 298, 1551, -1, 220, 924, 1551, -1,
174, 298, 1549, -1, 1552, -1, 805, 298, 1375, 96,
1549, -1, 967, 298, 1375, -1, 967, 924, 1375, -1,
1251, -1, 1254, -1, 220, 298, 1551, -1, 174, 298,
1549, -1, 1553, -1, 805, 298, 1375, 96, 1549, -1,
967, 298, 1375, -1, 1375, -1, 79, 1375, 80, -1,
1236, -1, 1238, -1, 1239, -1, 1237, -1, 1277, -1,
1278, -1, 1279, -1, 1280, -1, 174, 1422, 1303, 1315,
79, 1308, 80, 1312, -1, 174, 351, 1421, 1303, 1315,
79, 1308, 80, 1312, -1, 174, 194, 1306, 351, 1421,
1303, 1315, 79, 1308, 80, 1312, -1, 220, 1422, 1304,
-1, 174, 1305, 300, 90, 79, 1244, 80, 1312, -1,
176, 248, 1304, 1556, -1, 310, 1422, 1304, 347, 1304,
-1, 176, 248, 1304, 1226, -1, 220, 235, 90, 1304,
-1, 174, 1305, 235, 90, 1303, 79, 1244, 80, 308,
1429, 79, 1244, 80, 1172, 1169, -1, 1001, -1, 601,
-1, 174, 1560, 1174, -1, 174, 1560, 79, 1180, 80,
-1, 220, 1179, 1563, -1, 220, 192, 1179, 1563, -1,
176, 1560, 1179, 1564, -1, 188, 1560, 1179, 1174, -1,
689, 1560, 1174, -1, -1, 546, -1, 181, 1639, -1,
379, 1639, -1, 220, 373, -1, 192, -1, -1, 347,
-1, -1, 325, -1, -1, 187, -1, 315, -1, -1,
325, 211, 1217, -1, 220, 211, -1, 302, 342, 1429,
-1, 302, 248, 1429, -1, 302, 1127, 1128, -1, 302,
954, 1640, -1, 302, 838, -1, 291, 342, 1322, -1,
291, 954, 1640, -1, 291, 954, 175, -1, 506, 521,
175, -1, 506, 521, 780, 59, 4, 24, 875, 59,
5, -1, 506, 434, 175, -1, 506, 434, 973, 59,
5, 24, 472, 59, 5, -1, 506, 434, 781, 59,
4, -1, 325, 292, 622, 59, 4, -1, 506, 675,
621, -1, 176, 936, 417, 1583, -1, 176, 936, 549,
1575, 424, 1578, 1581, -1, 176, 936, 549, 331, 1575,
1578, 1581, -1, 176, 936, 549, 612, 1614, 1616, -1,
176, 936, 549, 480, 1007, -1, 176, 936, 549, 606,
1618, -1, 176, 936, 176, 753, 404, 1614, 1611, 1609,
325, 1612, -1, 176, 936, 270, 753, 404, 236, 753,
424, 1578, 1611, -1, 176, 936, 933, 808, 1627, 1601,
-1, 176, 936, 933, 828, 1627, 1594, -1, 176, 936,
1598, 808, 1599, 1590, 1598, 1603, 1157, -1, 176, 936,
220, 808, 1599, 1590, 1593, 1592, 1157, -1, 176, 936,
1602, 808, 1599, 881, 1228, 4, 498, 1228, 4, 1157,
-1, 176, 936, 812, 808, 1595, -1, 176, 936, 792,
808, 1595, -1, 176, 936, 902, 602, 1591, -1, 176,
936, 1607, 602, 1592, -1, 176, 936, 1607, 849, 1592,
-1, 176, 936, 438, 602, 523, -1, 176, 936, 425,
1619, 970, 4, -1, 176, 936, 639, 553, 1588, -1,
176, 936, 433, -1, 176, 936, 685, 553, 1600, 1587,
1592, -1, 176, 936, 438, 827, 1614, -1, 176, 936,
1585, 860, 1586, 1592, -1, 176, 936, 174, 1019, 1227,
1597, -1, 176, 936, 1589, 1019, 1227, -1, 176, 936,
1598, 1019, 1227, 1562, 1597, -1, 176, 936, 796, 319,
1595, -1, 176, 936, 796, 675, 901, 1595, -1, 176,
936, 1562, 1620, -1, 176, 936, 868, 1623, -1, 176,
936, 438, 628, 424, 1595, -1, 176, 936, 804, 402,
970, 1578, 1582, 1577, -1, 176, 936, 803, 568, -1,
176, 936, 803, 982, -1, 176, 936, 803, 860, -1,
176, 936, 803, 1019, -1, 176, 936, 680, 982, 1228,
5, 498, 1228, 4, -1, 176, 936, 425, 680, 982,
5, -1, 176, 936, 987, 366, 319, -1, 176, 936,
837, 608, 4, 1595, -1, 176, 936, 1628, 987, -1,
176, 936, 837, 987, 608, 4, -1, 176, 936, 915,
987, 608, -1, 176, 936, 1628, 832, 987, -1, 176,
936, 796, 975, -1, 176, 936, 514, 331, 974, 1569,
1570, -1, 176, 936, 501, 331, 974, -1, 176, 936,
325, 503, 994, 1590, -1, 176, 936, 818, 1613, 236,
4, -1, 176, 936, 818, 1640, 236, 1640, 390, 4,
985, 4, 369, 4, -1, 176, 936, 188, 954, 1574,
-1, 176, 936, 220, 947, 49, 864, 5, -1, 176,
936, 796, 947, 49, 864, 5, -1, 176, 504, 1640,
174, 503, 4, 1573, 1590, 1592, -1, 176, 504, 1640,
220, 503, 4, 1590, 1592, -1, 176, 936, 399, -1,
176, 936, 723, -1, 176, 936, 401, 203, -1, 176,
936, 401, 604, 203, -1, 176, 936, 425, 401, -1,
176, 936, 931, 401, -1, 176, 936, 819, 401, -1,
176, 936, 213, 539, 401, -1, 176, 936, 213, 423,
5, -1, 176, 936, 1003, 203, -1, 176, 936, 1003,
423, 5, -1, 176, 936, 425, 1003, 5, -1, 176,
936, 213, 726, 401, -1, 176, 936, 425, 213, 401,
-1, 325, 515, 92, 580, 185, 4, 734, -1, 325,
490, 580, 185, 1186, -1, 233, 763, 54, 5, -1,
-1, 357, 1571, -1, 1572, 1571, -1, 1572, -1, 846,
59, 1275, -1, 470, 59, 1275, -1, 594, 59, 5,
-1, 724, 59, 1275, -1, 635, 59, 5, -1, 788,
59, 1275, -1, 702, 1228, 1227, -1, -1, 1227, -1,
973, 1228, 5, -1, 175, -1, 628, -1, 440, -1,
582, -1, 446, -1, 412, -1, 411, -1, 831, -1,
414, -1, 319, -1, 753, -1, 400, -1, 764, -1,
786, -1, 392, -1, 640, -1, 175, -1, 968, 1228,
1576, -1, -1, 954, 59, 1580, -1, -1, 954, 1228,
79, 1580, 80, -1, 1227, -1, 1580, 24, 1227, -1,
564, -1, -1, 1019, 59, 1120, -1, -1, 1584, -1,
1583, 24, 1584, -1, 797, 1228, 1227, 1019, 1228, 1227,
860, 1228, 4, -1, 1019, 1228, 1227, 860, 1228, 4,
-1, 174, -1, 213, -1, 425, 213, -1, 902, -1,
915, -1, 234, 915, -1, 597, -1, 4, -1, 1586,
24, 4, -1, -1, 860, 1228, 79, 1586, 80, -1,
-1, 247, 1586, -1, 213, -1, 902, -1, 915, -1,
234, 915, -1, 597, -1, 860, 1228, 4, -1, 1019,
1228, 1227, -1, 1591, -1, -1, 471, 1228, 5, -1,
-1, 1590, -1, 1591, -1, 1594, -1, -1, 797, 1228,
1227, -1, 579, 1228, 1227, -1, 1021, 1228, 1227, -1,
1596, -1, 1597, 24, 1596, -1, -1, 176, -1, 188,
-1, 689, -1, 746, 1228, 4, -1, 1579, -1, 1599,
-1, -1, 1599, 1590, -1, 1590, 1614, -1, 1591, 1614,
-1, 691, -1, 468, -1, 1604, -1, 1604, 1603, -1,
1605, -1, 1606, -1, 810, 1228, 4, -1, 701, 1228,
5, -1, 931, -1, 819, -1, 405, 1228, 5, -1,
1608, -1, -1, 890, 1228, 4, -1, 1610, -1, -1,
1639, 59, 1038, -1, 954, 1228, 1227, -1, 1613, -1,
-1, 424, 1228, 1227, -1, 1615, -1, -1, 559, 1228,
5, -1, 1617, -1, -1, 298, 697, -1, -1, 1621,
-1, 1620, 24, 1621, -1, 3, 59, 1041, 1622, 1626,
1595, 1614, -1, 971, 59, 1041, 1622, 1626, 1595, 1614,
-1, 443, 59, 1041, 1622, 1626, 1595, 1614, -1, 829,
59, 4, 1622, 1626, 1595, 1614, -1, 452, 4, -1,
-1, 1624, -1, 1623, 24, 1624, -1, -1, 961, 1228,
5, -1, 962, 1228, 1227, -1, 727, 1228, 5, -1,
554, 1228, 5, -1, 522, 1228, 5, -1, 32, -1,
-1, 854, 59, 675, -1, 854, 59, 882, -1, 854,
59, 184, -1, -1, 618, -1, 550, -1, 407, -1,
516, -1, 325, 703, 1210, 1213, -1, 325, 1131, 1210,
-1, 325, 81, 1632, -1, 325, 564, 81, 1632, -1,
325, 864, 81, 1632, -1, 325, 626, 81, 1632, -1,
1633, -1, 598, 636, 1634, -1, 1633, 24, 598, 636,
1634, -1, 598, 636, 1634, 24, 1633, -1, 304, 734,
-1, 304, 370, -1, 304, 976, -1, 304, 454, -1,
807, 304, -1, 859, -1, 851, 1638, -1, 824, 347,
1638, -1, 824, 1012, 347, 1638, -1, 824, 347, 851,
1638, -1, 309, 851, 1638, -1, 3, -1, 1645, -1,
3, -1, 1644, -1, 3, -1, 1644, -1, 3, -1,
506, -1, 431, -1, 448, -1, 611, -1, 991, -1,
203, -1, 319, -1, 445, -1, 311, -1, 833, -1,
822, -1, 31, -1, 201, -1, 937, -1, 865, -1,
312, -1, 967, -1, 551, -1, 3, -1, 1644, -1,
488, -1, 205, -1, 206, -1, 207, -1, 208, -1,
577, -1, 243, -1, 244, -1, 245, -1, 679, -1,
687, -1, 286, -1, 287, -1, 690, -1, 787, -1,
855, -1, 321, -1, 1008, -1, 1018, -1, 371, -1,
1645, -1, 1646, -1, 1647, -1, 375, -1, 376, -1,
377, -1, 378, -1, 379, -1, 380, -1, 381, -1,
382, -1, 383, -1, 384, -1, 385, -1, 386, -1,
387, -1, 388, -1, 399, -1, 389, -1, 390, -1,
400, -1, 391, -1, 392, -1, 393, -1, 394, -1,
395, -1, 396, -1, 401, -1, 423, -1, 403, -1,
404, -1, 405, -1, 406, -1, 402, -1, 407, -1,
408, -1, 409, -1, 410, -1, 422, -1, 411, -1,
413, -1, 412, -1, 414, -1, 415, -1, 416, -1,
417, -1, 418, -1, 419, -1, 420, -1, 421, -1,
424, -1, 612, -1, 606, -1, 425, -1, 426, -1,
427, -1, 428, -1, 429, -1, 430, -1, 431, -1,
432, -1, 433, -1, 434, -1, 435, -1, 436, -1,
437, -1, 438, -1, 439, -1, 441, -1, 440, -1,
442, -1, 443, -1, 444, -1, 445, -1, 447, -1,
448, -1, 449, -1, 450, -1, 446, -1, 451, -1,
452, -1, 453, -1, 454, -1, 455, -1, 456, -1,
457, -1, 458, -1, 459, -1, 22, -1, 460, -1,
461, -1, 462, -1, 463, -1, 464, -1, 465, -1,
466, -1, 467, -1, 468, -1, 469, -1, 470, -1,
471, -1, 472, -1, 473, -1, 478, -1, 474, -1,
475, -1, 477, -1, 476, -1, 479, -1, 480, -1,
481, -1, 511, -1, 482, -1, 483, -1, 484, -1,
485, -1, 486, -1, 487, -1, 488, -1, 489, -1,
490, -1, 491, -1, 492, -1, 493, -1, 494, -1,
497, -1, 495, -1, 496, -1, 498, -1, 499, -1,
500, -1, 501, -1, 502, -1, 503, -1, 504, -1,
505, -1, 506, -1, 507, -1, 508, -1, 509, -1,
510, -1, 512, -1, 513, -1, 514, -1, 515, -1,
516, -1, 517, -1, 518, -1, 519, -1, 520, -1,
521, -1, 522, -1, 523, -1, 524, -1, 60, -1,
525, -1, 526, -1, 527, -1, 26, -1, 528, -1,
529, -1, 530, -1, 531, -1, 539, -1, 532, -1,
533, -1, 535, -1, 536, -1, 537, -1, 540, -1,
538, -1, 541, -1, 542, -1, 557, -1, 543, -1,
544, -1, 559, -1, 545, -1, 546, -1, 547, -1,
548, -1, 549, -1, 550, -1, 556, -1, 551, -1,
558, -1, 552, -1, 553, -1, 554, -1, 555, -1,
32, -1, 560, -1, 561, -1, 562, -1, 563, -1,
564, -1, 569, -1, 565, -1, 567, -1, 566, -1,
568, -1, 571, -1, 572, -1, 573, -1, 574, -1,
575, -1, 576, -1, 577, -1, 578, -1, 579, -1,
580, -1, 581, -1, 582, -1, 583, -1, 585, -1,
586, -1, 584, -1, 587, -1, 588, -1, 589, -1,
590, -1, 591, -1, 592, -1, 28, -1, 593, -1,
604, -1, 594, -1, 595, -1, 596, -1, 603, -1,
598, -1, 597, -1, 599, -1, 608, -1, 609, -1,
610, -1, 611, -1, 613, -1, 614, -1, 615, -1,
616, -1, 617, -1, 618, -1, 621, -1, 622, -1,
619, -1, 620, -1, 636, -1, 623, -1, 624, -1,
625, -1, 637, -1, 626, -1, 627, -1, 629, -1,
630, -1, 638, -1, 631, -1, 632, -1, 633, -1,
639, -1, 640, -1, 641, -1, 642, -1, 643, -1,
644, -1, 645, -1, 646, -1, 647, -1, 648, -1,
649, -1, 650, -1, 651, -1, 652, -1, 653, -1,
654, -1, 655, -1, 656, -1, 657, -1, 658, -1,
659, -1, 660, -1, 661, -1, 662, -1, 663, -1,
664, -1, 665, -1, 666, -1, 667, -1, 668, -1,
669, -1, 670, -1, 671, -1, 672, -1, 673, -1,
674, -1, 675, -1, 676, -1, 602, -1, 677, -1,
701, -1, 678, -1, 679, -1, 680, -1, 697, -1,
681, -1, 682, -1, 683, -1, 684, -1, 685, -1,
686, -1, 687, -1, 25, -1, 688, -1, 689, -1,
690, -1, 691, -1, 692, -1, 693, -1, 694, -1,
695, -1, 696, -1, 698, -1, 702, -1, 703, -1,
704, -1, 705, -1, 706, -1, 707, -1, 708, -1,
709, -1, 710, -1, 723, -1, 711, -1, 712, -1,
713, -1, 725, -1, 714, -1, 715, -1, 716, -1,
717, -1, 721, -1, 722, -1, 719, -1, 718, -1,
720, -1, 727, -1, 728, -1, 729, -1, 730, -1,
731, -1, 739, -1, 94, -1, 732, -1, 733, -1,
734, -1, 735, -1, 736, -1, 737, -1, 845, -1,
534, -1, 738, -1, 740, -1, 741, -1, 742, -1,
743, -1, 744, -1, 745, -1, 746, -1, 747, -1,
748, -1, 751, -1, 750, -1, 752, -1, 754, -1,
764, -1, 755, -1, 756, -1, 757, -1, 758, -1,
759, -1, 760, -1, 765, -1, 766, -1, 767, -1,
778, -1, 768, -1, 769, -1, 770, -1, 783, -1,
771, -1, 782, -1, 772, -1, 773, -1, 774, -1,
775, -1, 776, -1, 785, -1, 777, -1, 784, -1,
779, -1, 780, -1, 781, -1, 787, -1, 21, -1,
788, -1, 789, -1, 847, -1, 848, -1, 790, -1,
791, -1, 849, -1, 792, -1, 838, -1, 839, -1,
840, -1, 793, -1, 794, -1, 795, -1, 796, -1,
797, -1, 798, -1, 799, -1, 800, -1, 801, -1,
802, -1, 803, -1, 804, -1, 805, -1, 806, -1,
807, -1, 808, -1, 809, -1, 810, -1, 811, -1,
812, -1, 813, -1, 814, -1, 815, -1, 816, -1,
817, -1, 818, -1, 819, -1, 820, -1, 821, -1,
822, -1, 823, -1, 824, -1, 832, -1, 825, -1,
826, -1, 828, -1, 829, -1, 827, -1, 830, -1,
831, -1, 833, -1, 834, -1, 835, -1, 836, -1,
837, -1, 850, -1, 851, -1, 852, -1, 853, -1,
854, -1, 855, -1, 856, -1, 857, -1, 858, -1,
859, -1, 860, -1, 861, -1, 862, -1, 863, -1,
864, -1, 865, -1, 866, -1, 867, -1, 868, -1,
869, -1, 870, -1, 871, -1, 941, -1, 872, -1,
873, -1, 874, -1, 876, -1, 877, -1, 878, -1,
879, -1, 880, -1, 881, -1, 882, -1, 883, -1,
884, -1, 885, -1, 886, -1, 887, -1, 888, -1,
890, -1, 889, -1, 891, -1, 892, -1, 893, -1,
894, -1, 895, -1, 896, -1, 897, -1, 898, -1,
899, -1, 900, -1, 902, -1, 903, -1, 901, -1,
904, -1, 905, -1, 906, -1, 907, -1, 908, -1,
909, -1, 910, -1, 911, -1, 912, -1, 915, -1,
916, -1, 917, -1, 918, -1, 919, -1, 913, -1,
920, -1, 921, -1, 922, -1, 923, -1, 924, -1,
925, -1, 926, -1, 927, -1, 928, -1, 929, -1,
930, -1, 931, -1, 932, -1, 933, -1, 934, -1,
935, -1, 936, -1, 937, -1, 938, -1, 940, -1,
942, -1, 943, -1, 946, -1, 944, -1, 945, -1,
947, -1, 948, -1, 949, -1, 971, -1, 950, -1,
970, -1, 951, -1, 952, -1, 953, -1, 954, -1,
973, -1, 875, -1, 955, -1, 956, -1, 957, -1,
958, -1, 959, -1, 960, -1, 975, -1, 962, -1,
961, -1, 963, -1, 81, -1, 964, -1, 965, -1,
966, -1, 967, -1, 968, -1, 969, -1, 972, -1,
976, -1, 977, -1, 978, -1, 979, -1, 980, -1,
989, -1, 981, -1, 982, -1, 983, -1, 984, -1,
985, -1, 986, -1, 987, -1, 988, -1, 990, -1,
991, -1, 992, -1, 993, -1, 994, -1, 1003, -1,
995, -1, 996, -1, 997, -1, 1004, -1, 1005, -1,
998, -1, 1002, -1, 700, -1, 1000, -1, 999, -1,
1006, -1, 1007, -1, 1014, -1, 1008, -1, 1009, -1,
1010, -1, 29, -1, 1012, -1, 1013, -1, 1015, -1,
1016, -1, 1017, -1, 1018, -1, 1019, -1, 1020, -1,
1021, -1, 628, -1, 753, -1, 1001, -1, 601, -1,
397, -1, 914, -1, 974, -1, 763, -1, 846, -1,
724, -1, 635, -1, 844, -1, 699, -1, 398, -1,
761, -1, 762, -1, 726, -1, 749, -1, 374, -1,
173, -1, 174, -1, 176, -1, 177, -1, 41, -1,
178, -1, 179, -1, 180, -1, 181, -1, 46, -1,
182, -1, 87, -1, 183, -1, 185, -1, 186, -1,
187, -1, 45, -1, 188, -1, 189, -1, 190, -1,
191, -1, 86, -1, 192, -1, 193, -1, 194, -1,
195, -1, 196, -1, 197, -1, 34, -1, 198, -1,
199, -1, 200, -1, 201, -1, 202, -1, 203, -1,
204, -1, 205, -1, 206, -1, 207, -1, 208, -1,
209, -1, 210, -1, 211, -1, 212, -1, 213, -1,
214, -1, 215, -1, 216, -1, 218, -1, 71, -1,
219, -1, 220, -1, 221, -1, 222, -1, 42, -1,
223, -1, 224, -1, 225, -1, 226, -1, 227, -1,
228, -1, 229, -1, 230, -1, 231, -1, 232, -1,
233, -1, 234, -1, 235, -1, 237, -1, 238, -1,
239, -1, 240, -1, 241, -1, 242, -1, 243, -1,
244, -1, 245, -1, 246, -1, 247, -1, 49, -1,
248, -1, 249, -1, 30, -1, 250, -1, 251, -1,
252, -1, 253, -1, 254, -1, 255, -1, 256, -1,
257, -1, 258, -1, 259, -1, 88, -1, 96, -1,
260, -1, 261, -1, 51, -1, 262, -1, 35, -1,
90, -1, 263, -1, 264, -1, 266, -1, 33, -1,
50, -1, 267, -1, 268, -1, 269, -1, 270, -1,
271, -1, 272, -1, 273, -1, 274, -1, 275, -1,
276, -1, 277, -1, 278, -1, 279, -1, 280, -1,
281, -1, 282, -1, 283, -1, 284, -1, 285, -1,
286, -1, 287, -1, 72, -1, 288, -1, 289, -1,
85, -1, 290, -1, 92, -1, 291, -1, 292, -1,
293, -1, 38, -1, 294, -1, 295, -1, 296, -1,
297, -1, 298, -1, 299, -1, 300, -1, 301, -1,
302, -1, 303, -1, 304, -1, 305, -1, 306, -1,
307, -1, 308, -1, 48, -1, 309, -1, 310, -1,
311, -1, 312, -1, 313, -1, 314, -1, 315, -1,
316, -1, 317, -1, 31, -1, 318, -1, 319, -1,
320, -1, 321, -1, 323, -1, 324, -1, 325, -1,
326, -1, 327, -1, 328, -1, 329, -1, 330, -1,
331, -1, 332, -1, 333, -1, 334, -1, 335, -1,
337, -1, 338, -1, 339, -1, 340, -1, 341, -1,
342, -1, 343, -1, 43, -1, 344, -1, 345, -1,
346, -1, 347, -1, 349, -1, 350, -1, 27, -1,
352, -1, 353, -1, 354, -1, 355, -1, 356, -1,
357, -1, 358, -1, 359, -1, 360, -1, 361, -1,
362, -1, 363, -1, 364, -1, 365, -1, 366, -1,
367, -1, 368, -1, 369, -1, 370, -1, 39, -1,
371, -1, 372, -1
};
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_uint16 yyrline[] =
{
0, 433, 433, 442, 447, 452, 456, 464, 465, 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,
532, 534, 535, 536, 537, 538, 539, 540, 541, 542,
552, 560, 567, 571, 577, 586, 605, 631, 638, 643,
650, 659, 666, 671, 678, 687, 694, 699, 706, 719,
729, 737, 748, 757, 766, 775, 784, 793, 805, 806,
807, 808, 809, 810, 811, 812, 813, 821, 822, 826,
827, 828, 829, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 853, 858, 875, 876, 880, 886, 893,
899, 907, 913, 921, 927, 935, 941, 947, 955, 961,
969, 975, 983, 991, 995, 1000, 1005, 1009, 1014, 1026,
1039, 1059, 1070, 1088, 1094, 1107, 1121, 1142, 1154, 1173,
1177, 1188, 1193, 1205, 1210, 1214, 1220, 1226, 1232, 1238,
1244, 1250, 1256, 1265, 1274, 1280, 1286, 1292, 1298, 1304,
1310, 1319, 1326, 1341, 1342, 1343, 1347, 1351, 1391, 1395,
1400, 1402, 1404, 1410, 1416, 1423, 1430, 1434, 1438, 1445,
1452, 1456, 1461, 1466, 1470, 1474, 1478, 1482, 1486, 1490,
1494, 1499, 1509, 1516, 1518, 1526, 1527, 1531, 1532, 1537,
1541, 1545, 1552, 1556, 1561, 1569, 1577, 1583, 1592, 1599,
1606, 1611, 1616, 1621, 1626, 1631, 1636, 1641, 1646, 1651,
1656, 1661, 1666, 1673, 1680, 1685, 1690, 1695, 1700, 1705,
1710, 1716, 1722, 1728, 1734, 1742, 1747, 1754, 1760, 1764,
1769, 1776, 1783, 1787, 1791, 1798, 1806, 1813, 1822, 1827,
1833, 1838, 1846, 1847, 1854, 1858, 1865, 1873, 1881, 1882,
1888, 1894, 1902, 1908, 1917, 1922, 1929, 1934, 1942, 1947,
1956, 1957, 1964, 1965, 1969, 1970, 1975, 1982, 1983, 1987,
1990, 1994, 1998, 2005, 2010, 2018, 2026, 2032, 2038, 2042,
2046, 2050, 2054, 2058, 2062, 2066, 2070, 2074, 2078, 2082,
2086, 2090, 2096, 2103, 2110, 2114, 2118, 2122, 2126, 2130,
2134, 2138, 2146, 2153, 2160, 2168, 2175, 2182, 2188, 2193,
2200, 2207, 2214, 2221, 2228, 2235, 2242, 2249, 2256, 2263,
2270, 2277, 2284, 2289, 2294, 2299, 2304, 2318, 2332, 2337,
2342, 2349, 2356, 2377, 2384, 2403, 2413, 2420, 2437, 2454,
2469, 2484, 2491, 2496, 2508, 2512, 2516, 2523, 2527, 2531,
2538, 2542, 2550, 2554, 2561, 2565, 2569, 2588, 2589, 2590,
2594, 2598, 2602, 2619, 2623, 2627, 2634, 2635, 2636, 2642,
2646, 2654, 2658, 2662, 2666, 2673, 2680, 2688, 2689, 2695,
2698, 2702, 2710, 2713, 2717, 2721, 2729, 2732, 2744, 2763,
2778, 2788, 2807, 2829, 2833, 2840, 2852, 2861, 2872, 2876,
2881, 2887, 2892, 2897, 2902, 2907, 2912, 2917, 2922, 2930,
2934, 2939, 2945, 2950, 2955, 2960, 2968, 2972, 2979, 2984,
2991, 2997, 3003, 3008, 3013, 3021, 3029, 3037, 3048, 3061,
3065, 3077, 3090, 3094, 3099, 3105, 3110, 3115, 3120, 3125,
3130, 3135, 3140, 3145, 3150, 3158, 3166, 3170, 3175, 3179,
3187, 3191, 3195, 3200, 3205, 3210, 3218, 3220, 3225, 3227,
3232, 3243, 3254, 3262, 3272, 3279, 3285, 3298, 3308, 3312,
3318, 3325, 3330, 3336, 3340, 3347, 3351, 3357, 3366, 3375,
3381, 3386, 3390, 3394, 3402, 3404, 3413, 3426, 3437, 3442,
3452, 3474, 3475, 3481, 3484, 3488, 3495, 3496, 3497, 3501,
3502, 3509, 3510, 3515, 3523, 3524, 3528, 3529, 3530, 3537,
3541, 3548, 3552, 3560, 3561, 3568, 3572, 3579, 3591, 3604,
3620, 3636, 3651, 3668, 3672, 3677, 3679, 3686, 3690, 3694,
3696, 3708, 3720, 3734, 3738, 3742, 3745, 3749, 3753, 3757,
3767, 3771, 3784, 3801, 3820, 3836, 3850, 3863, 3879, 3885,
3892, 3898, 3904, 3910, 3918, 3925, 3932, 3937, 3941, 3945,
3952, 3956, 3963, 3973, 3983, 3993, 3999, 4012, 4017, 4023,
4029, 4038, 4042, 4046, 4051, 4055, 4062, 4068, 4074, 4078,
4082, 4090, 4096, 4107, 4112, 4118, 4123, 4128, 4133, 4138,
4142, 4147, 4151, 4155, 4162, 4166, 4171, 4177, 4182, 4187,
4196, 4200, 4207, 4216, 4226, 4234, 4245, 4256, 4264, 4271,
4283, 4284, 4288, 4289, 4290, 4294, 4299, 4304, 4312, 4318,
4328, 4338, 4348, 4354, 4360, 4365, 4369, 4382, 4388, 4397,
4409, 4418, 4424, 4430, 4435, 4443, 4454, 4458, 4464, 4468,
4475, 4476, 4477, 4478, 4479, 4483, 4484, 4485, 4486, 4487,
4491, 4492, 4493, 4497, 4498, 4502, 4503, 4504, 4505, 4509,
4510, 4511, 4512, 4516, 4517, 4521, 4522, 4526, 4532, 4539,
4545, 4560, 4572, 4581, 4582, 4586, 4587, 4591, 4629, 4630,
4634, 4635, 4639, 4640, 4641, 4645, 4646, 4650, 4655, 4659,
4665, 4673, 4683, 4689, 4697, 4704, 4710, 4724, 4728, 4735,
4743, 4747, 4756, 4761, 4765, 4768, 4772, 4778, 4783, 4787,
4791, 4795, 4799, 4805, 4809, 4813, 4817, 4824, 4828, 4835,
4837, 4839, 4869, 4872, 4879, 4884, 4890, 4895, 4901, 4905,
4912, 4916, 4923, 4927, 4931, 4935, 4942, 4946, 4953, 4958,
4963, 4968, 4974, 4979, 4984, 4989, 4994, 4999, 5004, 5009,
5014, 5021, 5030, 5035, 5040, 5045, 5050, 5054, 5059, 5064,
5069, 5074, 5081, 5090, 5100, 5102, 5103, 5111, 5112, 5116,
5117, 5121, 5125, 5129, 5133, 5140, 5144, 5148, 5154, 5161,
5165, 5172, 5179, 5184, 5191, 5200, 5210, 5223, 5230, 5240,
5250, 5260, 5268, 5279, 5286, 5296, 5297, 5302, 5306, 5315,
5319, 5326, 5331, 5340, 5344, 5351, 5355, 5361, 5370, 5379,
5391, 5400, 5409, 5422, 5428, 5435, 5442, 5452, 5459, 5466,
5479, 5485, 5489, 5496, 5503, 5510, 5514, 5520, 5527, 5534,
5538, 5545, 5552, 5556, 5560, 5565, 5570, 5576, 5580, 5586,
5593, 5600, 5604, 5611, 5618, 5625, 5629, 5636, 5643, 5647,
5653, 5657, 5663, 5667, 5677, 5678, 5685, 5689, 5696, 5700,
5716, 5721, 5727, 5732, 5738, 5739, 5743, 5747, 5751, 5755,
5760, 5766, 5776, 5785, 5789, 5796, 5800, 5807, 5811, 5815,
5822, 5829, 5833, 5838, 5844, 5849, 5854, 5859, 5864, 5876,
5890, 5902, 5909, 5915, 5924, 5929, 5936, 5940, 5947, 5951,
5958, 5963, 5968, 5973, 5978, 5987, 5991, 5998, 6011, 6019,
6030, 6031, 6040, 6056, 6063, 6066, 6070, 6073, 6077, 6082,
6086, 6090, 6094, 6103, 6122, 6123, 6128, 6133, 6139, 6143,
6148, 6154, 6159, 6165, 6169, 6171, 6176, 6193, 6194, 6200,
6205, 6212, 6215, 6222, 6226, 6233, 6250, 6267, 6272, 6276,
6280, 6284, 6288, 6292, 6296, 6301, 6306, 6311, 6316, 6324,
6327, 6334, 6338, 6345, 6348, 6351, 6360, 6370, 6374, 6381,
6391, 6392, 6397, 6401, 6415, 6428, 6442, 6454, 6463, 6472,
6483, 6497, 6502, 6509, 6513, 6519, 6524, 6529, 6534, 6540,
6547, 6552, 6555, 6561, 6570, 6576, 6585, 6586, 6593, 6597,
6605, 6606, 6611, 6616, 6617, 6630, 6640, 6644, 6653, 6668,
6669, 6673, 6678, 6683, 6691, 6706, 6727, 6731, 6735, 6739,
6743, 6750, 6755, 6764, 6773, 6781, 6792, 6796, 6800, 6807,
6811, 6815, 6822, 6827, 6836, 6841, 6850, 6880, 6915, 6916,
6938, 6939, 6944, 6945, 6950, 6978, 6982, 6983, 6984, 6988,
6992, 6999, 7000, 7004, 7008, 7016, 7017, 7026, 7027, 7034,
7047, 7060, 7077, 7081, 7085, 7095, 7099, 7106, 7110, 7117,
7122, 7129, 7135, 7141, 7145, 7152, 7156, 7160, 7164, 7171,
7176, 7182, 7186, 7193, 7197, 7204, 7215, 7219, 7224, 7230,
7234, 7241, 7245, 7249, 7256, 7260, 7265, 7269, 7273, 7277,
7281, 7285, 7289, 7293, 7299, 7303, 7307, 7311, 7316, 7322,
7328, 7334, 7340, 7346, 7352, 7358, 7364, 7370, 7376, 7380,
7384, 7388, 7392, 7396, 7400, 7404, 7408, 7412, 7416, 7420,
7425, 7429, 7433, 7437, 7441, 7447, 7453, 7457, 7461, 7466,
7472, 7478, 7482, 7486, 7490, 7494, 7498, 7503, 7507, 7511,
7516, 7522, 7528, 7532, 7536, 7543, 7548, 7554, 7558, 7562,
7569, 7573, 7579, 7583, 7589, 7593, 7597, 7601, 7605, 7609,
7615, 7621, 7626, 7628, 7634, 7635, 7641, 7642, 7650, 7655,
7661, 7666, 7671, 7678, 7682, 7690, 7697, 7704, 7711, 7718,
7725, 7736, 7737, 7745, 7754, 7756, 7761, 7767, 7768, 7770,
7776, 7777, 7783, 7784, 7788, 7799, 7801, 7806, 7820, 7821,
7823, 7829, 7830, 7838, 7843, 7849, 7853, 7860, 7864, 7868,
7872, 7878, 7903, 7921, 7939, 7971, 7982, 7983, 7987, 7991,
7999, 8006, 8010, 8017, 8021, 8028, 8032, 8036, 8042, 8049,
8053, 8057, 8062, 8066, 8073, 8078, 8086, 8090, 8097, 8102,
8110, 8115, 8119, 8123, 8127, 8134, 8138, 8145, 8150, 8156,
8161, 8169, 8174, 8182, 8186, 8190, 8195, 8200, 8207, 8214,
8222, 8230, 8234, 8238, 8243, 8250, 8256, 8264, 8271, 8281,
8284, 8288, 8292, 8298, 8305, 8311, 8318, 8322, 8333, 8338,
8344, 8352, 8356, 8363, 8369, 8375, 8379, 8388, 8391, 8395,
8399, 8406, 8410, 8424, 8428, 8435, 8440, 8446, 8457, 8468,
8472, 8480, 8485, 8493, 8497, 8504, 8510, 8519, 8524, 8530,
8535, 8540, 8550, 8555, 8565, 8572, 8575, 8579, 8583, 8590,
8593, 8597, 8602, 8608, 8614, 8618, 8622, 8626, 8630, 8636,
8647, 8651, 8658, 8662, 8666, 8670, 8679, 8685, 8691, 8695,
8705, 8710, 8715, 8722, 8727, 8733, 8739, 8765, 8777, 8781,
8810, 8814, 8822, 8826, 8830, 8837, 8838, 8842, 8848, 8854,
8863, 8869, 8879, 8880, 8889, 8901, 8921, 8937, 8944, 8950,
8960, 8967, 8972, 8979, 8986, 8993, 9000, 9007, 9014, 9022,
9023, 9024, 9028, 9029, 9030, 9031, 9035, 9037, 9048, 9055,
9061, 9069, 9071, 9073, 9075, 9077, 9079, 9085, 9087, 9092,
9094, 9096, 9098, 9100, 9104, 9108, 9116, 9124, 9128, 9133,
9135, 9180, 9184, 9190, 9197, 9199, 9205, 9209, 9211, 9216,
9220, 9224, 9229, 9230, 9234, 9242, 9251, 9255, 9257, 9259,
9264, 9265, 9270, 9271, 9276, 9277, 9278, 9279, 9283, 9285,
9290, 9292, 9297, 9299, 9301, 9306, 9308, 9314, 9315, 9324,
9325, 9333, 9341, 9347, 9348, 9356, 9375, 9383, 9396, 9400,
9407, 9414, 9421, 9431, 9435, 9439, 9443, 9452, 9457, 9463,
9467, 9473, 9478, 9498, 9502, 9506, 9513, 9517, 9521, 9529,
9533, 9537, 9544, 9549, 9555, 9562, 9576, 9583, 9587, 9599,
9606, 9613, 9620, 9626, 9635, 9641, 9651, 9658, 9665, 9669,
9681, 9690, 9695, 9710, 9719, 9726, 9731, 9740, 9747, 9758,
9764, 9769, 9776, 9777, 9787, 9792, 9798, 9802, 9806, 9810,
9815, 9821, 9828, 9843, 9847, 9854, 9861, 9868, 9875, 9887,
9900, 9913, 9921, 9929, 9944, 9959, 9963, 9972, 9976, 9983,
9988, 9993, 9998, 10003, 10008, 10013, 10018, 10023, 10028, 10033,
10038, 10043, 10048, 10053, 10058, 10063, 10068, 10073, 10078, 10083,
10088, 10098, 10103, 10109, 10114, 10122, 10128, 10132, 10139, 10145,
10156, 10165, 10182, 10190, 10195, 10199, 10212, 10220, 10225, 10232,
10236, 10243, 10259, 10273, 10279, 10287, 10293, 10298, 10302, 10315,
10330, 10336, 10344, 10345, 10346, 10347, 10351, 10352, 10361, 10368,
10373, 10379, 10383, 10390, 10402, 10410, 10412, 10423, 10437, 10446,
10450, 10457, 10469, 10479, 10483, 10488, 10492, 10497, 10501, 10505,
10512, 10516, 10520, 10524, 10537, 10544, 10553, 10559, 10565, 10571,
10575, 10583, 10588, 10596, 10601, 10607, 10613, 10619, 10623, 10631,
10639, 10644, 10651, 10655, 10659, 10663, 10670, 10674, 10678, 10682,
10690, 10700, 10710, 10720, 10725, 10734, 10738, 10743, 10750, 10754,
10767, 10771, 10778, 10783, 10788, 10793, 10798, 10803, 10808, 10817,
10820, 10824, 10828, 10835, 10842, 10843, 10847, 10848, 10852, 10853,
10857, 10858, 10859, 10874, 10878, 10891, 10896, 10901, 10907, 10912,
10919, 10926, 10931, 10937, 10944, 10951, 10958, 10965, 10972, 10979,
10992, 10999, 11004, 11009, 11014, 11019, 11024, 11029, 11034, 11039,
11044, 11053, 11058, 11064, 11069, 11074, 11082, 11087, 11092, 11097,
11102, 11110, 11118, 11126, 11131, 11138, 11148, 11153, 11165, 11170,
11175, 11182, 11188, 11193, 11198, 11203, 11208, 11213, 11218, 11225,
11230, 11235, 11240, 11245, 11250, 11255, 11260, 11265, 11270, 11275,
11280, 11285, 11290, 11295, 11300, 11305, 11310, 11315, 11323, 11331,
11339, 11347, 11360, 11373, 11386, 11399, 11412, 11425, 11438, 11451,
11462, 11474, 11482, 11491, 11496, 11503, 11510, 11514, 11521, 11525,
11529, 11533, 11537, 11541, 11548, 11553, 11557, 11563, 11572, 11577,
11582, 11587, 11592, 11597, 11602, 11607, 11612, 11617, 11622, 11627,
11632, 11637, 11645, 11651, 11657, 11665, 11670, 11673, 11677, 11680,
11688, 11692, 11698, 11704, 11710, 11714, 11717, 11721, 11728, 11735,
11744, 11749, 11754, 11759, 11764, 11769, 11774, 11782, 11786, 11794,
11797, 11806, 11809, 11817, 11822, 11827, 11832, 11837, 11845, 11853,
11861, 11866, 11872, 11878, 11884, 11888, 11895, 11900, 11906, 11912,
11918, 11927, 11931, 11936, 11942, 11946, 11950, 11957, 11965, 11969,
11974, 11980, 11984, 11988, 11995, 12000, 12008, 12012, 12019, 12023,
12030, 12038, 12046, 12052, 12060, 12068, 12073, 12080, 12088, 12093,
12099, 12106, 12114, 12119, 12125, 12133, 12138, 12144, 12152, 12157,
12163, 12169, 12175, 12179, 12186, 12199, 12214, 12229, 12246, 12249,
12253, 12257, 12262, 12268, 12273, 12278, 12283, 12288, 12296, 12299,
12303, 12305, 12307, 12310, 12329, 12334, 12342, 12347, 12357, 12365,
12373, 12379, 12385, 12391, 12399, 12403, 12407, 12411, 12417, 12422,
12429, 12434, 12439, 12444, 12455, 12463, 12469, 12475, 12483, 12498,
12502, 12509, 12511, 12518, 12519, 12526, 12530, 12534, 12538, 12542,
12546, 12550, 12554, 12558, 12562, 12566, 12570, 12574, 12578, 12582,
12586, 12590, 12594, 12598, 12605, 12607, 12614, 12622, 12630, 12638,
12646, 12654, 12662, 12670, 12678, 12686, 12694, 12702, 12710, 12718,
12726, 12734, 12742, 12750, 12758, 12766, 12777, 12778, 12779, 12783,
12784, 12785, 12786, 12787, 12788, 12789, 12790, 12791, 12792, 12793,
12794, 12795, 12796, 12797, 12798, 12799, 12800, 12801, 12802, 12803,
12804, 12805, 12806, 12807, 12808, 12809, 12810, 12811, 12812, 12813,
12814, 12815, 12816, 12817, 12818, 12819, 12820, 12821, 12822, 12823,
12824, 12825, 12826, 12827, 12828, 12829, 12830, 12831, 12832, 12833,
12834, 12835, 12836, 12837, 12838, 12839, 12840, 12841, 12842, 12843,
12844, 12845, 12846, 12847, 12848, 12849, 12850, 12851, 12852, 12853,
12854, 12855, 12856, 12857, 12858, 12859, 12860, 12861, 12862, 12863,
12864, 12865, 12866, 12867, 12868, 12869, 12870, 12871, 12872, 12873,
12874, 12875, 12876, 12877, 12878, 12879, 12880, 12881, 12882, 12883,
12884, 12885, 12886, 12887, 12888, 12889, 12890, 12891, 12892, 12893,
12894, 12895, 12896, 12897, 12898, 12899, 12900, 12901, 12902, 12903,
12904, 12905, 12906, 12907, 12908, 12909, 12910, 12911, 12912, 12913,
12914, 12915, 12916, 12917, 12918, 12919, 12920, 12921, 12922, 12923,
12924, 12925, 12926, 12927, 12928, 12929, 12930, 12931, 12932, 12933,
12934, 12935, 12936, 12937, 12938, 12939, 12940, 12941, 12942, 12943,
12944, 12945, 12946, 12947, 12948, 12949, 12950, 12951, 12952, 12953,
12954, 12955, 12956, 12957, 12958, 12959, 12960, 12961, 12962, 12963,
12964, 12965, 12966, 12967, 12968, 12969, 12970, 12971, 12972, 12973,
12974, 12975, 12976, 12977, 12978, 12979, 12980, 12981, 12982, 12983,
12984, 12985, 12986, 12987, 12988, 12989, 12990, 12991, 12992, 12993,
12994, 12995, 12996, 12997, 12998, 12999, 13000, 13001, 13002, 13003,
13004, 13005, 13006, 13007, 13008, 13009, 13010, 13011, 13012, 13013,
13014, 13015, 13016, 13017, 13018, 13019, 13020, 13021, 13022, 13023,
13024, 13025, 13026, 13027, 13028, 13029, 13030, 13031, 13032, 13033,
13034, 13035, 13036, 13037, 13038, 13039, 13040, 13041, 13042, 13043,
13044, 13045, 13046, 13047, 13048, 13049, 13050, 13051, 13052, 13053,
13054, 13055, 13056, 13057, 13058, 13059, 13060, 13061, 13062, 13063,
13064, 13065, 13066, 13067, 13068, 13069, 13070, 13071, 13072, 13073,
13074, 13075, 13076, 13077, 13078, 13079, 13080, 13081, 13082, 13083,
13084, 13085, 13086, 13087, 13088, 13089, 13090, 13091, 13092, 13093,
13094, 13095, 13096, 13097, 13098, 13099, 13100, 13101, 13102, 13103,
13104, 13105, 13106, 13107, 13108, 13109, 13110, 13111, 13112, 13113,
13114, 13115, 13116, 13117, 13118, 13119, 13120, 13121, 13122, 13123,
13124, 13125, 13126, 13127, 13128, 13129, 13130, 13131, 13132, 13133,
13134, 13135, 13136, 13137, 13138, 13139, 13140, 13141, 13142, 13143,
13144, 13145, 13146, 13147, 13148, 13149, 13150, 13151, 13152, 13153,
13154, 13155, 13156, 13157, 13158, 13159, 13160, 13161, 13162, 13163,
13164, 13165, 13166, 13167, 13168, 13169, 13170, 13171, 13172, 13173,
13174, 13175, 13176, 13177, 13178, 13179, 13180, 13181, 13182, 13183,
13184, 13185, 13186, 13187, 13188, 13189, 13190, 13191, 13192, 13193,
13194, 13195, 13196, 13197, 13198, 13199, 13200, 13201, 13202, 13203,
13204, 13205, 13206, 13207, 13208, 13209, 13210, 13211, 13212, 13213,
13214, 13215, 13216, 13217, 13218, 13219, 13220, 13221, 13222, 13223,
13224, 13225, 13226, 13227, 13228, 13229, 13230, 13231, 13232, 13233,
13234, 13235, 13236, 13237, 13238, 13239, 13240, 13241, 13242, 13243,
13244, 13245, 13246, 13247, 13248, 13249, 13250, 13251, 13252, 13253,
13254, 13255, 13256, 13257, 13258, 13259, 13260, 13261, 13262, 13263,
13264, 13265, 13266, 13267, 13268, 13269, 13270, 13271, 13272, 13273,
13274, 13275, 13276, 13277, 13278, 13279, 13280, 13281, 13282, 13283,
13284, 13285, 13286, 13287, 13288, 13289, 13290, 13291, 13292, 13293,
13294, 13295, 13296, 13297, 13298, 13299, 13300, 13301, 13302, 13303,
13304, 13305, 13306, 13307, 13308, 13309, 13310, 13311, 13312, 13313,
13314, 13315, 13316, 13317, 13318, 13319, 13320, 13321, 13322, 13323,
13324, 13325, 13326, 13327, 13328, 13329, 13330, 13331, 13332, 13333,
13334, 13335, 13336, 13337, 13338, 13339, 13340, 13341, 13342, 13343,
13344, 13345, 13346, 13347, 13348, 13349, 13350, 13351, 13352, 13353,
13354, 13355, 13356, 13357, 13358, 13359, 13360, 13361, 13362, 13363,
13364, 13365, 13366, 13367, 13368, 13369, 13370, 13371, 13372, 13373,
13374, 13375, 13376, 13377, 13378, 13379, 13380, 13381, 13382, 13383,
13384, 13385, 13386, 13387, 13388, 13389, 13390, 13391, 13392, 13393,
13394, 13395, 13396, 13397, 13398, 13399, 13400, 13401, 13402, 13403,
13404, 13405, 13406, 13407, 13408, 13409, 13410, 13411, 13412, 13413,
13414, 13415, 13416, 13417, 13418, 13419, 13420, 13421, 13422, 13423,
13424, 13425, 13426, 13427, 13431, 13434, 13438, 13439, 13441, 13442,
13443, 13444, 13445, 13446, 13447, 13448, 13449, 13450, 13451, 13453,
13454, 13455, 13456, 13457, 13458, 13459, 13460, 13461, 13462, 13463,
13464, 13465, 13466, 13467, 13468, 13469, 13470, 13471, 13472, 13473,
13474, 13475, 13476, 13477, 13478, 13479, 13480, 13481, 13482, 13483,
13484, 13485, 13486, 13487, 13489, 13490, 13491, 13492, 13493, 13494,
13495, 13496, 13497, 13498, 13499, 13500, 13501, 13502, 13503, 13504,
13505, 13506, 13507, 13508, 13510, 13511, 13512, 13513, 13514, 13515,
13516, 13517, 13518, 13519, 13520, 13521, 13522, 13523, 13524, 13525,
13526, 13527, 13528, 13529, 13530, 13531, 13532, 13533, 13534, 13535,
13536, 13537, 13538, 13539, 13540, 13541, 13542, 13543, 13544, 13546,
13547, 13548, 13549, 13550, 13551, 13552, 13553, 13554, 13555, 13556,
13557, 13558, 13559, 13560, 13561, 13562, 13563, 13564, 13565, 13566,
13567, 13568, 13569, 13570, 13571, 13572, 13573, 13574, 13575, 13576,
13577, 13578, 13579, 13580, 13581, 13582, 13583, 13584, 13585, 13586,
13587, 13588, 13589, 13590, 13591, 13592, 13593, 13594, 13595, 13596,
13597, 13598, 13599, 13600, 13601, 13602, 13603, 13604, 13605, 13606,
13607, 13608, 13609, 13611, 13612, 13613, 13614, 13615, 13616, 13617,
13618, 13619, 13620, 13621, 13622, 13623, 13625, 13626, 13627, 13628,
13629, 13630, 13631, 13632, 13633, 13634, 13635, 13636, 13638, 13639,
13640, 13642, 13643, 13644, 13645, 13646, 13647, 13648, 13649, 13650,
13651, 13652, 13653, 13654, 13655, 13656, 13658, 13659, 13660, 13661,
13662, 13663, 13664
};
#endif
#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"$end", "error", "$undefined", "NAME_OB", "STRING_VALUE", "INTNUM",
"DATE_VALUE", "TIMESTAMP_VALUE", "HINT_VALUE", "BOOL_VALUE", "APPROXNUM",
"DECIMAL_VAL", "NULLX", "QUESTIONMARK", "SYSTEM_VARIABLE",
"USER_VARIABLE", "CLIENT_VERSION", "MYSQL_DRIVER", "HEX_STRING_VALUE",
"OUTLINE_DEFAULT_TOKEN", "KILL_EXPR", "QUERY", "CONNECTION",
"LOWER_COMMA", "','", "MINUS", "EXCEPT", "UNION", "INTERSECT", "WINDOW",
"INNER", "RIGHT", "FULL", "LEFT", "CROSS", "JOIN", "SET_VAR", "OR_OP",
"OR", "XOR", "AND_OP", "AND", "ELSE", "THEN", "WHEN", "CASE", "BETWEEN",
"LOWER_THAN_COMP", "REGEXP", "IN", "LIKE", "IS", "COMP_NE", "COMP_LT",
"COMP_LE", "COMP_GT", "COMP_GE", "P_NSEQ", "COM", "COMP_EQ", "ESCAPE",
"'|'", "'&'", "SHIFT_RIGHT", "SHIFT_LEFT", "'+'", "'-'", "'*'", "'/'",
"'%'", "POW", "DIV", "MOD", "'^'", "LOWER_THAN_NEG", "CNNOP", "'~'",
"NEG", "LOWER_PARENS", "'('", "')'", "TRANSACTION", "HIGHER_PARENS",
"'.'", "NOT2", "NOT", "COLLATE", "BINARY", "INTERVAL", "LOWER_KEY",
"KEY", "LOWER_ON", "ON", "LOWER_OVER", "OVER", "LOWER_INTO", "INTO",
"LOWER_THAN_BY_ACCESS_SESSION", "ERROR", "PARSER_SYNTAX_ERROR",
"READ_STATIC", "INDEX_HINT", "USE_NL", "FROZEN_VERSION", "TOPK",
"QUERY_TIMEOUT", "READ_CONSISTENCY", "HOTSPOT", "LOG_LEVEL",
"LEADING_HINT", "ORDERED", "FULL_HINT", "USE_MERGE", "USE_HASH",
"NO_USE_HASH", "USE_PLAN_CACHE", "USE_JIT", "NO_USE_JIT", "NO_USE_NL",
"NO_USE_MERGE", "NO_USE_BNL", "USE_NL_MATERIALIZATION",
"NO_USE_NL_MATERIALIZATION", "NO_REWRITE", "TRACE_LOG", "USE_PX",
"QB_NAME", "USE_HASH_AGGREGATION", "NO_USE_HASH_AGGREGATION", "NEG_SIGN",
"USE_LATE_MATERIALIZATION", "NO_USE_LATE_MATERIALIZATION", "USE_BNL",
"MAX_CONCURRENT", "PX_JOIN_FILTER", "NO_USE_PX", "PQ_DISTRIBUTE",
"RANDOM_LOCAL", "BROADCAST", "TRACING", "MERGE_HINT", "NO_MERGE_HINT",
"NO_EXPAND", "USE_CONCAT", "UNNEST", "NO_UNNEST", "PLACE_GROUP_BY",
"NO_PLACE_GROUP_BY", "NO_PRED_DEDUCE", "TRANS_PARAM",
"FORCE_REFRESH_LOCATION_CACHE", "LOAD_BATCH_SIZE", "NO_PX_JOIN_FILTER",
"DISABLE_PARALLEL_DML", "PQ_MAP", "ENABLE_PARALLEL_DML", "NO_PARALLEL",
"_BINARY", "_UTF8", "_UTF8MB4", "_GBK", "_UTF16", "_GB18030",
"SELECT_HINT_BEGIN", "UPDATE_HINT_BEGIN", "DELETE_HINT_BEGIN",
"INSERT_HINT_BEGIN", "REPLACE_HINT_BEGIN", "HINT_HINT_BEGIN", "HINT_END",
"LOAD_DATA_HINT_BEGIN", "END_P", "DELIMITER", "ACCESSIBLE", "ADD", "ALL",
"ALTER", "ANALYZE", "AS", "ASC", "ASENSITIVE", "BEFORE", "BIGINT",
"BLOB", "BOTH", "BY", "CALL", "CASCADE", "CHANGE", "CHAR", "CHARACTER",
"CHECK", "COLUMN", "CONDITION", "CONSTRAINT", "CONTINUE", "CONVERT",
"CREATE", "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP",
"CURRENT_USER", "CURSOR", "DATABASE", "DATABASES", "DAY_HOUR",
"DAY_MICROSECOND", "DAY_MINUTE", "DAY_SECOND", "DECLARE", "DECIMAL",
"DEFAULT", "DELAYED", "DELETE", "DESC", "DESCRIBE", "DETERMINISTIC",
"DISTINCT", "DISTINCTROW", "DOUBLE", "DROP", "DUAL", "EACH", "ELSEIF",
"ENCLOSED", "ESCAPED", "EXISTS", "EXIT", "EXPLAIN", "FETCH", "FLOAT",
"FLOAT4", "FLOAT8", "FOR", "FORCE", "FOREIGN", "FROM", "GENERATED",
"GET", "GRANT", "GROUP", "HAVING", "HIGH_PRIORITY", "HOUR_MICROSECOND",
"HOUR_MINUTE", "HOUR_SECOND", "IF", "IGNORE", "INDEX", "INFILE", "INOUT",
"INSENSITIVE", "INSERT", "INT", "INT1", "INT2", "INT3", "INT4", "INT8",
"INTEGER", "IO_AFTER_GTIDS", "IO_BEFORE_GTIDS", "ITERATE", "KEYS",
"KILL", "LEADING", "LEAVE", "LIMIT", "LINEAR", "LINES", "LOAD",
"LOCALTIME", "LOCALTIMESTAMP", "LONG", "LONGBLOB", "LONGTEXT", "LOOP",
"LOW_PRIORITY", "MASTER_BIND", "MASTER_SSL_VERIFY_SERVER_CERT", "MATCH",
"MAXVALUE", "MEDIUMBLOB", "MEDIUMINT", "MEDIUMTEXT", "MIDDLEINT",
"MINUTE_MICROSECOND", "MINUTE_SECOND", "MODIFIES", "NATURAL",
"NO_WRITE_TO_BINLOG", "OPTIMIZE", "OPTION", "OPTIONALLY", "ORDER", "OUT",
"OUTER", "OUTFILE", "PARTITION", "PRECISION", "PRIMARY", "PROCEDURE",
"PURGE", "RANGE", "READ", "READS", "READ_WRITE", "REAL", "REFERENCES",
"RELEASE", "RENAME", "REPEAT", "REPLACE", "REQUIRE", "RESIGNAL",
"RESTRICT", "RETURN", "REVOKE", "RLIKE", "SCHEMA", "SCHEMAS",
"SECOND_MICROSECOND", "SELECT", "SENSITIVE", "SEPARATOR", "SET", "SHOW",
"SIGNAL", "SMALLINT", "SPATIAL", "SPECIFIC", "SQL", "SQLEXCEPTION",
"SQLSTATE", "SQLWARNING", "SQL_BIG_RESULT", "SQL_CALC_FOUND_ROWS",
"SQL_SMALL_RESULT", "SSL", "STARTING", "STORED", "STRAIGHT_JOIN",
"TABLE", "TERMINATED", "TINYBLOB", "TINYINT", "TINYTEXT", "TO",
"TRAILING", "TRIGGER", "UNDO", "UNIQUE", "UNLOCK", "UNSIGNED", "UPDATE",
"USAGE", "USE", "USING", "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP",
"VALUES", "VARBINARY", "VARCHAR", "VARCHARACTER", "VARYING", "VIRTUAL",
"WHERE", "WHILE", "WITH", "WRITE", "YEAR_MONTH", "ZEROFILL",
"TABLEGROUP", "ACCESS", "ACCOUNT", "ACTION", "ACTIVE", "ADDDATE",
"AFTER", "AGAINST", "AGGREGATE", "ALGORITHM", "ALWAYS", "ANALYSE", "ANY",
"APPROX_COUNT_DISTINCT", "APPROX_COUNT_DISTINCT_SYNOPSIS",
"APPROX_COUNT_DISTINCT_SYNOPSIS_MERGE", "ASCII", "AT", "AUTHORS", "AUTO",
"AUTOEXTEND_SIZE", "AUTO_INCREMENT", "AVG", "AVG_ROW_LENGTH", "ACTIVATE",
"AVAILABILITY", "ARCHIVELOG", "AUDIT", "BACKUP", "BALANCE", "BASE",
"BASELINE", "BASELINE_ID", "BASIC", "BEGI", "BINDING", "BINLOG", "BIT",
"BLOCK", "BLOCK_INDEX", "BLOCK_SIZE", "BLOOM_FILTER", "BOOL", "BOOLEAN",
"BOOTSTRAP", "BTREE", "BYTE", "BREADTH", "BUCKETS", "BISON_LIST",
"BACKUPSET", "CACHE", "CANCEL", "CASCADED", "CAST", "CATALOG_NAME",
"CHAIN", "CHANGED", "CHARSET", "CHECKSUM", "CHECKPOINT", "CHUNK",
"CIPHER", "CLASS_ORIGIN", "CLEAN", "CLEAR", "CLIENT", "CLOG", "CLOSE",
"CLUSTER", "CLUSTER_ID", "CLUSTER_NAME", "COALESCE", "COLUMN_STAT",
"CODE", "COLLATION", "COLUMN_FORMAT", "COLUMN_NAME", "COLUMNS",
"COMMENT", "COMMIT", "COMMITTED", "COMPACT", "COMPLETION", "COMPRESSED",
"COMPRESSION", "CONCURRENT", "CONSISTENT", "CONSISTENT_MODE",
"CONSTRAINT_CATALOG", "CONSTRAINT_NAME", "CONSTRAINT_SCHEMA", "CONTAINS",
"CONTEXT", "CONTRIBUTORS", "COPY", "COUNT", "CPU", "CREATE_TIMESTAMP",
"CTX_ID", "CUBE", "CURDATE", "CURRENT", "CURTIME", "CURSOR_NAME",
"CUME_DIST", "CYCLE", "DAG", "DATA", "DATAFILE", "DATA_TABLE_ID", "DATE",
"DATE_ADD", "DATE_SUB", "DATETIME", "DAY", "DEALLOCATE", "DECRYPTION",
"DEFAULT_AUTH", "DEFINER", "DELAY", "DELAY_KEY_WRITE", "DEPTH",
"DES_KEY_FILE", "DENSE_RANK", "DESTINATION", "DIAGNOSTICS", "DIRECTORY",
"DISABLE", "DISCARD", "DISK", "DISKGROUP", "DO", "DUMP", "DUMPFILE",
"DUPLICATE", "DUPLICATE_SCOPE", "DYNAMIC", "DATABASE_ID",
"DEFAULT_TABLEGROUP", "EFFECTIVE", "ENABLE", "ENCRYPTION", "END", "ENDS",
"ENGINE_", "ENGINES", "ENUM", "ENTITY", "ERROR_CODE", "ERROR_P",
"ERRORS", "EVENT", "EVENTS", "EVERY", "EXCHANGE", "EXECUTE", "EXPANSION",
"EXPIRE", "EXPIRE_INFO", "EXPORT", "OUTLINE", "EXTENDED",
"EXTENDED_NOADDR", "EXTENT_SIZE", "EXTRACT", "EXPIRED", "FAILOVER",
"FAST", "FAULTS", "FIELDS", "FILEX", "FINAL_COUNT", "FIRST",
"FIRST_VALUE", "FIXED", "FLUSH", "FOLLOWER", "FORMAT", "FOUND", "FREEZE",
"FREQUENCY", "FUNCTION", "FOLLOWING", "FLASHBACK", "FROZEN", "FILE_ID",
"GENERAL", "GEOMETRY", "GEOMETRYCOLLECTION", "GET_FORMAT", "GLOBAL",
"GRANTS", "GROUP_CONCAT", "GROUPING", "GTS", "GLOBAL_NAME",
"GLOBAL_ALIAS", "HANDLER", "HASH", "HELP", "HISTOGRAM", "HOST", "HOSTS",
"HOUR", "ID", "IDC", "IDENTIFIED", "IGNORE_SERVER_IDS", "ILOG", "IMPORT",
"INCR", "INDEXES", "INDEX_TABLE_ID", "INFO", "INITIAL_SIZE", "INNODB",
"INSERT_METHOD", "INSTALL", "INSTANCE", "INVOKER", "IO", "IO_THREAD",
"IPC", "ISOLATE", "ISOLATION", "ISSUER", "IS_TENANT_SYS_POOL",
"INVISIBLE", "MERGE", "ISNULL", "INCREMENTAL", "INNER_PARSE",
"ILOGCACHE", "INPUT", "JOB", "JSON", "KEY_BLOCK_SIZE", "KEY_VERSION",
"KVCACHE", "LAG", "LANGUAGE", "LAST", "LAST_VALUE", "LEAD", "LEADER",
"LEAVES", "LESS", "LEAK", "LEAK_MOD", "LINESTRING", "LIST_", "LISTAGG",
"LOCAL", "LOCALITY", "LOCATION", "LOCKED", "LOCKS", "LOGFILE",
"LOGONLY_REPLICA_NUM", "LOGS", "LOCK_", "LOGICAL_READS", "LEVEL", "LN",
"LOG", "MAJOR", "MANUAL", "MASTER", "MASTER_AUTO_POSITION",
"MASTER_CONNECT_RETRY", "MASTER_DELAY", "MASTER_HEARTBEAT_PERIOD",
"MASTER_HOST", "MASTER_LOG_FILE", "MASTER_LOG_POS", "MASTER_PASSWORD",
"MASTER_PORT", "MASTER_RETRY_COUNT", "MASTER_SERVER_ID", "MASTER_SSL",
"MASTER_SSL_CA", "MASTER_SSL_CAPATH", "MASTER_SSL_CERT",
"MASTER_SSL_CIPHER", "MASTER_SSL_CRL", "MASTER_SSL_CRLPATH",
"MASTER_SSL_KEY", "MASTER_USER", "MAX", "MAX_CONNECTIONS_PER_HOUR",
"MAX_CPU", "MAX_DISK_SIZE", "MAX_IOPS", "MAX_MEMORY",
"MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SESSION_NUM", "MAX_SIZE",
"MAX_UPDATES_PER_HOUR", "MAX_USER_CONNECTIONS", "MEDIUM", "MEMORY",
"MEMTABLE", "MESSAGE_TEXT", "META", "MICROSECOND", "MIGRATE", "MIN",
"MIN_CPU", "MIN_IOPS", "MIN_MEMORY", "MINOR", "MIN_ROWS", "MINUTE",
"MODE", "MODIFY", "MONTH", "MOVE", "MULTILINESTRING", "MULTIPOINT",
"MULTIPOLYGON", "MUTEX", "MYSQL_ERRNO", "MIGRATION", "MAX_USED_PART_ID",
"MAXIMIZE", "MATERIALIZED", "MEMSTORE_PERCENT", "NAME", "NAMES",
"NATIONAL", "NCHAR", "NDB", "NDBCLUSTER", "NEW", "NEXT", "NO", "NOAUDIT",
"NODEGROUP", "NONE", "NORMAL", "NOW", "NOWAIT", "NO_WAIT", "NULLS",
"NUMBER", "NVARCHAR", "NTILE", "NTH_VALUE", "NOARCHIVELOG", "NETWORK",
"NOPARALLEL", "OBSOLETE", "OCCUR", "OF", "OFF", "OFFSET", "OLD_PASSWORD",
"ONE", "ONE_SHOT", "ONLY", "OPEN", "OPTIONS", "ORIG_DEFAULT", "OWNER",
"OLD_KEY", "PACK_KEYS", "PAGE", "PARALLEL", "PARAMETERS", "PARSER",
"PARTIAL", "PARTITION_ID", "PARTITIONING", "PARTITIONS", "PASSWORD",
"PAUSE", "PERCENT_RANK", "PHASE", "PLAN", "PHYSICAL", "PLANREGRESS",
"PLUGIN", "PLUGIN_DIR", "PLUGINS", "POINT", "POLYGON", "PERFORMANCE",
"PROTECTION", "PRIORITY", "PL", "POOL", "PORT", "POSITION", "PREPARE",
"PRESERVE", "PREV", "PRIMARY_ZONE", "PRIVILEGES", "PROCESS",
"PROCESSLIST", "PROFILE", "PROFILES", "PROXY", "PRECEDING", "PCTFREE",
"P_ENTITY", "P_CHUNK", "PRIMARY_ROOTSERVICE_LIST", "PRIMARY_CLUSTER_ID",
"PUBLIC", "PROGRESSIVE_MERGE_NUM", "PS", "QUARTER", "QUEUE_TIME",
"QUICK", "REBUILD", "RECOVER", "RECYCLE", "REDO_BUFFER_SIZE", "REDOFILE",
"REDUNDANT", "REFRESH", "REGION", "RELAY", "RELAYLOG", "RELAY_LOG_FILE",
"RELAY_LOG_POS", "RELAY_THREAD", "RELOAD", "REMOVE", "REORGANIZE",
"REPAIR", "REPEATABLE", "REPLICA", "REPLICA_NUM", "REPLICA_TYPE",
"REPLICATION", "REPORT", "RESET", "RESOURCE", "RESOURCE_POOL_LIST",
"RESPECT", "RESTART", "RESTORE", "RESUME", "RETURNED_SQLSTATE",
"RETURNS", "REVERSE", "REWRITE_MERGE_VERSION", "ROLLBACK", "ROLLUP",
"ROOT", "ROOTTABLE", "ROOTSERVICE", "ROOTSERVICE_LIST", "ROUTINE", "ROW",
"ROLLING", "ROW_COUNT", "ROW_FORMAT", "ROWS", "RTREE", "RUN",
"RECYCLEBIN", "ROTATE", "ROW_NUMBER", "RUDUNDANT", "RECURSIVE", "RANDOM",
"REDO_TRANSPORT_OPTIONS", "REMOTE_OSS", "RT", "RANK", "READ_ONLY",
"RECOVERY", "SAMPLE", "SAVEPOINT", "SCHEDULE", "SCHEMA_NAME", "SCOPE",
"SECOND", "SECURITY", "SEED", "SERIAL", "SERIALIZABLE", "SERVER",
"SERVER_IP", "SERVER_PORT", "SERVER_TYPE", "SESSION", "SESSION_USER",
"SET_MASTER_CLUSTER", "SET_SLAVE_CLUSTER", "SET_TP", "SHARE", "SHUTDOWN",
"SIGNED", "SIMPLE", "SLAVE", "SLOW", "SLOT_IDX", "SNAPSHOT", "SOCKET",
"SOME", "SONAME", "SOUNDS", "SOURCE", "SPFILE", "SPLIT",
"SQL_AFTER_GTIDS", "SQL_AFTER_MTS_GAPS", "SQL_BEFORE_GTIDS",
"SQL_BUFFER_RESULT", "SQL_CACHE", "SQL_NO_CACHE", "SQL_ID", "SQL_THREAD",
"SQL_TSI_DAY", "SQL_TSI_HOUR", "SQL_TSI_MINUTE", "SQL_TSI_MONTH",
"SQL_TSI_QUARTER", "SQL_TSI_SECOND", "SQL_TSI_WEEK", "SQL_TSI_YEAR",
"STANDBY", "STAT", "START", "STARTS", "STATS_AUTO_RECALC",
"STATS_PERSISTENT", "STATS_SAMPLE_PAGES", "STATUS", "STATEMENTS", "STD",
"STDDEV", "STDDEV_POP", "STDDEV_SAMP", "STRONG", "SYNCHRONIZATION",
"STOP", "STORAGE", "STORAGE_FORMAT_VERSION",
"STORAGE_FORMAT_WORK_VERSION", "STORING", "STRING", "SUBCLASS_ORIGIN",
"SUBDATE", "SUBJECT", "SUBPARTITION", "SUBPARTITIONS", "SUBSTR",
"SUBSTRING", "SUCCESSFUL", "SUM", "SUPER", "SUSPEND", "SWAPS", "SWITCH",
"SWITCHES", "SWITCHOVER", "SYSTEM", "SYSTEM_USER", "SYSDATE",
"SESSION_ALIAS", "SYNONYM", "SIZE", "TABLE_CHECKSUM", "TABLE_MODE",
"TABLE_ID", "TABLE_NAME", "TABLEGROUPS", "TABLES", "TABLESPACE",
"TABLET", "TABLET_MAX_SIZE", "TEMPLATE", "TEMPORARY", "TEMPTABLE",
"TENANT", "TEXT", "THAN", "TIME", "TIMESTAMP", "TIMESTAMPADD",
"TIMESTAMPDIFF", "TP_NO", "TP_NAME", "TRACE", "TRADITIONAL", "TRIGGERS",
"TRIM", "TRUNCATE", "TYPE", "TYPES", "TASK", "TABLET_SIZE",
"TABLEGROUP_ID", "TENANT_ID", "THROTTLE", "TIME_ZONE_INFO",
"UNCOMMITTED", "UNDEFINED", "UNDO_BUFFER_SIZE", "UNDOFILE", "UNICODE",
"UNINSTALL", "UNIT", "UNIT_NUM", "UNLOCKED", "UNTIL", "UNUSUAL",
"UPGRADE", "USE_BLOOM_FILTER", "UNKNOWN", "USE_FRM", "USER",
"USER_RESOURCES", "UNBOUNDED", "VALID", "VALUE", "VARIANCE", "VARIABLES",
"VERBOSE", "VERIFY", "VIEW", "VISIBLE", "VIRTUAL_COLUMN_ID", "VALIDATE",
"VAR_POP", "VAR_SAMP", "WAIT", "WARNINGS", "WEEK", "WEIGHT_STRING",
"WHENEVER", "WITH_ROWID", "WORK", "WRAPPER", "WEAK", "X509", "XA", "XML",
"YEAR", "ZONE", "ZONE_LIST", "ZONE_TYPE", "COMP_NSEQ", "'!'", "'@'",
"'\\''", "COMMA", "$accept", "sql_stmt", "stmt_list", "opt_end_p",
"stmt", "expr_list", "expr_as_list", "expr_with_opt_alias", "column_ref",
"complex_string_literal", "charset_introducer", "literal",
"number_literal", "expr_const", "conf_const", "global_or_session_alias",
"bool_pri", "predicate", "string_val_list", "bit_expr", "simple_expr",
"opt_mode_flag", "expr", "not", "not2", "sub_query_flag", "in_expr",
"case_expr", "window_function", "first_or_last",
"opt_from_first_or_last", "respect_or_ignore",
"opt_respect_or_ignore_nulls", "win_fun_first_last_params",
"win_fun_lead_lag_params", "new_generalized_window_clause",
"new_generalized_window_clause_with_blanket", "opt_named_windows",
"named_windows", "named_window", "generalized_window_clause",
"opt_partition_by", "win_rows_or_range", "win_preceding_or_following",
"win_interval", "win_bounding", "win_window", "opt_win_window",
"case_arg", "when_clause_list", "when_clause", "case_default", "opt_all",
"func_expr", "sys_interval_func", "utc_timestamp_func", "utc_time_func",
"utc_date_func", "sysdate_func", "cur_timestamp_func",
"now_synonyms_func", "cur_time_func", "cur_date_func",
"opt_time_func_fsp_i", "substr_or_substring", "substr_params",
"date_params", "timestamp_params", "opt_expr_as_list", "opt_distinct",
"opt_distinct_or_all", "opt_separator", "delete_stmt",
"multi_delete_table", "update_stmt", "update_asgn_list",
"update_asgn_factor", "create_resource_stmt",
"opt_resource_unit_option_list", "resource_unit_option",
"opt_create_resource_pool_option_list", "create_resource_pool_option",
"alter_resource_pool_option_list", "unit_id_list",
"opt_shrink_unit_option", "alter_resource_pool_option",
"alter_resource_stmt", "drop_resource_stmt", "create_tenant_stmt",
"opt_tenant_option_list", "tenant_option", "opt_set_sys_var",
"opt_global_sys_vars_set", "zone_list", "resource_pool_list",
"alter_tenant_stmt", "drop_tenant_stmt", "create_restore_point_stmt",
"drop_restore_point_stmt", "create_database_stmt", "database_key",
"database_factor", "opt_database_option_list", "database_option_list",
"charset_key", "database_option", "read_only_or_write",
"drop_database_stmt", "alter_database_stmt", "opt_database_name",
"load_data_stmt", "load_data_with_opt_hint", "opt_load_local",
"opt_duplicate", "opt_load_charset", "opt_load_ignore_rows",
"lines_or_rows", "opt_field_or_var_spec", "field_or_vars_list",
"field_or_vars", "opt_load_set_spec", "load_set_list",
"load_set_element", "use_database_stmt", "create_synonym_stmt",
"opt_public", "synonym_name", "opt_dlink", "synonym_object",
"drop_synonym_stmt", "opt_force", "opt_force_purge", "temporary_option",
"create_table_like_stmt", "create_table_stmt", "opt_agg", "ret_type",
"create_function_stmt", "drop_function_stmt", "opt_if_not_exists",
"table_element_list", "table_element", "opt_reference_option_list",
"reference_option", "reference_action", "opt_match_option",
"match_action", "column_definition", "opt_generated_keyname",
"opt_generated_column_attribute_list", "generated_column_attribute",
"opt_storage_type", "column_definition_ref", "column_definition_list",
"cast_data_type", "opt_integer", "cast_datetime_type_i",
"get_format_unit", "data_type", "string_list", "text_string",
"int_type_i", "float_type_i", "datetime_type_i", "date_year_type_i",
"text_type_i", "blob_type_i", "opt_int_length_i", "opt_bit_length_i",
"opt_float_precision", "opt_number_precision", "opt_year_i",
"opt_datetime_fsp_i", "string_length_i", "opt_string_length_i",
"opt_string_length_i_v2", "opt_unsigned_i", "opt_zerofill_i",
"opt_binary", "collation_name", "trans_param_name", "trans_param_value",
"charset_name", "charset_name_or_default", "opt_charset", "collation",
"opt_collation", "opt_column_attribute_list", "column_attribute",
"now_or_signed_literal", "signed_literal", "opt_primary", "opt_comma",
"opt_table_option_list", "table_option_list_space_seperated",
"table_option_list", "primary_zone_name", "locality_name",
"table_option", "parallel_option", "relation_name_or_string",
"opt_equal_mark", "opt_default_mark", "partition_option",
"opt_partition_option", "auto_partition_option", "partition_size",
"auto_partition_type", "auto_range_type", "hash_partition_option",
"list_partition_option", "key_partition_option",
"range_partition_option", "opt_column_partition_option",
"column_partition_option", "aux_column_list", "vertical_column_name",
"column_name_list", "subpartition_option",
"subpartition_template_option", "subpartition_individual_option",
"opt_hash_partition_list", "hash_partition_list",
"hash_partition_element", "opt_range_partition_list",
"range_partition_list", "range_partition_element",
"opt_list_partition_list", "list_partition_list",
"list_partition_element", "opt_subpartition_list",
"opt_hash_subpartition_list", "hash_subpartition_list",
"hash_subpartition_element", "opt_range_subpartition_list",
"range_subpartition_list", "range_subpartition_element",
"opt_list_subpartition_list", "list_subpartition_list",
"list_subpartition_element", "list_partition_expr", "list_expr",
"range_partition_expr", "opt_part_id", "range_expr_list", "range_expr",
"opt_partitions", "opt_subpartitions", "int_or_decimal",
"opt_tg_partition_option", "tg_hash_partition_option",
"tg_key_partition_option", "tg_range_partition_option",
"tg_list_partition_option", "tg_subpartition_option",
"row_format_option", "create_tablegroup_stmt", "drop_tablegroup_stmt",
"alter_tablegroup_stmt", "opt_tablegroup_option_list",
"tablegroup_option_list_space_seperated", "tablegroup_option_list",
"tablegroup_option", "alter_tablegroup_actions",
"alter_tablegroup_action", "default_tablegroup", "opt_table",
"create_view_stmt", "view_select_stmt", "opt_replace",
"opt_materialized", "view_name", "opt_column_list", "opt_table_id",
"create_index_stmt", "opt_index_keyname", "opt_index_name", "index_name",
"opt_constraint", "opt_constraint_name", "constraint_name",
"sort_column_list", "sort_column_key", "opt_column_id",
"opt_sort_column_key_length", "opt_index_option_list",
"opt_index_options", "index_option", "opt_index_using_algorithm",
"index_using_algorithm", "opt_materialized_or_temporary",
"drop_table_stmt", "table_or_tables", "drop_view_stmt", "opt_if_exists",
"table_list", "drop_index_stmt", "insert_stmt", "single_table_insert",
"values_clause", "value_or_values", "opt_into", "opt_ignore",
"opt_on_duplicate_key_clause", "opt_when", "replace_with_opt_hint",
"insert_with_opt_hint", "column_list", "insert_vals_list", "insert_vals",
"expr_or_default", "select_stmt", "select_into", "select_with_parens",
"select_no_parens", "no_table_select", "select_clause",
"select_clause_set_with_order_and_limit", "select_clause_set",
"select_clause_set_right", "select_clause_set_left",
"no_table_select_with_order_and_limit",
"simple_select_with_order_and_limit",
"select_with_parens_with_order_and_limit", "select_with_opt_hint",
"update_with_opt_hint", "delete_with_opt_hint", "simple_select",
"set_type_union", "set_type_other", "set_type", "set_expression_option",
"opt_where", "opt_hint_value", "limit_clause", "into_clause", "into_opt",
"into_var_list", "into_var", "field_opt", "field_term_list",
"field_term", "line_opt", "line_term_list", "line_term",
"hint_list_with_end", "opt_hint_list", "hint_options", "name_list",
"hint_option", "opt_qb_name", "consistency_level", "use_plan_cache_type",
"use_jit_type", "distribute_method", "opt_distribute_method",
"limit_expr", "opt_limit_clause", "opt_for_update",
"opt_for_update_wait", "parameterized_trim", "opt_groupby",
"groupby_clause", "sort_list_for_group_by", "sort_key_for_group_by",
"opt_asc_desc_for_group_by", "opt_rollup", "opt_order_by", "order_by",
"sort_list", "sort_key", "opt_asc_desc", "opt_having",
"opt_query_expression_option_list", "query_expression_option_list",
"query_expression_option", "projection", "opt_as", "select_expr_list",
"from_list", "table_references", "table_reference", "table_factor",
"tbl_name", "dml_table_name", "seed", "sample_percent",
"opt_sample_scope", "sample_clause", "opt_block", "table_subquery",
"opt_use_partition", "use_partition", "index_hint_type",
"opt_key_or_index", "key_or_index", "index_hint_scope", "index_element",
"index_list", "opt_index_list", "index_hint_definition",
"index_hint_list", "relation_factor", "relation_with_star_list",
"relation_factor_with_star", "opt_with_star", "normal_relation_factor",
"dot_relation_factor", "relation_factor_in_hint", "qb_name_option",
"relation_factor_in_hint_list", "relation_sep_option",
"relation_factor_in_pq_hint", "relation_factor_in_leading_hint",
"relation_factor_in_leading_hint_list",
"relation_factor_in_leading_hint_list_entry",
"relation_factor_in_use_join_hint_list", "tracing_num_list",
"join_condition", "joined_table", "opt_full_table_factor",
"natural_join_type", "inner_join_type", "opt_inner", "outer_join_type",
"except_full_outer_join_type", "opt_outer", "create_outline_stmt",
"alter_outline_stmt", "drop_outline_stmt", "opt_outline_target",
"explain_stmt", "explain_or_desc", "explainable_stmt", "format_name",
"show_stmt", "databases_or_schemas", "opt_limit", "opt_for_grant_user",
"opt_status", "opt_storage", "opt_scope", "columns_or_fields",
"database_or_schema", "index_or_indexes_or_keys", "from_or_in",
"opt_from_or_in_database_clause", "opt_show_condition",
"opt_desc_column_option", "create_user_stmt", "user_specification_list",
"user_specification", "require_specification", "opt_resource_option",
"resource_option_list", "resource_option", "tls_option_list",
"tls_option", "user", "opt_host_name", "user_with_host_name", "password",
"drop_user_stmt", "user_list", "set_password_stmt", "opt_for_user",
"rename_user_stmt", "rename_info", "rename_list", "lock_user_stmt",
"lock_spec_mysql57", "lock_tables_stmt", "unlock_tables_stmt",
"lock_table_list", "lock_table", "lock_type", "opt_local", "opt_work",
"opt_with_consistent_snapshot", "begin_stmt", "xa_begin_stmt",
"xa_end_stmt", "xa_prepare_stmt", "xa_commit_stmt", "xa_rollback_stmt",
"commit_stmt", "rollback_stmt", "kill_stmt", "grant_stmt",
"grant_privileges", "priv_type_list", "priv_type", "opt_privilege",
"priv_level", "grant_options", "revoke_stmt", "prepare_stmt",
"stmt_name", "preparable_stmt", "variable_set_stmt",
"sys_var_and_val_list", "var_and_val_list", "set_expr_or_default",
"var_and_val", "sys_var_and_val", "scope_or_scope_alias", "to_or_eq",
"execute_stmt", "opt_using_args", "argument_list", "argument",
"deallocate_prepare_stmt", "deallocate_or_drop", "truncate_table_stmt",
"rename_table_stmt", "rename_table_actions", "rename_table_action",
"alter_table_stmt", "alter_table_actions", "alter_table_action",
"alter_constraint_option", "alter_partition_option",
"opt_partition_range_or_list", "alter_tg_partition_option",
"drop_partition_name_list", "modify_partition_info",
"modify_tg_partition_info", "alter_index_option",
"alter_foreign_key_action", "visibility_option", "alter_column_option",
"opt_position_column", "alter_tablegroup_option", "opt_column", "opt_to",
"opt_set", "opt_drop_behavior", "alter_column_behavior", "purge_stmt",
"optimize_stmt", "dump_memory_stmt", "alter_system_stmt",
"opt_sql_throttle_for_priority", "opt_sql_throttle_using_cond",
"sql_throttle_one_or_more_metrics", "sql_throttle_metric",
"opt_disk_alias", "change_tenant_name_or_tenant_id", "cache_type",
"balance_task_type", "opt_balance_task_type", "opt_tenant_list",
"tenant_list_tuple", "tenant_name_list", "flush_scope", "opt_zone_list",
"server_info_list", "server_info", "server_action", "server_list",
"opt_server_list", "opt_ignore_server_list", "zone_action", "ip_port",
"zone_desc", "opt_zone_desc", "opt_create_timestamp", "server_or_zone",
"opt_server_or_zone", "add_or_alter_zone_option",
"add_or_alter_zone_options", "alter_or_change_or_modify",
"partition_id_desc", "opt_tenant_list_or_partition_id_desc",
"partition_id_or_server_or_zone", "migrate_action", "change_actions",
"change_action", "replica_type", "memstore_percent", "suspend_or_resume",
"baseline_id_expr", "opt_baseline_id", "sql_id_expr", "opt_sql_id",
"baseline_asgn_factor", "tenant_name", "opt_tenant_name", "cache_name",
"opt_cache_name", "file_id", "opt_file_id", "cancel_task_type",
"alter_system_set_parameter_actions",
"alter_system_set_parameter_action", "opt_comment",
"alter_system_settp_actions", "settp_option", "opt_full",
"opt_config_scope", "partition_role", "upgrade_action", "set_names_stmt",
"set_charset_stmt", "set_transaction_stmt",
"transaction_characteristics", "transaction_access_mode",
"isolation_level", "create_savepoint_stmt", "rollback_savepoint_stmt",
"release_savepoint_stmt", "var_name", "column_name", "relation_name",
"function_name", "column_label", "date_unit", "unreserved_keyword",
"unreserved_keyword_normal", "unreserved_keyword_special",
"unreserved_keyword_extra", "mysql_reserved_keyword", 0
};
#endif
# ifdef YYPRINT
/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
token YYLEX-NUM. */
static const yytype_uint16 yytoknum[] =
{
0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
275, 276, 277, 278, 44, 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, 124, 38, 315, 316, 43, 45, 42, 47, 37,
317, 318, 319, 94, 320, 321, 126, 322, 323, 40,
41, 324, 325, 46, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, 336, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, 348, 349, 350, 351,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 389, 390, 391,
392, 393, 394, 395, 396, 397, 398, 399, 400, 401,
402, 403, 404, 405, 406, 407, 408, 409, 410, 411,
412, 413, 414, 415, 416, 417, 418, 419, 420, 421,
422, 423, 424, 425, 426, 427, 428, 429, 430, 431,
432, 433, 434, 435, 436, 437, 438, 439, 440, 441,
442, 443, 444, 445, 446, 447, 448, 449, 450, 451,
452, 453, 454, 455, 456, 457, 458, 459, 460, 461,
462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
472, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, 497, 498, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, 513, 514, 515, 516, 517, 518, 519, 520, 521,
522, 523, 524, 525, 526, 527, 528, 529, 530, 531,
532, 533, 534, 535, 536, 537, 538, 539, 540, 541,
542, 543, 544, 545, 546, 547, 548, 549, 550, 551,
552, 553, 554, 555, 556, 557, 558, 559, 560, 561,
562, 563, 564, 565, 566, 567, 568, 569, 570, 571,
572, 573, 574, 575, 576, 577, 578, 579, 580, 581,
582, 583, 584, 585, 586, 587, 588, 589, 590, 591,
592, 593, 594, 595, 596, 597, 598, 599, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 613, 614, 615, 616, 617, 618, 619, 620, 621,
622, 623, 624, 625, 626, 627, 628, 629, 630, 631,
632, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 643, 644, 645, 646, 647, 648, 649, 650, 651,
652, 653, 654, 655, 656, 657, 658, 659, 660, 661,
662, 663, 664, 665, 666, 667, 668, 669, 670, 671,
672, 673, 674, 675, 676, 677, 678, 679, 680, 681,
682, 683, 684, 685, 686, 687, 688, 689, 690, 691,
692, 693, 694, 695, 696, 697, 698, 699, 700, 701,
702, 703, 704, 705, 706, 707, 708, 709, 710, 711,
712, 713, 714, 715, 716, 717, 718, 719, 720, 721,
722, 723, 724, 725, 726, 727, 728, 729, 730, 731,
732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
742, 743, 744, 745, 746, 747, 748, 749, 750, 751,
752, 753, 754, 755, 756, 757, 758, 759, 760, 761,
762, 763, 764, 765, 766, 767, 768, 769, 770, 771,
772, 773, 774, 775, 776, 777, 778, 779, 780, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061,
1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101,
1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131,
1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151,
1152, 1153, 1154, 1155, 1156, 1157, 1158, 1159, 1160, 1161,
1162, 1163, 1164, 1165, 1166, 1167, 1168, 1169, 1170, 1171,
1172, 1173, 1174, 1175, 1176, 1177, 1178, 1179, 1180, 1181,
1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1191,
1192, 1193, 1194, 1195, 1196, 1197, 1198, 1199, 1200, 1201,
1202, 1203, 1204, 1205, 1206, 1207, 1208, 1209, 1210, 1211,
1212, 1213, 1214, 1215, 1216, 1217, 1218, 1219, 1220, 1221,
1222, 1223, 1224, 1225, 1226, 1227, 1228, 1229, 1230, 1231,
1232, 1233, 1234, 1235, 1236, 1237, 1238, 1239, 1240, 1241,
1242, 1243, 1244, 1245, 1246, 1247, 1248, 1249, 1250, 1251,
1252, 1253, 1254, 1255, 1256, 1257, 1258, 1259, 1260, 1261,
1262, 1263, 1264, 33, 64, 39, 1265
};
# endif
/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
static const yytype_uint16 yyr1[] =
{
0, 1027, 1028, 1029, 1029, 1029, 1029, 1030, 1030, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031, 1031,
1032, 1032, 1033, 1033, 1034, 1034, 1034, 1035, 1035, 1035,
1035, 1035, 1035, 1035, 1035, 1035, 1035, 1035, 1035, 1036,
1036, 1036, 1037, 1037, 1037, 1037, 1037, 1037, 1038, 1038,
1038, 1038, 1038, 1038, 1038, 1038, 1038, 1039, 1039, 1040,
1040, 1040, 1040, 1041, 1041, 1041, 1041, 1041, 1041, 1041,
1041, 1041, 1041, 1041, 1041, 1042, 1042, 1043, 1043, 1043,
1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043, 1043,
1043, 1043, 1043, 1044, 1044, 1044, 1044, 1044, 1044, 1044,
1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044, 1044,
1044, 1044, 1044, 1044, 1045, 1045, 1046, 1046, 1046, 1046,
1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046, 1046,
1046, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047,
1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047, 1047,
1048, 1048, 1048, 1049, 1049, 1049, 1049, 1049, 1049, 1049,
1049, 1049, 1049, 1049, 1049, 1050, 1050, 1051, 1051, 1052,
1052, 1052, 1053, 1053, 1054, 1055, 1055, 1055, 1055, 1055,
1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055,
1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055, 1055,
1055, 1055, 1055, 1055, 1055, 1056, 1056, 1057, 1057, 1058,
1058, 1059, 1059, 1060, 1060, 1061, 1061, 1061, 1062, 1062,
1063, 1063, 1064, 1064, 1065, 1065, 1066, 1067, 1068, 1068,
1069, 1069, 1070, 1070, 1071, 1071, 1072, 1072, 1073, 1073,
1074, 1074, 1075, 1075, 1076, 1076, 1077, 1078, 1078, 1079,
1079, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080, 1080,
1080, 1080, 1081, 1081, 1082, 1082, 1082, 1083, 1083, 1083,
1084, 1084, 1085, 1085, 1086, 1086, 1086, 1087, 1087, 1087,
1088, 1088, 1088, 1089, 1089, 1089, 1090, 1090, 1090, 1091,
1091, 1092, 1092, 1092, 1092, 1093, 1094, 1095, 1095, 1096,
1096, 1096, 1097, 1097, 1097, 1097, 1098, 1098, 1099, 1099,
1100, 1100, 1101, 1102, 1102, 1103, 1104, 1104, 1105, 1105,
1105, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1107,
1107, 1107, 1108, 1108, 1108, 1108, 1109, 1109, 1110, 1110,
1111, 1111, 1112, 1112, 1112, 1113, 1113, 1113, 1113, 1114,
1114, 1115, 1116, 1116, 1116, 1117, 1117, 1117, 1117, 1117,
1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117,
1118, 1118, 1118, 1118, 1119, 1119, 1120, 1120, 1121, 1121,
1122, 1122, 1122, 1122, 1123, 1124, 1125, 1126, 1127, 1127,
1128, 1129, 1129, 1130, 1130, 1131, 1131, 1132, 1132, 1132,
1132, 1132, 1132, 1132, 1133, 1133, 1134, 1135, 1136, 1136,
1137, 1138, 1138, 1139, 1139, 1139, 1140, 1140, 1140, 1141,
1141, 1142, 1142, 1142, 1143, 1143, 1144, 1144, 1144, 1145,
1145, 1146, 1146, 1147, 1147, 1148, 1148, 1149, 1150, 1151,
1151, 1151, 1151, 1152, 1152, 1153, 1153, 1154, 1154, 1155,
1155, 1156, 1156, 1157, 1157, 1158, 1158, 1158, 1159, 1159,
1160, 1160, 1161, 1161, 1161, 1161, 1161, 1161, 1162, 1162,
1163, 1163, 1163, 1163, 1164, 1165, 1166, 1166, 1167, 1167,
1168, 1168, 1168, 1168, 1168, 1168, 1168, 1169, 1169, 1170,
1170, 1171, 1171, 1171, 1171, 1171, 1172, 1172, 1173, 1173,
1173, 1174, 1174, 1175, 1175, 1176, 1176, 1177, 1177, 1177,
1177, 1177, 1177, 1177, 1178, 1178, 1178, 1179, 1179, 1179,
1180, 1180, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181,
1182, 1182, 1183, 1183, 1183, 1184, 1184, 1184, 1185, 1185,
1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185,
1185, 1185, 1185, 1185, 1185, 1185, 1186, 1186, 1187, 1187,
1188, 1188, 1188, 1188, 1188, 1189, 1189, 1189, 1189, 1189,
1190, 1190, 1190, 1191, 1191, 1192, 1192, 1192, 1192, 1193,
1193, 1193, 1193, 1194, 1194, 1195, 1195, 1196, 1196, 1196,
1197, 1197, 1197, 1198, 1198, 1199, 1199, 1200, 1201, 1201,
1202, 1202, 1203, 1203, 1203, 1204, 1204, 1205, 1205, 1206,
1206, 1207, 1208, 1208, 1209, 1209, 1209, 1210, 1210, 1211,
1211, 1212, 1213, 1213, 1214, 1214, 1215, 1215, 1215, 1215,
1215, 1215, 1215, 1215, 1215, 1215, 1215, 1216, 1216, 1217,
1217, 1217, 1218, 1218, 1219, 1219, 1220, 1220, 1221, 1221,
1222, 1222, 1223, 1223, 1223, 1223, 1224, 1224, 1225, 1225,
1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225,
1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225, 1225,
1225, 1225, 1226, 1226, 1227, 1227, 1227, 1228, 1228, 1229,
1229, 1230, 1230, 1230, 1230, 1231, 1231, 1231, 1232, 1233,
1233, 1234, 1235, 1235, 1235, 1236, 1236, 1237, 1237, 1238,
1238, 1238, 1238, 1239, 1239, 1240, 1240, 1241, 1241, 1242,
1242, 1243, 1243, 1244, 1244, 1245, 1245, 1246, 1246, 1246,
1246, 1246, 1246, 1246, 1247, 1247, 1247, 1247, 1247, 1247,
1248, 1249, 1249, 1250, 1251, 1252, 1252, 1253, 1254, 1255,
1255, 1256, 1257, 1257, 1257, 1257, 1258, 1259, 1259, 1260,
1261, 1262, 1262, 1263, 1264, 1265, 1265, 1266, 1267, 1267,
1268, 1268, 1269, 1269, 1270, 1270, 1271, 1271, 1272, 1272,
1273, 1273, 1274, 1274, 1275, 1275, 1276, 1276, 1276, 1276,
1276, 1277, 1278, 1279, 1279, 1280, 1280, 1281, 1281, 1281,
1281, 1281, 1281, 1281, 1282, 1282, 1282, 1282, 1282, 1283,
1284, 1285, 1285, 1285, 1286, 1286, 1287, 1287, 1288, 1288,
1289, 1289, 1289, 1289, 1289, 1290, 1290, 1291, 1292, 1292,
1293, 1293, 1294, 1295, 1296, 1296, 1297, 1297, 1298, 1299,
1299, 1300, 1300, 1301, 1302, 1302, 1303, 1303, 1304, 1305,
1305, 1306, 1306, 1307, 1308, 1308, 1309, 1310, 1310, 1311,
1311, 1312, 1312, 1313, 1313, 1314, 1314, 1314, 1314, 1314,
1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1314, 1315,
1315, 1316, 1316, 1317, 1317, 1317, 1318, 1319, 1319, 1320,
1321, 1321, 1322, 1322, 1323, 1324, 1324, 1325, 1325, 1325,
1325, 1326, 1326, 1327, 1327, 1328, 1328, 1329, 1329, 1330,
1330, 1331, 1332, 1332, 1333, 1333, 1334, 1334, 1335, 1335,
1336, 1336, 1336, 1337, 1337, 1338, 1338, 1338, 1339, 1340,
1340, 1341, 1341, 1341, 1342, 1342, 1343, 1343, 1343, 1343,
1343, 1344, 1344, 1345, 1345, 1345, 1346, 1346, 1346, 1347,
1347, 1347, 1348, 1348, 1349, 1349, 1350, 1350, 1351, 1351,
1352, 1352, 1353, 1353, 1354, 1355, 1356, 1356, 1356, 1357,
1357, 1358, 1358, 1358, 1358, 1359, 1359, 1360, 1360, 1361,
1361, 1361, 1362, 1362, 1362, 1363, 1363, 1364, 1364, 1365,
1365, 1366, 1366, 1367, 1367, 1368, 1368, 1368, 1368, 1369,
1369, 1370, 1370, 1371, 1371, 1372, 1373, 1373, 1373, 1374,
1374, 1375, 1375, 1375, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376, 1376,
1376, 1376, 1376, 1376, 1376, 1377, 1377, 1378, 1378, 1378,
1379, 1379, 1380, 1380, 1381, 1381, 1381, 1381, 1381, 1381,
1382, 1382, 1383, 1383, 1384, 1384, 1385, 1385, 1386, 1386,
1386, 1386, 1386, 1387, 1387, 1387, 1387, 1387, 1387, 1387,
1387, 1388, 1388, 1389, 1390, 1390, 1391, 1392, 1392, 1392,
1393, 1393, 1394, 1394, 1395, 1396, 1396, 1397, 1398, 1398,
1398, 1399, 1399, 1400, 1400, 1401, 1401, 1402, 1402, 1402,
1402, 1403, 1403, 1403, 1403, 1403, 1404, 1404, 1405, 1405,
1406, 1407, 1407, 1408, 1408, 1409, 1409, 1409, 1409, 1410,
1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410,
1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410,
1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410, 1410,
1410, 1410, 1410, 1410, 1410, 1411, 1412, 1413, 1413, 1414,
1414, 1414, 1414, 1415, 1416, 1416, 1417, 1417, 1418, 1418,
1419, 1420, 1420, 1421, 1421, 1422, 1422, 1423, 1423, 1423,
1423, 1424, 1424, 1425, 1425, 1426, 1426, 1427, 1427, 1428,
1428, 1429, 1429, 1430, 1430, 1431, 1431, 1432, 1432, 1433,
1433, 1433, 1434, 1434, 1435, 1436, 1436, 1437, 1437, 1438,
1438, 1439, 1439, 1440, 1441, 1441, 1441, 1441, 1441, 1441,
1442, 1442, 1443, 1443, 1443, 1443, 1444, 1444, 1445, 1445,
1446, 1446, 1446, 1446, 1446, 1446, 1446, 1446, 1447, 1447,
1448, 1448, 1449, 1449, 1449, 1450, 1450, 1451, 1451, 1451,
1452, 1452, 1453, 1453, 1454, 1454, 1455, 1456, 1457, 1457,
1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1458, 1459,
1459, 1459, 1460, 1460, 1460, 1460, 1461, 1461, 1462, 1462,
1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462, 1462,
1462, 1462, 1463, 1463, 1464, 1464, 1464, 1465, 1465, 1465,
1466, 1466, 1467, 1467, 1468, 1468, 1468, 1468, 1469, 1469,
1470, 1470, 1471, 1471, 1471, 1472, 1472, 1473, 1473, 1474,
1474, 1474, 1474, 1475, 1475, 1475, 1476, 1476, 1477, 1477,
1478, 1478, 1478, 1479, 1479, 1479, 1479, 1480, 1480, 1481,
1481, 1482, 1482, 1483, 1483, 1483, 1484, 1484, 1484, 1485,
1485, 1485, 1486, 1486, 1487, 1488, 1489, 1490, 1490, 1491,
1491, 1491, 1491, 1491, 1492, 1492, 1493, 1494, 1495, 1495,
1496, 1497, 1497, 1498, 1499, 1500, 1500, 1501, 1501, 1502,
1502, 1502, 1503, 1503, 1504, 1504, 1505, 1505, 1505, 1505,
1505, 1506, 1506, 1507, 1507, 1508, 1509, 1510, 1511, 1512,
1513, 1514, 1514, 1514, 1515, 1516, 1516, 1517, 1517, 1518,
1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518,
1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518, 1518,
1518, 1519, 1519, 1520, 1520, 1520, 1520, 1520, 1521, 1521,
1522, 1522, 1523, 1524, 1525, 1525, 1526, 1527, 1527, 1528,
1528, 1529, 1529, 1529, 1529, 1530, 1530, 1530, 1530, 1530,
1531, 1531, 1532, 1532, 1532, 1532, 1533, 1533, 1534, 1535,
1535, 1536, 1536, 1537, 1538, 1539, 1539, 1540, 1541, 1542,
1542, 1543, 1544, 1545, 1545, 1545, 1546, 1546, 1546, 1546,
1546, 1546, 1546, 1546, 1547, 1547, 1548, 1548, 1548, 1548,
1548, 1548, 1548, 1549, 1549, 1550, 1550, 1550, 1550, 1550,
1551, 1551, 1552, 1552, 1552, 1552, 1553, 1553, 1553, 1553,
1554, 1554, 1554, 1554, 1554, 1554, 1554, 1554, 1555, 1555,
1556, 1556, 1557, 1557, 1557, 1557, 1557, 1557, 1557, 1558,
1558, 1558, 1558, 1559, 1560, 1560, 1561, 1561, 1562, 1562,
1563, 1563, 1563, 1564, 1564, 1565, 1565, 1565, 1565, 1565,
1566, 1566, 1566, 1567, 1567, 1567, 1567, 1567, 1567, 1567,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568, 1568,
1568, 1568, 1568, 1569, 1569, 1570, 1571, 1571, 1572, 1572,
1572, 1572, 1572, 1572, 1573, 1573, 1574, 1574, 1575, 1575,
1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575, 1575,
1575, 1575, 1576, 1576, 1576, 1577, 1577, 1578, 1578, 1579,
1580, 1580, 1581, 1581, 1582, 1582, 1583, 1583, 1584, 1584,
1585, 1585, 1585, 1585, 1585, 1585, 1585, 1586, 1586, 1587,
1587, 1588, 1588, 1589, 1589, 1589, 1589, 1589, 1590, 1591,
1592, 1592, 1593, 1593, 1594, 1594, 1595, 1595, 1596, 1596,
1596, 1597, 1597, 1597, 1598, 1598, 1598, 1599, 1600, 1600,
1600, 1601, 1601, 1601, 1602, 1602, 1603, 1603, 1604, 1604,
1605, 1606, 1607, 1607, 1608, 1609, 1609, 1610, 1611, 1611,
1612, 1613, 1614, 1614, 1615, 1616, 1616, 1617, 1618, 1618,
1619, 1619, 1620, 1620, 1621, 1621, 1621, 1621, 1622, 1622,
1623, 1623, 1623, 1624, 1624, 1624, 1624, 1624, 1625, 1625,
1626, 1626, 1626, 1626, 1627, 1627, 1628, 1628, 1629, 1630,
1631, 1631, 1631, 1631, 1632, 1632, 1632, 1632, 1633, 1633,
1634, 1634, 1634, 1634, 1635, 1636, 1636, 1636, 1637, 1638,
1638, 1639, 1639, 1640, 1640, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641, 1641,
1641, 1641, 1641, 1641, 1642, 1642, 1643, 1643, 1643, 1643,
1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643, 1643,
1643, 1643, 1643, 1643, 1643, 1643, 1644, 1644, 1644, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645, 1645,
1645, 1645, 1645, 1645, 1646, 1647, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648, 1648,
1648, 1648, 1648
};
/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
static const yytype_uint8 yyr2[] =
{
0, 2, 1, 1, 1, 2, 3, 0, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 3, 1, 3, 1, 3, 3, 1, 3, 3,
3, 3, 5, 5, 5, 5, 4, 4, 4, 1,
2, 2, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 3, 1, 1, 1, 1, 1, 1, 1,
1, 1, 3, 2, 2, 1, 1, 3, 4, 3,
6, 3, 6, 3, 6, 3, 3, 6, 3, 6,
3, 6, 1, 3, 4, 6, 5, 3, 4, 5,
6, 6, 7, 4, 5, 6, 7, 7, 8, 3,
4, 4, 5, 1, 1, 2, 3, 3, 3, 3,
3, 3, 5, 5, 3, 3, 3, 3, 3, 3,
1, 2, 2, 1, 1, 3, 2, 2, 2, 2,
1, 3, 5, 6, 2, 9, 1, 1, 1, 1,
4, 3, 0, 3, 3, 3, 3, 3, 2, 3,
4, 3, 4, 1, 3, 1, 1, 1, 1, 1,
1, 1, 1, 3, 5, 7, 7, 7, 6, 6,
6, 7, 7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 9, 9, 5, 5, 5, 5, 6, 5,
4, 4, 4, 4, 10, 1, 1, 2, 0, 1,
1, 2, 0, 5, 4, 5, 7, 4, 1, 1,
4, 3, 0, 2, 1, 3, 3, 3, 0, 3,
1, 1, 1, 1, 1, 3, 2, 2, 5, 2,
0, 1, 1, 0, 1, 2, 4, 2, 0, 1,
0, 6, 5, 5, 5, 5, 4, 4, 4, 5,
5, 5, 5, 5, 5, 5, 5, 5, 5, 5,
4, 7, 8, 4, 1, 1, 1, 1, 1, 1,
1, 6, 10, 6, 6, 6, 6, 4, 4, 4,
4, 4, 4, 4, 4, 6, 4, 4, 6, 4,
4, 4, 4, 4, 4, 4, 6, 6, 4, 4,
6, 4, 4, 4, 4, 6, 6, 4, 4, 4,
6, 1, 6, 8, 1, 3, 4, 1, 3, 4,
1, 3, 3, 4, 3, 4, 2, 1, 1, 1,
3, 4, 2, 3, 1, 3, 3, 2, 0, 1,
1, 3, 5, 3, 5, 5, 5, 0, 1, 0,
1, 1, 0, 1, 1, 1, 0, 2, 6, 3,
3, 4, 8, 1, 3, 3, 6, 6, 1, 3,
0, 3, 3, 3, 3, 3, 3, 3, 3, 1,
3, 0, 3, 3, 5, 3, 1, 3, 1, 3,
6, 0, 3, 4, 5, 5, 5, 13, 11, 5,
5, 6, 1, 3, 0, 3, 4, 3, 3, 3,
3, 3, 5, 5, 3, 3, 1, 3, 1, 3,
2, 3, 2, 0, 2, 0, 1, 3, 1, 3,
6, 6, 7, 4, 5, 4, 4, 5, 1, 1,
1, 1, 0, 1, 2, 1, 2, 4, 4, 3,
3, 1, 1, 3, 2, 2, 4, 5, 1, 0,
15, 2, 2, 0, 1, 1, 0, 1, 1, 0,
3, 0, 3, 3, 1, 1, 0, 2, 3, 1,
3, 1, 1, 0, 2, 1, 3, 3, 2, 8,
10, 10, 12, 1, 0, 1, 1, 2, 0, 1,
1, 5, 7, 1, 0, 1, 1, 0, 1, 0,
7, 9, 10, 12, 9, 8, 6, 7, 1, 0,
1, 1, 1, 1, 8, 4, 3, 0, 1, 3,
1, 9, 7, 8, 10, 6, 14, 2, 0, 3,
3, 1, 1, 2, 2, 2, 2, 0, 1, 1,
1, 4, 10, 2, 0, 2, 0, 2, 1, 2,
2, 1, 2, 2, 1, 1, 0, 1, 3, 5,
1, 3, 2, 3, 2, 2, 2, 2, 2, 1,
1, 0, 1, 1, 1, 1, 1, 1, 4, 4,
4, 4, 1, 1, 2, 1, 5, 5, 2, 5,
2, 2, 1, 2, 7, 7, 1, 3, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 2,
1, 1, 1, 1, 2, 1, 1, 1, 1, 1,
1, 1, 1, 3, 0, 3, 0, 5, 3, 0,
5, 3, 0, 3, 0, 3, 0, 3, 1, 0,
1, 0, 1, 1, 0, 1, 0, 1, 0, 1,
1, 3, 3, 1, 1, 1, 1, 1, 1, 2,
0, 2, 1, 0, 2, 0, 2, 1, 2, 2,
1, 2, 2, 1, 2, 3, 2, 1, 1, 1,
2, 2, 0, 1, 1, 0, 1, 0, 1, 2,
1, 3, 1, 1, 1, 1, 1, 1, 3, 3,
4, 5, 3, 3, 3, 3, 3, 3, 3, 3,
4, 4, 3, 3, 3, 3, 1, 3, 3, 3,
3, 1, 3, 1, 1, 1, 1, 1, 0, 1,
0, 1, 1, 1, 1, 2, 1, 1, 6, 1,
1, 1, 5, 6, 7, 8, 9, 9, 10, 8,
9, 7, 8, 9, 10, 0, 1, 6, 8, 1,
3, 1, 3, 1, 3, 1, 1, 9, 10, 9,
9, 10, 9, 0, 6, 7, 7, 6, 7, 7,
3, 1, 3, 4, 3, 1, 3, 8, 3, 1,
3, 7, 1, 1, 1, 0, 3, 1, 3, 2,
3, 1, 3, 6, 3, 1, 3, 5, 3, 3,
1, 3, 3, 1, 0, 2, 1, 3, 1, 1,
2, 0, 2, 0, 1, 1, 1, 1, 1, 1,
0, 5, 6, 6, 8, 6, 8, 6, 8, 4,
5, 6, 8, 0, 1, 1, 1, 1, 1, 6,
4, 6, 4, 4, 1, 0, 1, 2, 1, 3,
4, 3, 3, 3, 3, 1, 3, 2, 4, 4,
1, 0, 9, 1, 2, 0, 1, 0, 1, 3,
0, 3, 0, 13, 1, 0, 1, 0, 1, 2,
0, 1, 0, 1, 1, 3, 4, 0, 2, 3,
0, 0, 1, 1, 2, 1, 1, 3, 2, 4,
1, 3, 1, 1, 3, 3, 3, 3, 1, 0,
1, 2, 2, 1, 1, 0, 6, 1, 1, 6,
0, 2, 1, 3, 5, 5, 4, 2, 4, 5,
3, 2, 1, 1, 1, 1, 0, 1, 0, 5,
0, 0, 1, 2, 1, 2, 1, 3, 3, 5,
1, 3, 0, 1, 1, 2, 1, 1, 2, 3,
3, 2, 2, 2, 4, 8, 1, 1, 1, 1,
1, 2, 3, 3, 3, 3, 1, 1, 1, 1,
1, 1, 2, 3, 2, 3, 2, 3, 1, 2,
1, 2, 1, 2, 10, 1, 1, 1, 1, 2,
1, 0, 1, 1, 1, 0, 3, 0, 1, 4,
2, 4, 6, 3, 2, 0, 1, 3, 1, 1,
1, 2, 0, 2, 1, 3, 4, 3, 3, 2,
0, 2, 1, 3, 3, 2, 1, 3, 0, 1,
2, 1, 2, 3, 1, 4, 6, 4, 4, 5,
1, 4, 6, 5, 5, 1, 5, 4, 5, 5,
5, 5, 5, 5, 5, 5, 5, 5, 1, 1,
2, 2, 2, 2, 2, 2, 2, 2, 2, 4,
1, 1, 1, 1, 4, 4, 1, 1, 6, 5,
5, 1, 4, 4, 4, 1, 8, 4, 5, 1,
1, 1, 1, 1, 1, 3, 0, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 0, 1, 1, 0, 1, 0, 3, 0, 2,
2, 1, 1, 1, 3, 4, 4, 4, 3, 3,
3, 0, 3, 2, 1, 3, 2, 0, 1, 1,
0, 2, 1, 0, 3, 1, 3, 2, 0, 1,
1, 0, 2, 1, 0, 1, 2, 1, 1, 1,
1, 1, 2, 3, 3, 1, 1, 0, 1, 3,
1, 1, 3, 1, 1, 1, 1, 1, 3, 1,
2, 3, 3, 4, 4, 5, 2, 3, 3, 4,
2, 3, 4, 4, 5, 5, 6, 4, 5, 5,
6, 6, 7, 2, 3, 3, 4, 4, 5, 5,
6, 3, 4, 4, 5, 2, 4, 1, 1, 0,
1, 1, 1, 6, 1, 0, 2, 3, 1, 0,
4, 1, 1, 1, 0, 1, 1, 0, 2, 3,
3, 1, 1, 1, 3, 1, 0, 6, 6, 1,
2, 1, 1, 1, 3, 2, 4, 2, 0, 1,
3, 3, 2, 2, 2, 2, 0, 1, 3, 1,
0, 1, 3, 3, 1, 3, 3, 3, 5, 7,
1, 3, 1, 3, 3, 5, 3, 1, 2, 4,
3, 5, 7, 4, 5, 6, 2, 3, 1, 2,
2, 3, 1, 2, 2, 1, 0, 3, 3, 3,
3, 3, 1, 0, 7, 9, 6, 3, 2, 0,
3, 2, 3, 3, 3, 3, 3, 3, 5, 1,
1, 1, 1, 1, 1, 1, 1, 1, 5, 4,
7, 5, 5, 5, 4, 4, 4, 2, 5, 4,
4, 4, 4, 3, 3, 6, 6, 3, 3, 3,
3, 4, 6, 3, 3, 4, 3, 4, 3, 2,
2, 4, 1, 1, 4, 2, 0, 1, 2, 4,
1, 0, 0, 1, 1, 1, 1, 0, 1, 1,
1, 1, 1, 1, 1, 1, 1, 0, 2, 0,
2, 4, 2, 0, 1, 1, 5, 6, 1, 3,
2, 5, 6, 2, 2, 2, 2, 2, 0, 2,
1, 2, 2, 1, 2, 3, 2, 2, 2, 1,
1, 1, 1, 0, 2, 1, 3, 1, 3, 5,
8, 6, 4, 5, 3, 0, 3, 5, 1, 3,
5, 1, 1, 3, 2, 1, 3, 2, 4, 2,
1, 2, 1, 0, 1, 0, 3, 1, 5, 5,
0, 2, 3, 3, 3, 3, 3, 3, 3, 2,
2, 2, 3, 3, 7, 1, 2, 1, 3, 1,
1, 2, 1, 1, 2, 1, 1, 1, 1, 2,
2, 2, 1, 1, 1, 2, 1, 2, 2, 3,
3, 1, 0, 1, 3, 3, 1, 3, 3, 0,
6, 8, 4, 1, 1, 1, 2, 1, 3, 1,
3, 1, 1, 1, 1, 3, 3, 1, 4, 3,
3, 3, 1, 1, 2, 2, 1, 1, 3, 2,
0, 1, 3, 1, 3, 1, 1, 3, 3, 1,
3, 3, 4, 1, 3, 0, 2, 1, 1, 3,
1, 1, 1, 1, 5, 7, 3, 3, 3, 1,
5, 3, 3, 1, 1, 3, 3, 1, 5, 3,
1, 3, 1, 1, 1, 1, 1, 1, 1, 1,
8, 9, 11, 3, 8, 4, 5, 4, 4, 15,
1, 1, 3, 5, 3, 4, 4, 4, 3, 0,
1, 2, 2, 2, 1, 0, 1, 0, 1, 0,
1, 1, 0, 3, 2, 3, 3, 3, 3, 2,
3, 3, 3, 3, 9, 3, 9, 5, 5, 3,
4, 7, 7, 6, 5, 5, 10, 10, 6, 6,
9, 9, 12, 5, 5, 5, 5, 5, 5, 6,
5, 3, 7, 5, 6, 6, 5, 7, 5, 6,
4, 4, 6, 8, 4, 4, 4, 4, 9, 6,
5, 6, 4, 6, 5, 5, 4, 7, 5, 6,
6, 12, 5, 7, 7, 9, 8, 3, 3, 4,
5, 4, 4, 4, 5, 5, 4, 5, 5, 5,
5, 7, 5, 4, 0, 2, 2, 1, 3, 3,
3, 3, 3, 3, 3, 0, 1, 3, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 3, 0, 3, 0, 5,
1, 3, 1, 0, 3, 0, 1, 3, 9, 6,
1, 1, 2, 1, 1, 2, 1, 1, 3, 0,
5, 0, 2, 1, 1, 1, 2, 1, 3, 3,
1, 0, 3, 0, 1, 1, 1, 0, 3, 3,
3, 1, 3, 0, 1, 1, 1, 3, 1, 1,
0, 2, 2, 2, 1, 1, 1, 2, 1, 1,
3, 3, 1, 1, 3, 1, 0, 3, 1, 0,
3, 3, 1, 0, 3, 1, 0, 3, 1, 0,
2, 0, 1, 3, 7, 7, 7, 7, 2, 0,
1, 3, 0, 3, 3, 3, 3, 3, 1, 0,
3, 3, 3, 0, 1, 1, 1, 1, 4, 3,
3, 4, 4, 4, 1, 3, 5, 5, 2, 2,
2, 2, 2, 1, 2, 3, 4, 4, 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, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1
};
/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
STATE-NUM when YYTABLE doesn't specify something else to do. Zero
means the default is an error. */
static const yytype_uint16 yydefact[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 3, 4,
0, 955, 1082, 1431, 1430, 1005, 1429, 0, 1034, 0,
0, 0, 0, 0, 0, 1032, 0, 1078, 0, 1959,
0, 1080, 0, 1565, 1565, 1655, 0, 0, 0, 0,
1565, 0, 0, 951, 0, 0, 2, 0, 20, 19,
53, 54, 55, 48, 49, 50, 51, 52, 15, 16,
17, 72, 533, 18, 64, 65, 14, 11, 12, 13,
58, 59, 60, 47, 44, 21, 22, 45, 10, 1028,
1028, 9, 1047, 1046, 1031, 1056, 1216, 1216, 1216, 1071,
0, 1057, 1059, 1060, 1254, 1028, 0, 1058, 24, 25,
26, 23, 0, 27, 34, 35, 36, 37, 38, 69,
70, 41, 73, 74, 75, 76, 77, 42, 43, 46,
39, 40, 28, 29, 30, 33, 0, 62, 61, 31,
71, 78, 79, 32, 56, 57, 63, 66, 67, 68,
1068, 0, 1192, 1189, 1191, 0, 0, 0, 0, 0,
0, 1140, 0, 0, 1145, 0, 0, 0, 0, 0,
0, 1170, 0, 0, 0, 0, 0, 1134, 1173, 1176,
0, 1158, 1159, 1171, 1172, 0, 0, 0, 1177, 0,
0, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196,
0, 1181, 0, 0, 1194, 0, 1193, 1185, 1190, 0,
0, 1079, 0, 0, 1129, 1081, 1083, 1035, 1033, 532,
508, 509, 0, 0, 0, 0, 0, 1729, 0, 0,
529, 0, 964, 597, 588, 0, 0, 578, 597, 597,
597, 0, 0, 564, 0, 0, 1010, 0, 1010, 1004,
563, 0, 0, 1003, 1010, 0, 1010, 0, 0, 0,
1612, 1589, 1590, 1592, 1593, 0, 1598, 1595, 1597, 0,
1596, 1604, 1606, 1603, 1602, 0, 1585, 1587, 1991, 99,
111, 109, 110, 114, 112, 113, 115, 121, 120, 209,
116, 2440, 2124, 2348, 2194, 2880, 2259, 2657, 2768, 2848,
2226, 2790, 2714, 2785, 2822, 2900, 2690, 2740, 2873, 303,
2695, 2838, 2765, 2791, 2783, 2190, 0, 0, 2735, 2813,
0, 0, 2613, 0, 228, 2816, 2707, 2697, 2779, 2786,
2818, 2388, 2780, 104, 102, 103, 105, 107, 106, 2686,
2687, 2688, 2689, 2691, 2692, 2693, 2694, 2696, 2698, 2699,
2700, 2701, 2703, 2704, 2705, 2706, 2708, 2709, 2710, 2711,
2712, 2713, 404, 408, 397, 2718, 2719, 2720, 2721, 2722,
2723, 2724, 2725, 2726, 2727, 2728, 2729, 2730, 2731, 2732,
2733, 2734, 2736, 2737, 2738, 2739, 2741, 2742, 2743, 2744,
2745, 2746, 2747, 2748, 2749, 2750, 2751, 2752, 2753, 2754,
2755, 2756, 2757, 2758, 2759, 2760, 2761, 2762, 2763, 2764,
2766, 2767, 2769, 2770, 2771, 2772, 2773, 2774, 2775, 2776,
2777, 2778, 2781, 2782, 2784, 2787, 2788, 2789, 2792, 2793,
2794, 2795, 398, 399, 2798, 2799, 2800, 2801, 2802, 2803,
2804, 2805, 2806, 2807, 2808, 2809, 2810, 2811, 2812, 2814,
2815, 2817, 2819, 2820, 2821, 2823, 2824, 2825, 2826, 2827,
2828, 2829, 2830, 2831, 2832, 2833, 2834, 2835, 2836, 2837,
2839, 2840, 2841, 2842, 2843, 2844, 2845, 2846, 2847, 2849,
2850, 2851, 2852, 2853, 2854, 2855, 2856, 2857, 2858, 2859,
2860, 2861, 2862, 2863, 2864, 2865, 2866, 2867, 2868, 2869,
2870, 2871, 2872, 2874, 2875, 2876, 2877, 2878, 2879, 2881,
2882, 2883, 2884, 2885, 2886, 390, 387, 384, 2890, 2891,
2892, 2893, 2894, 2895, 2896, 2897, 2898, 2899, 2901, 2902,
2685, 2039, 2040, 2041, 2042, 2043, 2044, 2045, 2046, 2047,
2048, 2049, 2050, 2051, 2052, 2054, 2055, 2057, 2058, 2059,
2060, 2061, 2062, 2671, 2680, 2053, 2056, 2063, 2069, 2065,
2066, 2067, 2068, 2070, 2071, 2072, 2073, 2075, 2077, 2076,
2078, 2079, 2080, 2081, 2082, 2083, 2084, 2085, 2074, 2064,
2086, 2089, 2090, 2091, 2092, 2093, 2094, 2095, 2096, 2097,
2098, 2099, 2100, 2101, 2102, 2103, 2105, 2104, 2106, 2107,
2108, 2109, 2114, 2110, 2111, 2112, 2113, 2115, 2116, 2117,
2118, 2119, 2120, 2121, 2122, 2123, 2125, 2126, 2127, 2128,
2129, 2130, 2131, 2132, 2133, 2134, 2135, 2136, 2137, 2138,
2140, 2141, 2143, 2142, 2139, 2144, 2145, 2146, 2148, 2149,
2150, 2151, 2152, 2153, 2154, 2155, 2156, 2157, 2158, 2159,
2160, 2162, 2163, 2161, 2164, 2165, 2166, 2167, 2168, 2169,
2170, 2171, 2172, 2173, 2174, 2175, 2176, 2147, 2177, 2178,
2179, 2180, 2181, 2182, 2183, 2184, 2185, 2186, 2187, 2188,
2189, 2191, 2192, 2193, 2195, 2196, 2197, 2198, 2200, 2201,
2396, 2202, 2203, 2204, 2206, 2199, 2205, 2207, 2208, 2210,
2211, 2213, 2214, 2215, 2216, 2217, 2218, 2220, 2222, 2223,
2224, 2225, 2219, 2209, 2221, 2212, 2227, 2228, 2229, 2230,
2231, 2233, 2235, 2234, 2236, 2232, 135, 2237, 2238, 2239,
2240, 2241, 2242, 2243, 2244, 2245, 2246, 2247, 2248, 2249,
2252, 2250, 2251, 2253, 2254, 2255, 2256, 2257, 2258, 2260,
2262, 2263, 2264, 2267, 2266, 2268, 2670, 2334, 2265, 2261,
2088, 2269, 2270, 2271, 2272, 2087, 2273, 2274, 2275, 2276,
2277, 2278, 2281, 2282, 2279, 2280, 2284, 2285, 2286, 2288,
2289, 2667, 2290, 2291, 2293, 2294, 2295, 2677, 2283, 2287,
2292, 2296, 2297, 2298, 2299, 2300, 2301, 2302, 2303, 2304,
2305, 2306, 2307, 2308, 2309, 2310, 2311, 2312, 2313, 2314,
2315, 2316, 2317, 2318, 2319, 2320, 2321, 2322, 2323, 2324,
2325, 2326, 2327, 2328, 2329, 2330, 2331, 2332, 2333, 2335,
2337, 2338, 2339, 2341, 2342, 2343, 2344, 2345, 2346, 2347,
2349, 2350, 2351, 2352, 2353, 2354, 2355, 2356, 2357, 2340,
2358, 2679, 2648, 2336, 2359, 2360, 2361, 2362, 2363, 2364,
2365, 2366, 2367, 2369, 2370, 2371, 2373, 2374, 2375, 2376,
2380, 2379, 2381, 2377, 2378, 2368, 2676, 2372, 2683, 2382,
2383, 2384, 2385, 2386, 2389, 2390, 2391, 2392, 2393, 2394,
2397, 2387, 2398, 2399, 2400, 2401, 2402, 2403, 2404, 2405,
2406, 2684, 2408, 2407, 2409, 2668, 2410, 2412, 2413, 2414,
2415, 2416, 2417, 2681, 2682, 2674, 2411, 2418, 2419, 2420,
2422, 2423, 2424, 2426, 2428, 2429, 2430, 2431, 2432, 2434,
2421, 2436, 2437, 2438, 2427, 2425, 2435, 2433, 2439, 2441,
2442, 2445, 2446, 2448, 2452, 2453, 2454, 2455, 2456, 2457,
2458, 2459, 2460, 2461, 2462, 2463, 2464, 2465, 2466, 2467,
2468, 2469, 2470, 2471, 2472, 2473, 2474, 2475, 2476, 2477,
2478, 2479, 2480, 2481, 2482, 2483, 2485, 2486, 2489, 2487,
2488, 2490, 2491, 2484, 2492, 2493, 2494, 2495, 2496, 2449,
2450, 2451, 2678, 2395, 2675, 2443, 2444, 2447, 2497, 2498,
2499, 2500, 2501, 2502, 2503, 2504, 2505, 2506, 2507, 2508,
2509, 2510, 2511, 2512, 2513, 2514, 2515, 2516, 2517, 2518,
2520, 2521, 2522, 2602, 2523, 2524, 2525, 2526, 2527, 2528,
2529, 2530, 2531, 2532, 2533, 2534, 2535, 2537, 2536, 2538,
2539, 2540, 2541, 2542, 2543, 2544, 2545, 2546, 2547, 2550,
2548, 2549, 2551, 2552, 2553, 2554, 2555, 2556, 2557, 2558,
2559, 2565, 2672, 2560, 2561, 2562, 2563, 2564, 2566, 2567,
2568, 2569, 2570, 2571, 2572, 2573, 2574, 2575, 2576, 2577,
2578, 2579, 2580, 2581, 2582, 2583, 2584, 136, 2585, 2519,
2586, 2587, 2589, 2590, 2588, 2591, 2592, 2593, 2595, 2597,
2598, 2599, 2600, 2603, 2604, 2605, 2606, 2607, 2608, 2611,
2610, 2612, 2614, 2615, 2616, 2617, 2618, 2619, 2596, 2594,
2620, 2601, 2673, 2609, 2621, 2622, 2623, 2624, 2625, 2627,
2628, 2629, 2630, 2631, 2632, 2633, 2634, 2626, 2635, 2636,
2637, 2638, 2639, 2641, 2642, 2643, 2646, 2650, 2649, 2669,
2647, 2640, 2644, 2645, 2651, 2652, 2654, 2655, 2656, 2658,
2659, 2653, 2660, 2661, 2662, 2663, 2664, 2665, 2666, 227,
193, 108, 0, 119, 194, 0, 223, 152, 173, 190,
1581, 0, 206, 208, 207, 381, 338, 339, 340, 335,
334, 408, 336, 337, 0, 200, 87, 0, 0, 1992,
2036, 2037, 2038, 0, 531, 0, 0, 0, 0, 1739,
0, 0, 0, 0, 0, 1612, 0, 1989, 0, 0,
2440, 2124, 2613, 0, 0, 2042, 2050, 2051, 2052, 2054,
2061, 2091, 515, 2109, 2111, 2134, 2140, 2143, 2139, 2150,
2151, 2152, 2156, 2161, 2172, 2180, 2206, 2215, 2220, 2230,
1642, 2235, 2234, 0, 2243, 2265, 2272, 2273, 2276, 2277,
2286, 2288, 2287, 2292, 2319, 2338, 2341, 2347, 2351, 2360,
2374, 2377, 2378, 1545, 2407, 2420, 2439, 2481, 2491, 2492,
2451, 2443, 2502, 1643, 2512, 2556, 2557, 2558, 2559, 2568,
2572, 2573, 2575, 2583, 2584, 0, 2605, 2606, 2607, 2608,
2616, 2617, 2636, 2642, 2644, 2645, 2654, 2663, 0, 1626,
1629, 1637, 0, 0, 1990, 1958, 0, 1472, 1492, 1494,
0, 1447, 1473, 0, 515, 1499, 0, 1476, 0, 1484,
1545, 1493, 1486, 1499, 1469, 1470, 0, 1485, 1483, 1499,
1481, 1499, 1497, 1476, 1499, 1481, 0, 0, 0, 0,
1554, 1993, 2095, 558, 510, 1994, 1564, 1571, 1579, 0,
0, 0, 2014, 1650, 1623, 2015, 1007, 1008, 0, 0,
0, 1564, 1580, 1984, 1570, 950, 0, 0, 0, 0,
0, 0, 0, 1, 5, 7, 534, 535, 0, 1027,
1026, 1026, 0, 0, 1076, 0, 1045, 1048, 0, 1072,
0, 1051, 1088, 1087, 1085, 1086, 1091, 1090, 0, 1053,
0, 1052, 0, 1061, 0, 1257, 1258, 1260, 1259, 0,
1253, 1255, 0, 0, 1095, 0, 1353, 1358, 0, 1074,
0, 2068, 2396, 2202, 2203, 2220, 2406, 2412, 1433, 1435,
1434, 1432, 1503, 1351, 1352, 1421, 1359, 0, 1050, 1049,
1366, 1366, 0, 0, 0, 0, 0, 1366, 1366, 1366,
1366, 1366, 0, 0, 1366, 1366, 1366, 1366, 1366, 0,
1366, 0, 1366, 1366, 0, 1366, 1160, 1161, 1162, 1163,
1164, 1165, 1166, 1167, 1168, 0, 0, 1366, 1366, 0,
0, 0, 1125, 1130, 1729, 1729, 0, 0, 0, 0,
1870, 1904, 1905, 1871, 0, 0, 0, 1728, 1807, 0,
1966, 0, 1941, 1771, 0, 1915, 0, 0, 1967, 0,
1876, 0, 0, 0, 1906, 1914, 1808, 0, 0, 0,
0, 0, 0, 1923, 0, 1952, 1873, 1874, 1922, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1729,
1729, 1530, 1529, 1533, 1537, 0, 1531, 528, 1729, 954,
0, 0, 597, 597, 0, 0, 0, 0, 597, 0,
0, 956, 0, 0, 597, 0, 0, 0, 1417, 0,
1010, 1010, 0, 0, 1537, 1536, 0, 0, 1010, 1010,
1611, 1586, 1608, 1607, 0, 1605, 1591, 1599, 1594, 1601,
1600, 0, 0, 0, 1583, 1582, 0, 302, 0, 209,
2816, 196, 197, 0, 198, 0, 80, 200, 2848, 2790,
2702, 2813, 2697, 2779, 2705, 2712, 2715, 2716, 2717, 2718,
2720, 2728, 2744, 2763, 2771, 2796, 2797, 2805, 2841, 2842,
2850, 2887, 2888, 2889, 2890, 0, 0, 218, 192, 0,
0, 0, 0, 0, 402, 0, 204, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 422,
0, 310, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 419, 0, 0, 0, 0, 0, 0,
0, 419, 0, 0, 422, 0, 422, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 310,
310, 310, 310, 0, 422, 0, 0, 0, 0, 0,
0, 310, 310, 310, 0, 0, 100, 101, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 226, 225, 0, 0, 0, 191, 0,
0, 0, 0, 0, 199, 396, 0, 0, 417, 0,
1740, 1012, 1742, 1741, 1736, 1735, 1738, 1737, 1988, 0,
1658, 1659, 1533, 1548, 1546, 1586, 0, 1647, 1646, 0,
0, 0, 0, 0, 1970, 1974, 516, 0, 0, 0,
0, 1644, 0, 734, 735, 736, 738, 737, 743, 0,
0, 0, 1645, 1969, 0, 1991, 0, 1992, 0, 0,
1490, 0, 1491, 0, 0, 0, 0, 0, 597, 1497,
1497, 0, 0, 1460, 0, 0, 1454, 1497, 0, 1457,
1477, 1933, 1499, 1464, 1480, 1466, 1459, 1496, 1495, 0,
1499, 1453, 1458, 1499, 1468, 1499, 1499, 0, 1488, 1489,
1463, 1497, 0, 1745, 0, 0, 1743, 0, 1749, 0,
1648, 1267, 1553, 1555, 0, 2498, 1985, 0, 0, 1572,
1567, 1657, 1574, 1577, 1575, 1576, 1578, 1573, 8, 6,
0, 1025, 0, 0, 0, 0, 1077, 1109, 0, 2173,
1104, 1108, 1110, 1073, 1218, 1092, 1093, 1094, 1089, 1068,
1066, 1064, 1067, 1063, 1062, 1065, 1265, 1261, 1268, 1105,
1256, 0, 1277, 0, 1271, 1273, 1275, 1276, 1279, 1274,
1095, 0, 1359, 1097, 429, 0, 0, 0, 1355, 1075,
1362, 1363, 1422, 1423, 1424, 1425, 0, 1427, 1426, 1504,
1420, 1505, 0, 1654, 0, 0, 0, 0, 0, 0,
1199, 1198, 1197, 0, 0, 0, 0, 0, 0, 0,
0, 1201, 1200, 0, 1203, 1202, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1370, 0, 0,
0, 765, 0, 0, 0, 0, 0, 0, 1725, 1725,
1725, 0, 0, 1727, 1728, 1725, 0, 0, 1692, 1695,
1693, 1694, 1662, 1663, 1672, 1671, 1679, 1670, 1673, 1667,
1668, 810, 951, 0, 0, 0, 0, 1696, 1697, 1698,
1699, 932, 945, 933, 1687, 0, 0, 0, 0, 2334,
0, 440, 0, 0, 0, 0, 0, 0, 0, 0,
1875, 0, 0, 1809, 0, 808, 808, 1750, 1866, 1872,
0, 1811, 0, 0, 0, 0, 0, 1933, 0, 0,
1838, 1847, 0, 1849, 1844, 1843, 1846, 1840, 1842, 0,
1841, 1939, 1933, 1839, 1848, 1850, 1851, 1845, 0, 1881,
808, 1910, 1897, 1897, 0, 0, 1796, 1784, 1786, 1785,
1787, 0, 1897, 808, 0, 0, 1813, 0, 0, 808,
808, 808, 808, 808, 1781, 1950, 0, 0, 1812, 0,
0, 0, 1816, 0, 0, 0, 0, 0, 1780, 1942,
0, 0, 0, 0, 0, 1891, 1891, 0, 1792, 474,
0, 1552, 1551, 503, 474, 1532, 1534, 0, 0, 0,
1542, 0, 0, 810, 0, 935, 0, 0, 505, 474,
1518, 1508, 1533, 810, 0, 0, 0, 0, 0, 0,
0, 1011, 930, 595, 0, 0, 506, 577, 526, 565,
0, 574, 566, 0, 0, 1609, 1610, 1613, 0, 1616,
1588, 224, 0, 0, 308, 304, 0, 0, 201, 0,
0, 0, 0, 80, 0, 405, 0, 407, 1991, 0,
637, 0, 0, 0, 1036, 0, 391, 0, 388, 0,
385, 0, 0, 0, 0, 0, 0, 0, 423, 424,
425, 0, 0, 309, 0, 0, 0, 403, 0, 400,
0, 0, 0, 0, 0, 0, 2017, 2018, 2019, 2020,
2022, 2023, 2024, 2027, 2028, 2032, 2035, 2016, 2021, 2025,
2026, 2029, 2030, 2031, 2033, 2034, 0, 0, 0, 656,
655, 657, 0, 420, 421, 0, 0, 0, 0, 0,
80, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 394, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 392, 0, 0, 0, 0, 0, 0, 0, 0,
1223, 0, 0, 0, 0, 0, 0, 122, 219, 137,
221, 0, 229, 2049, 2525, 150, 0, 141, 0, 139,
0, 148, 0, 146, 0, 143, 0, 145, 0, 99,
169, 0, 153, 232, 99, 157, 176, 177, 179, 178,
2779, 180, 2779, 181, 184, 185, 186, 188, 187, 189,
0, 0, 0, 0, 195, 729, 730, 741, 216, 215,
217, 214, 213, 0, 0, 91, 88, 0, 0, 89,
418, 82, 1267, 0, 90, 0, 0, 0, 0, 0,
0, 0, 1633, 1632, 1634, 1631, 1639, 1636, 1635, 1979,
1978, 0, 0, 0, 0, 0, 1971, 1973, 742, 1968,
1533, 0, 1972, 1642, 1643, 1630, 0, 1641, 1640, 1451,
1449, 1471, 1452, 1467, 1450, 0, 1499, 1499, 1500, 1502,
0, 1475, 1499, 1478, 808, 1932, 1461, 1445, 1498, 1444,
1439, 1465, 1446, 1497, 1499, 0, 0, 0, 0, 1653,
1649, 1651, 1266, 0, 1563, 1560, 0, 1557, 0, 678,
1625, 679, 1624, 1622, 1987, 1986, 0, 0, 536, 1016,
0, 1329, 1030, 1248, 1244, 1245, 1212, 1213, 1100, 740,
1103, 0, 1221, 1222, 0, 1217, 1266, 0, 1262, 0,
1106, 1054, 1277, 0, 0, 1326, 0, 0, 0, 1413,
1396, 1413, 0, 1402, 1406, 0, 0, 0, 0, 1331,
1332, 0, 0, 2497, 1286, 1280, 0, 1349, 1290, 1303,
1243, 0, 0, 1098, 0, 1354, 430, 1357, 1358, 1437,
1436, 0, 1360, 1361, 1365, 1366, 0, 0, 1382, 1370,
1138, 0, 1137, 1135, 1141, 0, 0, 1367, 1370, 1374,
1370, 0, 0, 1370, 1370, 1370, 1147, 1169, 1370, 1370,
1370, 1370, 1370, 1182, 1370, 1183, 1370, 0, 1371, 765,
1369, 0, 1175, 1195, 0, 764, 0, 1187, 1370, 0,
1184, 1174, 1335, 1724, 972, 1336, 0, 1334, 0, 967,
0, 0, 0, 0, 0, 0, 0, 0, 1723, 2570,
1732, 0, 0, 1726, 0, 0, 0, 0, 0, 0,
1729, 809, 0, 808, 808, 808, 808, 808, 808, 808,
808, 808, 808, 803, 808, 808, 808, 808, 808, 808,
808, 808, 808, 808, 808, 796, 1666, 768, 801, 0,
0, 0, 0, 0, 0, 0, 1729, 808, 808, 808,
808, 808, 947, 936, 0, 0, 1419, 0, 0, 808,
808, 808, 466, 456, 808, 808, 808, 808, 808, 808,
808, 808, 465, 438, 805, 806, 1903, 804, 1933, 2601,
1836, 1802, 1815, 1814, 1819, 808, 0, 0, 0, 0,
1810, 807, 0, 0, 0, 1820, 1940, 0, 1818, 0,
1768, 1897, 1773, 1798, 1824, 1858, 1754, 808, 1938, 1755,
1936, 1858, 0, 1770, 0, 808, 1908, 1909, 1879, 808,
808, 1894, 1895, 1896, 1764, 1778, 1897, 0, 1858, 1763,
0, 0, 0, 1897, 0, 0, 0, 0, 0, 0,
0, 1765, 1794, 1965, 1964, 0, 0, 1790, 1817, 0,
0, 0, 0, 0, 1877, 1891, 1776, 0, 1729, 0,
1890, 1766, 1767, 1795, 808, 808, 808, 808, 808, 808,
808, 808, 808, 808, 808, 808, 495, 472, 808, 486,
0, 488, 0, 495, 1514, 0, 0, 1513, 0, 1515,
1516, 1523, 0, 0, 1543, 1520, 0, 1538, 1550, 808,
808, 808, 810, 513, 521, 0, 522, 596, 910, 938,
934, 936, 451, 440, 493, 0, 0, 1518, 1506, 1510,
507, 810, 810, 0, 0, 0, 0, 960, 958, 999,
1014, 470, 469, 575, 576, 504, 0, 573, 571, 1732,
1732, 0, 0, 0, 0, 0, 0, 305, 0, 0,
81, 96, 97, 98, 0, 0, 374, 0, 0, 0,
406, 372, 0, 0, 0, 0, 0, 389, 386, 373,
0, 364, 316, 317, 318, 371, 0, 0, 0, 0,
0, 0, 401, 0, 349, 0, 362, 363, 0, 0,
272, 270, 269, 0, 278, 288, 260, 279, 0, 1243,
330, 361, 333, 272, 0, 263, 261, 262, 1243, 378,
0, 377, 0, 360, 0, 359, 353, 395, 0, 0,
0, 0, 356, 0, 0, 0, 357, 0, 0, 0,
0, 0, 365, 0, 393, 351, 352, 369, 0, 368,
0, 0, 0, 0, 0, 0, 0, 348, 0, 0,
0, 0, 354, 350, 220, 138, 222, 0, 0, 0,
0, 0, 0, 0, 174, 170, 0, 158, 0, 0,
0, 0, 0, 99, 171, 154, 99, 163, 0, 0,
347, 0, 417, 0, 0, 0, 379, 1013, 1661, 1660,
0, 1549, 0, 0, 0, 0, 1983, 1975, 0, 1748,
1822, 676, 0, 1544, 1539, 0, 1638, 1448, 1442, 1441,
0, 0, 0, 1443, 0, 1095, 1438, 1497, 1747, 0,
0, 0, 1561, 1562, 1559, 0, 1556, 1566, 0, 537,
538, 0, 0, 0, 1024, 1023, 1017, 0, 1022, 1315,
1328, 0, 1015, 1249, 1250, 1247, 0, 0, 0, 0,
1112, 1107, 1220, 1219, 1263, 1264, 1269, 0, 1278, 1327,
1272, 1095, 433, 0, 1403, 1412, 0, 0, 0, 0,
1404, 1405, 1413, 1413, 1413, 0, 1400, 1398, 1397, 1390,
0, 1291, 0, 1337, 1324, 1319, 0, 2504, 1287, 1288,
1311, 0, 1282, 1281, 1304, 1337, 1350, 1305, 1214, 1242,
431, 1360, 1096, 0, 1356, 1428, 1364, 0, 1370, 1152,
0, 1139, 0, 1370, 1370, 1144, 0, 0, 1143, 1146,
1148, 1150, 1151, 1153, 1149, 1155, 1156, 1157, 1154, 1179,
1370, 0, 1386, 731, 733, 0, 0, 1180, 1188, 969,
971, 973, 0, 1683, 1684, 1678, 967, 1333, 0, 0,
999, 966, 968, 0, 1712, 0, 0, 0, 0, 1732,
0, 0, 1131, 0, 1690, 1676, 1677, 1730, 1731, 1714,
1703, 0, 0, 0, 0, 0, 1669, 1718, 0, 1681,
1682, 1664, 525, 524, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 769, 808, 808, 1686, 931,
1685, 0, 923, 923, 923, 0, 1689, 946, 0, 0,
0, 0, 0, 937, 1835, 0, 0, 1416, 498, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 808, 808, 808, 1901, 1775, 1929,
0, 0, 1893, 0, 0, 1799, 0, 0, 1867, 1789,
1769, 1782, 0, 0, 0, 1863, 0, 808, 1935, 1753,
1863, 1882, 0, 0, 808, 1891, 0, 0, 1779, 0,
1865, 1931, 1800, 0, 1791, 1793, 1957, 1956, 1955, 1953,
1954, 1951, 1933, 1933, 0, 1758, 1759, 123, 126, 124,
125, 129, 127, 128, 130, 131, 0, 1949, 0, 1949,
1949, 1949, 1943, 0, 1774, 0, 1903, 808, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
810, 0, 501, 0, 808, 0, 500, 1526, 1527, 1528,
0, 1524, 1521, 1522, 1519, 1535, 1541, 0, 0, 0,
514, 808, 808, 929, 906, 907, 908, 909, 0, 808,
808, 808, 808, 437, 449, 436, 0, 0, 471, 1509,
1517, 1507, 0, 0, 970, 0, 770, 835, 768, 1267,
811, 814, 812, 813, 586, 593, 591, 592, 590, 0,
0, 1419, 0, 0, 0, 962, 0, 0, 1000, 565,
574, 566, 1009, 1006, 1614, 1619, 1615, 1617, 0, 0,
307, 234, 0, 202, 0, 81, 0, 721, 721, 712,
649, 651, 653, 652, 712, 651, 654, 0, 716, 0,
638, 0, 0, 0, 1037, 0, 2779, 0, 0, 0,
0, 322, 0, 314, 315, 312, 313, 259, 0, 255,
0, 0, 274, 0, 288, 0, 0, 1243, 0, 426,
277, 0, 426, 0, 320, 321, 0, 0, 256, 0,
81, 257, 254, 323, 324, 326, 327, 0, 319, 0,
1228, 0, 1229, 0, 1230, 0, 1224, 325, 328, 329,
0, 1068, 0, 0, 0, 0, 0, 0, 156, 175,
233, 0, 99, 159, 0, 182, 183, 0, 172, 164,
0, 411, 413, 95, 92, 93, 0, 94, 83, 86,
85, 1533, 0, 1620, 1981, 1980, 1982, 0, 0, 0,
0, 0, 1501, 1456, 1455, 1474, 1479, 1462, 1499, 0,
0, 1652, 1558, 0, 0, 0, 0, 0, 1020, 1042,
1021, 0, 1246, 1101, 1099, 739, 1120, 0, 1095, 1095,
1270, 0, 1243, 0, 1411, 0, 0, 1410, 0, 0,
0, 1401, 1399, 0, 0, 0, 0, 1393, 1297, 0,
0, 0, 1320, 1321, 1322, 0, 1293, 0, 0, 1289,
1307, 1313, 1292, 0, 1283, 1284, 1312, 1306, 0, 1215,
428, 1136, 1383, 0, 0, 1384, 1142, 1373, 0, 1377,
1368, 1370, 0, 1376, 1375, 1372, 1207, 1209, 1205, 1208,
1204, 1206, 765, 0, 1178, 1334, 0, 0, 0, 865,
0, 869, 999, 967, 0, 0, 640, 0, 672, 719,
684, 700, 719, 712, 686, 685, 683, 702, 698, 701,
682, 697, 687, 0, 681, 699, 680, 695, 0, 0,
706, 662, 663, 693, 690, 0, 712, 696, 692, 691,
714, 745, 704, 709, 716, 665, 721, 721, 1711, 1710,
1707, 1705, 0, 0, 1716, 1717, 1715, 0, 1708, 0,
1132, 0, 0, 0, 0, 0, 0, 0, 0, 0,
794, 904, 905, 795, 783, 792, 786, 779, 797, 0,
776, 777, 574, 800, 802, 774, 772, 773, 793, 775,
799, 782, 785, 928, 925, 927, 926, 924, 787, 788,
778, 784, 798, 789, 0, 0, 923, 0, 0, 901,
0, 901, 901, 0, 943, 574, 944, 941, 942, 808,
0, 1891, 1418, 0, 0, 0, 462, 461, 0, 457,
444, 447, 446, 445, 448, 441, 442, 443, 439, 0,
0, 0, 0, 808, 1928, 1926, 1837, 1907, 808, 1891,
1803, 0, 808, 808, 0, 0, 1797, 0, 1862, 1752,
1937, 0, 1751, 808, 0, 0, 1772, 1888, 1889, 1804,
0, 1856, 0, 1912, 1913, 1911, 133, 134, 0, 1963,
0, 1963, 1963, 1963, 1878, 1904, 1905, 0, 1777, 0,
485, 487, 574, 475, 481, 489, 477, 0, 478, 479,
480, 0, 473, 494, 1627, 484, 0, 502, 1525, 523,
520, 519, 0, 0, 939, 0, 0, 0, 0, 0,
2643, 490, 492, 0, 580, 0, 972, 1334, 0, 598,
600, 0, 967, 587, 0, 835, 1267, 817, 0, 821,
816, 836, 810, 0, 0, 0, 1414, 0, 569, 0,
568, 570, 0, 843, 0, 0, 1001, 1002, 0, 572,
0, 1584, 343, 306, 311, 0, 382, 375, 0, 720,
642, 728, 0, 646, 650, 648, 645, 647, 344, 0,
644, 345, 0, 0, 0, 0, 0, 366, 238, 239,
240, 0, 341, 0, 0, 0, 370, 271, 273, 0,
0, 281, 300, 358, 0, 0, 0, 275, 0, 376,
0, 0, 258, 268, 346, 203, 0, 0, 0, 0,
367, 0, 0, 1225, 1226, 1227, 0, 0, 0, 355,
151, 142, 140, 149, 147, 144, 99, 160, 161, 155,
0, 99, 165, 0, 0, 380, 1547, 0, 1977, 1976,
677, 1821, 0, 1440, 0, 0, 1568, 1569, 0, 1018,
0, 1044, 1043, 0, 1040, 0, 0, 0, 1102, 0,
0, 0, 0, 1111, 1114, 282, 1231, 434, 1214, 435,
1394, 0, 1409, 1407, 1408, 1391, 0, 1388, 0, 1330,
1338, 0, 0, 1346, 0, 1299, 0, 1294, 1309, 1298,
1295, 0, 1285, 1308, 1314, 0, 1370, 1370, 1370, 0,
0, 732, 967, 0, 0, 0, 864, 0, 868, 0,
0, 0, 0, 0, 1713, 718, 670, 728, 724, 688,
689, 0, 671, 728, 0, 673, 0, 724, 0, 694,
0, 0, 1719, 0, 724, 0, 724, 664, 728, 668,
1734, 0, 1674, 1691, 1133, 853, 0, 0, 0, 0,
0, 0, 1706, 1680, 0, 780, 791, 790, 901, 923,
0, 0, 0, 923, 0, 911, 1688, 940, 0, 1891,
1806, 499, 0, 0, 0, 463, 496, 765, 1899, 1898,
1900, 1902, 0, 808, 1925, 0, 0, 574, 1858, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1825, 1827,
1860, 1857, 1934, 0, 0, 0, 0, 808, 1783, 0,
1948, 0, 1897, 132, 1897, 1897, 1897, 808, 808, 574,
1916, 1918, 1919, 0, 476, 0, 765, 0, 949, 948,
518, 517, 455, 452, 453, 0, 450, 491, 0, 1511,
0, 969, 971, 967, 970, 767, 0, 0, 999, 0,
0, 815, 0, 0, 771, 585, 594, 0, 0, 0,
0, 559, 0, 959, 0, 0, 0, 0, 0, 117,
118, 0, 727, 643, 0, 0, 639, 0, 0, 212,
415, 244, 237, 235, 236, 280, 289, 291, 290, 0,
301, 287, 427, 331, 0, 0, 242, 243, 0, 272,
245, 246, 248, 249, 241, 416, 247, 250, 251, 162,
99, 166, 167, 412, 414, 1621, 1540, 0, 0, 1329,
1019, 0, 1038, 1042, 0, 0, 0, 1119, 1122, 0,
0, 0, 0, 1113, 0, 1055, 0, 1251, 432, 1395,
0, 0, 1340, 1339, 1341, 1342, 1343, 1345, 0, 1317,
1318, 0, 1316, 1300, 1301, 1296, 1310, 0, 1385, 1378,
0, 1210, 1186, 999, 0, 0, 0, 866, 0, 870,
0, 0, 0, 0, 974, 980, 641, 740, 722, 723,
726, 0, 740, 0, 0, 726, 0, 623, 0, 747,
0, 0, 0, 763, 753, 0, 750, 0, 1720, 0,
0, 0, 744, 0, 621, 0, 726, 0, 726, 740,
0, 0, 759, 1733, 0, 901, 845, 846, 853, 853,
0, 853, 0, 853, 781, 912, 901, 0, 0, 0,
903, 900, 0, 913, 901, 0, 915, 1834, 1805, 0,
0, 808, 464, 0, 1927, 0, 0, 1892, 1761, 1929,
0, 1869, 1823, 0, 0, 0, 0, 0, 0, 1826,
0, 1788, 1859, 0, 1864, 0, 0, 0, 1933, 1933,
1933, 1933, 0, 0, 1760, 1917, 808, 482, 483, 1628,
765, 1512, 581, 1334, 0, 999, 599, 835, 766, 967,
999, 0, 0, 0, 0, 584, 0, 1415, 0, 568,
569, 568, 570, 567, 844, 961, 952, 953, 0, 1618,
383, 717, 0, 711, 715, 332, 0, 0, 0, 0,
2779, 2141, 294, 0, 299, 0, 276, 0, 265, 266,
267, 0, 168, 1746, 1744, 539, 1041, 0, 1029, 0,
0, 1121, 1117, 1118, 0, 1115, 0, 283, 284, 0,
0, 282, 1392, 1389, 0, 1347, 1323, 1302, 1348, 1370,
0, 1675, 0, 0, 0, 0, 0, 0, 981, 0,
981, 0, 1248, 743, 725, 661, 728, 743, 705, 728,
660, 713, 0, 0, 1721, 397, 398, 399, 0, 757,
748, 758, 751, 1722, 754, 756, 749, 746, 752, 703,
658, 0, 708, 659, 743, 760, 761, 0, 831, 901,
901, 853, 901, 853, 901, 0, 903, 0, 0, 0,
0, 0, 919, 0, 0, 0, 0, 497, 1924, 1756,
0, 1757, 808, 1829, 1830, 1832, 1831, 1833, 1828, 1861,
1880, 1854, 1852, 1853, 1855, 0, 1962, 1960, 1961, 1944,
1946, 1947, 1945, 1921, 1920, 0, 454, 967, 0, 0,
1267, 0, 0, 0, 0, 0, 0, 820, 819, 0,
0, 560, 561, 0, 0, 0, 0, 0, 205, 0,
0, 296, 293, 292, 297, 252, 253, 0, 0, 1112,
1039, 1124, 1123, 1116, 0, 0, 1237, 1232, 1240, 1234,
1252, 1084, 1344, 1379, 0, 0, 894, 0, 0, 0,
981, 0, 0, 808, 0, 808, 985, 808, 986, 808,
0, 808, 990, 998, 1704, 982, 983, 992, 993, 975,
1700, 0, 977, 666, 740, 667, 740, 0, 755, 0,
669, 0, 0, 0, 0, 0, 832, 829, 0, 901,
0, 901, 825, 914, 920, 0, 0, 0, 0, 902,
916, 468, 0, 0, 0, 0, 0, 574, 999, 0,
0, 0, 0, 0, 0, 0, 0, 841, 822, 0,
0, 0, 568, 981, 710, 342, 0, 211, 0, 295,
264, 0, 1120, 286, 285, 1238, 1239, 1236, 0, 0,
1233, 0, 2728, 890, 0, 0, 875, 0, 893, 894,
1701, 0, 0, 0, 988, 0, 0, 0, 0, 0,
984, 979, 0, 976, 743, 743, 636, 707, 0, 0,
0, 0, 0, 0, 0, 0, 861, 830, 833, 0,
827, 0, 826, 0, 0, 917, 0, 0, 921, 765,
458, 0, 1930, 1868, 1801, 1762, 0, 605, 0, 583,
0, 0, 981, 0, 0, 837, 853, 0, 818, 562,
835, 210, 298, 540, 541, 1235, 1241, 981, 889, 0,
888, 895, 0, 871, 872, 873, 874, 899, 898, 0,
896, 875, 0, 991, 987, 994, 995, 997, 0, 996,
978, 675, 674, 635, 634, 626, 0, 0, 0, 0,
0, 0, 894, 0, 860, 834, 828, 0, 0, 0,
881, 0, 0, 0, 885, 467, 0, 460, 0, 981,
0, 999, 602, 842, 0, 839, 853, 963, 0, 0,
546, 1702, 891, 0, 0, 877, 0, 892, 867, 0,
989, 1719, 903, 854, 0, 857, 0, 903, 875, 862,
918, 0, 0, 880, 922, 0, 0, 884, 459, 0,
603, 0, 1949, 0, 838, 0, 0, 0, 553, 879,
0, 876, 897, 0, 628, 0, 631, 0, 0, 625,
0, 622, 0, 859, 0, 855, 0, 858, 0, 856,
863, 0, 882, 0, 886, 981, 0, 601, 840, 544,
545, 543, 542, 552, 547, 0, 549, 551, 0, 530,
0, 0, 878, 617, 627, 629, 632, 633, 630, 0,
0, 0, 0, 0, 0, 0, 0, 604, 0, 0,
548, 554, 555, 0, 879, 0, 608, 0, 852, 847,
0, 850, 0, 849, 0, 887, 0, 550, 0, 0,
619, 620, 618, 616, 1709, 848, 851, 883, 617, 556,
557, 0, 607, 608, 0, 0, 606, 612, 611, 0,
0, 610, 609, 613, 615, 614
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
-1, 45, 46, 1879, 47, 1605, 2380, 2381, 1160, 1161,
1162, 1163, 4211, 1164, 3307, 1165, 1166, 1167, 2965, 1168,
1169, 4458, 2193, 1745, 1171, 2326, 2342, 1172, 1173, 4470,
4239, 3451, 3452, 1671, 1678, 2896, 2897, 4275, 4487, 4488,
3456, 3457, 4229, 4624, 4463, 4464, 4230, 4231, 1598, 2184,
2185, 2848, 2226, 1174, 1175, 1176, 1177, 1178, 1179, 1180,
1181, 1182, 1183, 1644, 1184, 2374, 2213, 2304, 2383, 2265,
2221, 3935, 1428, 1414, 1429, 3061, 3062, 50, 2672, 2673,
3363, 3364, 2662, 4791, 4115, 2663, 51, 52, 53, 2776,
2777, 3368, 3332, 4117, 3229, 54, 55, 56, 57, 58,
220, 1343, 2820, 2802, 3049, 2803, 2635, 59, 60, 1548,
61, 62, 1378, 3031, 4629, 4880, 4951, 4918, 4955, 4956,
4959, 4981, 4982, 63, 64, 247, 2171, 4201, 3880, 65,
2838, 2835, 231, 66, 67, 232, 3389, 68, 69, 1551,
3858, 3859, 5004, 5012, 5021, 4986, 5003, 3860, 4071, 4891,
4929, 4845, 3155, 3637, 3427, 3905, 3428, 2262, 3671, 3000,
3001, 3672, 3673, 3674, 3675, 3676, 3677, 4074, 4065, 4076,
3903, 4069, 3910, 3899, 4056, 3900, 4320, 4515, 4213, 2367,
1981, 3136, 1797, 1798, 3050, 1748, 2409, 4072, 4342, 4530,
4531, 4343, 4383, 4427, 3376, 3377, 3718, 3712, 2637, 4663,
3719, 2730, 2639, 3865, 3866, 3867, 4609, 3868, 3869, 3380,
3381, 3382, 3383, 3870, 3871, 4874, 4716, 3882, 4550, 4356,
4357, 4686, 4775, 4776, 3143, 3628, 3629, 3144, 3630, 3631,
4823, 4824, 4884, 4885, 4825, 4859, 4860, 4826, 4863, 4864,
4646, 4744, 4749, 4746, 4829, 4830, 4102, 4562, 3703, 3353,
2017, 2018, 2019, 2020, 3739, 3728, 70, 71, 72, 2808,
2809, 2810, 2653, 2021, 2022, 2781, 1366, 73, 4446, 233,
248, 2827, 3395, 3885, 74, 234, 3150, 3151, 3861, 3139,
3140, 4313, 4314, 4763, 4512, 4664, 4665, 4666, 3397, 3398,
249, 75, 1358, 76, 1567, 1760, 77, 1430, 2469, 3036,
3037, 1882, 1380, 3042, 1386, 79, 80, 2205, 3550, 3993,
3994, 1431, 82, 1185, 84, 85, 86, 87, 88, 89,
90, 91, 92, 93, 94, 95, 96, 97, 1396, 1397,
1398, 1898, 1924, 2524, 3599, 1387, 2491, 1890, 1891, 3556,
4003, 4004, 3998, 4267, 4268, 201, 202, 203, 3164, 204,
1466, 1953, 1963, 1966, 3622, 4040, 2478, 3600, 1391, 2485,
2311, 4277, 4637, 4638, 4639, 4737, 4740, 1383, 1384, 2474,
2475, 3045, 4491, 1409, 1410, 1411, 1908, 2456, 1909, 3559,
1913, 1914, 1915, 1916, 2470, 3088, 4291, 3585, 2514, 3085,
1917, 3039, 3040, 2516, 3146, 3147, 3581, 4286, 4287, 4288,
2517, 2518, 1918, 1415, 1416, 1928, 1433, 1434, 2538, 1945,
2548, 3110, 2569, 2549, 2550, 2551, 2539, 1978, 3577, 1919,
3078, 2505, 2506, 3075, 3076, 2507, 3066, 98, 99, 100,
3227, 101, 102, 1435, 2531, 103, 1335, 1826, 1829, 1835,
1336, 1337, 3557, 1818, 1338, 1839, 1840, 1823, 1940, 104,
2150, 2151, 2140, 2818, 2794, 2795, 2790, 2791, 1543, 2136,
1574, 3346, 105, 1545, 106, 1800, 107, 1773, 1774, 108,
2133, 109, 110, 1862, 1863, 2457, 3024, 1347, 1869, 111,
112, 113, 114, 115, 116, 117, 118, 119, 120, 265,
266, 267, 1581, 2178, 3891, 121, 122, 1353, 2463, 123,
3833, 1299, 2396, 1300, 3834, 1302, 1779, 124, 1860, 2450,
2451, 125, 126, 127, 128, 1770, 1771, 129, 2002, 2003,
2004, 2005, 3145, 2023, 3165, 2006, 2024, 2007, 2008, 4668,
2009, 4344, 2010, 2590, 2605, 2011, 3169, 3684, 130, 131,
132, 133, 3263, 3786, 4138, 4139, 3750, 2681, 2078, 4584,
4148, 3265, 2716, 4141, 3789, 3801, 2047, 2048, 1533, 2755,
3275, 2713, 1534, 2721, 2722, 2761, 3779, 2723, 2724, 3247,
3248, 1535, 2686, 2718, 3295, 1536, 4159, 4160, 4161, 4162,
1537, 4124, 4125, 3774, 3775, 4569, 2435, 2436, 3268, 3269,
2708, 2709, 2054, 2118, 2119, 3809, 2104, 2105, 1339, 4152,
2745, 1538, 134, 135, 136, 1784, 1785, 2997, 137, 138,
139, 1303, 1186, 1187, 1188, 1354, 2305, 1189, 1190, 1191,
1192, 1193
};
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
#define YYPACT_NINF -4337
static const int yypact[] =
{
4487, 1247, 6227, 6227, 6227, 6227, 6227, 6227, -4337, -4337,
102, 116, -4337, -4337, -4337, 235, -4337, 772, -4337, 17191,
588, -116, 86, 326, -131, -4337, 1116, -4337, 49746, 3074,
393, -4337, 84117, 310, 310, -4337, 554, 85125, -54, 85125,
-129,102261, 1135, 1039, 575, 1400, -4337, 1514, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -220, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 1162,
1162, -4337, -4337, 1458, 1322, 1554, 1225, 1388, 1489, -4337,
1967, 2491, 2600, -4337, 1121, 1162, 63913, 1606, -4337, -4337,
-4337, -4337, 46722, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 754, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
1185, 1469, -4337, -4337, -4337, 1494, 1528, 1558, 1561, 1570,
1573, -4337, 1598, 1615, -4337, 1633, 1659, 1733, 1817, 1930,
1966, -4337, 2027, 2029, 2037, 2068, 2077, -4337, -4337, -4337,
2084, -4337, -4337, -4337, -4337, 2120, 2132, 2162, -4337, 2184,
2199, 2230, 2230, 2230, 2230, 2230, 2230, 2230, 2230, 2230,
2251, -4337, 2299, 2309, -4337, 2328, -4337, -4337, -4337, 2360,
2362, -4337, 425, 6384, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 64921, 84117, 84117, 84117, -340, 5110, 65929, 66948,
1885, 1646, -4337, 1773, -4337, 132, 1294, -4337, 1773, 1773,
1773, 1687, 1628, -151, 1949, 84117, 2112, 64921, 2112, 1409,
-4337, 222, 1652, -4337, 2112, 66948, 2112, 1482, 1447, -54,
1697, -415, 653, -4337, -4337, 2164, -4337, -4337, -4337, -34,
-4337, -4337, -4337, -4337, -4337, 2367, 2437, -4337, 1531, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2435,
-4337, 18212, 18212, -4337, -4337, -4337, -4337, -4337, -4337, 2395,
-4337, 2401, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 18212,
-4337, -4337, -4337, -4337, -4337, -4337, 19233, 19233, -4337, 2403,
19233, 9023, -4337, 44706, -4337, 38632, -4337, 39653, 2411, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 2416, -4337, -4337, -4337, -4337, -4337,
2427, -4337, 1668, 1696, 2425, 2430, -4337, 2442, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2453, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2454,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2462, -4337,
-4337, -4337, -4337, -4337, 2465, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2470, 2473, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2479, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2480, 2482, -4337, -4337, -4337, -4337, -4337, -4337,
2485, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 1730, 1991, 2183, 2503, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 2518, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2532, 2534, 2538, 2540, -4337, -4337, -4337, -4337,
-4337, 2542, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2543, -4337, -4337, -4337, 2551, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2565, -4337, -4337, 2570, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2571, -4337, -4337, -4337, -4337,
2573, -4337, 2574, -4337, 2582, -4337, -4337, -4337, -4337, -4337,
2584, 2585, 2590, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2591, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2592, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 2595, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2599, -4337, -4337, -4337, 2601, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2604,
-4337, -4337, 2605, 2607, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2609, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2611, -4337,
-4337, -4337, -4337, -4337, 2613, -4337, 2615, -4337, -4337, 2599,
2615, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2616, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2617,
2618, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 2622, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2627, -4337, 2633, -4337, -4337, -4337, -4337, -4337, 2643,
-4337, -4337, 2644, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, 2645, -4337, -4337,
-4337, -4337, -4337, 2665, 2666, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2667, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2669,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2671, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2672, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2676, -4337, 2683, -4337, -4337, -4337, -4337, -4337,
-4337, 2692, -4337, -4337, -4337, 2693, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2694, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 2699, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, 2700, 2703, 2710,
2717, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
2722, -4337, -4337, -4337, 2724, 2725, -4337, 2726, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2735, 2736, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2737, 2738, 2749, 2750, -4337,
-4337, -4337, -4337, -4337, 2758, 2759, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2760,
-4337, -4337, -4337, -4337, 2762, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2763, 2764, -4337, -4337, 2768, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2770, -4337, -4337, -4337, -4337,
-4337, -4337, 1078, -4337, -4337, 2642, 218, -4337, 4060, 1406,
3033, 19233, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2771, -4337, -4337, 2775, -4337, -4337, 2784, 2789, 2786,
-4337, -4337, -4337, 2790, -4337, 64921, 67956, 64921, 64921, -4337,
84117, 84117,102261, 64921, 66948, 1697, 2494, -4337, 277, 1140,
-4337, -4337, 246, 2354, 2153, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 1146, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2035, -4337, -4337, 2583, -4337, -4337, -4337, -4337,
1115, -4337, -4337, 2792, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2752, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 1496,
-4337, -4337, -4337, 2544, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 1131, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2793, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 1496, 2783,
-4337, -4337, 86133, 1201, -4337, -4337, 50, -4337, -4337, -4337,
1965, -4337, -4337, 1970, -4337, 306, 2799, 2621, 1973, -4337,
2649, -4337, -4337, 306, -4337, -4337, 1982, -4337, -4337, 306,
1983, 306, 367, 2621, 306, 1983, 2373, -438, 367, -104,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -13,
6, 2275, -4337, 2546, -4337, -4337, -4337, -4337, 64921, 2661,
103269, 2554, -4337, -4337, 1072, -4337, 64921, 2895, 2902, 2903,
2904, 2907, 2914, -4337, -4337, 2751, -4337, -4337, 2660, -4337,
2824, 2824, 2739, 2664, 2673, 87141, -4337, -4337, 2664, 2673,
2576, -4337, -4337, -4337, -4337, -4337, 929, -4337, 1247, -4337,
1247, -4337, 2664, 2673, 1247, -4337, -4337, -4337, -4337, 10044,
-4337, 1121, 57832, 64921, 2561, 920, -4337, 2856, 2664, 2673,
44706, 1858, 1858, 1858, 1858, 2888, 1858, 1858, -4337, -4337,
-4337, -4337, 68975, -4337, -4337, -4337, 2865, 85125, -4337, -4337,
1931, 1931, 2944, 2949, 2952, -118, 115, 1931, 1931, 1931,
1931, 1931, 95, 217, 1931, 1931, 1931, 1931, 1931, 2955,
1931, 2956, 1931, 1931, 2957, 1931, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 1943, 2966, 1931, 1931, 2967,
2957, 6692, -4337, -4337, 152, 87, 314, 2801, 88149, 84117,
1954, 2223, 2025, -109, -351, 2063, 2244, 2477, -4337, 134,
-4337, -393, 45, -4337, -187, -4337, 2680, 2681, -4337, 3216,
1979, 2450, 2019, 2471, -4337, -4337, -4337, 2217, -119, 203,
2624, 2220, 89157, 2631, -251, -3, -275, 376, 2632, -292,
2668, 822, 154, 2178, 2018, 206, 2233, 404, -373, 2715,
685, -4337, -4337, 3027, 705, 520, -4337, -4337, 2715, -4337,
1753, 84117, 1773, 1773, 84117, 84117, 66948, 84117, 1773, 3041,
84117, -4337, 2106, 2047, 1773, 2958, 2822, 84117, -4337, 3050,
2112, 2112, 84117, 84117, -4337, 3031, 84117, 90165, 2112, 2112,
-4337, -4337, -4337, -4337, 281, -4337, -4337, -4337, -4337, -4337,
-4337, 69983, 1684, 18212, 3033, 3033, 18212, 3033, 3008, -4337,
-4337, 2972, 2972, 18212, 2972, 3035, 2448, 1529, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2978, 2994, -4337, 2972, 18212,
18212, 18212, 2983, 519, -4337, 91173, -4337, 18212, 18212, 91173,
2998, 1316, 1349, 91173, 18212, 18212, 18212, 18212, 18212, 1227,
18212, 1330, 2999, 1374, 3000, 18212, 18212, 18212, 3002, 618,
18212, 2990, -58, 292, 18212, 18212, 18212, 18212, 2991, 3009,
3010, 292, 18212, 18212, 1227, 18212, 1227, 18212, 18212, 1444,
18212, 18212, 3013, 19233, 18212, 18212, 3016, 3025, 18212, 2932,
2932, 2932, 2932, 18212, 1227, 1484, 18212, 18212, 618, 618,
8002, 2932, 2932, 2932, 18212, 18212, -4337, -4337, 86133, 180,
11065, 11065, 11065, 11065, 11065, 11065, 19233, 19233, 20254, 3032,
21275, 19233, 19233, 19233, 19233, 22296, 23317, 19233, 19233, 19233,
19233, 19233, 19233, -4337, -4337, 2379, 19233, 1927, -4337, 18212,
18212, 18212, 18212, 18212, 2972, -4337, 18212, 41682, 18212,106280,
3086, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 2769,
3093, -4337, 3027, -4337, 3094, 3095, 69983, -4337, -4337, 24338,
18212, 18212, 16, 2487, -4337, 3100, -4337, 3067, 2947, 2553,
246, -4337, 246, -4337, -4337, -4337, -4337, -4337, 2972, 66948,
3076, 246, -4337, -4337, 58840, -4337, 277, -4337, 24338, 24338,
-4337, 64921, -4337, 64921, 84117, 64921, 84117, 64921, 1773, 367,
367, 3132, 18212, -4337, 3070, 3140, -4337, 367, 59859, -4337,
-4337, 2192, 306, -4337, -4337, -4337, -4337, -4337, -4337, 84117,
306, -4337, -4337, 306, -4337, 306, 306, 64921, -4337, -4337,
-4337, 367, 367, -4337, 3089, 3096, -4337, 3097, -4337, 3142,
-4337, 1191, 3135, -4337, 1784,102261, -4337,102261, 2687, -4337,
3144, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
3162, -4337, 64921, 64921, 18212, 493, -4337, -4337, 3165, 3166,
3147, -4337, -4337, -4337, 296, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, 51784, -4337, 991,
-4337, 52792,105285, 431, 1566, -4337, -4337, -4337, 92181, -4337,
2561, 608, 944, 3172, -4337, 84117, 57832, 70991, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -254, -4337, -4337, -4337,
-4337, -4337, 44706, -4337, 3180, 84117, 71999, 3105, 3181, 3107,
-4337, -4337, -4337, 3109, 3111, 3188, 73007, 84117, 71999, 71999,
71999, -4337, -4337, 3114, -4337, -4337, 3116, 71999, 71999, 71999,
71999, 71999, 3117, 71999, 3118, 71999, 74015, 463, 3119, 3124,
3201, 3182, 3128, 71999, 84117, 3129, 3137, 6455, 1376, 1156,
3026, 48738, 3036, 886, -4337, 3026, 2922, -84, -4337, -4337,
-4337, -4337, 3205, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 2670, 204, 2939, 3063, 2951, 2963, -4337, -4337, -4337,
-4337, 3238, -4337, -4337, -4337, -64, 2766, 2767, 1858, 3184,
660, 2569, 60878, 2861, 61897, 3261, 2871, 2873, 2529, 3228,
2260, 2877, 2288, -4337, 3077, 3232, 3232, 3271, -4337, 2911,
2629, -4337, 2314, 3293, 2335, 2791, 2900, 2192, 2347, 2353,
-4337, -4337, 1968, -4337, -4337, -4337, -4337, -4337, -4337, 2322,
-4337, 2773, 2192, -4337, -4337, -4337, -4337, -4337, 2910, 3084,
3232, 318, 434, 434, 2434, 3287, -4337, -4337, -4337, -4337,
-4337, 2370, 434, 1071, 3103, 3108, -4337, 3337, 2742, 3232,
3232, 3232, 3232, 3232, 3319, -4337, 2327, 2744, -4337, 497,
497, 3043, -4337, 3342, 3301, 3306, 3308, 3310, 3347, -4337,
3368, 60878, 2529, 60878, 2529, 2327, 2327, 2387, -4337, 780,
2807, -4337, -4337, -4337, 780, -4337, -4337, 185, 952, 3193,
-4337, 66948, 597, 120, 3153, -64, 84117, 84117, -4337, 780,
665, -4337, 3027, 104, 64921, 2563, 3290, 90165, 64921, 84117,
64921, -4337, -4337, -4337, 84117, 84117, -4337, 1128, -4337, 3300,
3303, 3158, 2786, 64921, 64921, -4337, -4337, 3304, 3053, 3314,
-4337, 3033, 2905, 18212, 487, -4337, 3474, 18212, -4337, 45714,
106280, 3571, 755, 3033, 1333, -4337, 3322, -4337, 3300, 3323,
-4337, 3325, 3796, 3801, -4337, 1582, -4337, 3326, -4337, 3329,
-4337, 3330, 3839, 3331, 1665, 1675, 2463, 2474, -4337, -4337,
-4337, 18212, 2010, -4337, 18212, 18212, 12086, -4337, 3334, -4337,
3321, 2486, 3850, 3338, 3339, 3327, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 3189, 245, 504, -4337,
-4337, -4337, 3396, -4337, -4337, 18212, 2498, 2530, 2536, 1677,
261, 504, 504, 504, 18212, 2552, 2211, 18212, 2562, 18212,
2568, 2596, 3343, -4337, 2619, 3890, 3332, 3987, 2690, 3403,
3336, 3344, 2696, 18212, 18212, 18212, 18212, 3902, 3348, 18212,
3351, -4337, 2701, 2720, 3353, 3412, 3359, 13107, 14128, 15149,
1871, 3360, 18212, 18212, 18212, 2231, 2728, -4337, -4337, -4337,
-4337, 133, -4337, 3364, 3366, -4337, 3367, -4337, 3382, -4337,
3384, -4337, 3386, -4337, 3388, -4337, 3390, -4337, 3738, 3467,
4089, 9023, -4337, -4337, 3467, 1516, 4101, 4019, 4146, 4146,
40674, 2646, 40674, 2646, 3374, 3374, 3374, 3374, 3374, -4337,
19233, 25359, 3032, 26380, 2972, -4337, -4337, -4337, 2507, 2507,
1928, -4337, -4337, 1853, 3398, -4337, -4337, 3402, 3408, 3417,
3471, -4337, 1974, 3416, -4337, 64921, 64921, 64921, 3154, 66948,
3263, 3267, 27401, 3446, 2298, 3033, -4337, 3033, 3033, -4337,
-4337, 35, 2934, 3529, 1740, 3349, -4337, -4337, -4337, -4337,
3027, 168, -4337, 1211, 1215, -4337, 24338, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 84117, 306, 306, 3476, 3033,
3457, 3514, 306, 3460, 3232, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, 367, 306, 64921, 3538, 3540, 3542, -4337,
3526, -4337, -4337, 3183, 2925, -4337, 84117, -4337, 64921, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 2679, 3190, 1260, -4337,
72, 3254, 3466, 2134, 3537, -4337, -4337, -4337, 173, 197,
-4337, 96213, -4337, -4337, 1583, -4337, 85125, 3558, -4337, 10044,
-4337, 3328, 53800, 1700, 84117, -4337, 57832, 91173, 3531, 3272,
965, 3272, 3534, -4337, 2608, 57832, 57832, 57832, 84117, -4337,
-4337, 3492, 364, 540, 97221, 98229, 364, 1274, -4337, 1274,
3278, 57832, 42690, -4337, 18212, -4337, 3549, -4337, 3491, -4337,
-4337, 1858, -4337, -4337, -4337, 1931, 3573, 84117, -4337, 1702,
-4337, 3497, -4337, -4337, -4337, 2557, 73007, -4337, 1711, -4337,
1712, 3498, 3499, 1742, 1749, 1752, -4337, -4337, 1754, 1774,
1787, 1806, 1821, -4337, 1838, -4337, 1839, 84117, -4337, 3182,
-4337, 2957, -4337, -4337, 2558, -4337, 119, -4337, 1846, 3505,
-4337, -4337, -4337, -4337, 84117, -4337, 3507, 364, 1143, 84117,
75023, 84117, 91173, 91173, 91173, 3509, 3501, 1094, -4337, 1094,
835, 84117, 545, -4337, 84117, 64921, 91173, 3586, 3586, 3586,
297, -4337, 43, 3232, 3232, 3232, 3232, 3232, 3232, 3232,
3232, 3232, 3232, -4337, 3232, 3232, 3232, 3232, 3232, 3232,
3232, 3232, 3232, 3232, 3232, -4337, -4337, 2663, -4337, 440,
3507, 64921, 1094, 551, 3586, 3586, 2715, 3232, 3232, 3232,
3232, 3232, -4337, -64, 3588, 3593, 3255, 3599, 3508, 3232,
3232, 3232, 3581, -4337, 3232, 3232, 3232, 3232, 3232, 3232,
3232, 3232, 3591, -4337, -4337, -4337, -168, -4337, 2192, 489,
-4337, -4337, -4337, -4337, -4337, 3232, 2757, 2755, 3385, 2757,
-4337, -4337, 60878, 60878, -393, -4337, -4337, 3615, -4337, 3618,
-4337, 434, -4337, -4337, 3393, 2677, -4337, 3232, -4337, -4337,
3199, 2677, 3368, -4337, 3628, 3232, -4337, -4337, 2776, 3232,
3232, -4337, -4337, -4337, -4337, -4337, 434, 2785, 2677, -4337,
60878, 3631, 84117, 434, 3633, 3635, 3642, 3643, 3647, 60878,
-3, -4337, -4337, -4337, -4337, 256, 434, -4337, -4337, 370,
370, 3651, 370, 154, -4337, 101, -4337, 2757, 2715, 2779,
-4337, -4337, -4337, -4337, 3232, 3232, 3232, 3232, 3232, 3232,
3232, 3232, 3232, 3232, 3232, 3232, 106, -4337, 3232, -4337,
3284, -4337, 3317, 106, -4337, 3659, 3661, -4337, 3664, -4337,
166, -4337, 3665, 3666, 952, -4337, 3669, -4337, -4337, 3232,
3232, 3232, 319, -4337, -4337, 889, -4337, -4337, 3377, -4337,
-4337, 167, 570, 2569, 112, 66948, 952, 3311, -4337, 3101,
-4337, 735, 3259, 22, 1790, 3594, 3449, 3607, -4337, 3340,
-4337, -4337, -4337, -4337, -4337, -4337, 93189, -4337, -4337, 974,
974, 3620, 66948, 76031, 18212, 4024, 18212, -4337, 3173, 18212,
2746, -4337, -4337, -4337, 18212, 18212, -4337, 475, 286, 475,
-4337, -4337, 91173, 18212, 18212, 91173, 3315, -4337, -4337, -4337,
28422, -4337, 3597, 3600, 3608, -4337, 2754, 286, 1847, 1854,
3619, 2772, -4337, 504, -4337, 3613, -4337, -4337, 504, 18212,
56, -4337, -4337, 2970, -4337, 329, -4337, -4337, 18212, 972,
-4337, -4337, -4337, 56, 2986, -4337, -4337, -4337, 972, -4337,
18212, -4337, 2781, -4337, 2825, -4337, -4337, -4337, 3616, 18212,
504, 18212, -4337, 18212, 504, 504, -4337, 2846, 2876, 2897,
2969, 28422, -4337, 2980, -4337, -4337, -4337, -4337, 18212, -4337,
18212, 1926, 18212, 1945, 18212, 1950, 18212, -4337, 3028, 3049,
3102, 18212, -4337, -4337, -4337, -4337, -4337, 1247, 1247, 1247,
1247, 1247, 1247, 19233, -4337, 3708, 1863, 1878, 29443, 9023,
1933, 1933, 3786, 3467, 4089, -4337, 3467, 1709, 18212, 18212,
-4337, 43698, 18212,106280, 18212, 77050, -4337, -4337, -4337, -4337,
66948, -4337, 3430, 66948, -164, 3424, -4337, 3714, 3106, -4337,
3720, -4337, 3737, -4337, -4337, 3681, -4337, -4337, -4337, -4337,
3757, -194, 3758, -4337, 3682, 2561, -4337, 367, -4337, 3752,
3769, 3142, -4337, -4337, -4337, 1242, -4337, 3770, 3335, -4337,
-4337, 3700, 54808, 91173, -4337, -4337, -4337, 3729, -4337, -4337,
-4337, 3305, -4337, -4337, -4337, -4337, 18212, 493, 493, 475,
635, -4337, -4337, -4337, -4337, -4337, -4337, 56824, -4337, -4337,
1566, 375, -4337, 3755, -4337, -4337, 3780, 57832, 3781, 3783,
-4337, -4337, 3272, 3272, 3272, 3784, -4337, 3789, -4337, 858,
892, 1274, 3586, 3596, -4337, 177, 84117, 3745, 99237, -4337,
1274, 84117,100245, -4337, 1274, 3596, -4337, -4337, 2664, -4337,
3549, 953, 3033, 3759, -4337, -4337, -4337, 3751, 1879, -4337,
78058, -4337, 3782, 1898, 1900, -4337, 73007, 79066, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
1901, 174, -4337, -4337, -4337, 3856, 3785, -4337, -4337, 3510,
3673, -4337, 3574, -4337, -4337, -4337, 84117, -4337, 3793, 3794,
3340, -4337, -4337, 91173, -4337, 2948, 15, 228, 91173, 835,
3586, 84117, -4337, 3586, 511, -4337, -4337, -4337, -4337, -4337,
-4337, 3806, 263, 309, 3813, 3546, -4337, -4337, 1517, 511,
511, -4337, -4337, -4337, 60878, 1845, 3868, 3892, 3898, 3900,
60878, 3837, 1077, 3919, 3920, 50765, 3927, 3931, 3932, 127,
3939, 3943, 3948, 3951, 3955, -4337, 3232, 3232, -4337, 3086,
-4337, 3960, -51, 9, 3044, 1689, 511, -4337, 3961, 1077,
3962, 50765, 3971, -4337, 3275, 2757, 1858, -4337, -4337, 1921,
3899, 60878, 3974, 3904, 603, 370, 370, 370, 370, 370,
370, 370, 370, 2569, 3232, 3232, 3232, -4337, 3963, 3098,
3980, 3982, 3518, 3988, 3241, -4337, 2981, 3143, -4337, -4337,
-4337, -4337, 3246, 3653, 3952, 3448, 4008, 3232, -4337, -4337,
3448, 3992, 3519, 3940, 3232, 2327, 4017, 60878, -4337, 4018,
3003, -4337, -4337, 3636, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 2192, 2192, 2757, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 1874, 3575, 3942, 3575,
3575, 3575, -4337, 4025, -4337, 213, -168, 3232, 1927, 4027,
4028, 4029, 50765, 4030, 4035, 3954, 4036, 4037, 4038, 3966,
1312,102261, -4337, 475, 3232, 84117, -4337, -4337, -4337, -4337,
-42, -4337, -4337, -4337, -4337, -4337, -4337, 4041, 50765, 4052,
-4337, 3232, 3232, -4337, -4337, -4337, -4337, -4337, -64, 3232,
3232, 3232, 3232, 4042, -4337, 3591,104277,102261, -4337, -4337,
952, -4337, 3885, 64921, 47730, 1247, -4337, 3774, 1809, 3895,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 3196,
3719, 3255, 93189, 94197, 86133, 3133, 625, 3986, -4337, -4337,
3158, -4337, -4337, -4337, -4337, 501, -4337, -4337, 3113, 18212,
3033, -4337, 3123, -4337, 2259, 3033, 3999, 4001, 4001, 4010,
-4337, 3835, -4337, -4337, 4010, 3835, -4337, 4015, 4020, 4023,
-4337, 4014, 3911, 3922, -4337, 4021, 40674, 3136, 504, 504,
504, 4004, 4033, 4011, -4337, 4013, 4043, -4337, 18212, -4337,
3174, 3397, -4337, 4034, 3819, 3933, 4039, 3278, 3187, 3812,
-4337, 1922, 3812, 3204, 4044, 4045, 504, 3219, -4337, 3248,
3279, -4337, -4337, 4048, 4049, 4053, 4054, 3316, 4065, 3934,
3033, 18212, 3033, 18212, 3033, 18212, 3033, 4077, 4081, 4093,
3413, 243, 4050, 4066, 4108, 4109, 4110, 4111, -4337, -4337,
-4337, 30464, 3467, 1406, 2312, -4337, -4337, 19233, 3708, 1947,
31485, 3958, 1876, -4337, -4337, -4337, 4112, -4337, -4337, -4337,
-4337, 3027, 3957, 3031, -4337, -4337, -4337, 3800, 35, 1740,
3461, 3669, -4337, -4337, -4337, -4337, -4337, -4337, 306, 3724,
3324, -4337, -4337, 3800, 3333, 3858, 105, 1925, 4174, 32506,
4177, 4114, -4337, -4337, -4337, -4337, 3936, 1380, 2561, 2561,
3549, 91173, 3278, 32506, -4337, 892, 57832, -4337, 4173, 4185,
4186, -4337, -4337, 18212, 4143, 18212, 4144, -4337, -4337, 498,
962, 4145, -4337, -4337, -4337, 4147, 1274, 4220, 84117, -4337,
1274, -4337, 1274, 84117,101253, -4337, 1274, -4337, 4148, -4337,
-4337, -4337, -4337, 84117, 84117, -4337, -4337, -4337, 73007, -4337,
-4337, 1936, 84117, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 1951, 3203, -4337, 364, 4152, 64921, 1952, -4337,
1955, -4337, 3340, 84117, 4153, 4154, -4337, 1976, -4337, 4001,
-4337, -4337, 4001, 4010, 3935, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, 3937, 4156, -4337, -4337, -4337, -4337, 4001, 4001,
4158, -4337, -4337, -4337, -4337, 4159, 4010, -4337, -4337, -4337,
4160, 894, 4161, 4162, 4020, -4337, 4001, 4001, -4337, -4337,
-4337, -4337, 4032, 4040, -4337, -4337, -4337, 1052, -4337, 1408,
-4337, 4242, 80074, 18212, 4167, 18212, 4169, 18212, 84117, 3507,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 18212,
-4337, -4337, 3158, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 1927, 475, 3044, 4244, 4067, 3502,
4248, 3502, 3502, 3507, -4337, 3158, -4337, -4337, -4337, 3232,
2757, 2327, -4337, 4250, 4163, 3599, -4337, 4047, 4251, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 60878,
60878, 60878, -168, 3232, -4337, 3851, -4337, -4337, 3232, 2327,
-4337, 3833, 3232, 3232, 4204, 615, -4337, 60878, -4337, -4337,
-4337, 60878, -4337, 3232, 60878, 4182, -4337, -4337, -4337, -4337,
4203, 3296, 4262, -4337, -4337, -4337, -4337, -4337, 4263, 3414,
86133, 3414, 3414, 3414, -4337, -4337, -4337, -236, 3963, 4265,
-4337, -4337, 3158, -4337, -4337, -4337, -4337, 3599, -4337, -4337,
-4337, 4251, -4337, 4246, -4337, -4337, 81093, -4337, -4337, -4337,
-4337, -4337, 1927, 475, -4337, 4267, 60878, 4268, 4193, 570,
102261, 4246, 4246, 178, -4337, 64921, 84117, 364, 1980, -4337,
-4337, 1275, 84117, -4337, 4090, 3976, 3895, -4337, 3978, -4337,
-4337, -4337, 2670, 1247, 4276, 4113, -4337, 4057, 3300, 4199,
3269, 2786, 1984, -4337, 4228, 4116, -4337, -4337, 64921, -4337,
4058, -4337, -4337, 3033, -4337, 18212, -4337, -4337, 2213, -4337,
-4337, 4209, 4293, -4337, -4337, -4337, -4337, -4337, -4337, 4295,
-4337, -4337, 86133, 18212, 18212, 4297, 1933, -4337, -4337, -4337,
-4337, 504, -4337, 504, 504, 504, -4337, -4337, -4337, 4223,
18212, -4337, -69, -4337, 4300, 4225, 18212, -4337, 4227, -4337,
504, 504, -4337, 4072, -4337, -4337, 504, 504, 504, 504,
-4337, 504, 18212, 3033, 3033, 3033, 504, 504, 504, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 3467, 1406, 3708, -4337,
33527, 3467, 1406, 18212, 18212, -4337, -4337, 66948, -4337, -4337,
-4337, -4337, 4229, -4337, 4253, 4254, -4337, -4337, 64921, -4337,
105, 2298, 3033, 1993, -4337, 4231, 3964, 1424, -4337, 4129,
4130, 4092, 4132, 1380, -4337, 4290, 4080, -4337, 2664, -4337,
-4337, 892, -4337, -4337, -4337, 3033, 91173, 3033, 91173, -4337,
-4337, 4136, 4137, 928, 2227, -4337, 4243, 1274, -4337, -4337,
1274, 84117, -4337, 1274, -4337, 928, 2002, 2012, 1898, 174,
4245, -4337, 84117, 18212, 3965, 4026, -4337, 4031, -4337, 4249,
4252, 86133, 86133, 91173, -4337, -4337, -4337, 4209, -44, -4337,
-4337, 1740, -4337, 4209, 4322, -4337, 1740, -44, 4325, -4337,
3949, 4155, 981, 4329, -44, 4330, -44, -4337, 4209, -4337,
-4337, 3709, -4337, -4337, -4337, 3415, 2013, 3419, 86133, 3436,
86133, 3443, -4337, -4337, 3451, -4337, -4337, -4337, 3502, 3044,
629, 4331, 4258, 3044, 4259, -4337, -4337, -4337, 60878, 2327,
-4337, -4337, 4261, 2020, 3361, -4337, -4337, 2042, -4337, -4337,
-4337, -4337, 4337, 3232, -4337, 4022, 4340, 3158, 2677, 60878,
4338, 4341, 4289, 4291, 4292, 4294, 4296, 4298, -4337, 615,
-4337, 4328, -4337, 4345, 2043, 3368, 4251, 3232, -4337, 3371,
-4337, 4299, 434, -4337, 434, 434, 434, 3232, 3232, 3158,
-236, -4337, -4337, 3861, -4337, 2045, 2052,102261, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 4251, -4337, 4246, 3669, -4337,
4280, 4016, 4170, 84117, 55816, 2663, 4272, 4275, 3340, 726,
4181, -4337, 1247, 3427, -4337, -4337, -4337, 6227, 94197, 95205,
2757, -4337, 86133, -4337, 4364, 1247, 4301, 4079, 2053, -4337,
-4337, 4302, -4337, -4337, 2066, 4303, -4337, 3469, 3967, 4323,
-4337, -4337, -4337, -4337, -4337, -4337, 4349, -4337, -4337, 34548,
-4337, -4337, -4337, 4281, 2070, 4282, -4337, -4337, 486, 56,
-4337, -4337, -4337, -4337, -4337, 3033, -4337, -4337, -4337, 3708,
3467, 1406, 3708, 3033, 3033, 3031, -4337, 4369, 4372, 3254,
-4337, 32506, -4337, 32506, 91173, 4194, 4196, 1424, -4337, 4374,
4380, 4200, 4382, -4337, 4384, -4337, 4206, 4151, -4337, -4337,
2071, 2074, -4337, -4337, -4337, -4337, -4337, 4365, 4308, -4337,
-4337, 4313, -4337, -4337, -4337, 1274, -4337, 2080, -4337, -4337,
73007, -4337, -4337, 3340, 3480, 230, 64921, -4337, 64921, -4337,
86133, 86133, 2104, 2105, -4337, 4315, -4337, 197, -4337, -4337,
4046, 2118, 197, 4317, 2124, 4046, 4318, -4337, 4316, -4337,
4051, 86133, 2698, -4337, 4309, 86133, -4337, 4396, -4337, 4397,
2698, 4389, -4337, 4314, -4337, 4326, 4046, 2125, 4046, 197,
2213, 2213, -4337, -4337, 4218, 3502, -4337, -4337, 3415, 3415,
2141, 3415, 2143, 3415, -4337, -4337, 3502, 4402, 12, 29,
3483, -4337, 4026, -4337, 3502, 4031, -4337, -4337, -4337, 3599,
4319, 3232, -4337, 4405, -4337, 4407, 86133, -4337, -4337, 3098,
3550, -4337, -4337, 1845, 4408, 4409, 1845, 1845, 1845, -4337,
60878, -4337, -4337, 2145, 1038, 135, 4411, -6, 2192, 2192,
2192, 2192, 4412, 4415, -4337, -4337, 3232, -4337, -4337, -4337,
2167, -4337, -4337, 364, 4342, 3340, -4337, 3774, -4337, 84117,
3340, 4343, 4344, 340, 4224, -4337, 356, -4337, 4346, 3269,
-4337, 3269, -4337, -4337, -4337, -4337, -4337, -4337, 86133, -4337,
-4337, -4337, 4419, -4337, -4337, -4337, 18212, 752, 4347, 35569,
40674, 3589, 3033, -100, -4337, 504, -4337, 504, -4337, -4337,
-4337, 4332, 3708, -4337, -4337, 4235, -4337, 2177, 4174, 4424,
4426, -4337, -4337, -4337, 4427, -4337, 4255, 4410, -4337, 18212,
18212, 4290, -4337, -4337, 928, -4337, -4337, -4337, -4337, 2193,
4353, -4337, 4356, 3482, 4075, 4078, 2221, 2222, 2682, 86133,
2682, 4437, 1004, 2972, -4337, -4337, 4209, 2972, -4337, 4209,
-4337, -4337, 18212, 171, -4337, -4337, -4337, -4337, 2645, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, 4438, -4337, -4337, 2972, -4337, -4337, 638, 4366, 3502,
3502, 3415, 3502, 3415, 3502, 4258, 3483, 4439, 3496, 4443,
3500, 4444, -4337, 4259, 2232, 4371, 4373, -4337, -4337, -4337,
4394, -4337, 3232, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 4086, -4337, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 4452, -4337, 84117, 18212, 4378,
1727, 4379, 4381, 86133, 82101, 16170, 4383, -4337, -4337, 3711,
95205, -4337, -4337, 2235, 4385, 3487, 3847, 3775, -4337, 4423,
1933, -4337, -4337, -4337, -4337, -4337, -4337, 504, 4141, 635,
-4337, -4337, -4337, -4337, 4388, 4384, 2155, -4337, 587, -4337,
3033, -4337, -4337, -4337, 86133, 36590, 3891, 1050, 3848, 4425,
2682, 4164, 3731, 3232, 4469, 3232, -4337, 3232, -4337, 3232,
4398, 3232, -4337, -4337, -4337, 2682, -4337, -4337, -4337, -4337,
-4337, 4399, 3903, -4337, 197, -4337, 197, 3605, -4337, 4400,
-4337, 4403, 341, 366, 4404, 4178, -4337, 4366, 4258, 3502,
4259, 3502, 4366, -4337, -4337, 3554, 4406, 3560, 4413, -4337,
-4337, -4337, 4251, 4481, 3760, 4483, 4484, 3158, 3340, 3668,
86133, 1247, 86133, 86133, 2240, 86133, 2255, -4337, -4337, 3693,
86133, 4097, 3269, 2682, -4337, -4337, 3802, -4337, 35569, -4337,
-4337, 1496, 3936, -4337, -4337, -4337, -4337, -4337, 18212, 3670,
-4337, 2257, 1999, 3033, 2258, 4486, 4414, 37611, -4337, 3891,
-4337, 64921, 4490, 4492, -4337, 4493, 4494, 4497, 86133, 4499,
-4337, -4337, 4500, -4337, 2972, 2972, 1226, -4337, 86133, 18212,
4428, 18212, 4430, 18212, 64921, 2279, -4337, -4337, -4337, 4258,
-4337, 4259, -4337, 3555, 3587, -4337, 3559, 3590, -4337, 2281,
-4337, 2283, -4337, -4337, -4337, -4337, 4433, -4337, 2284, -4337,
2286, 2290, 2682, 2292, 82101, -4337, -65, 2293, -4337, -4337,
3774, -4337, -4337, -4337, 1580, -4337, -4337, 2682, -4337, 18212,
-4337, -4337, 3592, -4337, -4337, -4337, -4337, 4432, 3033, 2304,
-4337, 4414, 4434, -4337, -4337, -4337, -4337, -4337, 2316, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, 2330, 3712, 86133, 3717,
86133, 3743, 3891, 4178, -4337, -4337, -4337, 4406, 64921, 2332,
-4337, 4413, 64921, 2343, -4337, -4337, 4512, -4337, 86133, 2682,
4210, 3340, -4337, -4337, 2350, -4337, -4, -4337, 4514, 4516,
4449, -4337, 3033, 64921, 2351, -4337, 37611, -4337, -4337, 86133,
-4337, 2006, 1212, 3598, 2352, 3606, 2363, 1289, 4414, -4337,
-4337, 4168, 3587, -4337, -4337, 4171, 3590, -4337, -4337, 2365,
-4337, 64921, 3575, 82101, -4337, 47, 47, 62905, 4198, 4172,
3610, -4337, -4337, 2369, -4337, 4519, 4445, 4532, 4533, -4337,
4447, -4337, 3595, -4337, 3601, 3617, 3602, 3621, 3603, -4337,
-4337, 3923, -4337, 4491, -4337, 2682, 4463, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, 2380, -4337, -4337, 91173, -4337,
269, 64921, -4337, 4264, -4337, -4337, -4337, -4337, -4337, 4470,
4406, 3604, 4413, 3609, 4470, 3611, 4356, -4337, 86133, 83109,
-4337, 4524, -4337, 4498, -4337, 129, -4337, 3610, -4337, -4337,
4406, -4337, 4413, -4337, 1050, -4337, 2382, -4337, 91173, 32506,
-4337, -4337, -4337, -4337, 4459, -4337, -4337, -4337, 4264, -4337,
-4337, 248, -4337, -4337, 227, 227, 4459, -4337, -4337, 982,
4180, -4337, -4337, -4337, -4337, -4337
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
-4337, -4337, -4337, -4337, -4337, -1512, -4337, 1574, -4337, -4337,
-4337, -3759, -2065, -4337, -2671, -2649, -4337, -1635, -2288, -202,
-291, -4337, -19, -1515, -4337, 2065, 2197, -4337, -4337, -4337,
-4337, -1742, -2833, 3803, 3804, -2105, -71, 74, -4337, -66,
1114, -4337, -4337, -4337, -4337, -4110, -4337, -4337, -4337, -4337,
2386, -4337, 2024, -4337, -4337, -4337, -4337, -4337, -4337, -2981,
-4337, -4337, -4337, 3391, -4337, -4337, -49, 2862, 1591, 2893,
357, 1113, 4578, -4337, 4580, -2961, 1020, -4337, 1769, 1340,
-4337, 736, -4337, -4337, -4337, 1350, -4337, -4337, -4337, -936,
1257, -4337, 1805, -3676, -3468, -4337, -4337, -4337, -4337, -4337,
1918, -1167, -4337, 2436, -15, -1722, -1944, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -326, -4337, -4337, -388,
-4337, -4337, -406, -4337, -4337, 4360, -2055, -3418, -3695, -4337,
-3281, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -89,
-4337, 410, -418, -4337, -419, -411, -4337, -2426, -4337, -4337,
-4337, -4337, -1613, -4337, 1721, 1174, -4337, -4337, -4337, -2345,
-1810, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337,
-3022, -4337, 926, -1313, 959, -2359, -1840, -2291, -3545, -2985,
-4337, -4337, -2602, -1287, -3239, -1770, -3016, -4337, -4337, 262,
522, -287, -1882, -4337, -1919, -3476, -1703, 1386, -2754, -1970,
-1963, -1968, -1933, 1785, -4069, -4337, -4337, -4337, -4337, -1391,
-1380, -1374, -1368, 741, -4337, -4337, -4336, -3577, -3877, -4337,
-4337, -2933, -4337, -245, -3900, -4337, 564, -3826, -4337, 565,
-3710, -3027, -4337, -309, -3530, -4337, -289, -3405, -4337, -288,
-362, -4337, -379, -4267, -4337, -269, -3519, -3840, -1900, -4337,
1811, 1812, 1813, 1814, -2954, -4337, -4337, -4337, -4337, -4337,
-1839, 1265, -2072, -4337, 1978, -1912, 2620, -4337, -4337, -4337,
4392, -4337, -4337, -4337, -4337, -4337, -3088, -2398, 2639, 773,
774, -3810, 122, -4337, -4337, -3558, -4337, -37, -3100, -3152,
-4337, -4337, 4386, -4337, -67, -1756, -4337, 4633, 2753, -3139,
-4337, 3253, 1270, -4337, -4337, -4337, -4337, -2905, -4337, 377,
-3503, 2, -4337, 24, 30, 720, -4337, -4337, -4337, 1042,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, 1183, -4337, -4337,
2015, -4337, -1844, -4337, 1177, 2729, -4337, -4337, 2160, 17,
-4337, 644, -83, -4337, 389, 0, -4337, 3185, -1600, -161,
3995, -4337, -4337, -4337, 623, -4337, -653, 659, 2329, -4337,
-4337, -4337, -4337, -4337, -70, -4337, -4337, -76, -68, -4337,
1623, 158, -4337, -4337, -4337, 3260, 2185, -1889, -4337, -4337,
-1788, 2176, -2332, 3262, -4337, 1581, -4337, -4337, 2161, -4337,
-4337, 418, 2765, -4337, -3462, -1940, 1585, 184, 646, -4337,
-4337, -2169, -43, 3273, 2774, -2233, -1862, -4337, -1728, -1211,
-2325, -1950, -4337, 1565, -2503, -4337, 1940, -1363, -3252, -4337,
-2282, -4337, -4337, -4337, -4337, -4337, -2110, -4337, -4337, -4337,
1296, -4337, -4337, -1274, -4337, -4337, -4337, 3352, -4337, 3354,
-4337, -4337, 3355, -4337, -4337, -1030, -1632, -1285, -4337, -4337,
1848, 1873, 2545, 1880, 1877, -2581, -4337, -2473, -1122, -1720,
-180, -3333, -4337, -237, -4337, 3376, -4337, 2315, -4337, -4337,
2556, -4337, -4337, -4337, 2245, 1680, -4337, 2203, -4337, -4337,
-4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, -4337, 4684,
-4337, 3120, 3506, 2940, -4337, -4337, -4337, 28, -4337, -4337,
-3013, -4337, -1488, 2913, -27, -4337, -905, -4337, -4337, -4337,
1699, -4337, -4337, -4337, -4337, -4337, 2331, -4337, -4337, 2111,
-4337, -4337, -2520, -4337, -2104, -4337, -4337, -4337, -4337, 1567,
-4337, -169, -4337, 38, -4337, -195, -2387, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 585, -4337, -4337, -4337, 2674, -4337,
-4337, -2648, -4337, 931, 1457, -4337, -4337, 2036, -4337, -2651,
-4337, -4337, -4337, -2530, -2051, -2069, -4337, 1986, -1946, 957,
1417, 1419, -1831, -4337, -4337, -4337, 577, -4337, -4337, -4337,
-4337, -4337, -4337, -4337, 349, -4337, 3218, -2010, -4337, -4337,
-4337, -4337, -4337, -4337, 1988, -3245, -4337, 2003, -4337, -1166,
2634, -4337, -4337, -4337, -4337, 441, -1327, 1214, -4337, -4337,
-4337, -8, 1153, 508, 2988, -1778, -1624, 3088, -18, -4337,
-4337, -283
};
/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule which
number is the opposite. If zero, do what YYDEFACT says.
If YYTABLE_NINF, syntax error. */
#define YYTABLE_NINF -2890
static const yytype_int16 yytable[] =
{
1170, 1301, 81, 205, 206, 207, 208, 209, 1575, 1388,
1304, 1803, 1402, 1298, 1334, 1601, 1602, 1389, 2487, 1604,
1403, 1418, 1532, 1304, 83, 140, 1638, 2571, 2408, 1419,
1636, 141, 2199, 1363, 1767, 2144, 2204, 1870, 1831, 1544,
2211, 2638, 1483, 3114, 1833, 2256, 1836, 2702, 2589, 1842,
3635, 2601, 2388, 2604, 2462, 2741, 2967, 2762, 3632, 1432,
4009, 3271, 2710, 3270, 3811, 3812, 3813, 1359, 3378, 2676,
3460, 2680, 3548, 2811, 2760, 2760, 2520, 2692, 2693, 3309,
3280, 3311, 1772, 2535, 2535, 2325, 2327, 2329, 2331, 2333,
2335, 2337, 2636, 1998, 2535, 2535, 2535, 2535, 2535, 2576,
3308, 3308, 2826, 3308, 1999, 2535, 2535, 2535, 2535, 2535,
2000, 2535, 2714, 2535, 2535, 4086, 2001, 1986, 1954, 3889,
3208, 2535, 2535, 2493, 3134, 3313, 83, 3547, 2192, 2488,
3330, 2735, 2736, 2737, 2738, 2739, 3330, 2725, 2526, 1555,
1556, 1557, 2954, 2214, 2215, 2955, 2729, 1932, 1933, 1934,
1935, 3032, 1937, 1938, 221, 4166, 3252, 2114, 2756, 3255,
2758, 5000, 1853, 4042, 3154, 2269, 2905, 2906, 2907, 1484,
1589, 1569, 3004, 3077, 3077, 3077, -1665, 1573, 4586, 1576,
3177, 1856, 3345, 2289, 1, 2779, 2652, 2426, 2427, 2318,
2779, 3358, 2319, 3156, 1568, 2432, 2780, 3047, 3982, 2804,
2083, 2780, 4373, 3170, 2321, 2779, 3175, 3340, 4355, 2804,
2805, 1203, 3108, 3344, 2608, 3292, 2780, 2536, 1360, 2444,
2805, 3113, 4104, 4105, 3079, 3080, 1195, 3315, 2547, 2552,
1946, 2806, 3385, -823, 4227, 2, 1956, 1957, 1958, 1959,
1960, 2806, 3130, 1967, 1968, 1969, 1970, 1971, 2568, 1973,
2717, 1975, 1976, 1810, 1979, 3416, 2579, 3429, 2049, 3741,
3742, 2012, 1594, 1595, 1743, 1744, 1983, 1984, 2, 1719,
1720, 1721, 1722, 1723, 1724, -512, -512, 1725, 4376, 4502,
1597, 3386, 1749, 1750, 1751, 1752, 1753, 4113, 1356, 210,
3524, 2757, 1606, 2759, -824, 3104, 1637, 2829, 1749, 1750,
1751, 1752, 1753, 2891, 1781, 210, 1961, 2013, 1847, 4318,
4581, 3616, 3617, 4010, 2035, 2611, 4949, 3341, 4976, 210,
2417, 2418, 4352, -1665, -1665, 2890, 1988, 2106, 1989, 3387,
3533, 2611, 3454, 3820, 1197, 1607, 1777, 2043, 3723, 2994,
1990, 141, 3693, 2050, 2647, 3089, 3093, 1848, 3096, 4619,
3097, 1811, 3582, 3851, 3852, 2529, 1821, 2097, 4600, 4165,
3297, 3298, 3299, 3300, -965, 3301, 3302, 3303, 3304, 1812,
3305, 4525, 1991, 3417, 3297, 3298, 3299, 3300, 2600, 3301,
3302, 3303, 3304, 1560, 3305, 2014, 2399, 1213, 3695, 3815,
2153, 3069, 1813, 2785, 27, 4183, 4194, 3033, 1809, 3561,
3737, 3816, 3906, 1646, 2045, 211, 1376, 3989, 2612, 2168,
2170, 3244, 1994, 3182, 5017, 2055, 1837, 2839, 2840, 4605,
4769, 211, 3306, 1814, 2612, 1488, 2259, 27, 1198, 2260,
2036, 4095, 2819, 3034, 2152, 211, 3306, 3366, 210, 1849,
1950, 2056, 4526, 4527, 212, 4771, 2051, 3555, 3682, 1481,
1992, 1964, 3402, 3403, 2582, 2496, 4622, 2038, -579, 2127,
3740, 5014, 1993, 4557, 4107, 4157, 3034, 222, 4875, 1845,
4404, 1988, 3618, 1989, 4312, 213, 3418, 1994, 1793, 1794,
4559, 4549, 4831, 235, 4552, 1990, 4554, 2570, 2026, 223,
-527, -527, 2891, 2985, -808, 3166, 3419, 224, 2476, 4420,
4506, 3690, 2640, 4439, 4441, 3420, 2477, 2894, 2891, 2263,
-1243, 4360, 4317, 4362, 3690, 2893, 2109, 1991, 4322, 2099,
4179, 1582, 3691, 2784, 2196, 2815, 3206, 4582, 2904, 2846,
2611, 2183, 4049, 4349, 2027, 3691, 2110, 1382, 3210, 1583,
1344, 4164, 5018, -1387, 2141, 4050, 1365, 2437, 2691, 1561,
1782, 2100, 5019, 3683, 211, 2439, 2084, 2786, 2440, 1846,
2441, 2442, 1795, 2648, 3760, 3761, 3762, 3763, 3764, 3765,
3766, 3767, 3083, 4352, 4158, 2647, 3095, 4948, 4019, 4365,
3583, 4352, 3724, 2895, 3725, 4898, 3308, 3308, 3308, 3308,
3308, 3308, 3308, 3308, 1482, 1992, 2039, 2115, 3116, 2197,
3117, 2785, 5015, 1838, 1417, 1815, 214, 1993, 236, 1965,
1436, 4738, 2585, 3611, 2128, 2799, 3678, 2037, 4812, -1325,
2785, 4058, 1994, 2612, 1778, 1377, 2046, 3455, 1314, 3245,
1213, 2799, 1925, 240, 2649, 3171, 215, 3726, 4613, 3421,
2057, 3211, 1489, 2264, 4067, 3184, 3185, 3186, 3187, 3188,
3189, 3190, 3191, 3192, 3193, 4693, 3194, 3195, 3196, 3197,
3198, 3199, 3200, 3201, 3202, 3203, 3204, 2638, 3249, 4587,
1850, -589, 2438, 1822, 4689, 2535, 4691, 2410, 4623, 3218,
3219, 3220, 3221, 3222, 2535, 3508, 3314, 3131, 3509, 2815,
3003, 3231, 3232, 3233, 3293, 3751, 3235, 3236, 3237, 3238,
3239, 3240, 3241, 3242, 2760, 2535, 2410, 2650, 3054, 4428,
2530, 3250, 2878, 2879, 3694, -1325, 4694, 3251, 3205, 4367,
1436, 1485, 1486, 1487, 2101, 2052, 1540, 3636, 4681, 3256,
3257, 3835, 3685, 3100, 4507, 3077, 2098, 4700, 2044, 3266,
2623, 4877, 1923, 1565, -1884, 1436, 3619, 3273, 4607, 4096,
2400, 3276, 3277, 2899, 2656, 3261, 2497, 2624, 4476, 4279,
3696, 3584, 2908, 3688, 3805, 2786, 4228, 3281, 1854, 237,
3422, 2087, 3686, 3423, 4188, 4583, 3290, 3183, 3447, 2855,
3278, 3400, 4098, 3449, 2786, 3565, 1857, 3284, 4778, 3344,
238, 4606, 4770, 4714, 2648, 1951, 3318, 3319, 3320, 3321,
3322, 3323, 3324, 3325, 3326, 3327, 3328, 3329, 1962, 2547,
3333, 3015, 3525, 3534, 3223, 3468, 3171, 4772, 2547, 3471,
3472, 1635, 2445, 2236, 2237, 2238, 2239, 4319, 2085, 2966,
2799, 3347, 3348, 3349, 4741, 2856, 4548, 4177, 1196, 2547,
2609, 1995, 2995, 1851, 1783, 4421, 4388, 4555, 3172, -957,
4503, 4260, 2638, 3246, 3212, 4563, 2086, 4170, 2804, 4354,
1204, 2240, 2241, 2242, 4780, 2649, 2764, 3838, 3104, 2805,
3890, 1314, 2892, 3738, 5001, 2800, 4588, 2804, 4414, 4855,
1754, 2788, 4950, 1361, 3063, 3209, 4528, 3620, 2805, 4975,
2806, 2800, 2015, 1357, 2996, 2142, 1952, 1552, 2787, 2261,
4798, 2416, 1514, 3048, 2243, 2244, -511, -511, 2651, 2806,
-1883, 4564, 3578, 2801, 3294, 4722, 216, 3005, 4432, 3589,
4354, 3591, 3727, 3595, 1199, 3597, 716, 4178, 3006, 2801,
225, 4284, 4368, 3738, 226, 239, 4558, 5020, 2650, 2245,
716, 4682, 3388, -1325, 1925, 4792, 2611, 250, 251, 2131,
3573, 3084, 4670, 4560, 4303, 4856, 4739, 1996, 2102, 2103,
1855, 4597, 3568, 3569, 3570, 2521, 1590, 3173, -1358, 252,
1213, 4674, 3223, 3213, 4676, 3351, 2582, -1358, 2137, 3157,
3158, 3159, 1367, 2116, 3575, 253, 1995, 1570, 1349, 2246,
2825, 2611, 254, 4329, 5023, 2130, 2855, 4020, 2385, 4689,
3067, 5002, 2685, -1656, 1816, 3424, 2125, 3178, 3179, 3180,
1994, 255, 2482, 2483, 2122, 2489, 3679, 3621, 2137, 240,
256, 4611, 3167, 4612, 257, 2112, 4789, 2522, 1368, 4433,
4687, 4688, 4468, 4690, 2816, 4692, 3103, 2131, 217, 2612,
1200, 4616, -765, 3886, 3215, 3216, 2175, 2743, 2053, 241,
1817, 4369, 4933, 242, 2016, 3690, 218, 4939, 4909, 3901,
4683, 2892, 2575, 2088, 2685, 1743, 1744, 3035, 227, 1194,
228, -762, -624, 4330, 2138, 1350, 3691, 2892, 4513, 1213,
3350, 3710, 1716, 4517, 2612, 4132, 1848, 1385, 4431, 2788,
2800, 1369, 4750, 219, 258, 4425, 1717, 3162, 259, 3350,
3035, 4469, 1996, 3331, 1895, 4037, 2247, 229, 2788, 3367,
4544, 4280, 2857, 4281, 1553, 2744, 2719, 3174, 3378, 1997,
2720, 4888, 2956, 3214, -1325, 2117, 260, 261, 2801, 4747,
2691, 4070, 4082, 4097, 2585, 4800, 4801, 1931, 4803, 2651,
1955, 3008, 3009, 4807, 3135, 4366, 1896, 3013, 3173, 4374,
3168, -2231, 1761, -810, 1764, 1765, 1926, 3425, 3603, 3016,
1769, 3167, 4331, 3608, 3117, 4810, 4785, -2511, 4617, 2320,
4779, 3537, 4781, 3163, -2231, -564, 1780, 1202, 1849, 4093,
3603, 4838, -2095, 3043, 1304, 2089, 3680, 243, 4940, 244,
-2511, 4846, 4332, 5024, 1768, 2248, 1790, 3887, 2783, 1777,
2789, 4370, 4021, 4500, 1571, -2095, 3796, 3520, 3132, 4133,
4684, 1314, 1801, 2814, 3968, 3574, 1364, 3562, 3044, 1998,
4109, 3700, 2090, 4106, 2760, 2123, 245, 3708, 4285, 1351,
1999, 2132, 2765, 2603, 3077, -957, 2000, 1808, 3734, 3735,
1726, 4171, 2001, 3426, 4872, 2113, 2799, -2231, 2535, 3576,
4134, -2511, 3434, 2126, 2535, 2535, 4022, 3105, 3007, 4881,
1777, 3068, 3334, 2176, 1997, 1438, 1382, 1772, 3756, 3560,
-2231, 4894, 2715, 4896, -2511, 2720, 3769, 3770, 3771, 4036,
1897, 4333, 3803, 3804, 4011, 2139, 2811, 4038, 3711, 3168,
2025, 1205, 251, 4788, 2719, 1077, 1405, 2249, 3174, 3791,
4092, -1358, 2484, 4478, 4809, 2250, 3795, -2600, 2251, 1077,
-1358, 4910, 4923, 252, 3798, 1861, 262, 4078, 4079, 2132,
1314, 2207, 1346, 1871, 3106, 4599, 1, 4900, 3498, 253,
4602, 4748, 4334, 3918, 3919, 3920, 254, 3877, 1406, 4135,
1340, 4601, 1304, 1370, 2129, 2134, 3505, 3506, 2583, 3819,
1381, 4529, 1866, 2143, 2209, 255, 4667, 2858, 4667, 4529,
4335, 3942, 2833, 2107, 256, 1412, 3836, 1304, 257, 2452,
1749, 1750, 1751, 1752, 1753, 4336, 1782, 1892, 3148, 2228,
3359, 1365, 3605, 3842, 3843, 3538, 2779, 4977, 3610, 3613,
1907, 3845, 3846, 3847, 3848, -1885, 2208, 2780, 2764, 1371,
1373, 4996, 2218, 4136, 2591, 2252, 4471, 2766, 2638, 1379,
2, 3690, 2767, 1392, 1393, 1394, 1395, 4025, 1385, 2204,
3063, 4028, 1899, 4029, 1899, 4032, 4795, 4034, 1899, 2210,
2834, 3378, 3691, 4337, 3862, 4764, 1912, 4765, 258, 2345,
4989, 1868, 259, 3149, 2219, 83, 83, 83, 83, 2282,
83, 83, -1243, 2720, 2229, 2364, 4904, 1407, 1390, 3205,
5005, 4137, -2231, 2146, 2147, 1943, 2582, 1584, 2453, 2154,
260, 261, 1408, 2253, 2379, 2159, 2384, 1372, -2511, 1382,
4389, 1746, 3579, -1068, -1068, -1068, -1068, 1778, 4083, 2300,
3873, 2287, 1747, -2095, 4403, 2454, 5010, 4673, 4667, 1793,
1794, 4675, 1213, 2164, 2165, 2223, 2800, 3029, 2509, 4708,
4186, 2173, 2174, 4667, 1392, 1393, 1394, 1395, 3747, 2453,
3690, 2510, 1437, 2611, 2283, 2338, 2340, 4338, 4680, 2346,
2347, 2348, 2349, 2351, 2353, 2354, 2355, 2356, 2357, 2358,
2359, 3691, 4678, 2658, 2801, 263, 2454, 2224, 1778, 1439,
3391, 2768, 3360, 3361, -1068, -1068, -1068, -1068, -2231, 4339,
3687, 2455, -2511, 3689, 2301, 2769, 4843, 4991, 2583, 27,
2584, 4667, 3030, 1440, 2181, 4187, 2968, 2182, 2220, -1066,
-1066, -1066, -1066, 1795, 2186, 2659, 2660, 5006, 3052, 2770,
3362, 1746, 4844, 1585, 3053, 2771, 2498, 2499, 2500, 2501,
2502, 2503, 1747, 2772, 3999, 4000, 2865, 1441, 4796, 1438,
-1995, -970, 2455, 3699, -1993, 2792, 2612, 2233, 2234, 3824,
2191, 1390, 2194, 2661, 2585, 2793, 2254, 4316, 2202, 2203,
2512, -1067, -1067, -1067, -1067, 2212, 2255, 1442, 2216, 2217,
1443, 2222, 2659, 2660, 1586, 3840, 2231, 2232, 2232, 1444,
4667, 2257, 1445, 1587, 2298, 2266, 2267, 2268, 2270, 2533,
262, 3117, 2866, 2275, 2276, 4667, 2278, 4947, 2280, 2281,
4443, 2284, 2285, 4001, 2586, 2288, -970, 1446, 4249, 2292,
2661, 2225, 4110, 4252, 2297, 1374, 1375, 2302, 2303, 2855,
2859, 2310, 3690, 2152, 1447, 2315, 2316, 2773, 2774, 2855,
2760, 2855, 264, 1436, 1763, 1436, 1436, 1796, 1766, 1344,
4127, 1436, 1448, 3691, 4005, 4006, 4321, 4667, 4340, 3980,
2152, 4324, 1390, 4002, 2496, -1243, 2570, 2587, 2760, 2425,
2368, 2369, 2370, 2371, 2372, 2570, 2570, 2373, 1449, 2382,
4039, 2535, 2535, 1314, 2459, 2872, 2535, 1642, 4841, 4842,
2535, -2715, 1382, 2343, 4777, 2873, -1243, 2903, 2461, 4782,
2395, 2397, 2398, 4265, 2765, 4608, 2570, 4266, 2419, 3510,
2420, 4912, 2422, 2570, 2424, 1643, 2570, 1301, 2570, -2716,
3058, 4108, 3109, 1382, 1746, 3743, 1304, 3308, 2459, 2395,
2395, 3115, -1380, 4667, 3390, 1747, -1243, 4499, 2570, 2460,
2775, 3976, 2461, 2429, 2443, 4122, 4118, 4119, 4120, 1650,
4126, 2570, 1450, -2887, 4129, 4130, 4221, 4878, 4222, 4223,
4224, -1243, 3120, 1382, 4140, 4143, 1483, 4879, 4142, 3121,
2570, 4140, 3122, 3872, 3123, 4236, 4237, 1743, 1744, 2471,
2471, 4240, 4241, 4242, 4243, 2570, 4244, 1304, 1382, 1304,
3701, 4246, 4247, 4248, 3124, 2504, 3702, 2464, 4293, 2465,
251, 4294, 2570, 2570, 4296, 2473, 1436, 3125, 3521, 1,
2570, 2855, 3969, -1243, 1436, 3610, 2547, 2978, 2855, 3806,
3610, 252, 3499, 4173, 2547, 3807, 3126, 2855, 1547, 263,
1749, 1750, 1751, 1752, 1753, -810, 1451, 253, -582, -582,
1382, 3127, 2638, 2570, 254, 2452, 2852, 2853, 1749, 1750,
1751, 1752, 1753, 1749, 1750, 1751, 1752, 1753, 3128, 3129,
1436, 1922, 2570, 255, 2570, 2570, 3137, 3443, 1930, 230,
2365, 2366, 256, 246, 3444, 2492, 257, 1, 3501, 2766,
1201, 141, 4988, 3500, 2767, 3753, 3936, 4993, 3063, 2865,
1912, 3499, 3752, 2, 3, 4, 5, 6, 1549, 3602,
2570, 2797, 4472, 1749, 1750, 1751, 1752, 1753, 1752, 1753,
1749, 1750, 1751, 1752, 1753, 2575, 4045, 4192, 3607, 4047,
3609, 3615, 1749, 1750, 1751, 1752, 1753, 1749, 1750, 1751,
1752, 1753, 1392, 1393, 1394, 1395, 2030, 2031, -84, -810,
4053, 3754, 3937, 12, 4184, 3990, 258, 3970, 4202, 1452,
259, 1749, 1750, 1751, 1752, 1753, -1381, 4261, 4924, 1550,
2611, 2, 3, 4, 5, 6, 2570, 2592, 2593, 1558,
2095, -1211, 4046, 2606, 4520, 4048, 2570, 4202, 260, 261,
4378, 2277, 18, 2279, 3753, 1453, 264, 1749, 1750, 1751,
1752, 1753, 83, 1554, -84, 4540, 4054, 4543, 2760, 2145,
4185, 2299, 2148, 2149, 4203, 1344, 2575, 4400, 2156, 3753,
1651, 12, 2977, 4262, -2888, 2162, 2575, 2855, 1645, 4818,
2166, 2167, 4298, 2768, 1344, 1344, 3603, 3117, 4300, 2979,
4452, 4925, 4299, 4358, 2855, 2865, -762, 2769, 2865, 2179,
4380, 1638, 25, 1400, 4494, 1404, 1454, 2946, 1455, 3974,
18, 2822, 27, 2612, 2778, 2828, 1456, 2830, 1900, 2778,
1900, 2770, 4382, 4402, 1900, 4417, 4497, 2771, 4202, 4509,
1761, 1761, 4418, 4450, 2778, 2772, 4932, 4561, 2236, 2237,
2238, 2239, 3529, 2060, 31, 4377, 4453, 1457, 3529, 4541,
4466, 4492, 2452, 2201, 4493, 4385, 1458, 2201, 2972, 2974,
4498, 2201, 3481, 1459, 2845, 4202, 4390, 4202, 2850, 3313,
25, 1749, 1750, 1751, 1752, 1753, 2240, 2241, 2242, 4405,
27, 3483, 2613, 1559, 4508, 4510, 3485, 4331, 2877, 4412,
4413, 2575, 1749, 1750, 1751, 1752, 1753, 1564, 4516, 1460,
3978, 4261, 2876, 2614, 4519, 4542, 4408, 2881, 4409, 4410,
4411, 1461, 31, 4938, 4561, 2638, 3986, 2570, 4209, 2243,
2244, 4551, 2615, 4553, 4210, 4580, 3879, 4325, 262, 2773,
2774, 2406, 4289, 2407, 4346, 2910, 4348, 1348, 4290, 2533,
-810, 1462, 2412, 1362, 3862, 4509, 4202, 4596, 1749, 1750,
1751, 1752, 1753, 3983, 2245, 2951, 3753, 4630, 2912, 4509,
2914, 2616, 1652, 1463, 4509, 2377, -2889, 2617, 1749, 1750,
1751, 1752, 1753, 4643, 2927, 2928, 2929, 2930, 1464, 4804,
2933, 4509, 4819, 3895, 2179, 4545, 4546, 2061, 2941, 2943,
2945, 2911, 4220, 2948, 2949, 2950, 1749, 1750, 1751, 1752,
1753, 4650, 4651, 4853, 2246, 2575, 4333, 4866, 4509, 1465,
4202, 2952, 4701, 3043, 4202, 4723, 4202, 4202, 2618, 1436,
4802, 1436, 2421, 1436, 2423, 1436, 4055, 2619, 4886, 4055,
1475, 2970, 2775, 2971, 4735, 4805, 2854, 4817, 4820, 3896,
4202, 2620, 2987, 2988, 1769, 4062, 4063, 1344, 3044, 1749,
1750, 1751, 1752, 1753, 4202, 1436, 4902, 4926, 1566, 4854,
4625, 4865, 4626, 4867, 4869, 1607, 4870, 4906, 2063, 4736,
4871, 141, 4873, 4876, 4913, 4920, 4202, 1645, 1476, 2064,
2065, -2728, 2066, 4208, 4887, 4335, 2343, 4202, 1477, 4509,
1436, 1436, 2188, 4202, 3553, 3554, 4890, 2395, 4589, 4590,
4591, 4592, 3017, 2204, 4979, 2204, 4202, 1478, 2067, -956,
4892, 1572, 4903, 4566, 2068, 1861, 1399, 1401, 4226, 1436,
2495, 2247, 1577, 4907, 4234, 2360, 2519, 2361, 2362, 2363,
4914, 4921, 4935, 1417, 1436, 2528, 2621, 4579, 2535, 1479,
1901, 1480, 1903, 4937, 3098, 4945, 1905, 1578, 4595, 4963,
2532, 2025, 3099, 1436, 1436, 1806, 1588, 263, 4927, 1591,
4980, 1592, 5008, 1304, 1436, 1436, 1436, 1436, 1436, 1580,
1907, 1593, 3038, 1892, -2007, 1436, 1436, 1436, 1436, 1436,
1596, 1436, 1603, 1436, 1436, 1749, 1750, 1751, 1752, 1753,
1639, 1436, 1436, 4573, 83, 1640, 4576, 4577, 4578, 2201,
1749, 1750, 1751, 1752, 1753, 3102, 1641, 2622, -2717, -2008,
2248, 1749, 1750, 1751, 1752, 1753, -1069, -1069, -1069, -1069,
1912, -2001, 4730, 1749, 1750, 1751, 1752, 1753, 2188, 1912,
1912, 1912, 1645, 1, 2623, 1749, 1750, 1751, 1752, 1753,
2677, 1647, 2677, 2874, 1648, 1912, 1751, 1752, 1753, 3117,
2070, 2624, 4338, -2796, 2875, 83, -2797, 4341, 1649, -2004,
1886, -2011, 3176, 3316, -2002, 1893, 2884, 1749, 1750, 1751,
1752, 1753, 3610, 1749, 1750, 1751, 1752, 1753, 2900, 1904,
2625, 1902, 1653, 1902, 4928, 1941, 1776, 1902, 2626, 1749,
1750, 1751, 1752, 1753, 2627, 1929, 2073, 1654, 1761, 1749,
1750, 1751, 1752, 1753, 4705, 1749, 1750, 1751, 1752, 1753,
2901, 1655, 2249, 1656, 264, 1788, 2902, 1657, 2628, 1658,
2250, 1659, 1660, 2251, 3207, -1070, -1070, -1070, -1070, 2677,
-1997, 2677, 2909, 1749, 1750, 1751, 1752, 1753, 3071, 3072,
3073, 3074, 2913, 2629, -2003, 4154, 4155, 4156, 2915, -1998,
1661, 3063, 1662, 1663, 2812, 2813, 1749, 1750, 1751, 1752,
1753, 1664, 1436, 1665, 1666, 1344, 1436, 1436, 1436, 1667,
1668, -1996, 2831, 2832, 1669, 1789, 2916, 3503, 1670, 1786,
-2013, 1436, 1436, 1672, 1673, 4753, 1674, 4755, 1675, 4756,
1676, 4757, -1999, 4759, 1677, 1681, 1682, 1683, 3515, 2918,
3517, 1684, 269, 270, 271, 272, 1685, 273, 274, 275,
276, 4711, 1686, 1737, 1738, 1739, 280, 1740, 1741, 1742,
2252, 2074, 1687, 1688, 1689, 1718, 2630, 1749, 1750, 1751,
1752, 1753, 2075, 1749, 1750, 1751, 1752, 1753, 1749, 1750,
1751, 1752, 1753, 2408, 1690, 1691, 1692, 2408, 1693, -810,
1694, -2006, 2631, 2632, 2076, 1695, 3523, 1749, 1750, 1751,
1752, 1753, -2005, 4350, 4351, 1749, 1750, 1751, 1752, 1753,
2922, 1696, 1697, 1698, 2408, 1787, 2926, 1799, -2010, 1699,
2633, 2935, 1700, 1749, 1750, 1751, 1752, 1753, 2253, 1701,
3352, 1749, 1750, 1751, 1752, 1753, 1702, 2634, 2200, 2077,
2936, 1703, 2200, -409, -410, 1704, 2200, 1804, 2953, 1749,
1750, 1751, 1752, 1753, -2009, 1705, 1706, 1707, 1749, 1750,
1751, 1752, 1753, 3459, 3384, 3408, 3413, 3410, 1708, 1709,
3412, 3099, 3462, 1792, 3441, 3414, 3415, 1710, -2012, -2000,
3099, 1711, 1712, 1713, 3432, 3433, 83, 1714, 83, 1715,
1643, 3437, 3446, -810, 1756, 323, 324, 325, 326, 327,
328, 3464, 1749, 1750, 1751, 1752, 1753, 1757, 1758, -1994,
3450, 2317, 1819, 1759, 2611, 1791, 1802, 1820, 1824, 3458,
1827, 2611, 1828, 1749, 1750, 1751, 1752, 1753, 1825, 1832,
1834, 3463, 1844, 1436, 1436, 1436, 1858, 1864, 4525, 1872,
3467, 1867, 3469, 1859, 3470, 3465, 1873, 1874, 1875, 1880,
2376, 1876, 3477, 1749, 1750, 1751, 1752, 1753, 1877, 3479,
1881, 3480, 1878, 3482, 1884, 3484, 3473, 3486, 1923, 2844,
1894, 1885, 3490, 1344, 1749, 1750, 1751, 1752, 1753, 1927,
-1242, 2254, 1749, 1750, 1751, 1752, 1753, 1936, 1942, 1947,
3504, 2255, 3638, 1436, 1948, 1944, 3474, 1949, 1972, 3511,
3512, 1974, 1977, 2382, 3025, 2382, 1436, 2612, 1980, 4526,
4527, 1982, 1985, 2032, 2612, 2028, 2033, 3475, 2040, 2034,
2042, 3491, 3491, 3491, 3491, 3491, 3491, 3492, 3493, 3494,
3495, 3496, 3497, 1607, 2408, 2408, 4729, 2041, -1887, 141,
2495, 2080, 3059, 2079, 1436, 2201, 1749, 1750, 1751, 1752,
1753, 2058, 2059, 1436, 1436, 1436, 3081, 1749, 1750, 1751,
1752, 1753, 3090, 3094, 2081, 2082, 2091, 2473, 2092, 1436,
3101, 4438, 2096, 2108, 2111, 3639, 2613, 2121, 2120, 3396,
1994, 2124, 2135, 2613, 2155, 1436, 2157, 2158, 2161, 3476,
2160, 4652, 2183, 2163, 1436, 2141, 140, 2614, 1747, 2187,
3478, 2189, 141, 2195, 2614, 1749, 1750, 1751, 1752, 1753,
1749, 1750, 1751, 1752, 1753, 1436, 2615, 2190, 2206, 2227,
2230, 1912, 2235, 2615, 2258, 2271, 1749, 1750, 1751, 1752,
1753, 1912, 3141, 2286, -810, 4653, 2290, 3152, 2201, 3152,
2201, 2201, 2201, 2272, 2273, 2291, 1305, 2223, 3487, 3152,
2385, 2341, 3152, 1436, 2201, 2616, 2386, 2387, 2389, 2390,
1345, 2617, 2616, 2401, 2402, 1355, 2403, 1355, 2617, 3488,
3640, 3641, 2404, 2405, 4654, 2411, 2428, 2430, 3642, 1749,
1750, 1751, 1752, 1753, 2200, 2431, 2434, 2466, 2446, 1436,
1749, 1750, 1751, 1752, 1753, 2447, 2448, 2449, 3643, 2458,
1749, 1750, 1751, 1752, 1753, 4655, 2468, 3644, 2467, 2479,
2480, 2481, 2618, 1749, 1750, 1751, 1752, 1753, 3645, 2618,
2523, 2619, 3489, 2534, 1345, 2540, 2541, 2542, 2619, 2543,
1345, 2544, 2545, 3892, 2556, 2620, 2557, 2563, 2565, 2572,
2677, 2677, 2620, 3894, 2573, 2574, 2575, 3646, 2577, 2580,
3967, 1749, 1750, 1751, 1752, 1753, 3917, 2581, 2583, 3972,
2607, 2602, 3647, 3648, 1749, 1750, 1751, 1752, 1753, 2610,
3649, 3650, 3651, 2664, 2665, 2666, 2667, 2642, 2677, 2668,
3283, 1749, 1750, 1751, 1752, 1753, 4656, 2677, 2643, 2644,
83, 2669, 2670, 2671, 3926, 3652, 1749, 1750, 1751, 1752,
1753, 2645, 2646, 2657, 1213, 2678, 2682, 3933, 4657, 2654,
2655, 1306, 2683, 3653, 2684, 2685, 3654, 2687, 1307, -1886,
2690, 2688, 2689, 3678, 3939, 1749, 1750, 1751, 1752, 1753,
2621, 2691, 3655, 3656, 3657, 2694, 2697, 2621, 2698, 3943,
1345, 1345, 1345, 1345, 4957, 2699, 1345, 1546, 4658, 3373,
3658, 3659, 2695, 1304, 2700, 2778, 1749, 1750, 1751, 1752,
1753, 2703, 1308, 1345, 2701, 1345, 2696, 2704, 3944, 2706,
3854, 2712, 2707, 1546, 2711, 2726, 2727, 1309, 3374, 2731,
2728, 2733, 2851, 2740, 2732, 4983, 2720, 2748, 1304, 1304,
2734, 3407, 2742, 1749, 1750, 1751, 1752, 1753, 3660, 3945,
2749, 2622, 2747, 3661, 3662, 2750, 4957, 2751, 2622, 2752,
3431, 2753, 2754, 2201, 2763, 1310, 2782, 3863, 2796, 2807,
4659, 3932, 2824, -1993, 2823, 4983, 2836, 2841, 2623, 3099,
3893, 2060, 2837, 1311, 1312, 2623, 3950, 2843, 140, 83,
2842, 1345, 2860, 2861, 141, 2624, 2867, 2623, 2862, 2868,
2869, 2871, 2624, 4528, 2882, 2883, 1313, 3916, 2886, 2887,
2898, 2888, 2, 2917, 2624, 2889, 2920, 2923, 2932, 3916,
2924, 2934, 3663, 2937, 2625, 3664, 2938, 3375, 2925, 2939,
2947, 2625, 2626, -230, 4813, -231, 2957, 1742, 2627, 2626,
1749, 1750, 1751, 1752, 1753, 2627, 1749, 1750, 1751, 1752,
1753, 2958, 3953, 2959, 3954, 2960, 3955, 2961, 3665, 2962,
2611, 2964, 2628, 1749, 1750, 1751, 1752, 1753, 2980, 2628,
1749, 1750, 1751, 1752, 1753, 2981, 4008, 2982, 1749, 1750,
1751, 1752, 1753, 3959, 3099, 2984, 2986, 2629, 2849, 4359,
2983, 2990, 2992, 2993, 2629, 1314, 1749, 1750, 1751, 1752,
1753, 1749, 1750, 1751, 1752, 1753, 4361, 1749, 1750, 1751,
1752, 1753, 1315, 4363, 1749, 1750, 1751, 1752, 1753, -2818,
3992, 4364, 2998, 2999, 3002, 2061, 3010, 3011, 3012, 3014,
2201, 2201, 3018, 1316, 3992, 3019, 3020, 2062, 3038, 4455,
3021, 3023, 2511, 3022, 4015, 3027, 4017, 1992, 3041, 3028,
4501, 3046, 3055, 2612, 3057, 1436, 3064, 4725, 3065, 3070,
83, 3082, 1382, 2496, 3103, 1436, 3107, 3111, 3118, 3119,
2630, 27, 3112, 3133, 4044, 3138, 3142, 2630, 3160, 3162,
1912, 3161, 3224, -1482, 3586, 2854, 3590, 3225, 1317, 3592,
3596, 4660, 3226, 3228, 3230, 3234, 2631, 2632, 1749, 1750,
1751, 1752, 1753, 2631, 2632, 3243, 2063, 2719, 1436, 3253,
3259, 3254, 3260, 3267, 1436, 1436, 3262, 2064, 2065, 1318,
2066, 3264, 2613, 3272, 2633, 3282, 3274, 3285, 1319, 1320,
3286, 2633, 1749, 1750, 1751, 1752, 1753, 3287, 3288, 3279,
2200, 2634, 3289, 2614, 3152, 3310, 2067, 3334, 2634, 1321,
3317, 2201, 2068, 3337, 3335, 3338, 2201, 3666, 3339, 3152,
3342, 3343, 2615, 3345, 4087, 2014, 4089, 3392, 4091, 4251,
2816, 3372, 3393, 3679, 4661, 4766, 3394, 3404, 3453, 3411,
4094, 3438, 2677, 4662, 3439, 3435, 2069, 3396, 2677, 3445,
1322, 3448, 3440, 2677, 3461, 1749, 1750, 1751, 1752, 1753,
3466, 2616, 3499, 269, 270, 271, 272, 2617, 273, 274,
275, 276, 3522, 2293, 2294, 2295, 2296, 280, 3526, 2677,
1749, 1750, 1751, 1752, 1753, 2312, 2313, 2314, 3527, 2677,
4255, 3530, 3528, 2200, 3529, 2200, 2200, 2200, 4797, 1749,
1750, 1751, 1752, 1753, 1749, 1750, 1751, 1752, 1753, 2200,
3531, 3532, 3536, 3535, 269, 270, 271, 272, 2618, 273,
274, 275, 276, 4806, 4350, 4351, 3539, 2619, 280, 2963,
1749, 1750, 1751, 1752, 1753, 2677, 2328, 2330, 2332, 2334,
2336, 2620, 4893, 3540, 3543, 3544, 3545, 4895, 2070, 1731,
1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, 3549, 1740,
1741, 1742, 4180, 3551, 3563, 3564, 3566, 1323, 3567, 3571,
2863, 3572, 2071, 4897, 3587, 2864, 2527, 3507, 2072, 3580,
2677, 3601, 1304, 1749, 1750, 1751, 1752, 1753, 1749, 1750,
1751, 1752, 1753, 3837, 2073, 4206, 1324, 1731, 1732, 1733,
1734, 1735, 1736, 1737, 1738, 1739, 2677, 1740, 1741, 1742,
3623, 3625, 3606, 2870, 3626, 3624, 323, 324, 325, 326,
327, 328, 3627, 3704, 2885, 4195, 1749, 1750, 1751, 1752,
1753, 1436, 2201, 3633, 3634, 3692, 2621, 1749, 1750, 1751,
1752, 1753, 3697, 3698, 4217, 4218, 3705, 83, 2553, 2554,
2555, 1344, 3706, 3667, 3707, 3668, 3669, 2558, 2559, 2560,
2561, 2562, 1325, 2564, 2919, 2566, 3709, 323, 324, 325,
326, 327, 328, 2578, 3713, 3714, 2931, 1749, 1750, 1751,
1752, 1753, 3720, 4245, 1326, 3913, 3721, 3722, 1327, 1749,
1750, 1751, 1752, 1753, 3729, 4259, 3914, 3730, 1749, 1750,
1751, 1752, 1753, 3731, 4253, 4254, 3732, 2622, 3952, 1749,
1750, 1751, 1752, 1753, 3733, 3736, 3670, 3746, 3738, 2074,
3744, 1749, 1750, 1751, 1752, 1753, 3748, 3749, 3755, 3757,
2075, -1487, 3973, 3758, 2623, 3776, 3777, 3772, 3773, 3778,
1328, 4456, 3038, 3780, 3781, 1749, 1750, 1751, 1752, 1753,
3782, 2624, 2076, 3783, 1749, 1750, 1751, 1752, 1753, 3784,
3785, 3787, 3788, 3790, 83, 3430, 3313, 3793, 2200, 3794,
1329, 3797, 3800, 3799, 4304, 3810, 3802, 3808, 1330, 3814,
2625, 3821, 3822, 3827, 3823, 3825, 2921, 1331, 2626, 1332,
3826, 3828, 3829, 3830, 2627, 3831, 3839, 2077, 1731, 1732,
1733, 1734, 1735, 1736, 1737, 1738, 1739, 3841, 1740, 1741,
1742, 1749, 1750, 1751, 1752, 1753, 3849, 3409, 2628, 2201,
3853, -1487, 3864, 2452, 1436, 3874, 3875, 3884, 3888, 3897,
3898, 1333, 1733, 1734, 1735, 1736, 1737, 1738, 1739, 3902,
1740, 1741, 1742, 2629, 3904, 3908, 4027, 3912, 3921, 3909,
3915, 4030, 4033, 3911, 1782, 3923, 1727, 3924, 1728, 1729,
1730, 1436, 1436, 3922, 3928, 3927, 1436, 3455, 3930, 3931,
1436, 1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739,
3960, 1740, 1741, 1742, 3514, 1436, 3934, 3925, 3940, 3941,
4419, 3152, 3946, 3947, 1743, 1744, 3961, 3948, 3949, 1304,
1731, 1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, 3951,
1740, 1741, 1742, 1732, 1733, 1734, 1735, 1736, 1737, 1738,
1739, 3956, 1740, 1741, 1742, 3957, 2630, 1467, 1468, 1469,
1470, 1471, 1472, 1473, 1474, 2200, 2200, 3958, 3962, 3963,
3964, 3965, 3975, 3977, 4435, 3981, 3984, 4437, 3561, 3985,
3988, 3995, 2631, 2632, 3996, 3997, 3152, 4447, 4012, 3987,
4462, 1735, 1736, 1737, 1738, 1739, 83, 1740, 1741, 1742,
4013, 4014, 4016, 4018, 4023, 4026, 4024, 4035, 4041, 83,
2633, 4043, 4051, 4052, 4059, 4061, 4060, 4064, 4066, 4068,
4073, 4075, 3992, 4080, 3992, 4084, 4088, 2634, 4090, 4099,
4101, 4081, 4100, 4103, 4111, 4116, 4123, 4128, 4131, 4112,
4114, 4145, 4146, 4504, 4147, 4505, 4149, 4150, 4151, 4163,
4167, 4172, 4175, 4174, 4190, 4189, 4193, 2677, 2677, 2677,
4196, 4197, 4199, 1345, 1345, 1345, 1345, 4204, 1345, 1345,
4198, 1345, 1546, 4200, 4205, 2677, 4212, 4207, 4214, 2677,
4215, 4219, 2677, 4225, 4232, 4233, 2200, 4235, 4238, 4256,
4263, 2200, 4257, 4258, 4269, 4270, 4271, 4272, 4264, 4274,
4276, 4282, 4283, 4292, 4306, 4302, 4305, 4323, 4310, 4308,
4326, 4311, 4327, 4328, 4345, 4347, 4371, 4372, 4375, 4354,
4379, 4384, 4391, 4381, 4169, 4387, 4392, 4386, 4393, 4401,
4394, 4395, 4400, 4396, 2677, 4397, 4406, 4398, 4407, 4416,
4422, 4424, 4429, 1436, 3141, 4430, 4434, 4423, 4436, 4445,
3152, 4449, 4457, 2855, 4473, 4465, 4467, 4474, 4482, 4479,
4448, 4480, 4451, 4454, 4483, 4484, 4485, 4486, 4495, 4494,
1807, 4489, 4490, 4496, 4511, 4522, 1436, 4518, 4521, 4532,
4534, 4537, 4535, 4547, 4538, 4523, 4539, 4556, 4561, 4567,
4572, 4565, 4568, 4574, 4575, 4585, 4432, 4593, 4514, 4594,
4621, 4598, 4603, 4604, 4614, 4628, 4627, 4618, 4631, 4610,
4632, 4633, 4644, 4634, 4635, 4645, 4648, 4615, 4647, 4649,
4462, 4620, 4671, 4679, 4695, 4685, 1345, 4696, 4697, 4699,
4702, 4698, 4703, 4704, 1345, 4706, 4707, 4710, 4712, 4721,
4713, 4726, 4720, 4727, 4728, 4724, 4731, 2895, 4503, 4745,
4636, 4640, 4751, 4754, 4502, 4752, 4774, 4758, 4783, 4761,
4767, 4762, 4768, 4773, 4786, 4784, 4790, 4793, 4794, 4808,
4811, 4821, 4787, 4822, 4833, 4816, 1436, 4834, 4835, 4836,
1345, 1345, 4837, 4677, 4839, 4840, 4857, 4848, 1345, 4850,
4861, 4858, 4868, 4889, 4862, -2806, 4883, 4908, 4911, 4915,
1807, 4916, 4934, 4958, 2201, 1355, 2201, 2200, 4917, 4941,
4936, 4964, 4943, 4960, 4961, 4965, 4966, 4968, 4967, 4295,
4976, 4971, 4978, 4975, 4985, 4973, 4969, 3883, 4998, 4987,
3152, 5011, 4970, 4972, 4974, 4990, 5025, 4999, 3518, 2975,
4992, 2201, 1679, 4733, 1680, 4641, 1, 4994, 3929, 4734,
2847, 2306, 1755, 3516, 2274, 3938, 1345, 1345, 48, 4709,
49, 4007, 3365, 3768, 3759, 4176, 4719, 3832, 3336, 2821,
4952, 4997, 5009, 1562, 4426, 5016, 5022, 5013, 3442, 3907,
4077, 4057, 4536, 4353, 4930, 3745, 4191, 3379, 4899, 4307,
1345, 4962, 4309, 4942, 4995, 5007, 2677, 4922, 4944, 3354,
3355, 3356, 3357, 3844, 3217, 1563, 4743, 2588, 4760, 4181,
4182, 4669, 2641, 78, 1883, 1579, 2472, 2677, 2490, 1345,
4477, 3051, 1345, 1345, 1546, 1345, 4732, 4273, 1345, 4814,
2, 3, 4, 5, 6, 1345, 4481, 7, 8, 9,
1345, 1345, 4301, 10, 1345, 2172, 1987, 4278, 4815, 3552,
4672, 1910, 3060, 3594, 3056, 1920, 3092, 4475, 4642, 1345,
3598, 4297, 3614, 2515, 11, 1841, 1921, 3876, 3369, 1843,
3405, 3152, 2201, 3370, 1852, 2817, 1830, 3371, 2798, 2525,
12, 13, 14, 3026, 2991, 3542, 1344, 15, 4832, 4462,
1206, 1775, 2180, 4799, 2200, 16, 2391, 2415, 2989, 4636,
3541, 3181, 4931, 3681, 4399, 4144, 17, 3792, 4828, 4121,
3258, 4852, 3296, 3818, 3817, 83, 2705, 4415, 4571, 18,
2094, 3312, 3979, 3291, 2746, 2378, 0, 0, 0, 0,
4847, 19, 4849, 0, 4851, 0, 0, 20, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2201, 0, 0, 0, 0, 0, 21, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 22,
0, 0, 0, 0, 0, 0, 23, 24, 0, 25,
4882, 0, 0, 0, 26, 0, 1807, 0, 1436, 27,
0, 0, 28, 29, 1436, 4901, 1436, 0, 0, 4905,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 30,
4919, 31, 0, 32, 0, 3883, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 0, 4828, 4946, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1546, 0, 0,
0, 0, 0, 0, 33, 0, 0, 0, 0, 1345,
0, 1345, 1345, 1345, 1345, 1345, 0, 0, 2677, 0,
0, 0, 0, 0, 0, 0, 1546, 0, 4984, 0,
0, 0, 0, 0, 0, 0, 0, 1345, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 3152, 0, 0,
34, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4153, 0, 0, 0, 0, 0, 0,
1345, 1345, 0, 0, 0, 0, 35, 0, 0, 0,
3992, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 36, 0, 1355, 0, 0, 0, 1345,
1345, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 0, 0, 1345, 1345, 1345, 37, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1345, 0, 0, 1345, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 1345, 1345, 1345, 1345, 0,
0, 0, 0, 0, 0, 1345, 1345, 1345, 1345, 1345,
0, 1345, 0, 1345, 1345, 4216, 0, 0, 0, 0,
0, 1345, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3152, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1345, 38, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 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, 2200, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3883, 4315, 2200, 0, 0, 1345,
0, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1546,
0, 0, 0, 0, 1345, 1345, 0, 0, 0, 0,
0, 3883, 1345, 3883, 0, 2172, 1345, 1345, 1345, 0,
0, 0, 1345, 1345, 0, 39, 0, 0, 0, 1436,
0, 1345, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1807, 0, 0,
0, 0, 1436, 0, 1490, 0, 1491, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1492, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 40, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1493, 0, 0, 0, 0, 0, 0,
1494, 0, 0, 0, 0, 0, 0, 2200, 41, 0,
0, 0, 0, 0, 1495, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4444, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1436, 0, 0, 0,
1436, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1496, 0, 0, 0, 0, 0, 0, 0, 0, 42,
0, 1436, 0, 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, 1436,
0, 0, 0, 0, 0, 2201, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1497, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 43, 0, 0, 0, 0, 0,
0, 0, 0, 4315, 3883, 0, 2201, 0, 0, 1436,
0, 0, 0, 1345, 1345, 1345, 0, 1546, 0, 0,
0, 0, 0, 0, 4524, 0, 0, 2201, 4533, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 44, 0, 0, 2201, 0, 0, 1498,
0, 1499, 0, 1345, 0, 0, 0, 1500, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1501, 0, 0,
0, 0, 0, 1345, 0, 1502, 0, 0, 0, 4570,
0, 0, 0, 1503, 1345, 0, 1345, 0, 1504, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1355, 0, 0, 0, 1505, 0,
1345, 0, 1345, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 1345, 1345, 1345, 1345, 0, 0, 0,
0, 4315, 1345, 1345, 0, 0, 0, 0, 0, 1345,
1345, 1506, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1507, 1345, 1508, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 0, 0, 1509,
0, 0, 4315, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1345, 0, 0, 0, 0, 1345, 0, 1345,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 1345, 1345, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1510, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1511,
0, 0, 0, 0, 0, 0, 4315, 4717, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1345, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
1512, 0, 0, 0, 0, 1513, 0, 4315, 0, 1514,
0, 1515, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1345, 0,
1345, 0, 0, 0, 0, 0, 0, 1345, 0, 0,
0, 0, 0, 1516, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4315, 0, 3883, 3883, 0, 3883, 0,
0, 0, 0, 3883, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1517, 1546, 0, 0, 1518, 0, 0, 0,
0, 3883, 0, 1519, 1520, 0, 0, 0, 0, 0,
0, 3883, 1521, 0, 3401, 0, 0, 0, 1522, 1523,
1546, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1524, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4717, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1525, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3883, 0, 3883, 0, 0, 0, 0, 0, 0,
0, 0, 1526, 0, 0, 0, 0, 0, 0, 0,
0, 4315, 0, 0, 0, 1527, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1528, 3883, 1529, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4717, 0, 0, 1807,
2200, 0, 0, 1355, 0, 0, 0, 0, 1546, 0,
0, 1546, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1530, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2200, 0, 1531, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3883, 2200, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 0, 0, 0,
0, 2200, 0, 0, 0, 1345, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 1345, 0, 0, 1345,
1345, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1345, 0,
0, 0, 0, 0, 1345, 1345, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 142, 0,
143, 0, 0, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, -1128, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1345, 0, 0, 0, 0, 0, 1345, 0,
0, 0, 0, 1345, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 0, 0, 0, 0, 144, 0, 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, 0, 173, 174, 175,
176, 177, 178, 179, 0, 1345, 180, 181, 182, 183,
184, 185, 186, 187, 188, 189, 190, 191, 192, 193,
194, 195, 196, 197, 0, 142, 0, 143, 0, 0,
0, 0, 0, 0, 0, 0, -1128, 0, 198, 0,
0, 0, 0, 0, 0, 0, 0, 0, -1126, 0,
1345, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1345, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 142, 0, 143, 0,
0, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -1127,
3401, 3881, 1807, 144, 0, 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, 0, 173, 174, 175, 176, 177, 178,
179, 0, 0, 180, 181, 182, 183, 184, 185, 186,
187, 188, 189, 190, 191, 192, 193, 194, 195, 196,
197, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, -1126, 144, 198, 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, 0, 173, 174, 175, 176, 177,
178, 179, 0, 0, 180, 181, 182, 183, 184, 185,
186, 187, 188, 189, 190, 191, 192, 193, 194, 195,
196, 197, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -1127, 0, 198, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 1345, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 1345, 1345, 142, 0, 143, 1345, 0, 0, 0,
1345, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 0, 0, 0,
0, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1807, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 144, 0, 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, 0, 173, 174, 175, 176, 177, 178, 179, 0,
0, 180, 181, 182, 183, 184, 185, 186, 187, 188,
189, 190, 191, 192, 193, 194, 195, 196, 197, 0,
0, 0, 0, 0, 0, 0, 0, 1345, 1345, 1345,
0, 0, 0, 198, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 0, 0, 1345,
0, 0, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1807, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1345, 0, 0, 0, 0, 0,
0, 0, 0, 1345, 1345, 0, 0, 0, 0, 0,
1345, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 199,
0, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1807, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1546, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 0, 0, 0, 0, 199, 0, 200, 0,
1345, 0, 0, 0, 0, 0, 0, 0, 0, 1807,
1807, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1807, 0, 1807, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1345, 199, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1345, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1345, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 200, 3881, 4442, 0, 0,
1807, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 200, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1345, 0,
0, 0, 0, 0, 1345, 0, 1345, 0, 1807, 1807,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1807,
0, 0, 0, 1807, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 199, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1807, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1345, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1345, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1807, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 200, 0, 0, 0, 1807, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1345, 0, 0, 0, 0,
0, 1807, 1807, 0, 0, 0, 0, 0, 4442, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1807, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1807, 0,
1807, 1807, 0, 1807, 0, 0, 0, 0, 1807, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 0, 0, 0, 0, 0, 1807, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1807, 0, 0, 0,
0, 0, 1345, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1807, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1807, 0, 1807, 0,
0, 0, 0, 0, 0, 0, 1345, 0, 0, 0,
1345, 0, 0, 0, 0, 0, 1807, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1345, 0, 0, 0, 0, 0, 1807, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1345,
0, 1807, 0, 0, 0, 268, 269, 270, 271, 272,
0, 273, 274, 275, 276, 277, 278, 279, 0, 0,
280, 0, 0, 1210, 1211, 0, 0, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 0, 0,
294, 295, 0, 296, 297, 298, 0, 299, 300, 1345,
301, 302, 303, 304, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 1807, 306, 307, 0,
0, 0, 0, 308, 309, 0, 0, 0, 310, 0,
0, 311, 0, 312, 0, 313, 314, 315, 316, 317,
318, 0, 319, 0, 320, 0, 321, 0, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 323,
324, 325, 326, 327, 328, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 329, 330, 0, 331, 332,
333, 334, 335, 336, 337, 338, 2307, 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, 0,
371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, 0, 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, 2308, 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, 0, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 0, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
2309, 497, 498, 0, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0,
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, 0, 777, 778, 779,
780, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 0, 0, 0, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075,
1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095,
1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145,
1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154,
1155, 1156, 1157, 1158, 0, 1159, 268, 269, 270, 271,
272, 0, 273, 274, 275, 276, 277, 278, 279, 0,
0, 280, 0, 0, 1210, 1211, 0, 0, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 0,
0, 294, 295, 0, 296, 297, 298, 0, 299, 300,
0, 301, 302, 303, 304, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 306, 307,
0, 0, 0, 0, 308, 309, 0, 0, 0, 310,
0, 0, 311, 0, 312, 0, 313, 314, 315, 316,
317, 318, 0, 319, 0, 320, 0, 321, 0, 322,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
323, 324, 325, 326, 327, 328, 2, 0, 0, 0,
0, 0, 0, 0, 0, 0, 329, 330, 0, 331,
332, 333, 334, 335, 336, 337, 338, 0, 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,
0, 371, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
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, 0, 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, 27, 473, 474, 475, 476,
477, 478, 479, 480, 481, 482, 483, 484, 485, 0,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 0, 497, 498, 0, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750,
0, 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, 0, 777, 778,
779, 780, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 0, 0, 0, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064,
1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104,
1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153,
1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 269, 270,
271, 272, 0, 273, 274, 275, 276, 277, 278, 279,
0, 0, 280, 0, 0, 1210, 1211, 0, 0, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
0, 0, 294, 295, 0, 296, 297, 298, 0, 299,
300, 0, 301, 302, 303, 304, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 306,
307, 1906, 0, 0, 0, 308, 309, 0, 0, 0,
310, 0, 0, 311, 0, 312, 0, 313, 314, 315,
316, 317, 318, 0, 319, 0, 320, 0, 321, 0,
322, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 323, 324, 325, 326, 327, 328, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 330, 0,
331, 332, 333, 334, 335, 336, 337, 338, 0, 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, 0, 371, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
0, 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, 0,
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, 0, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
0, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 0, 497, 498, 0, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0,
750, 0, 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, 0, 777,
778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 0, 0, 0, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063,
1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103,
1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143,
1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152,
1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 269,
270, 271, 272, 0, 273, 274, 275, 276, 277, 278,
1599, 0, 0, 280, 0, 0, 1210, 1211, 0, 0,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 0, 0, 294, 295, 0, 296, 297, 298, 0,
299, 300, 0, 301, 302, 303, 304, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
306, 307, 0, 0, 0, 0, 308, 309, 0, 0,
0, 310, 0, 0, 311, 0, 312, 0, 313, 314,
1600, 316, 317, 318, 0, 319, 0, 320, 0, 321,
0, 322, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 323, 324, 325, 326, 327, 328, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 329, 330,
2322, 331, 332, 333, 334, 335, 336, 337, 338, 0,
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, 0, 371, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, 0, 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,
0, 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, 0, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 0, 486, 487, 488, 489, 490, 491, 492, 493,
494, 495, 496, 0, 497, 498, 0, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, 513, 514, 515, 516, 517, 518, 519, 0, 520,
521, 522, 523, 524, 525, 526, 527, 528, 529, 530,
2323, 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, 0, 746, 747, 748, 749,
0, 750, 0, 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, 0,
777, 778, 779, 780, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 0, 0, 0, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 2324, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062,
1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102,
1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132,
1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142,
1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151,
1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268,
269, 270, 271, 272, 0, 273, 274, 275, 276, 277,
278, 279, 0, 0, 280, 0, 0, 1210, 1211, 0,
0, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 0, 0, 294, 295, 0, 296, 297, 298,
0, 299, 300, 0, 301, 302, 303, 304, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 306, 307, 2880, 0, 0, 0, 308, 309, 0,
0, 0, 310, 0, 0, 311, 0, 312, 0, 313,
314, 315, 316, 317, 318, 0, 319, 0, 320, 0,
321, 0, 322, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 323, 324, 325, 326, 327, 328, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 329,
330, 0, 331, 332, 333, 334, 335, 336, 337, 338,
0, 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, 0, 371, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, 0, 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, 0, 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, 0, 473,
474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
484, 485, 0, 486, 487, 488, 489, 490, 491, 492,
493, 494, 495, 496, 0, 497, 498, 0, 499, 500,
501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
511, 512, 513, 514, 515, 516, 517, 518, 519, 0,
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, 0, 746, 747, 748,
749, 0, 750, 0, 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,
0, 777, 778, 779, 780, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 0, 0, 0,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061,
1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101,
1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131,
1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150,
1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159,
268, 269, 270, 271, 272, 0, 273, 274, 275, 276,
277, 278, 279, 0, 0, 280, 0, 0, 1210, 1211,
0, 0, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 0, 0, 294, 295, 0, 296, 297,
298, 0, 299, 300, 0, 301, 302, 303, 304, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 306, 307, 0, 0, 0, 0, 308, 309,
0, 0, 0, 310, 0, 0, 311, 0, 312, 0,
313, 314, 315, 316, 317, 318, 0, 319, 0, 320,
0, 321, 0, 322, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 323, 324, 325, 326, 327, 328,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329, 330, 0, 331, 332, 333, 334, 335, 336, 337,
338, 0, 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, 0, 371, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, 2940, 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, 0, 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, 0,
473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
483, 484, 485, 0, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, 0, 497, 498, 0, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
0, 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, 0, 746, 747,
748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 0, 0,
0, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100,
1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130,
1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149,
1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0,
1159, 268, 269, 270, 271, 272, 0, 273, 274, 275,
276, 277, 278, 279, 0, 0, 280, 0, 0, 1210,
1211, 0, 0, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 0, 0, 294, 295, 0, 296,
297, 298, 0, 299, 300, 0, 301, 302, 303, 304,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 306, 307, 0, 0, 0, 0, 308,
309, 0, 0, 0, 310, 0, 0, 311, 0, 312,
0, 313, 314, 315, 316, 317, 318, 0, 319, 0,
320, 0, 321, 0, 322, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 323, 324, 325, 326, 327,
328, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 329, 330, 0, 331, 332, 333, 334, 335, 336,
337, 338, 0, 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, 0, 371, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 2942, 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, 0, 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,
0, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 0, 486, 487, 488, 489, 490,
491, 492, 493, 494, 495, 496, 0, 497, 498, 0,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
519, 0, 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, 0, 746,
747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 0,
0, 0, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049,
1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129,
1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0,
1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158,
0, 1159, 268, 269, 270, 271, 272, 0, 273, 274,
275, 276, 277, 278, 279, 0, 0, 280, 0, 0,
1210, 1211, 0, 0, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 0, 0, 294, 295, 0,
296, 297, 298, 0, 299, 300, 0, 301, 302, 303,
304, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 306, 307, 0, 0, 0, 0,
308, 309, 0, 0, 0, 310, 0, 0, 311, 0,
312, 0, 313, 314, 315, 316, 317, 318, 0, 319,
0, 320, 0, 321, 0, 322, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 323, 324, 325, 326,
327, 328, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 329, 330, 0, 331, 332, 333, 334, 335,
336, 337, 338, 0, 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, 0, 371, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, 2944, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479, 480,
481, 482, 483, 484, 485, 0, 486, 487, 488, 489,
490, 491, 492, 493, 494, 495, 496, 0, 497, 498,
0, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
518, 519, 0, 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, 0,
746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
0, 0, 0, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098,
1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157,
1158, 0, 1159, 268, 269, 270, 271, 272, 0, 273,
274, 275, 276, 277, 278, 279, 0, 0, 280, 0,
0, 1210, 1211, 0, 0, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 0, 0, 294, 295,
0, 296, 297, 298, 0, 299, 300, 0, 301, 302,
303, 304, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 306, 307, 0, 0, 0,
0, 308, 309, 0, 0, 0, 310, 0, 0, 311,
4718, 312, 0, 313, 314, 315, 316, 317, 318, 0,
319, 0, 320, 0, 321, 0, 322, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 323, 324, 325,
326, 327, 328, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 329, 330, 0, 331, 332, 333, 334,
335, 336, 337, 338, 0, 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, 0, 371, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479,
480, 481, 482, 483, 484, 485, 0, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 0, 497,
498, 0, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
517, 518, 519, 0, 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,
0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 0, 0, 0, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047,
1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097,
1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147,
1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156,
1157, 1158, 0, 1159, 268, 269, 270, 271, 272, 0,
273, 274, 275, 276, 277, 278, 279, 0, 0, 280,
0, 0, 281, 282, 0, 0, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 0, 0, 294,
295, 0, 296, 297, 298, 0, 299, 300, 0, 301,
302, 303, 304, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 306, 307, 0, 0,
0, 0, 308, 309, 0, 0, 0, 310, 0, 0,
311, 0, 312, 0, 313, 314, 315, 316, 317, 318,
0, 319, 0, 320, 0, 321, 0, 322, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 323, 324,
325, 326, 327, 328, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 329, 330, 0, 331, 332, 333,
334, 335, 336, 337, 338, 0, 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, 0, 371,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478,
479, 480, 481, 482, 483, 484, 485, 0, 486, 487,
488, 489, 490, 491, 492, 493, 494, 495, 496, 0,
497, 498, 0, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 0, 0, 0, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,
1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096,
1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146,
1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155,
1156, 1157, 1158, 0, 1159, 268, 269, 270, 271, 272,
0, 273, 274, 275, 276, 277, 278, 279, 0, 0,
280, 0, 0, 1210, 1211, 0, 0, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 0, 0,
294, 295, 0, 296, 297, 298, 0, 299, 300, 0,
301, 302, 303, 304, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 306, 307, 0,
0, 0, 0, 308, 309, 0, 0, 0, 310, 0,
0, 311, 0, 312, 0, 313, 314, 315, 316, 317,
318, 0, 319, 0, 320, 0, 321, 0, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 323,
324, 325, 326, 327, 328, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 329, 330, 0, 331, 332,
333, 334, 335, 336, 337, 338, 0, 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, 0,
371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 0, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
0, 497, 498, 0, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0,
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, 0, 777, 778, 779,
780, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 0, 0, 0, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075,
1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095,
1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145,
1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154,
1155, 1156, 1157, 1158, 0, 1159, 268, 269, 270, 271,
272, 0, 273, 274, 275, 276, 277, 278, 1599, 0,
0, 280, 0, 0, 1210, 1211, 0, 0, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 0,
0, 294, 295, 0, 296, 297, 298, 0, 299, 300,
0, 301, 302, 303, 304, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 306, 307,
0, 0, 0, 0, 308, 309, 0, 0, 0, 310,
0, 0, 311, 0, 312, 0, 313, 314, 1600, 316,
317, 318, 0, 319, 0, 320, 0, 321, 0, 322,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
323, 324, 325, 326, 327, 328, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 329, 330, 0, 331,
332, 333, 334, 335, 336, 337, 338, 0, 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,
0, 371, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
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, 0, 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, 0, 473, 474, 475, 476,
477, 478, 479, 480, 481, 482, 483, 484, 485, 0,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 0, 497, 498, 0, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750,
0, 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, 0, 777, 778,
779, 780, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 0, 0, 0, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064,
1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104,
1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153,
1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 2339, 270,
271, 272, 0, 273, 274, 275, 276, 277, 278, 1599,
0, 0, 280, 0, 0, 1210, 1211, 0, 0, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
0, 0, 294, 295, 0, 296, 297, 298, 0, 299,
300, 0, 301, 302, 303, 304, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 306,
307, 0, 0, 0, 0, 308, 309, 0, 0, 0,
310, 0, 0, 311, 0, 312, 0, 313, 314, 1600,
316, 317, 318, 0, 319, 0, 320, 0, 321, 0,
322, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 323, 324, 325, 326, 327, 328, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 330, 0,
331, 332, 333, 334, 335, 336, 337, 338, 0, 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, 0, 371, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
0, 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, 0,
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, 0, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
0, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 0, 497, 498, 0, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0,
750, 0, 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, 0, 777,
778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 0, 0, 0, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063,
1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103,
1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143,
1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152,
1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 2344,
270, 271, 272, 0, 273, 274, 275, 276, 277, 278,
1599, 0, 0, 280, 0, 0, 1210, 1211, 0, 0,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 0, 0, 294, 295, 0, 296, 297, 298, 0,
299, 300, 0, 301, 302, 303, 304, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
306, 307, 0, 0, 0, 0, 308, 309, 0, 0,
0, 310, 0, 0, 311, 0, 312, 0, 313, 314,
1600, 316, 317, 318, 0, 319, 0, 320, 0, 321,
0, 322, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 323, 324, 325, 326, 327, 328, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 329, 330,
0, 331, 332, 333, 334, 335, 336, 337, 338, 0,
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, 0, 371, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, 0, 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,
0, 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, 0, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 0, 486, 487, 488, 489, 490, 491, 492, 493,
494, 495, 496, 0, 497, 498, 0, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, 513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749,
0, 750, 0, 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, 0,
777, 778, 779, 780, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 0, 0, 0, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062,
1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102,
1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132,
1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142,
1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151,
1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268,
269, 270, 271, 272, 0, 273, 274, 275, 276, 277,
278, 1599, 0, 0, 280, 0, 0, 1210, 1211, 0,
0, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 0, 0, 294, 295, 0, 296, 297, 298,
0, 299, 300, 0, 301, 302, 303, 304, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 306, 307, 0, 0, 0, 0, 308, 309, 0,
0, 0, 310, 0, 0, 311, 0, 312, 0, 313,
314, 1600, 316, 317, 2350, 0, 319, 0, 320, 0,
321, 0, 322, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 323, 324, 325, 326, 327, 328, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 329,
330, 0, 331, 332, 333, 334, 335, 336, 337, 338,
0, 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, 0, 371, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, 0, 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, 0, 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, 0, 473,
474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
484, 485, 0, 486, 487, 488, 489, 490, 491, 492,
493, 494, 495, 496, 0, 497, 498, 0, 499, 500,
501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
511, 512, 513, 514, 515, 516, 517, 518, 519, 0,
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, 0, 746, 747, 748,
749, 0, 750, 0, 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,
0, 777, 778, 779, 780, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 0, 0, 0,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061,
1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101,
1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131,
1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150,
1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159,
268, 269, 270, 271, 272, 0, 273, 274, 275, 276,
277, 278, 1599, 0, 0, 280, 0, 0, 1210, 1211,
0, 0, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 0, 0, 294, 295, 0, 296, 297,
298, 0, 299, 300, 0, 301, 302, 303, 304, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 306, 307, 0, 0, 0, 0, 308, 309,
0, 0, 0, 310, 0, 0, 311, 0, 312, 0,
313, 314, 1600, 316, 317, 2352, 0, 319, 0, 320,
0, 321, 0, 322, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 323, 324, 325, 326, 327, 328,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329, 330, 0, 331, 332, 333, 334, 335, 336, 337,
338, 0, 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, 0, 371, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, 0, 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, 0, 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, 0,
473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
483, 484, 485, 0, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, 0, 497, 498, 0, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
0, 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, 0, 746, 747,
748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 0, 0,
0, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100,
1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130,
1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149,
1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0,
1159, 268, 269, 270, 271, 272, 0, 273, 274, 275,
276, 277, 278, 279, 0, 0, 280, 0, 0, 1210,
1211, 0, 0, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 0, 0, 294, 295, 0, 296,
297, 298, 0, 299, 300, 0, 301, 302, 303, 304,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 306, 307, 0, 0, 0, 0, 308,
309, 0, 0, 0, 310, 0, 0, 311, 0, 312,
0, 313, 314, 315, 316, 2392, 318, 0, 319, 0,
2393, 0, 321, 0, 322, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 323, 324, 325, 326, 327,
328, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 329, 330, 0, 331, 332, 333, 334, 335, 336,
337, 338, 0, 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, 2394,
366, 367, 368, 369, 370, 0, 371, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 0, 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, 0, 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,
0, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 0, 486, 487, 488, 489, 490,
491, 492, 493, 494, 495, 496, 0, 497, 498, 0,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
519, 0, 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, 0, 746,
747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 0,
0, 0, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049,
1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129,
1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0,
1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158,
0, 1159, 268, 2973, 270, 271, 272, 0, 273, 274,
275, 276, 277, 278, 1599, 0, 0, 280, 0, 0,
1210, 1211, 0, 0, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 0, 0, 294, 295, 0,
296, 297, 298, 0, 299, 300, 0, 301, 302, 303,
304, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 306, 307, 0, 0, 0, 0,
308, 309, 0, 0, 0, 310, 0, 0, 311, 0,
312, 0, 313, 314, 1600, 316, 317, 318, 0, 319,
0, 320, 0, 321, 0, 322, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 323, 324, 325, 326,
327, 328, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 329, 330, 0, 331, 332, 333, 334, 335,
336, 337, 338, 0, 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, 0, 371, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479, 480,
481, 482, 483, 484, 485, 0, 486, 487, 488, 489,
490, 491, 492, 493, 494, 495, 496, 0, 497, 498,
0, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
518, 519, 0, 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, 0,
746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
0, 0, 0, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098,
1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157,
1158, 0, 1159, 268, 2976, 270, 271, 272, 0, 273,
274, 275, 276, 277, 278, 1599, 0, 0, 280, 0,
0, 1210, 1211, 0, 0, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 0, 0, 294, 295,
0, 296, 297, 298, 0, 299, 300, 0, 301, 302,
303, 304, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 306, 307, 0, 0, 0,
0, 308, 309, 0, 0, 0, 310, 0, 0, 311,
0, 312, 0, 313, 314, 1600, 316, 317, 318, 0,
319, 0, 320, 0, 321, 0, 322, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 323, 324, 325,
326, 327, 328, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 329, 330, 0, 331, 332, 333, 334,
335, 336, 337, 338, 0, 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, 0, 371, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479,
480, 481, 482, 483, 484, 485, 0, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 0, 497,
498, 0, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
517, 518, 519, 0, 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,
0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 0, 0, 0, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047,
1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097,
1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147,
1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156,
1157, 1158, 0, 1159, 268, 269, 270, 271, 272, 0,
273, 274, 275, 276, 277, 278, 1599, 0, 0, 280,
0, 0, 1210, 1211, 0, 0, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 0, 0, 294,
295, 0, 296, 297, 298, 0, 299, 300, 0, 301,
302, 303, 304, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 306, 307, 0, 0,
0, 0, 308, 309, 0, 0, 0, 310, 0, 0,
311, 0, 312, 0, -2697, 314, 1600, 316, 317, 318,
0, 319, 0, 320, 0, 321, 0, 322, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 323, 324,
325, 326, 327, 328, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 329, 330, 0, 331, 332, 333,
334, 335, 336, 337, 338, 0, 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, 0, 371,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478,
479, 480, 481, 482, 483, 484, 485, 0, 486, 487,
488, 489, 490, 491, 492, 493, 494, 495, 496, 0,
497, 498, 0, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 0, 0, 0, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,
1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096,
1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146,
1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155,
1156, 1157, 1158, 0, 1159, 268, 269, 270, 271, 272,
0, 273, 274, 275, 276, 277, 278, 279, 0, 0,
280, 0, 0, 1210, 1211, 0, 0, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 0, 0,
294, 295, 0, 296, 297, 298, 0, 299, 300, 0,
301, 302, 303, 304, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 306, 307, 0,
0, 0, 0, 308, 309, 0, 0, 0, 310, 0,
0, 311, 0, 312, 0, 313, 314, 315, 316, 317,
3436, 0, 319, 0, 320, 0, 321, 0, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 323,
324, 325, 326, 327, 328, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 329, 330, 0, 331, 332,
333, 334, 335, 336, 337, 338, 0, 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, 0,
371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 0, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
0, 497, 498, 0, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0,
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, 0, 777, 778, 779,
780, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 0, 0, 0, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075,
1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095,
1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145,
1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154,
1155, 1156, 1157, 1158, 0, 1159, 268, 3502, 270, 271,
272, 0, 273, 274, 275, 276, 277, 278, 1599, 0,
0, 280, 0, 0, 1210, 1211, 0, 0, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 0,
0, 294, 295, 0, 296, 297, 298, 0, 299, 300,
0, 301, 302, 303, 304, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 306, 307,
0, 0, 0, 0, 308, 309, 0, 0, 0, 310,
0, 0, 311, 0, 312, 0, 313, 314, 1600, 316,
317, 318, 0, 319, 0, 320, 0, 321, 0, 322,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
323, 324, 325, 326, 327, 328, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 329, 330, 0, 331,
332, 333, 334, 335, 336, 337, 338, 0, 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,
0, 371, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
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, 0, 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, 0, 473, 474, 475, 476,
477, 478, 479, 480, 481, 482, 483, 484, 485, 0,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 0, 497, 498, 0, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750,
0, 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, 0, 777, 778,
779, 780, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 0, 0, 0, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064,
1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104,
1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153,
1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 3966, 270,
271, 272, 0, 273, 274, 275, 276, 277, 278, 1599,
0, 0, 280, 0, 0, 1210, 1211, 0, 0, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
0, 0, 294, 295, 0, 296, 297, 298, 0, 299,
300, 0, 301, 302, 303, 304, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 306,
307, 0, 0, 0, 0, 308, 309, 0, 0, 0,
310, 0, 0, 311, 0, 312, 0, 313, 314, 1600,
316, 317, 318, 0, 319, 0, 320, 0, 321, 0,
322, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 323, 324, 325, 326, 327, 328, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 330, 0,
331, 332, 333, 334, 335, 336, 337, 338, 0, 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, 0, 371, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
0, 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, 0,
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, 0, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
0, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 0, 497, 498, 0, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0,
750, 0, 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, 0, 777,
778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 0, 0, 0, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063,
1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103,
1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143,
1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152,
1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 3971,
270, 271, 272, 0, 273, 274, 275, 276, 277, 278,
1599, 0, 0, 280, 0, 0, 1210, 1211, 0, 0,
283, 284, 285, 286, 287, 288, 289, 290, 291, 292,
293, 0, 0, 294, 295, 0, 296, 297, 298, 0,
299, 300, 0, 301, 302, 303, 304, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
306, 307, 0, 0, 0, 0, 308, 309, 0, 0,
0, 310, 0, 0, 311, 0, 312, 0, 313, 314,
1600, 316, 317, 318, 0, 319, 0, 320, 0, 321,
0, 322, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 323, 324, 325, 326, 327, 328, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 329, 330,
0, 331, 332, 333, 334, 335, 336, 337, 338, 0,
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, 0, 371, 372, 373, 374, 375, 376, 377,
378, 379, 380, 381, 382, 383, 384, 385, 386, 387,
388, 0, 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,
0, 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, 0, 473, 474,
475, 476, 477, 478, 479, 480, 481, 482, 483, 484,
485, 0, 486, 487, 488, 489, 490, 491, 492, 493,
494, 495, 496, 0, 497, 498, 0, 499, 500, 501,
502, 503, 504, 505, 506, 507, 508, 509, 510, 511,
512, 513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749,
0, 750, 0, 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, 0,
777, 778, 779, 780, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 0, 0, 0, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062,
1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102,
1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132,
1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142,
1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150, 1151,
1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 268,
269, 270, 271, 272, 0, 273, 274, 275, 276, 277,
278, 279, 0, 0, 280, 0, 0, 1210, 1211, 0,
0, 283, 284, 285, 286, 287, 288, 289, 290, 291,
292, 293, 0, 0, 294, 295, 0, 296, 297, 298,
0, 299, 300, 0, 301, 302, 303, 304, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 306, 307, 0, 0, 0, 0, 308, 309, 0,
0, 0, 310, 0, 0, 311, 0, 312, 0, 313,
314, 315, 316, 317, 318, 0, 319, 0, 320, 0,
321, 0, 322, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 323, 324, 325, 326, 327, 328, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 329,
330, 0, 331, 332, 333, 334, 335, 336, 337, 338,
0, 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, 3991, 366, 367,
368, 369, 370, 0, 371, 372, 373, 374, 375, 376,
377, 378, 379, 380, 381, 382, 383, 384, 385, 386,
387, 388, 0, 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, 0, 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, 0, 473,
474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
484, 485, 0, 486, 487, 488, 489, 490, 491, 492,
493, 494, 495, 496, 0, 497, 498, 0, 499, 500,
501, 502, 503, 504, 505, 506, 507, 508, 509, 510,
511, 512, 513, 514, 515, 516, 517, 518, 519, 0,
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, 0, 746, 747, 748,
749, 0, 750, 0, 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,
0, 777, 778, 779, 780, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 0, 0, 0,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061,
1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101,
1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131,
1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149, 1150,
1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0, 1159,
268, 4250, 270, 271, 272, 0, 273, 274, 275, 276,
277, 278, 1599, 0, 0, 280, 0, 0, 1210, 1211,
0, 0, 283, 284, 285, 286, 287, 288, 289, 290,
291, 292, 293, 0, 0, 294, 295, 0, 296, 297,
298, 0, 299, 300, 0, 301, 302, 303, 304, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 306, 307, 0, 0, 0, 0, 308, 309,
0, 0, 0, 310, 0, 0, 311, 0, 312, 0,
313, 314, 1600, 316, 317, 318, 0, 319, 0, 320,
0, 321, 0, 322, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 323, 324, 325, 326, 327, 328,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
329, 330, 0, 331, 332, 333, 334, 335, 336, 337,
338, 0, 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, 0, 371, 372, 373, 374, 375,
376, 377, 378, 379, 380, 381, 382, 383, 384, 385,
386, 387, 388, 0, 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, 0, 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, 0,
473, 474, 475, 476, 477, 478, 479, 480, 481, 482,
483, 484, 485, 0, 486, 487, 488, 489, 490, 491,
492, 493, 494, 495, 496, 0, 497, 498, 0, 499,
500, 501, 502, 503, 504, 505, 506, 507, 508, 509,
510, 511, 512, 513, 514, 515, 516, 517, 518, 519,
0, 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, 0, 746, 747,
748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 0, 0,
0, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060,
1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100,
1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130,
1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0, 1149,
1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158, 0,
1159, 268, 269, 270, 271, 272, 0, 273, 274, 275,
276, 277, 278, 279, 0, 0, 280, 0, 0, 1210,
1211, 0, 0, 283, 284, 285, 286, 287, 288, 289,
290, 291, 292, 293, 0, 0, 294, 295, 0, 296,
297, 298, 0, 299, 4459, 0, 301, 302, 303, 304,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 306, 307, 0, 0, 0, 0, 308,
309, 0, 0, 0, 310, 0, 0, 311, 0, 312,
0, 313, 314, 315, 316, 317, 4460, 0, 319, 0,
320, 0, 321, 0, 322, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 323, 324, 325, 326, 327,
328, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 329, 330, 0, 331, 332, 333, 334, 335, 336,
337, 338, 0, 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, 0, 371, 372, 373, 374,
375, 376, 377, 378, 379, 380, 381, 382, 383, 384,
385, 386, 387, 388, 0, 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, 0, 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,
0, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 0, 486, 487, 488, 489, 490,
491, 492, 493, 494, 495, 496, 0, 497, 498, 0,
499, 500, 501, 502, 503, 504, 505, 506, 507, 508,
509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
519, 0, 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, 4461, 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, 0, 746,
747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 0,
0, 0, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049,
1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099,
1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129,
1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 0,
1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157, 1158,
0, 1159, 268, 269, 270, 271, 272, 0, 273, 274,
275, 276, 277, 278, 279, 0, 0, 280, 0, 0,
1210, 1211, 0, 0, 283, 284, 285, 286, 287, 288,
289, 290, 291, 292, 293, 0, 0, 294, 295, 0,
296, 297, 298, 0, 299, 300, 0, 301, 302, 303,
304, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 306, 307, 0, 0, 0, 0,
308, 309, 0, 0, 0, 310, 0, 0, 311, 0,
312, 0, 313, 314, 315, 316, 317, 4460, 0, 319,
0, 320, 0, 321, 0, 322, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 323, 324, 325, 326,
327, 328, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 329, 330, 0, 331, 332, 333, 334, 335,
336, 337, 338, 0, 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, 0, 371, 372, 373,
374, 375, 376, 377, 378, 379, 380, 381, 382, 383,
384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479, 480,
481, 482, 483, 484, 485, 0, 486, 487, 488, 489,
490, 491, 492, 493, 494, 495, 496, 0, 497, 498,
0, 499, 500, 501, 502, 503, 504, 505, 506, 507,
508, 509, 510, 511, 512, 513, 514, 515, 516, 517,
518, 519, 0, 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, 4461, 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, 0,
746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
0, 0, 0, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048,
1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098,
1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148,
0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156, 1157,
1158, 0, 1159, 268, 269, 270, 271, 272, 0, 273,
274, 275, 276, 277, 278, 279, 0, 0, 280, 0,
0, 1210, 1211, 0, 0, 283, 284, 285, 286, 287,
288, 289, 290, 291, 292, 293, 0, 0, 294, 295,
0, 296, 297, 298, 0, 299, 300, 0, 301, 302,
303, 304, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 306, 307, 0, 0, 0,
0, 308, 309, 0, 0, 0, 310, 0, 0, 311,
0, 312, 0, 313, 314, 315, 316, 317, 318, 0,
319, 0, 320, 0, 321, 0, 322, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 323, 324, 325,
326, 327, 328, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 329, 330, 0, 331, 332, 333, 334,
335, 336, 337, 338, 0, 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, 4742, 366, 367, 368, 369, 370, 0, 371, 372,
373, 374, 375, 376, 377, 378, 379, 380, 381, 382,
383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477, 478, 479,
480, 481, 482, 483, 484, 485, 0, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 0, 497,
498, 0, 499, 500, 501, 502, 503, 504, 505, 506,
507, 508, 509, 510, 511, 512, 513, 514, 515, 516,
517, 518, 519, 0, 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,
0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 0, 0, 0, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047,
1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066, 1067,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076, 1077,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097,
1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147,
1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155, 1156,
1157, 1158, 0, 1159, 268, 269, 270, 271, 272, 0,
273, 274, 275, 276, 277, 278, 279, 0, 0, 280,
0, 0, 1210, 1211, 0, 0, 283, 284, 285, 286,
287, 288, 289, 290, 291, 292, 293, 0, 0, 294,
295, 0, 296, 297, 298, 0, 299, 300, 0, 301,
302, 303, 304, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 306, 307, 0, 0,
0, 0, 308, 309, 0, 0, 0, 310, 0, 0,
311, 0, 312, 0, 313, 314, 315, 316, 317, 318,
0, 319, 0, 320, 0, 321, 0, 322, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 323, 324,
325, 326, 327, 328, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 329, 330, 0, 331, 332, 333,
334, 335, 336, 337, 338, 0, 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, 0, 371,
372, 373, 374, 375, 376, 377, 378, 379, 380, 381,
382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 417, 418, 419,
420, 421, 422, 423, 424, 425, 426, 427, 428, 429,
430, 431, 4827, 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, 0, 473, 474, 475, 476, 477, 478,
479, 480, 481, 482, 483, 484, 485, 0, 486, 487,
488, 489, 490, 491, 492, 493, 494, 495, 496, 0,
497, 498, 0, 499, 500, 501, 502, 503, 504, 505,
506, 507, 508, 509, 510, 511, 512, 513, 514, 515,
516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0, 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, 0, 777, 778, 779, 780,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 0, 0, 0, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,
1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075, 1076,
1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096,
1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146,
1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1155,
1156, 1157, 1158, 0, 1159, 268, 269, 270, 271, 272,
0, 273, 274, 275, 276, 277, 278, 279, 0, 0,
280, 0, 0, 1210, 1211, 0, 0, 283, 284, 285,
286, 287, 288, 289, 290, 291, 292, 293, 0, 0,
294, 295, 0, 296, 297, 298, 0, 299, 300, 0,
301, 302, 303, 304, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 306, 307, 0,
0, 0, 0, 308, 309, 0, 0, 0, 310, 0,
0, 311, 0, 312, 0, 0, 314, 315, 316, 317,
318, 0, 319, 0, 320, 0, 321, 0, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 323,
324, 325, 326, 327, 328, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 329, 330, 0, 331, 332,
333, 334, 335, 336, 337, 338, 0, 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, 0,
371, 372, 373, 374, 375, 376, 377, 378, 379, 380,
381, 382, 383, 384, 385, 386, 387, 388, 0, 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, 0, 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, 0, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 0, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
0, 497, 498, 0, 499, 500, 501, 502, 503, 504,
505, 506, 507, 508, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750, 0,
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, 0, 777, 778, 779,
780, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 0, 0, 0, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065,
1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075,
1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095,
1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145,
1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154,
1155, 1156, 1157, 1158, 0, 1159, 268, 269, 270, 271,
272, 0, 273, 274, 275, 276, 277, 278, 1599, 0,
0, 280, 0, 0, 1210, 1211, 0, 0, 283, 284,
285, 286, 287, 288, 289, 290, 291, 292, 293, 0,
0, 294, 295, 0, 296, 297, 298, 0, 299, 300,
0, 301, 302, 303, 304, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 306, 307,
0, 0, 0, 0, 308, 309, 0, 0, 0, 310,
0, 0, 311, 0, 312, 0, 0, 314, 1600, 316,
317, 318, 0, 319, 0, 320, 0, 321, 0, 322,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
323, 324, 325, 326, 327, 328, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 329, 330, 0, 331,
332, 333, 334, 335, 336, 337, 338, 0, 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,
0, 371, 372, 373, 374, 375, 376, 377, 378, 379,
380, 381, 382, 383, 384, 385, 386, 387, 388, 0,
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, 0, 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, 0, 473, 474, 475, 476,
477, 478, 479, 480, 481, 482, 483, 484, 485, 0,
486, 487, 488, 489, 490, 491, 492, 493, 494, 495,
496, 0, 497, 498, 0, 499, 500, 501, 502, 503,
504, 505, 506, 507, 508, 509, 510, 511, 512, 513,
514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0, 750,
0, 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, 0, 777, 778,
779, 780, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 0, 0, 0, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064,
1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104,
1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144,
1145, 1146, 1147, 1148, 0, 1149, 1150, 1151, 1152, 1153,
1154, 1155, 1156, 1157, 1158, 0, 1159, 268, 269, 270,
271, 272, 0, 273, 274, 275, 276, 277, 278, 279,
0, 0, 280, 0, 0, 1210, 1211, 0, 0, 283,
284, 285, 286, 287, 288, 289, 290, 291, 292, 293,
0, 0, 294, 295, 0, 296, 297, 298, 0, 299,
300, 0, 301, 302, 303, 304, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 306,
307, 0, 0, 0, 0, 308, 309, 0, 0, 0,
310, 0, 0, 2969, 0, 312, 0, 0, 314, 315,
316, 317, 318, 0, 319, 0, 320, 0, 321, 0,
322, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 323, 324, 325, 326, 327, 328, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 330, 0,
331, 332, 333, 334, 335, 336, 337, 338, 0, 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, 0, 371, 372, 373, 374, 375, 376, 377, 378,
379, 380, 381, 382, 383, 384, 385, 386, 387, 388,
0, 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, 0,
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, 0, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
0, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 0, 497, 498, 0, 499, 500, 501, 502,
503, 504, 505, 506, 507, 508, 509, 510, 511, 512,
513, 514, 515, 516, 517, 518, 519, 0, 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, 0, 746, 747, 748, 749, 0,
750, 0, 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, 0, 777,
778, 779, 780, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 0, 0, 0, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063,
1064, 1065, 1066, 1067, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103,
1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133,
1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143,
1144, 1145, 1146, 1147, 1148, 268, 1149, 1150, 1151, 1152,
1153, 1154, 1155, 1156, 1157, 1158, 0, 1159, 0, 0,
0, 0, 0, 1210, 1211, 0, 0, 283, 284, 285,
286, 287, 288, 289, 290, 1609, 292, 293, 0, 0,
294, 295, 0, 296, 297, 298, 0, 1610, 300, 0,
301, 302, 303, 304, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 0, 0, 2375,
0, 0, 0, 308, 1611, 0, 0, 0, 0, 0,
0, 0, 0, 312, 0, 0, 0, 1600, 316, 1612,
1613, 0, 319, 0, 320, 0, 321, 0, 322, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 329, 330, 0, 331, 332,
333, 334, 335, 336, 337, 338, 0, 339, 340, 341,
342, 343, 1614, 345, 346, 347, 348, 349, 1615, 351,
1616, 1617, 1618, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 1621, 366, 367, 368, 369, 370, 0,
371, 372, 373, 374, 375, 376, 377, 378, 1622, 380,
381, 382, 383, 384, 385, 386, 387, 388, 0, 389,
390, 391, 392, 393, 394, 395, 396, 397, 1623, 399,
400, 401, 402, 403, 1624, 405, 406, 407, 408, 409,
410, 411, 412, 413, 414, 415, 416, 0, 417, 418,
419, 420, 421, 1625, 1626, 424, 425, 426, 427, 428,
429, 430, 1627, 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, 0, 473, 474, 475, 476, 477,
478, 479, 480, 481, 482, 483, 484, 485, 0, 486,
487, 488, 489, 490, 491, 492, 493, 494, 495, 496,
0, 497, 498, 0, 499, 500, 501, 502, 503, 504,
1631, 1632, 1633, 1634, 509, 510, 511, 512, 513, 514,
515, 516, 517, 518, 519, 0, 520, 521, 522, 523,
1215, 525, 526, 527, 528, 529, 530, 531, 1216, 1217,
1218, 1219, 536, 537, 538, 539, 540, 1220, 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, 1221,
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, 1225, 616, 617, 618, 619, 1226, 621, 1227, 623,
1228, 625, 626, 627, 628, 629, 1229, 1230, 1231, 633,
634, 635, 636, 637, 638, 639, 640, 641, 642, 1233,
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,
1236, 685, 686, 687, 688, 689, 690, 691, 692, 1237,
694, 695, 696, 697, 698, 699, 700, 701, 702, 703,
704, 705, 706, 707, 708, 1239, 710, 711, 1241, 1242,
714, 715, 0, 717, 718, 719, 720, 721, 722, 1244,
724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
744, 745, 0, 746, 747, 1245, 749, 0, 750, 0,
751, 752, 753, 754, 755, 1247, 757, 758, 1248, 1249,
761, 762, 763, 764, 765, 766, 767, 1250, 769, 770,
771, 772, 773, 774, 775, 776, 0, 777, 778, 1252,
1253, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 1254, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 1255, 822, 1256, 824, 825, 826, 827, 828, 1257,
830, 831, 1258, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 1260, 858, 859,
860, 861, 862, 1261, 1262, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 1264, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 1265,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 1266,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 1268, 973, 974, 975, 976, 977, 978,
979, 980, 1270, 0, 0, 0, 982, 983, 984, 1271,
986, 987, 988, 989, 990, 991, 992, 1272, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281,
1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1075,
1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286,
1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1105,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1293, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145,
1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154,
1297, 1156, 1157, 1158, 0, 0, 0, 0, 0, 0,
0, 1210, 1211, 0, 0, 283, 284, 285, 286, 287,
288, 1608, 290, 1609, 292, 293, 0, 0, 294, 295,
0, 296, 297, 298, 0, 1610, 300, 0, 301, 302,
303, 304, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 0, 0, 2527, 0, 0,
0, 308, 1611, 0, 0, 0, 0, 0, 0, 0,
0, 312, 0, 0, 0, 1600, 316, 1612, 1613, 0,
319, 0, 320, 0, 321, 0, 322, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 329, 330, 0, 331, 332, 333, 334,
335, 336, 337, 338, 0, 339, 340, 341, 342, 343,
1614, 345, 346, 347, 348, 349, 1615, 351, 1616, 1617,
1618, 1619, 356, 1620, 358, 359, 360, 361, 362, 363,
364, 1621, 366, 367, 368, 369, 370, 0, 371, 372,
373, 374, 375, 376, 377, 378, 1622, 380, 381, 382,
383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
392, 393, 394, 395, 396, 397, 1623, 399, 400, 401,
402, 403, 1624, 405, 406, 407, 408, 409, 410, 411,
412, 413, 414, 415, 416, 0, 417, 418, 419, 420,
421, 1625, 1626, 424, 425, 426, 427, 428, 429, 430,
1627, 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, 1628, 1629, 464, 465, 466, 467, 468, 469, 1630,
471, 472, 0, 473, 474, 475, 476, 477, 478, 479,
480, 481, 482, 483, 484, 485, 0, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 0, 497,
498, 0, 499, 500, 501, 502, 503, 504, 1631, 1632,
1633, 1634, 509, 510, 511, 512, 513, 514, 515, 516,
517, 518, 519, 0, 520, 521, 522, 523, 1215, 525,
526, 527, 528, 529, 530, 531, 1216, 1217, 1218, 1219,
536, 537, 538, 539, 540, 1220, 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, 1221, 574, 575,
576, 1342, 578, 579, 580, 581, 582, 583, 584, 585,
586, 587, 588, 589, 590, 1223, 592, 593, 1224, 595,
596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 613, 614, 1225,
616, 617, 618, 619, 1226, 621, 1227, 623, 1228, 625,
626, 627, 628, 629, 1229, 1230, 1231, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 1233, 644, 645,
646, 647, 648, 649, 650, 651, 1234, 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, 1236, 685,
686, 687, 688, 689, 690, 691, 692, 1237, 694, 695,
696, 1238, 698, 699, 700, 701, 702, 703, 704, 705,
706, 707, 708, 1239, 710, 711, 1241, 1242, 714, 715,
0, 717, 718, 719, 720, 721, 722, 1244, 724, 725,
726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
0, 746, 747, 1245, 749, 0, 750, 0, 751, 752,
753, 1246, 755, 1247, 757, 758, 1248, 1249, 761, 762,
763, 764, 765, 766, 767, 1250, 769, 770, 771, 772,
773, 774, 775, 776, 0, 777, 778, 1252, 1253, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 1254, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 1255,
822, 1256, 824, 825, 826, 827, 828, 1257, 830, 831,
1258, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 1260, 858, 859, 860, 861,
862, 1261, 1262, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 1264, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 1265, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 1266, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 1267, 964, 965, 966, 967, 968, 969, 970,
971, 1268, 973, 1269, 975, 976, 977, 978, 979, 980,
1270, 0, 0, 0, 982, 983, 984, 1271, 986, 987,
988, 989, 990, 991, 992, 1272, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275,
1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288,
1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147,
1148, 1805, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156,
1157, 1158, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 285, 286, 287, 288, 1608,
290, 1609, 292, 293, 0, 0, 294, 295, 0, 296,
297, 298, 0, 1610, 300, 0, 301, 302, 303, 304,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 3513, 0, 0, 0, 308,
1611, 0, 0, 0, 0, 0, 0, 0, 0, 312,
0, 0, 0, 1600, 316, 1612, 1613, 0, 319, 0,
320, 0, 321, 0, 322, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 329, 330, 0, 331, 332, 333, 334, 335, 336,
337, 338, 0, 339, 340, 341, 342, 343, 1614, 345,
346, 347, 348, 349, 1615, 351, 1616, 1617, 1618, 1619,
356, 1620, 358, 359, 360, 361, 362, 363, 364, 1621,
366, 367, 368, 369, 370, 0, 371, 372, 373, 374,
375, 376, 377, 378, 1622, 380, 381, 382, 383, 384,
385, 386, 387, 388, 0, 389, 390, 391, 392, 393,
394, 395, 396, 397, 1623, 399, 400, 401, 402, 403,
1624, 405, 406, 407, 408, 409, 410, 411, 412, 413,
414, 415, 416, 0, 417, 418, 419, 420, 421, 1625,
1626, 424, 425, 426, 427, 428, 429, 430, 1627, 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, 1628,
1629, 464, 465, 466, 467, 468, 469, 1630, 471, 472,
0, 473, 474, 475, 476, 477, 478, 479, 480, 481,
482, 483, 484, 485, 0, 486, 487, 488, 489, 490,
491, 492, 493, 494, 495, 496, 0, 497, 498, 0,
499, 500, 501, 502, 503, 504, 1631, 1632, 1633, 1634,
509, 510, 511, 512, 513, 514, 515, 516, 517, 518,
519, 0, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
0, 0, 0, 0, 0, 0, 0, 1210, 1211, 0,
0, 283, 284, 285, 286, 287, 288, 1608, 290, 1609,
292, 293, 0, 0, 294, 295, 0, 296, 297, 298,
0, 1610, 300, 0, 301, 302, 303, 304, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 308, 1611, 0,
0, 0, 0, 0, 0, 0, 0, 312, 0, 0,
0, 1600, 316, 1612, 1613, 0, 319, 0, 320, 0,
321, 0, 322, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 329,
330, 0, 331, 332, 333, 334, 335, 336, 337, 338,
0, 339, 340, 341, 342, 343, 1614, 345, 346, 347,
348, 349, 1615, 351, 1616, 1617, 1618, 1619, 356, 1620,
358, 359, 360, 361, 362, 363, 364, 1621, 366, 367,
368, 369, 370, 0, 371, 372, 373, 374, 375, 376,
377, 378, 1622, 380, 381, 382, 383, 384, 385, 386,
387, 388, 0, 389, 390, 391, 392, 393, 394, 395,
396, 397, 1623, 399, 400, 401, 402, 403, 1624, 405,
406, 407, 408, 409, 410, 411, 412, 413, 414, 415,
416, 0, 417, 418, 419, 420, 421, 1625, 1626, 424,
425, 426, 427, 428, 429, 430, 1627, 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, 1628, 1629, 464,
465, 466, 467, 468, 469, 1630, 471, 472, 0, 473,
474, 475, 476, 477, 478, 479, 480, 481, 482, 483,
484, 485, 0, 486, 487, 488, 489, 490, 491, 492,
493, 494, 495, 496, 0, 497, 498, 0, 499, 500,
501, 502, 503, 504, 1631, 1632, 1633, 1634, 509, 510,
511, 512, 513, 514, 515, 516, 517, 518, 519, 0,
520, 521, 522, 523, 1215, 525, 526, 527, 528, 529,
530, 531, 1216, 1217, 1218, 1219, 536, 537, 538, 539,
540, 1220, 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, 1221, 574, 575, 576, 1342, 578, 579,
580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
590, 1223, 592, 593, 1224, 595, 596, 597, 598, 599,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 613, 614, 1225, 616, 617, 618, 619,
1226, 621, 1227, 623, 1228, 625, 626, 627, 628, 629,
1229, 1230, 1231, 633, 634, 635, 636, 637, 638, 639,
640, 641, 642, 1233, 644, 645, 646, 647, 648, 649,
650, 651, 1234, 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, 1236, 685, 686, 687, 688, 689,
690, 691, 692, 1237, 694, 695, 696, 1238, 698, 699,
700, 701, 702, 703, 704, 705, 706, 707, 708, 1239,
710, 711, 1241, 1242, 714, 715, 0, 717, 718, 719,
720, 721, 722, 1244, 724, 725, 726, 727, 728, 729,
730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
740, 741, 742, 743, 744, 745, 0, 746, 747, 1245,
749, 0, 750, 0, 751, 752, 753, 1246, 755, 1247,
757, 758, 1248, 1249, 761, 762, 763, 764, 765, 766,
767, 1250, 769, 770, 771, 772, 773, 774, 775, 776,
0, 777, 778, 1252, 1253, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 1254, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 1255, 822, 1256, 824, 825,
826, 827, 828, 1257, 830, 831, 1258, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 1260, 858, 859, 860, 861, 862, 1261, 1262, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 1264, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 1265, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 1266, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 1267, 964,
965, 966, 967, 968, 969, 970, 971, 1268, 973, 1269,
975, 976, 977, 978, 979, 980, 1270, 0, 0, 0,
982, 983, 984, 1271, 986, 987, 988, 989, 990, 991,
992, 1272, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061,
1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101,
1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131,
1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1294, 1295, 1144, 1145, 1296, 1147, 1148, 1805, 1149, 1150,
1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0,
0, 0, 0, 0, 0, 1210, 1211, 0, 0, 283,
284, 285, 286, 287, 288, 1608, 290, 1609, 292, 293,
0, 0, 294, 295, 0, 296, 297, 298, 0, 1610,
300, 0, 301, 302, 303, 304, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 308, 1611, 0, 0, 0,
0, 0, 0, 0, 0, 312, 0, 0, 0, 1600,
316, 1612, 1613, 0, 319, 0, 320, 0, 321, 0,
322, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 329, 330, 0,
331, 332, 333, 334, 335, 336, 337, 338, 0, 339,
340, 341, 342, 343, 1614, 345, 346, 347, 348, 349,
1615, 351, 1616, 1617, 1618, 1619, 356, 1620, 358, 359,
360, 361, 362, 363, 364, 1621, 366, 367, 368, 369,
370, 0, 371, 372, 373, 374, 375, 376, 377, 378,
1622, 380, 381, 382, 383, 384, 385, 386, 387, 388,
0, 389, 390, 391, 392, 393, 394, 395, 396, 397,
1623, 399, 400, 401, 402, 403, 1624, 405, 406, 407,
408, 409, 410, 411, 412, 413, 414, 415, 416, 0,
417, 418, 419, 420, 421, 1625, 1626, 424, 425, 426,
427, 428, 429, 430, 1627, 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, 1628, 1629, 464, 465, 466,
467, 468, 469, 1630, 471, 472, 0, 473, 474, 475,
476, 477, 478, 479, 480, 481, 482, 483, 484, 485,
0, 486, 487, 488, 489, 490, 491, 492, 493, 494,
495, 496, 0, 497, 498, 0, 499, 500, 501, 502,
503, 504, 1631, 1632, 1633, 1634, 509, 510, 511, 512,
513, 514, 515, 516, 517, 518, 519, 0, 520, 521,
522, 523, 1215, 525, 526, 527, 528, 529, 530, 531,
1216, 1217, 1218, 1219, 536, 537, 538, 539, 540, 1220,
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, 1221, 574, 575, 576, 1342, 578, 579, 580, 581,
582, 583, 584, 585, 586, 587, 588, 589, 590, 1223,
592, 593, 1224, 595, 596, 597, 598, 599, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 613, 614, 1225, 616, 617, 618, 619, 1226, 621,
1227, 623, 1228, 625, 626, 627, 628, 629, 1229, 1230,
1231, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 1233, 644, 645, 646, 647, 648, 649, 650, 651,
1234, 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, 1236, 685, 686, 687, 688, 689, 690, 691,
692, 1237, 694, 695, 696, 1238, 698, 699, 700, 701,
702, 703, 704, 705, 706, 707, 708, 1239, 710, 711,
1241, 1242, 714, 715, 0, 717, 718, 719, 720, 721,
722, 1244, 724, 725, 726, 727, 728, 729, 730, 731,
732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
742, 743, 744, 745, 0, 746, 747, 1245, 749, 0,
750, 0, 751, 752, 753, 1246, 755, 1247, 757, 758,
1248, 1249, 761, 762, 763, 764, 765, 766, 767, 1250,
769, 770, 771, 772, 773, 774, 775, 776, 0, 777,
778, 1252, 1253, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 1254, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 1255, 822, 1256, 824, 825, 826, 827,
828, 1257, 830, 831, 1258, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 1260,
858, 859, 860, 861, 862, 1261, 1262, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 1264, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 1265, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 1266, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 1267, 964, 965, 966,
967, 968, 969, 970, 971, 1268, 973, 1269, 975, 976,
977, 978, 979, 980, 1270, 0, 0, 0, 982, 983,
984, 1271, 986, 987, 988, 989, 990, 991, 992, 1272,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1274,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063,
1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103,
1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133,
1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295,
1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152,
1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0,
0, 0, 0, 1210, 1211, 0, 0, 283, 284, 0,
286, 287, 0, 0, 290, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 0, 312, 0, 1420, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 321, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2, 3, 4, 5, 6,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 12, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 18, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 25, 0, 0, 0, 0, 0,
0, 0, 0, 0, 27, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 31, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 520, 521, 522, 523,
1215, 525, 526, 527, 528, 529, 530, 531, 1216, 1217,
1218, 1219, 536, 537, 538, 539, 540, 1220, 542, 543,
544, 545, 546, 547, 548, 549, 550, 551, 1421, 553,
554, 555, 556, 557, 558, 559, 560, 561, 562, 563,
564, 565, 566, 567, 568, 569, 570, 571, 572, 1221,
574, 575, 576, 1342, 578, 579, 580, 581, 582, 583,
584, 585, 586, 587, 588, 589, 590, 1223, 592, 593,
1224, 595, 596, 597, 598, 599, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
614, 1225, 616, 617, 618, 619, 1226, 621, 1227, 623,
1228, 625, 626, 627, 628, 629, 1229, 1230, 1231, 633,
634, 635, 636, 637, 638, 639, 640, 641, 642, 1233,
644, 645, 646, 647, 648, 649, 650, 651, 1234, 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, 1422, 1423, 1424, 683,
1236, 685, 686, 687, 688, 689, 690, 691, 692, 1237,
694, 695, 696, 1425, 698, 699, 700, 701, 702, 703,
704, 705, 706, 707, 708, 1239, 710, 711, 1241, 1242,
714, 715, 0, 717, 718, 719, 720, 721, 722, 1244,
724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
744, 745, 0, 746, 747, 1245, 749, 0, 750, 0,
751, 752, 753, 1246, 755, 1247, 757, 758, 1248, 1249,
761, 762, 763, 764, 765, 766, 767, 1250, 769, 770,
771, 772, 773, 774, 775, 776, 0, 777, 778, 1252,
1253, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 1254, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 1255, 822, 1256, 824, 825, 826, 827, 828, 1257,
830, 831, 1258, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 1260, 858, 859,
860, 861, 862, 1261, 1262, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
1426, 891, 892, 1264, 894, 895, 896, 1427, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 1265,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 1266,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 1267, 964, 965, 966, 967, 968,
969, 970, 971, 1268, 973, 1269, 975, 976, 977, 978,
979, 980, 1270, 0, 0, 0, 982, 983, 984, 1271,
986, 987, 988, 989, 990, 991, 992, 1272, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281,
1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283,
1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286,
1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145,
1296, 1147, 1148, 2198, 1149, 1150, 1151, 1152, 1153, 1154,
1297, 1156, 1157, 1158, 0, 0, 0, 0, 0, 0,
0, 1210, 1211, 0, 0, 283, 284, 0, 286, 287,
0, 0, 290, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3855, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
0, 312, 0, 0, 0, 0, 0, 0, 0, 0,
2582, 0, 0, 0, 321, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3856, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2585, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3857, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 520, 521, 522, 523, 1215, 525,
526, 527, 528, 529, 530, 531, 1216, 1217, 1218, 1219,
536, 537, 538, 539, 540, 1220, 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, 1221, 574, 575,
576, 1342, 578, 579, 580, 581, 582, 583, 584, 585,
586, 587, 588, 589, 590, 1223, 592, 593, 1224, 595,
596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 613, 614, 1225,
616, 617, 618, 619, 1226, 621, 1227, 623, 1228, 625,
626, 627, 628, 629, 1229, 1230, 1231, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 1233, 644, 645,
646, 647, 648, 649, 650, 651, 1234, 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, 1236, 685,
686, 687, 688, 689, 690, 691, 692, 1237, 694, 695,
696, 1238, 698, 699, 700, 701, 702, 703, 704, 705,
706, 707, 708, 1239, 710, 711, 1241, 1242, 714, 715,
0, 717, 718, 719, 720, 721, 722, 1244, 724, 725,
726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
0, 746, 747, 1245, 749, 0, 750, 0, 751, 752,
753, 1246, 755, 1247, 757, 758, 1248, 1249, 761, 762,
763, 764, 765, 766, 767, 1250, 769, 770, 771, 772,
773, 774, 775, 776, 0, 777, 778, 1252, 1253, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 1254, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 1255,
822, 1256, 824, 825, 826, 827, 828, 1257, 830, 831,
1258, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 1260, 858, 859, 860, 861,
862, 1261, 1262, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 1264, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 1265, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 1266, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 1267, 964, 965, 966, 967, 968, 969, 970,
971, 1268, 973, 1269, 975, 976, 977, 978, 979, 980,
1270, 0, 0, 0, 982, 983, 984, 1271, 986, 987,
988, 989, 990, 991, 992, 1272, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275,
1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288,
1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147,
1148, 2198, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156,
1157, 1158, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 0, 286, 287, 0, 0,
290, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 312,
0, 0, 0, 0, 0, 0, 0, 0, 2582, 0,
0, 0, 321, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2594, 0, 2595, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2596, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2585, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2597, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2598, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 2599, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1207,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
1208, 1209, 0, 0, 0, 0, 0, 1210, 1211, 0,
0, 283, 284, 0, 286, 287, 0, 0, 290, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1212, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1213, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1214, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 521, 522, 523, 1215, 525, 526, 527, 528, 529,
530, 531, 1216, 1217, 1218, 1219, 536, 537, 538, 539,
540, 1220, 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, 1221, 574, 575, 576, 1222, 578, 579,
580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
590, 1223, 592, 593, 1224, 595, 596, 597, 598, 599,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 613, 614, 1225, 616, 617, 618, 619,
1226, 621, 1227, 623, 1228, 625, 626, 627, 628, 629,
1229, 1230, 1231, 633, 634, 635, 1232, 637, 638, 639,
640, 641, 642, 1233, 644, 645, 646, 647, 648, 649,
650, 651, 1234, 653, 654, 655, 656, 657, 658, 659,
660, 1235, 662, 663, 664, 665, 666, 667, 668, 669,
670, 671, 672, 673, 674, 675, 676, 677, 678, 679,
680, 681, 682, 683, 1236, 685, 686, 687, 688, 689,
690, 691, 692, 1237, 694, 695, 696, 1238, 698, 699,
700, 701, 702, 703, 704, 705, 706, 707, 708, 1239,
1240, 711, 1241, 1242, 714, 715, 1243, 717, 718, 719,
720, 721, 722, 1244, 724, 725, 726, 727, 728, 729,
730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
740, 741, 742, 743, 744, 745, 0, 746, 747, 1245,
749, 0, 750, 0, 751, 752, 753, 1246, 755, 1247,
757, 758, 1248, 1249, 761, 762, 763, 764, 765, 766,
767, 1250, 1251, 770, 771, 772, 773, 774, 775, 776,
0, 777, 778, 1252, 1253, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 1254, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 1255, 822, 1256, 824, 825,
826, 827, 828, 1257, 830, 831, 1258, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 1259,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 1260, 858, 859, 860, 861, 862, 1261, 1262, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 1263, 892, 1264, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 1265, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 1266, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 1267, 964,
965, 966, 967, 968, 969, 970, 971, 1268, 973, 1269,
975, 976, 977, 978, 979, 980, 1270, 0, 0, 0,
982, 983, 984, 1271, 986, 987, 988, 989, 990, 991,
992, 1272, 994, 995, 996, 997, 998, 999, 1000, 1001,
1273, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061,
1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1283, 1284, 1285, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101,
1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131,
1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1294, 1295, 1144, 1145, 1296, 1147, 1148, 0, 1149, 1150,
1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 1341, 2674,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3715, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2675, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3716, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 3717, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 0, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 1352, -1267, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1210, 1211, 0, 0, 0,
0, 0, 0, 287, 0, 0, 290, 0, 0, 0,
0, 1749, 1750, 1751, 1752, 1753, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 312, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 321, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2486, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 520, 521,
522, 523, 1215, 525, 526, 527, 528, 529, 530, 531,
1216, 1217, 1218, 1219, 536, 537, 538, 539, 540, 1220,
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, 1221, 574, 575, 576, 1342, 578, 579, 580, 581,
582, 583, 584, 585, 586, 587, 588, 589, 590, 1223,
592, 593, 1224, 595, 596, 597, 598, 599, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 613, 614, 1225, 616, 617, 618, 619, 1226, 621,
1227, 623, 1228, 625, 626, 627, 628, 629, 1229, 1230,
1231, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 1233, 644, 645, 646, 647, 648, 649, 650, 651,
1234, 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, 1236, 685, 686, 687, 688, 689, 690, 691,
692, 1237, 694, 695, 696, 1238, 698, 699, 700, 701,
702, 703, 704, 705, 706, 707, 708, 1239, 710, 711,
1241, 1242, 714, 715, 0, 717, 718, 719, 720, 721,
722, 1244, 724, 725, 726, 727, 728, 729, 730, 731,
732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
742, 743, 744, 745, 0, 746, 747, 1245, 749, 0,
750, 0, 751, 752, 753, 1246, 755, 1247, 757, 758,
1248, 1249, 761, 762, 763, 764, 765, 766, 767, 1250,
769, 770, 771, 772, 773, 774, 775, 776, 0, 777,
778, 1252, 1253, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 1254, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 1255, 822, 1256, 824, 825, 826, 827,
828, 1257, 830, 831, 1258, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 1260,
858, 859, 860, 861, 862, 1261, 1262, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 1264, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 1265, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 1266, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 1267, 964, 965, 966,
967, 968, 969, 970, 971, 1268, 973, 1269, 975, 976,
977, 978, 979, 980, 1270, 0, 0, 0, 982, 983,
984, 1271, 986, 987, 988, 989, 990, 991, 992, 1272,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1274,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063,
1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103,
1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133,
1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295,
1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152,
1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0,
0, 0, 0, 1210, 1211, 0, 0, 283, 284, 0,
286, 287, 0, 0, 290, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1911, 0, 312, 0, 1420, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 321, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 27, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 520, 521, 522, 523,
1215, 525, 526, 527, 528, 529, 530, 531, 1216, 1217,
1218, 1219, 536, 537, 538, 539, 540, 1220, 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, 1221,
574, 575, 576, 1342, 578, 579, 580, 581, 582, 583,
584, 585, 586, 587, 588, 589, 590, 1223, 592, 593,
1224, 595, 596, 597, 598, 599, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
614, 1225, 616, 617, 618, 619, 1226, 621, 1227, 623,
1228, 625, 626, 627, 628, 629, 1229, 1230, 1231, 633,
634, 635, 636, 637, 638, 639, 640, 641, 642, 1233,
644, 645, 646, 647, 648, 649, 650, 651, 1234, 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,
1236, 685, 686, 687, 688, 689, 690, 691, 692, 1237,
694, 695, 696, 1238, 698, 699, 700, 701, 702, 703,
704, 705, 706, 707, 708, 1239, 710, 711, 1241, 1242,
714, 715, 0, 717, 718, 719, 720, 721, 722, 1244,
724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
744, 745, 0, 746, 747, 1245, 749, 0, 750, 0,
751, 752, 753, 1246, 755, 1247, 757, 758, 1248, 1249,
761, 762, 763, 764, 765, 766, 767, 1250, 769, 770,
771, 772, 773, 774, 775, 776, 0, 777, 778, 1252,
1253, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 1254, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 1255, 822, 1256, 824, 825, 826, 827, 828, 1257,
830, 831, 1258, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 1260, 858, 859,
860, 861, 862, 1261, 1262, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 1264, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 1265,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 1266,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 1267, 964, 965, 966, 967, 968,
969, 970, 971, 1268, 973, 1269, 975, 976, 977, 978,
979, 980, 1270, 0, 0, 0, 982, 983, 984, 1271,
986, 987, 988, 989, 990, 991, 992, 1272, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281,
1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283,
1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286,
1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145,
1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154,
1297, 1156, 1157, 1158, 0, 0, 0, 0, 0, 0,
0, 1210, 1211, 0, 0, -1068, -1068, -1068, -1068, 287,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1438, 312, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 321, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2494, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, -1243, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1382, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 520, 521, 522, 523, 1215, 525,
526, 527, 528, 529, 530, 531, 1216, 1217, 1218, 1219,
536, 537, 538, 539, 540, 1220, 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, 1221, 574, 575,
576, 1342, 578, 579, 580, 581, 582, 583, 584, 585,
586, 587, 588, 589, 590, 1223, 592, 593, 1224, 595,
596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 613, 614, 1225,
616, 617, 618, 619, 1226, 621, 1227, 623, 1228, 625,
626, 627, 628, 629, 1229, 1230, 1231, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 1233, 644, 645,
646, 647, 648, 649, 650, 651, 1234, 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, 1236, 685,
686, 687, 688, 689, 690, 691, 692, 1237, 694, 695,
696, 1238, 698, 699, 700, 701, 702, 703, 704, 705,
706, 707, 708, 1239, 710, 711, 1241, 1242, 714, 715,
0, 717, 718, 719, 720, 721, 722, 1244, 724, 725,
726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
0, 746, 747, 1245, 749, 0, 750, 0, 751, 752,
753, 1246, 755, 1247, 757, 758, 1248, 1249, 761, 762,
763, 764, 765, 766, 767, 1250, 769, 770, 771, 772,
773, 774, 775, 776, 0, 777, 778, 1252, 1253, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 1254, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 1255,
822, 1256, 824, 825, 826, 827, 828, 1257, 830, 831,
1258, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 1260, 858, 859, 860, 861,
862, 1261, 1262, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 1264, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 1265, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 1266, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 1267, 964, 965, 966, 967, 968, 969, 970,
971, 1268, 973, 1269, 975, 976, 977, 978, 979, 980,
1270, 0, 0, 0, 982, 983, 984, 1271, 986, 987,
988, 989, 990, 991, 992, 1272, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275,
1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288,
1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147,
1148, 2198, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156,
1157, 1158, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 0, 286, 287, 0, 0,
290, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1, 3546, 312,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 321, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
27, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 2198,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
0, 0, 0, 0, 0, 0, 0, 1210, 1211, 0,
0, 283, 284, 0, 286, 287, 0, 0, 290, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 312, 0, 0,
0, 0, 0, 0, 0, 0, 2582, 0, 0, 0,
321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3856, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2585, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3857, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
520, 521, 522, 523, 1215, 525, 526, 527, 528, 529,
530, 531, 1216, 1217, 1218, 1219, 536, 537, 538, 539,
540, 1220, 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, 1221, 574, 575, 576, 1342, 578, 579,
580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
590, 1223, 592, 593, 1224, 595, 596, 597, 598, 599,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 613, 614, 1225, 616, 617, 618, 619,
1226, 621, 1227, 623, 1228, 625, 626, 627, 628, 629,
1229, 1230, 1231, 633, 634, 635, 636, 637, 638, 639,
640, 641, 642, 1233, 644, 645, 646, 647, 648, 649,
650, 651, 1234, 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, 1236, 685, 686, 687, 688, 689,
690, 691, 692, 1237, 694, 695, 696, 1238, 698, 699,
700, 701, 702, 703, 704, 705, 706, 707, 708, 1239,
710, 711, 1241, 1242, 714, 715, 0, 717, 718, 719,
720, 721, 722, 1244, 724, 725, 726, 727, 728, 729,
730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
740, 741, 742, 743, 744, 745, 0, 746, 747, 1245,
749, 0, 750, 0, 751, 752, 753, 1246, 755, 1247,
757, 758, 1248, 1249, 761, 762, 763, 764, 765, 766,
767, 1250, 769, 770, 771, 772, 773, 774, 775, 776,
0, 777, 778, 1252, 1253, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 1254, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 1255, 822, 1256, 824, 825,
826, 827, 828, 1257, 830, 831, 1258, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 1260, 858, 859, 860, 861, 862, 1261, 1262, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 1264, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 1265, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 1266, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 1267, 964,
965, 966, 967, 968, 969, 970, 971, 1268, 973, 1269,
975, 976, 977, 978, 979, 980, 1270, 0, 0, 0,
982, 983, 984, 1271, 986, 987, 988, 989, 990, 991,
992, 1272, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061,
1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101,
1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131,
1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150,
1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0,
0, 0, 0, 0, 0, 1210, 1211, 0, 0, 283,
284, 0, 286, 287, 0, 0, 290, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1911, 0, 312, 0, 1420, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 321, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3558, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 520, 521,
522, 523, 1215, 525, 526, 527, 528, 529, 530, 531,
1216, 1217, 1218, 1219, 536, 537, 538, 539, 540, 1220,
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, 1221, 574, 575, 576, 1342, 578, 579, 580, 581,
582, 583, 584, 585, 586, 587, 588, 589, 590, 1223,
592, 593, 1224, 595, 596, 597, 598, 599, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 613, 614, 1225, 616, 617, 618, 619, 1226, 621,
1227, 623, 1228, 625, 626, 627, 628, 629, 1229, 1230,
1231, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 1233, 644, 645, 646, 647, 648, 649, 650, 651,
1234, 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, 1236, 685, 686, 687, 688, 689, 690, 691,
692, 1237, 694, 695, 696, 1238, 698, 699, 700, 701,
702, 703, 704, 705, 706, 707, 708, 1239, 710, 711,
1241, 1242, 714, 715, 0, 717, 718, 719, 720, 721,
722, 1244, 724, 725, 726, 727, 728, 729, 730, 731,
732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
742, 743, 744, 745, 0, 746, 747, 1245, 749, 0,
750, 0, 751, 752, 753, 1246, 755, 1247, 757, 758,
1248, 1249, 761, 762, 763, 764, 765, 766, 767, 1250,
769, 770, 771, 772, 773, 774, 775, 776, 0, 777,
778, 1252, 1253, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 1254, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 1255, 822, 1256, 824, 825, 826, 827,
828, 1257, 830, 831, 1258, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 1260,
858, 859, 860, 861, 862, 1261, 1262, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 1264, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 1265, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 1266, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 1267, 964, 965, 966,
967, 968, 969, 970, 971, 1268, 973, 1269, 975, 976,
977, 978, 979, 980, 1270, 0, 0, 0, 982, 983,
984, 1271, 986, 987, 988, 989, 990, 991, 992, 1272,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1274,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063,
1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103,
1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133,
1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295,
1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152,
1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0,
0, 0, 0, 1210, 1211, 0, 0, 283, 284, 0,
286, 287, 0, 0, 290, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 305, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1911, 0, 312, 0, 1420, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 321, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 520, 521, 522, 523,
1215, 525, 526, 527, 528, 529, 530, 531, 1216, 1217,
1218, 1219, 536, 537, 538, 539, 540, 1220, 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, 1221,
574, 575, 576, 1342, 578, 579, 580, 581, 582, 583,
584, 585, 586, 587, 588, 589, 590, 1223, 592, 593,
1224, 595, 596, 597, 598, 599, 600, 601, 602, 603,
604, 605, 606, 607, 608, 609, 610, 611, 612, 613,
614, 1225, 616, 617, 618, 619, 1226, 621, 1227, 623,
1228, 625, 626, 627, 628, 629, 1229, 1230, 1231, 633,
634, 635, 636, 637, 638, 639, 640, 641, 642, 1233,
644, 645, 646, 647, 648, 649, 650, 651, 1234, 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,
1236, 685, 686, 687, 688, 689, 690, 691, 692, 1237,
694, 695, 696, 1238, 698, 699, 700, 701, 702, 703,
704, 705, 706, 707, 708, 1239, 710, 711, 1241, 1242,
714, 715, 0, 717, 718, 719, 720, 721, 722, 1244,
724, 725, 726, 727, 728, 729, 730, 731, 732, 733,
734, 735, 736, 737, 738, 739, 740, 741, 742, 743,
744, 745, 0, 746, 747, 1245, 749, 0, 750, 0,
751, 752, 753, 1246, 755, 1247, 757, 758, 1248, 1249,
761, 762, 763, 764, 765, 766, 767, 1250, 769, 770,
771, 772, 773, 774, 775, 776, 0, 777, 778, 1252,
1253, 781, 782, 783, 784, 785, 786, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 1254, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 1255, 822, 1256, 824, 825, 826, 827, 828, 1257,
830, 831, 1258, 833, 834, 835, 836, 837, 838, 839,
840, 841, 842, 843, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 1260, 858, 859,
860, 861, 862, 1261, 1262, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 1264, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 1265,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 0, 1266,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 1267, 964, 965, 966, 967, 968,
969, 970, 971, 1268, 973, 1269, 975, 976, 977, 978,
979, 980, 1270, 0, 0, 0, 982, 983, 984, 1271,
986, 987, 988, 989, 990, 991, 992, 1272, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025,
1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035,
1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045,
1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055,
1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281,
1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283,
1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286,
1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291,
1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115,
1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125,
1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135,
1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145,
1296, 1147, 1148, 1207, 1149, 1150, 1151, 1152, 1153, 1154,
1297, 1156, 1157, 1158, 1208, 1209, 0, 0, 0, 0,
0, 1210, 1211, 0, 0, 283, 284, 0, 286, 287,
0, 0, 290, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 312, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 321, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 521, 522, 523, 1215, 525,
526, 527, 528, 529, 530, 531, 1216, 1217, 1218, 1219,
536, 537, 538, 539, 540, 1220, 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, 1221, 574, 575,
576, 1342, 578, 579, 580, 581, 582, 583, 584, 585,
586, 587, 588, 589, 590, 1223, 592, 593, 1224, 595,
596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 613, 614, 1225,
616, 617, 618, 619, 1226, 621, 1227, 623, 1228, 625,
626, 627, 628, 629, 1229, 1230, 1231, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 1233, 644, 645,
646, 647, 648, 649, 650, 651, 1234, 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, 1236, 685,
686, 687, 688, 689, 690, 691, 692, 1237, 694, 695,
696, 1238, 698, 699, 700, 701, 702, 703, 704, 705,
706, 707, 708, 1239, 2413, 711, 1241, 1242, 714, 715,
1243, 717, 718, 719, 720, 721, 722, 1244, 724, 725,
726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
0, 746, 747, 1245, 749, 0, 750, 0, 751, 752,
753, 1246, 755, 1247, 757, 758, 1248, 1249, 761, 762,
763, 764, 765, 766, 767, 1250, 769, 770, 771, 772,
773, 774, 775, 776, 0, 777, 778, 1252, 1253, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 1254, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 1255,
822, 1256, 824, 825, 826, 827, 828, 1257, 830, 831,
1258, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 1260, 858, 859, 860, 861,
862, 1261, 1262, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 0,
892, 1264, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 1265, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 1266, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 1267, 964, 965, 966, 967, 968, 969, 970,
971, 1268, 973, 1269, 975, 976, 977, 978, 979, 980,
1270, 0, 0, 0, 982, 983, 984, 1271, 986, 987,
988, 989, 990, 991, 992, 1272, 994, 995, 996, 997,
998, 999, 1000, 1001, 2414, 1274, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275,
1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 1285,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288,
1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147,
1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156,
1157, 1158, 1541, 1542, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2433, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
0, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 1341, 2674, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 0, 286, 287, 0, 0,
290, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 312,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 321, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2675, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 0,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
1341, 2674, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2675, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
2679, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 2198, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
4953, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4954, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1413,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 1420, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1539, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
0, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 1541, 1542, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 0, 286, 287, 0, 0,
290, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 312,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 321, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
0, 0, 0, 0, 0, 0, 0, 1210, 1211, 0,
0, 283, 284, 0, 286, 287, 0, 0, 290, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 312, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1762, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
520, 521, 522, 523, 1215, 525, 526, 527, 528, 529,
530, 531, 1216, 1217, 1218, 1219, 536, 537, 538, 539,
540, 1220, 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, 1221, 574, 575, 576, 1342, 578, 579,
580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
590, 1223, 592, 593, 1224, 595, 596, 597, 598, 599,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 613, 614, 1225, 616, 617, 618, 619,
1226, 621, 1227, 623, 1228, 625, 626, 627, 628, 629,
1229, 1230, 1231, 633, 634, 635, 636, 637, 638, 639,
640, 641, 642, 1233, 644, 645, 646, 647, 648, 649,
650, 651, 1234, 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, 1236, 685, 686, 687, 688, 689,
690, 691, 692, 1237, 694, 695, 696, 1238, 698, 699,
700, 701, 702, 703, 704, 705, 706, 707, 708, 1239,
710, 711, 1241, 1242, 714, 715, 0, 717, 718, 719,
720, 721, 722, 1244, 724, 725, 726, 727, 728, 729,
730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
740, 741, 742, 743, 744, 745, 0, 746, 747, 1245,
749, 0, 750, 0, 751, 752, 753, 1246, 755, 1247,
757, 758, 1248, 1249, 761, 762, 763, 764, 765, 766,
767, 1250, 769, 770, 771, 772, 773, 774, 775, 776,
0, 777, 778, 1252, 1253, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 1254, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 1255, 822, 1256, 824, 825,
826, 827, 828, 1257, 830, 831, 1258, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 1260, 858, 859, 860, 861, 862, 1261, 1262, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 1264, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 1265, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 1266, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 1267, 964,
965, 966, 967, 968, 969, 970, 971, 1268, 973, 1269,
975, 976, 977, 978, 979, 980, 1270, 0, 0, 0,
982, 983, 984, 1271, 986, 987, 988, 989, 990, 991,
992, 1272, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061,
1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101,
1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131,
1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1294, 1295, 1144, 1145, 1296, 1147, 1148, 0, 1149, 1150,
1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 1805, 1939,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
2177, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 2527, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2537, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2546, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2567, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 2198, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3153, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 3406, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 0, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 1352, 3519, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1210, 1211, 0, 0, 283, 284, 0, 286, 287,
0, 0, 290, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
305, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 312, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 321, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 520, 521, 522, 523, 1215, 525,
526, 527, 528, 529, 530, 531, 1216, 1217, 1218, 1219,
536, 537, 538, 539, 540, 1220, 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, 1221, 574, 575,
576, 1342, 578, 579, 580, 581, 582, 583, 584, 585,
586, 587, 588, 589, 590, 1223, 592, 593, 1224, 595,
596, 597, 598, 599, 600, 601, 602, 603, 604, 605,
606, 607, 608, 609, 610, 611, 612, 613, 614, 1225,
616, 617, 618, 619, 1226, 621, 1227, 623, 1228, 625,
626, 627, 628, 629, 1229, 1230, 1231, 633, 634, 635,
636, 637, 638, 639, 640, 641, 642, 1233, 644, 645,
646, 647, 648, 649, 650, 651, 1234, 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, 1236, 685,
686, 687, 688, 689, 690, 691, 692, 1237, 694, 695,
696, 1238, 698, 699, 700, 701, 702, 703, 704, 705,
706, 707, 708, 1239, 710, 711, 1241, 1242, 714, 715,
0, 717, 718, 719, 720, 721, 722, 1244, 724, 725,
726, 727, 728, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 739, 740, 741, 742, 743, 744, 745,
0, 746, 747, 1245, 749, 0, 750, 0, 751, 752,
753, 1246, 755, 1247, 757, 758, 1248, 1249, 761, 762,
763, 764, 765, 766, 767, 1250, 769, 770, 771, 772,
773, 774, 775, 776, 0, 777, 778, 1252, 1253, 781,
782, 783, 784, 785, 786, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 1254, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 1255,
822, 1256, 824, 825, 826, 827, 828, 1257, 830, 831,
1258, 833, 834, 835, 836, 837, 838, 839, 840, 841,
842, 843, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 1260, 858, 859, 860, 861,
862, 1261, 1262, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 1264, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 1265, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 0, 1266, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 1267, 964, 965, 966, 967, 968, 969, 970,
971, 1268, 973, 1269, 975, 976, 977, 978, 979, 980,
1270, 0, 0, 0, 982, 983, 984, 1271, 986, 987,
988, 989, 990, 991, 992, 1272, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027,
1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037,
1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275,
1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057,
1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282,
1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0,
1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087,
1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288,
1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107,
1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117,
1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127,
1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137,
1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147,
1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156,
1157, 1158, 0, 0, 0, 0, 0, 0, 0, 1210,
1211, 0, 0, 283, 284, 0, 286, 287, 0, 0,
290, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 305, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3604, 0, 312,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 321, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 520, 521, 522, 523, 1215, 525, 526, 527,
528, 529, 530, 531, 1216, 1217, 1218, 1219, 536, 537,
538, 539, 540, 1220, 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, 1221, 574, 575, 576, 1342,
578, 579, 580, 581, 582, 583, 584, 585, 586, 587,
588, 589, 590, 1223, 592, 593, 1224, 595, 596, 597,
598, 599, 600, 601, 602, 603, 604, 605, 606, 607,
608, 609, 610, 611, 612, 613, 614, 1225, 616, 617,
618, 619, 1226, 621, 1227, 623, 1228, 625, 626, 627,
628, 629, 1229, 1230, 1231, 633, 634, 635, 636, 637,
638, 639, 640, 641, 642, 1233, 644, 645, 646, 647,
648, 649, 650, 651, 1234, 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, 1236, 685, 686, 687,
688, 689, 690, 691, 692, 1237, 694, 695, 696, 1238,
698, 699, 700, 701, 702, 703, 704, 705, 706, 707,
708, 1239, 710, 711, 1241, 1242, 714, 715, 0, 717,
718, 719, 720, 721, 722, 1244, 724, 725, 726, 727,
728, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 739, 740, 741, 742, 743, 744, 745, 0, 746,
747, 1245, 749, 0, 750, 0, 751, 752, 753, 1246,
755, 1247, 757, 758, 1248, 1249, 761, 762, 763, 764,
765, 766, 767, 1250, 769, 770, 771, 772, 773, 774,
775, 776, 0, 777, 778, 1252, 1253, 781, 782, 783,
784, 785, 786, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
1254, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 1255, 822, 1256,
824, 825, 826, 827, 828, 1257, 830, 831, 1258, 833,
834, 835, 836, 837, 838, 839, 840, 841, 842, 843,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 1260, 858, 859, 860, 861, 862, 1261,
1262, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 1264,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 1265, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 0, 1266, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
1267, 964, 965, 966, 967, 968, 969, 970, 971, 1268,
973, 1269, 975, 976, 977, 978, 979, 980, 1270, 0,
0, 0, 982, 983, 984, 1271, 986, 987, 988, 989,
990, 991, 992, 1272, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029,
1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039,
1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277,
1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059,
1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069,
1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079,
1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089,
1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099,
1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109,
1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119,
1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292,
1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139,
1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341,
1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158,
0, 0, 0, 0, 0, 0, 0, 1210, 1211, 0,
0, 283, 284, 0, 286, 287, 0, 0, 290, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 305, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3612, 0, 312, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
321, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
520, 521, 522, 523, 1215, 525, 526, 527, 528, 529,
530, 531, 1216, 1217, 1218, 1219, 536, 537, 538, 539,
540, 1220, 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, 1221, 574, 575, 576, 1342, 578, 579,
580, 581, 582, 583, 584, 585, 586, 587, 588, 589,
590, 1223, 592, 593, 1224, 595, 596, 597, 598, 599,
600, 601, 602, 603, 604, 605, 606, 607, 608, 609,
610, 611, 612, 613, 614, 1225, 616, 617, 618, 619,
1226, 621, 1227, 623, 1228, 625, 626, 627, 628, 629,
1229, 1230, 1231, 633, 634, 635, 636, 637, 638, 639,
640, 641, 642, 1233, 644, 645, 646, 647, 648, 649,
650, 651, 1234, 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, 1236, 685, 686, 687, 688, 689,
690, 691, 692, 1237, 694, 695, 696, 1238, 698, 699,
700, 701, 702, 703, 704, 705, 706, 707, 708, 1239,
710, 711, 1241, 1242, 714, 715, 0, 717, 718, 719,
720, 721, 722, 1244, 724, 725, 726, 727, 728, 729,
730, 731, 732, 733, 734, 735, 736, 737, 738, 739,
740, 741, 742, 743, 744, 745, 0, 746, 747, 1245,
749, 0, 750, 0, 751, 752, 753, 1246, 755, 1247,
757, 758, 1248, 1249, 761, 762, 763, 764, 765, 766,
767, 1250, 769, 770, 771, 772, 773, 774, 775, 776,
0, 777, 778, 1252, 1253, 781, 782, 783, 784, 785,
786, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 1254, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 1255, 822, 1256, 824, 825,
826, 827, 828, 1257, 830, 831, 1258, 833, 834, 835,
836, 837, 838, 839, 840, 841, 842, 843, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 1260, 858, 859, 860, 861, 862, 1261, 1262, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 1264, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 1265, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 0, 1266, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 1267, 964,
965, 966, 967, 968, 969, 970, 971, 1268, 973, 1269,
975, 976, 977, 978, 979, 980, 1270, 0, 0, 0,
982, 983, 984, 1271, 986, 987, 988, 989, 990, 991,
992, 1272, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031,
1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041,
1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051,
1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061,
1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071,
1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081,
1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091,
1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101,
1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111,
1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121,
1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131,
1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141,
1294, 1295, 1144, 1145, 1296, 1147, 1148, 1805, 1149, 1150,
1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0,
0, 0, 0, 0, 0, 1210, 1211, 0, 0, 283,
284, 0, 286, 287, 0, 0, 290, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 305, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4085, 312, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 321, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 520, 521,
522, 523, 1215, 525, 526, 527, 528, 529, 530, 531,
1216, 1217, 1218, 1219, 536, 537, 538, 539, 540, 1220,
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, 1221, 574, 575, 576, 1342, 578, 579, 580, 581,
582, 583, 584, 585, 586, 587, 588, 589, 590, 1223,
592, 593, 1224, 595, 596, 597, 598, 599, 600, 601,
602, 603, 604, 605, 606, 607, 608, 609, 610, 611,
612, 613, 614, 1225, 616, 617, 618, 619, 1226, 621,
1227, 623, 1228, 625, 626, 627, 628, 629, 1229, 1230,
1231, 633, 634, 635, 636, 637, 638, 639, 640, 641,
642, 1233, 644, 645, 646, 647, 648, 649, 650, 651,
1234, 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, 1236, 685, 686, 687, 688, 689, 690, 691,
692, 1237, 694, 695, 696, 1238, 698, 699, 700, 701,
702, 703, 704, 705, 706, 707, 708, 1239, 710, 711,
1241, 1242, 714, 715, 0, 717, 718, 719, 720, 721,
722, 1244, 724, 725, 726, 727, 728, 729, 730, 731,
732, 733, 734, 735, 736, 737, 738, 739, 740, 741,
742, 743, 744, 745, 0, 746, 747, 1245, 749, 0,
750, 0, 751, 752, 753, 1246, 755, 1247, 757, 758,
1248, 1249, 761, 762, 763, 764, 765, 766, 767, 1250,
769, 770, 771, 772, 773, 774, 775, 776, 0, 777,
778, 1252, 1253, 781, 782, 783, 784, 785, 786, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 1254, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 1255, 822, 1256, 824, 825, 826, 827,
828, 1257, 830, 831, 1258, 833, 834, 835, 836, 837,
838, 839, 840, 841, 842, 843, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 1260,
858, 859, 860, 861, 862, 1261, 1262, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 1264, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 1265, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
0, 1266, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 1267, 964, 965, 966,
967, 968, 969, 970, 971, 1268, 973, 1269, 975, 976,
977, 978, 979, 980, 1270, 0, 0, 0, 982, 983,
984, 1271, 986, 987, 988, 989, 990, 991, 992, 1272,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1274,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023,
1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033,
1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043,
1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053,
1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063,
1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073,
1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083,
1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093,
1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103,
1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113,
1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123,
1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133,
1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295,
1144, 1145, 1296, 1147, 1148, 0, 1149, 1150, 1151, 1152,
1153, 1154, 1297, 1156, 1157, 1158, 1341, 0, 0, 0,
0, 0, 0, 0, 0, 4168, 0, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1805, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4715, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 2198, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 4953, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1352, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 1805, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1207, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 1887, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1888, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 1889, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
0, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 2029, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 2093, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 2169, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 2198, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2508,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2509, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2510, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2511,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2512, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 2513, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 3399, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
3878, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 4440, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
283, 284, 0, 286, 287, 0, 0, 290, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 1207, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 1887, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 283, 284,
0, 286, 287, 0, 0, 290, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 0, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3086,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2509, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2510, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2512, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 520, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 3087, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3091, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2509, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2510, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2512, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 520, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 2513,
989, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
1341, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3588, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2509, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2510, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2512, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 520, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3593, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2509,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2510, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2512, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 3087, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 0, 0, 0,
0, 0, 0, 0, 1210, 1211, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 305, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 312, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 321, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 4031, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2509, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2510, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2512,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 520, 521, 522,
523, 1215, 525, 526, 527, 528, 529, 530, 531, 1216,
1217, 1218, 1219, 536, 537, 538, 539, 540, 1220, 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,
1221, 574, 575, 576, 1342, 578, 579, 580, 581, 582,
583, 584, 585, 586, 587, 588, 589, 590, 1223, 592,
593, 1224, 595, 596, 597, 598, 599, 600, 601, 602,
603, 604, 605, 606, 607, 608, 609, 610, 611, 612,
613, 614, 1225, 616, 617, 618, 619, 1226, 621, 1227,
623, 1228, 625, 626, 627, 628, 629, 1229, 1230, 1231,
633, 634, 635, 636, 637, 638, 639, 640, 641, 642,
1233, 644, 645, 646, 647, 648, 649, 650, 651, 1234,
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, 1236, 685, 686, 687, 688, 689, 690, 691, 692,
1237, 694, 695, 696, 1238, 698, 699, 700, 701, 702,
703, 704, 705, 706, 707, 708, 1239, 710, 711, 1241,
1242, 714, 715, 0, 717, 718, 719, 720, 721, 722,
1244, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 744, 745, 0, 746, 747, 1245, 749, 0, 750,
0, 751, 752, 753, 1246, 755, 1247, 757, 758, 1248,
1249, 761, 762, 763, 764, 765, 766, 767, 1250, 769,
770, 771, 772, 773, 774, 775, 776, 0, 777, 778,
1252, 1253, 781, 782, 783, 784, 785, 786, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 1254, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 1255, 822, 1256, 824, 825, 826, 827, 828,
1257, 830, 831, 1258, 833, 834, 835, 836, 837, 838,
839, 840, 841, 842, 843, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 1260, 858,
859, 860, 861, 862, 1261, 1262, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 1264, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
1265, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 0,
1266, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 1267, 964, 965, 966, 967,
968, 969, 970, 971, 1268, 973, 1269, 975, 976, 977,
978, 979, 980, 1270, 0, 0, 0, 982, 983, 984,
1271, 986, 987, 988, 989, 990, 991, 992, 1272, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1274, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024,
1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034,
1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044,
1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054,
1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280,
1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074,
1283, 1284, 0, 1078, 1079, 1080, 1081, 1082, 1083, 1084,
1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094,
1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290,
1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114,
1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124,
1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293,
1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144,
1145, 1296, 1147, 1148, 1207, 1149, 1150, 1151, 1152, 1153,
1154, 1297, 1156, 1157, 1158, 0, 0, 0, 0, 0,
0, 0, 1210, 1211, 0, 0, 283, 284, 0, 286,
287, 0, 0, 290, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 305, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 312, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 321, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 521, 522, 523, 1215,
525, 526, 527, 528, 529, 530, 531, 1216, 1217, 1218,
1219, 536, 537, 538, 539, 540, 1220, 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, 1221, 574,
575, 576, 1342, 578, 579, 580, 581, 582, 583, 584,
585, 586, 587, 588, 589, 590, 1223, 592, 593, 1224,
595, 596, 597, 598, 599, 600, 601, 602, 603, 604,
605, 606, 607, 608, 609, 610, 611, 612, 613, 614,
1225, 616, 617, 618, 619, 1226, 621, 1227, 623, 1228,
625, 626, 627, 628, 629, 1229, 1230, 1231, 633, 634,
635, 636, 637, 638, 639, 640, 641, 642, 1233, 644,
645, 646, 647, 648, 649, 650, 651, 1234, 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, 1236,
685, 686, 687, 688, 689, 690, 691, 692, 1237, 694,
695, 696, 1238, 698, 699, 700, 701, 702, 703, 704,
705, 706, 707, 708, 1239, 710, 711, 1241, 1242, 714,
715, 0, 717, 718, 719, 720, 721, 722, 1244, 724,
725, 726, 727, 728, 729, 730, 731, 732, 733, 734,
735, 736, 737, 738, 739, 740, 741, 742, 743, 744,
745, 0, 746, 747, 1245, 749, 0, 750, 0, 751,
752, 753, 1246, 755, 1247, 757, 758, 1248, 1249, 761,
762, 763, 764, 765, 766, 767, 1250, 769, 770, 771,
772, 773, 774, 775, 776, 0, 777, 778, 1252, 1253,
781, 782, 783, 784, 785, 786, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 1254, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
1255, 822, 1256, 824, 825, 826, 827, 828, 1257, 830,
831, 1258, 833, 834, 835, 836, 837, 838, 839, 840,
841, 842, 843, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 1260, 858, 859, 860,
861, 862, 1261, 1262, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
0, 892, 1264, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 1265, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 0, 1266, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 1267, 964, 965, 966, 967, 968, 969,
970, 971, 1268, 973, 1269, 975, 976, 977, 978, 979,
980, 1270, 0, 0, 0, 982, 983, 984, 1271, 986,
987, 988, 989, 990, 991, 992, 1272, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1274, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026,
1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036,
1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046,
1275, 1276, 1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056,
1057, 1058, 1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066,
1282, 1068, 1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284,
0, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086,
1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287,
1288, 1289, 1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106,
1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116,
1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126,
1127, 1128, 1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136,
1137, 1138, 1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296,
1147, 1148, 1207, 1149, 1150, 1151, 1152, 1153, 1154, 1297,
1156, 1157, 1158, 0, 0, 0, 0, 0, 0, 0,
1210, 1211, 0, 0, 283, 284, 0, 286, 287, 0,
0, 290, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 305,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
312, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 321, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 521, 522, 523, 1215, 525, 526,
527, 528, 529, 530, 531, 1216, 1217, 1218, 1219, 536,
537, 538, 539, 540, 1220, 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, 1221, 574, 575, 576,
1342, 578, 579, 580, 581, 582, 583, 584, 585, 586,
587, 588, 589, 590, 1223, 592, 593, 1224, 595, 596,
597, 598, 599, 600, 601, 602, 603, 604, 605, 606,
607, 608, 609, 610, 611, 612, 613, 614, 1225, 616,
617, 618, 619, 1226, 621, 1227, 623, 1228, 625, 626,
627, 628, 629, 1229, 1230, 1231, 633, 634, 635, 636,
637, 638, 639, 640, 641, 642, 1233, 644, 645, 646,
647, 648, 649, 650, 651, 1234, 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, 1236, 685, 686,
687, 688, 689, 690, 691, 692, 1237, 694, 695, 696,
1238, 698, 699, 700, 701, 702, 703, 704, 705, 706,
707, 708, 1239, 710, 711, 1241, 1242, 714, 715, 0,
717, 718, 719, 720, 721, 722, 1244, 724, 725, 726,
727, 728, 729, 730, 731, 732, 733, 734, 735, 736,
737, 738, 739, 740, 741, 742, 743, 744, 745, 0,
746, 747, 1245, 749, 0, 750, 0, 751, 752, 753,
1246, 755, 1247, 757, 758, 1248, 1249, 761, 762, 763,
764, 765, 766, 767, 1250, 769, 770, 771, 772, 773,
774, 775, 776, 0, 777, 778, 1252, 1253, 781, 782,
783, 784, 785, 786, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 1254, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 1255, 822,
1256, 824, 825, 826, 827, 828, 1257, 830, 831, 1258,
833, 834, 835, 836, 837, 838, 839, 840, 841, 842,
843, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 1260, 858, 859, 860, 861, 862,
1261, 1262, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 0, 892,
1264, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 1265, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 0, 1266, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 1267, 964, 965, 966, 967, 968, 969, 970, 971,
1268, 973, 1269, 975, 976, 977, 978, 979, 980, 1270,
0, 0, 0, 982, 983, 984, 1271, 986, 987, 988,
1865, 990, 991, 992, 1272, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028,
1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038,
1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276,
1277, 1278, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058,
1059, 1279, 1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068,
1069, 1070, 1071, 1072, 1073, 1074, 1283, 1284, 0, 1078,
1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088,
1089, 1090, 1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289,
1099, 1100, 1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108,
1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118,
1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128,
1292, 1130, 1131, 1132, 1133, 1293, 1135, 1136, 1137, 1138,
1139, 1140, 1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148,
1207, 1149, 1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157,
1158, 0, 0, 0, 0, 0, 0, 0, 1210, 1211,
0, 0, 283, 284, 0, 286, 287, 0, 0, 290,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 305, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 312, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 321, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 521, 522, 523, 1215, 525, 526, 527, 528,
529, 530, 531, 1216, 1217, 1218, 1219, 536, 537, 538,
539, 540, 1220, 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, 1221, 574, 575, 576, 1342, 578,
579, 580, 581, 582, 583, 584, 585, 586, 587, 588,
589, 590, 1223, 592, 593, 1224, 595, 596, 597, 598,
599, 600, 601, 602, 603, 604, 605, 606, 607, 608,
609, 610, 611, 612, 613, 614, 1225, 616, 617, 618,
619, 1226, 621, 1227, 623, 1228, 625, 626, 627, 628,
629, 1229, 1230, 1231, 633, 634, 635, 636, 637, 638,
639, 640, 641, 642, 1233, 644, 645, 646, 647, 648,
649, 650, 651, 1234, 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, 1236, 685, 686, 687, 688,
689, 690, 691, 692, 1237, 694, 695, 696, 1238, 698,
699, 700, 701, 702, 703, 704, 705, 706, 707, 708,
1239, 710, 711, 1241, 1242, 714, 715, 0, 717, 718,
719, 720, 721, 722, 1244, 724, 725, 726, 727, 728,
729, 730, 731, 732, 733, 734, 735, 736, 737, 738,
739, 740, 741, 742, 743, 744, 745, 0, 746, 747,
1245, 749, 0, 750, 0, 751, 752, 753, 1246, 755,
1247, 757, 758, 1248, 1249, 761, 762, 763, 764, 765,
766, 767, 1250, 769, 770, 771, 772, 773, 774, 775,
776, 0, 777, 778, 1252, 1253, 781, 782, 783, 784,
785, 786, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 1254,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 1255, 822, 1256, 824,
825, 826, 827, 828, 1257, 830, 831, 1258, 833, 834,
835, 836, 837, 838, 839, 840, 841, 842, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 1260, 858, 859, 860, 861, 862, 1261, 1262,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 0, 892, 1264, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 1265, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 0, 1266, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 1267,
964, 965, 966, 967, 968, 969, 970, 971, 1268, 973,
1269, 975, 976, 977, 978, 979, 980, 1270, 0, 0,
0, 982, 983, 984, 1271, 986, 987, 988, 989, 990,
991, 992, 1272, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030,
1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040,
1041, 1042, 1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278,
1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279,
1061, 1062, 1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070,
1071, 1072, 1073, 1074, 1283, 1284, 0, 1078, 1079, 1080,
1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090,
1091, 1092, 1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100,
1101, 1102, 1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110,
1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120,
1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130,
1131, 1132, 1133, 1293, 3850, 1136, 1137, 1138, 1139, 1140,
1141, 1294, 1295, 1144, 1145, 1296, 1147, 1148, 1341, 1149,
1150, 1151, 1152, 1153, 1154, 1297, 1156, 1157, 1158, 0,
0, 0, 0, 0, 0, 0, 1210, 1211, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 305, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 312, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 321,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2494, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 520,
521, 522, 523, 1215, 525, 526, 527, 528, 529, 530,
531, 1216, 1217, 1218, 1219, 536, 537, 538, 539, 540,
1220, 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, 1221, 574, 575, 576, 1342, 578, 579, 580,
581, 582, 583, 584, 585, 586, 587, 588, 589, 590,
1223, 592, 593, 1224, 595, 596, 597, 598, 599, 600,
601, 602, 603, 604, 605, 606, 607, 608, 609, 610,
611, 612, 613, 614, 1225, 616, 617, 618, 619, 1226,
621, 1227, 623, 1228, 625, 626, 627, 628, 629, 1229,
1230, 1231, 633, 634, 635, 636, 637, 638, 639, 640,
641, 642, 1233, 644, 645, 646, 647, 648, 649, 650,
651, 1234, 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, 1236, 685, 686, 687, 688, 689, 690,
691, 692, 1237, 694, 695, 696, 1238, 698, 699, 700,
701, 702, 703, 704, 705, 706, 707, 708, 1239, 710,
711, 1241, 1242, 714, 715, 0, 717, 718, 719, 720,
721, 722, 1244, 724, 725, 726, 727, 728, 729, 730,
731, 732, 733, 734, 735, 736, 737, 738, 739, 740,
741, 742, 743, 744, 745, 0, 746, 747, 1245, 749,
0, 750, 0, 751, 752, 753, 1246, 755, 1247, 757,
758, 1248, 1249, 761, 762, 763, 764, 765, 766, 767,
1250, 769, 770, 771, 772, 773, 774, 775, 776, 0,
777, 778, 1252, 1253, 781, 782, 783, 784, 785, 786,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 1254, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 1255, 822, 1256, 824, 825, 826,
827, 828, 1257, 830, 831, 1258, 833, 834, 835, 836,
837, 838, 839, 840, 841, 842, 843, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
1260, 858, 859, 860, 861, 862, 1261, 1262, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 1264, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 1265, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 0, 1266, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 1267, 964, 965,
966, 967, 968, 969, 970, 971, 1268, 973, 1269, 975,
976, 977, 978, 979, 980, 1270, 0, 0, 0, 982,
983, 984, 1271, 986, 987, 988, 989, 990, 991, 992,
1272, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1274, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022,
1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032,
1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042,
1043, 1044, 1045, 1046, 1275, 1276, 1277, 1278, 1051, 1052,
1053, 1054, 1055, 1056, 1057, 1058, 1059, 1279, 1061, 1062,
1063, 1280, 1281, 1066, 1282, 1068, 1069, 1070, 1071, 1072,
1073, 1074, 1283, 1284, 0, 1078, 1079, 1080, 1081, 1082,
1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092,
1093, 1094, 1286, 1287, 1288, 1289, 1099, 1100, 1101, 1102,
1103, 1290, 1291, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1292, 1130, 1131, 1132,
1133, 1293, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1294,
1295, 1144, 1145, 1296, 1147, 1148, 0, 1149, 1150, 1151,
1152, 1153, 1154, 1297, 1156, 1157, 1158, 285, 0, 0,
288, 1608, 0, 1609, 292, 293, 0, 0, 294, 295,
0, 296, 297, 298, 0, 1610, 300, 0, 301, 302,
303, 304, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 308, 1611, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1600, 316, 1612, 1613, 0,
319, 0, 320, 0, 0, 0, 322, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 329, 330, 0, 331, 332, 333, 334,
335, 336, 337, 338, 0, 339, 340, 341, 342, 343,
1614, 345, 346, 347, 348, 349, 1615, 351, 1616, 1617,
1618, 1619, 356, 1620, 358, 359, 360, 361, 362, 363,
364, 1621, 366, 367, 368, 369, 370, 0, 371, 372,
373, 374, 375, 376, 377, 378, 1622, 380, 381, 382,
383, 384, 385, 386, 387, 388, 0, 389, 390, 391,
392, 393, 394, 395, 396, 397, 1623, 399, 400, 401,
402, 403, 1624, 405, 406, 407, 408, 409, 410, 411,
412, 413, 414, 415, 416, 0, 417, 418, 419, 420,
421, 1625, 1626, 424, 425, 426, 427, 428, 429, 430,
1627, 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, 1628, 1629, 464, 465, 466, 467, 468, 469, 1630,
471, 472, 0, 473, 474, 475, 476, 477, 478, 479,
480, 481, 482, 483, 484, 485, 0, 486, 487, 488,
489, 490, 491, 492, 493, 494, 495, 496, 0, 497,
498, 0, 499, 500, 501, 502, 503, 504, 1631, 1632,
1633, 1634, 509, 510, 511, 512, 513, 514, 515, 516,
517, 518, 519
};
static const yytype_int16 yycheck[] =
{
19, 28, 0, 3, 4, 5, 6, 7, 245, 85,
28, 1298, 88, 28, 29, 306, 307, 85, 1907, 310,
88, 97, 217, 41, 0, 1, 317, 1977, 1798, 97,
313, 1, 1645, 41, 1201, 1550, 1649, 1364, 1323, 219,
1653, 2011, 203, 2546, 1329, 1669, 1331, 2057, 1988, 1334,
3150, 1991, 1772, 1993, 1864, 2106, 2344, 2126, 3146, 102,
3563, 2712, 2072, 2711, 3309, 3310, 3311, 39, 2822, 2032,
2903, 2034, 3033, 2145, 2125, 2126, 1920, 2045, 2046, 2750,
2728, 2752, 1204, 1945, 1946, 1720, 1721, 1722, 1723, 1724,
1725, 1726, 2011, 1484, 1956, 1957, 1958, 1959, 1960, 1981,
2749, 2750, 2157, 2752, 1484, 1967, 1968, 1969, 1970, 1971,
1484, 1973, 2080, 1975, 1976, 3692, 1484, 1480, 3, 3400,
2640, 1983, 1984, 1911, 5, 24, 102, 3032, 1640, 1907,
24, 2099, 2100, 2101, 2102, 2103, 24, 2083, 1926, 228,
229, 230, 9, 1655, 1656, 12, 2092, 1421, 1422, 1423,
1424, 79, 1426, 1427, 38, 3831, 2686, 3, 2121, 2689,
2123, 32, 175, 3625, 2590, 1677, 2271, 2272, 2273, 212,
204, 238, 4, 2505, 2506, 2507, 24, 244, 184, 246,
2606, 175, 4, 1695, 79, 2129, 2025, 1819, 1820, 9,
2134, 24, 12, 2591, 237, 1827, 2129, 24, 3531, 2143,
319, 2134, 4102, 2601, 1719, 2149, 2604, 41, 4085, 2153,
2143, 342, 2537, 2794, 298, 2745, 2149, 1945, 347, 1851,
2153, 2546, 3741, 3742, 2506, 2507, 342, 2757, 1956, 1957,
1441, 2143, 210, 298, 303, 163, 1447, 1448, 1449, 1450,
1451, 2153, 2567, 1454, 1455, 1456, 1457, 1458, 1976, 1460,
2081, 1462, 1463, 203, 1465, 2857, 1984, 2859, 213, 3213,
3214, 174, 281, 282, 84, 85, 1477, 1478, 163, 51,
52, 53, 54, 55, 56, 171, 172, 59, 4104, 49,
299, 259, 37, 38, 39, 40, 41, 3755, 342, 203,
454, 2122, 311, 2124, 298, 2528, 315, 2159, 37, 38,
39, 40, 41, 247, 1209, 203, 211, 220, 1338, 353,
175, 137, 138, 3565, 423, 211, 269, 2790, 49, 203,
1808, 1809, 4081, 171, 172, 80, 174, 602, 176, 307,
524, 211, 3, 3318, 248, 311, 59, 203, 211, 304,
188, 311, 79, 298, 408, 2514, 2515, 451, 2517, 4459,
2519, 301, 175, 3366, 3367, 609, 50, 608, 4427, 3827,
4, 5, 6, 7, 248, 9, 10, 11, 12, 319,
14, 200, 220, 87, 4, 5, 6, 7, 1991, 9,
10, 11, 12, 534, 14, 298, 370, 190, 79, 176,
1557, 2501, 342, 435, 322, 3857, 3872, 325, 1303, 24,
451, 188, 3424, 379, 797, 319, 626, 3546, 304, 1576,
1577, 579, 325, 370, 187, 602, 49, 2173, 2174, 79,
79, 319, 66, 373, 304, 765, 484, 322, 342, 487,
539, 3712, 2152, 361, 1556, 319, 66, 325, 203, 543,
558, 628, 271, 272, 342, 79, 401, 3049, 220, 24,
298, 234, 2839, 2840, 90, 24, 556, 808, 342, 832,
451, 213, 310, 451, 3745, 701, 361, 351, 4804, 907,
4146, 174, 298, 176, 4051, 373, 190, 325, 3, 4,
451, 4358, 4749, 248, 4361, 188, 4363, 24, 174, 373,
171, 172, 247, 2382, 5, 2599, 210, 381, 5, 4175,
4310, 3, 298, 4198, 4199, 219, 13, 3, 247, 217,
267, 4088, 4057, 4090, 3, 2257, 808, 220, 4063, 522,
3853, 936, 24, 338, 5, 24, 86, 392, 2270, 42,
211, 44, 3632, 4078, 220, 24, 828, 294, 2642, 954,
32, 3822, 315, 80, 24, 3633, 342, 1832, 59, 700,
304, 554, 325, 325, 319, 1840, 675, 599, 1843, 997,
1845, 1846, 87, 627, 3235, 3236, 3237, 3238, 3239, 3240,
3241, 3242, 2512, 4332, 810, 408, 2516, 4913, 80, 4098,
403, 4340, 455, 79, 457, 4852, 3235, 3236, 3237, 3238,
3239, 3240, 3241, 3242, 169, 298, 947, 443, 2548, 80,
2550, 435, 354, 236, 96, 555, 504, 310, 373, 392,
102, 24, 248, 3116, 987, 511, 601, 726, 4728, 79,
435, 3643, 325, 304, 347, 845, 1019, 298, 431, 797,
190, 511, 24, 784, 698, 90, 534, 510, 4448, 353,
827, 90, 982, 351, 3666, 2613, 2614, 2615, 2616, 2617,
2618, 2619, 2620, 2621, 2622, 4555, 2624, 2625, 2626, 2627,
2628, 2629, 2630, 2631, 2632, 2633, 2634, 2637, 2678, 675,
774, 555, 1839, 367, 4551, 2537, 4553, 1799, 778, 2647,
2648, 2649, 2650, 2651, 2546, 2973, 2755, 2569, 2976, 24,
2410, 2659, 2660, 2661, 2745, 3225, 2664, 2665, 2666, 2667,
2668, 2669, 2670, 2671, 2755, 2567, 1828, 771, 2486, 4185,
964, 2679, 2224, 2225, 451, 175, 4556, 2685, 2637, 90,
212, 213, 214, 215, 727, 680, 218, 3153, 90, 2692,
2693, 3333, 3158, 2521, 4311, 3067, 987, 4563, 604, 2707,
725, 4810, 367, 235, 1019, 237, 572, 2715, 392, 3734,
734, 2719, 2720, 2265, 2028, 2701, 325, 742, 4261, 4011,
451, 584, 2274, 3161, 3294, 599, 835, 2730, 781, 534,
484, 568, 3159, 487, 3862, 640, 2739, 734, 2883, 24,
2726, 2836, 3736, 2888, 599, 3067, 780, 2733, 4688, 3370,
555, 451, 451, 4603, 627, 913, 2764, 2765, 2766, 2767,
2768, 2769, 2770, 2771, 2772, 2773, 2774, 2775, 713, 2537,
2778, 2443, 976, 1007, 2653, 2920, 90, 451, 2546, 2924,
2925, 313, 1852, 205, 206, 207, 208, 871, 947, 2341,
511, 2799, 2800, 2801, 4644, 80, 4355, 3850, 954, 2567,
924, 689, 807, 947, 598, 4178, 4127, 4366, 303, 1000,
620, 3990, 2822, 1021, 303, 4374, 975, 3842, 2802, 924,
991, 243, 244, 245, 4690, 698, 86, 3340, 3101, 2802,
369, 431, 816, 924, 745, 771, 882, 2821, 4159, 4779,
1171, 923, 835, 1012, 2497, 2641, 715, 713, 2821, 620,
2802, 771, 805, 947, 859, 375, 1014, 765, 713, 957,
4710, 1806, 689, 730, 286, 287, 171, 172, 972, 2821,
1019, 4379, 3081, 809, 2745, 4610, 814, 749, 192, 3088,
924, 3090, 795, 3092, 838, 3094, 570, 749, 2416, 809,
814, 3, 303, 924, 818, 700, 924, 710, 771, 321,
570, 303, 920, 403, 24, 4704, 211, 175, 176, 352,
92, 411, 4510, 924, 4042, 4781, 369, 805, 961, 962,
973, 4423, 3072, 3073, 3074, 357, 1000, 422, 24, 197,
190, 4516, 2811, 422, 4519, 86, 90, 24, 313, 2592,
2593, 2594, 407, 829, 92, 213, 689, 765, 434, 371,
2157, 211, 220, 12, 12, 310, 24, 35, 24, 4876,
35, 872, 746, 768, 954, 719, 602, 2607, 2608, 2609,
325, 239, 716, 717, 808, 24, 1001, 843, 313, 784,
248, 4439, 187, 4441, 252, 203, 4702, 83, 453, 303,
4549, 4550, 546, 4552, 369, 4554, 83, 352, 936, 304,
954, 289, 4, 418, 2644, 2645, 765, 550, 1003, 814,
1000, 422, 4892, 818, 967, 3, 954, 4897, 4868, 3418,
422, 816, 24, 860, 746, 84, 85, 995, 952, 481,
954, 90, 178, 92, 369, 521, 24, 816, 4317, 190,
2802, 4, 4, 4322, 304, 470, 451, 96, 4188, 923,
771, 516, 4650, 991, 322, 4183, 18, 3, 326, 2821,
995, 615, 805, 997, 175, 3608, 488, 991, 923, 997,
4349, 4016, 357, 4018, 982, 618, 860, 572, 3872, 967,
1019, 4831, 989, 572, 584, 971, 354, 355, 809, 79,
59, 237, 80, 3735, 248, 4712, 4713, 1420, 4715, 972,
1025, 2426, 2427, 4720, 1025, 4099, 217, 2432, 422, 4103,
315, 36, 1195, 373, 1197, 1198, 236, 871, 3108, 2444,
1203, 187, 181, 3113, 3114, 4723, 4696, 36, 416, 989,
4689, 3015, 4691, 79, 59, 940, 36, 851, 543, 3699,
3130, 4758, 36, 179, 1202, 982, 3156, 952, 4898, 954,
59, 4768, 211, 211, 1202, 577, 81, 572, 2134, 59,
1015, 572, 240, 4303, 982, 59, 3275, 2985, 2571, 594,
572, 431, 81, 2149, 3502, 357, 81, 3061, 214, 2610,
3750, 3184, 1019, 3743, 3275, 1019, 991, 3190, 300, 675,
2610, 634, 452, 347, 3566, 1000, 2610, 36, 3206, 3207,
1022, 3843, 2610, 957, 4802, 423, 511, 36, 3110, 357,
635, 36, 2865, 849, 3116, 3117, 294, 2531, 2425, 4817,
59, 296, 373, 982, 967, 80, 294, 2389, 3231, 3057,
59, 4848, 954, 4850, 59, 1019, 3244, 3245, 3246, 3604,
351, 300, 3292, 3293, 3566, 580, 3358, 3612, 211, 315,
1485, 175, 176, 4698, 860, 939, 175, 679, 572, 3267,
3698, 357, 1006, 4264, 4722, 687, 3274, 236, 690, 939,
357, 4869, 4889, 197, 3277, 1358, 544, 3676, 3677, 634,
431, 5, 1012, 1366, 2535, 4425, 79, 4857, 2963, 213,
4430, 281, 351, 3438, 3439, 3440, 220, 3392, 217, 724,
947, 4429, 1360, 768, 1539, 1540, 2970, 2971, 192, 3317,
80, 4332, 1360, 1548, 5, 239, 4508, 24, 4510, 4340,
379, 3466, 234, 987, 248, 95, 3334, 1385, 252, 178,
37, 38, 39, 40, 41, 394, 304, 1385, 235, 5,
810, 342, 3110, 3351, 3352, 3017, 3330, 4945, 3116, 3117,
1409, 3359, 3360, 3361, 3362, 1019, 80, 3330, 86, 824,
0, 4978, 175, 788, 248, 787, 4239, 627, 3378, 247,
163, 3, 632, 25, 26, 27, 28, 3586, 96, 3032,
3033, 3590, 1398, 3592, 1400, 3594, 4707, 3596, 1404, 80,
302, 4185, 24, 452, 3374, 4674, 1412, 4676, 322, 1730,
4970, 369, 326, 300, 217, 1421, 1422, 1423, 1424, 5,
1426, 1427, 267, 1019, 80, 1746, 4861, 336, 233, 3378,
4990, 846, 347, 1552, 1553, 1437, 90, 814, 277, 1558,
354, 355, 351, 855, 1757, 1564, 1759, 902, 347, 294,
4128, 75, 3082, 25, 26, 27, 28, 347, 80, 5,
3379, 1693, 86, 347, 4145, 304, 4999, 4513, 4650, 3,
4, 4517, 190, 1570, 1571, 175, 771, 247, 234, 4597,
235, 1578, 1579, 4665, 25, 26, 27, 28, 3221, 277,
3, 247, 768, 211, 80, 1727, 1728, 546, 4544, 1731,
1732, 1733, 1734, 1735, 1736, 1737, 1738, 1739, 1740, 1741,
1742, 24, 4523, 883, 809, 773, 304, 217, 347, 80,
2824, 771, 982, 983, 25, 26, 27, 28, 347, 578,
3160, 370, 347, 3163, 80, 785, 340, 4972, 192, 322,
194, 4723, 312, 79, 1593, 300, 60, 1596, 351, 25,
26, 27, 28, 87, 1603, 982, 983, 4992, 5, 809,
1020, 75, 366, 940, 11, 815, 30, 31, 32, 33,
34, 35, 86, 823, 224, 225, 24, 79, 4708, 80,
79, 235, 370, 96, 83, 663, 304, 1666, 1667, 3322,
1639, 233, 1641, 1020, 248, 673, 1008, 4053, 1647, 1648,
356, 25, 26, 27, 28, 1654, 1018, 79, 1657, 1658,
79, 1660, 982, 983, 991, 3348, 1665, 1666, 1667, 79,
4802, 1670, 79, 1000, 1703, 1674, 1675, 1676, 1677, 1942,
544, 3611, 80, 1682, 1683, 4817, 1685, 4912, 1687, 1688,
4200, 1690, 1691, 293, 298, 1694, 300, 79, 3966, 1698,
1020, 351, 3751, 3971, 1703, 171, 172, 1706, 1707, 24,
357, 1710, 3, 2815, 79, 1714, 1715, 917, 918, 24,
3751, 24, 930, 1195, 1196, 1197, 1198, 211, 1200, 1201,
3779, 1203, 79, 24, 3558, 3559, 4061, 4869, 737, 3529,
2842, 4066, 233, 343, 24, 267, 24, 351, 3779, 1818,
1749, 1750, 1751, 1752, 1753, 24, 24, 1756, 79, 1758,
3622, 3603, 3604, 431, 4, 80, 3608, 79, 4764, 4765,
3612, 83, 294, 1729, 4687, 80, 267, 80, 18, 4692,
1779, 1780, 1781, 339, 452, 4436, 24, 343, 1811, 60,
1813, 4871, 1815, 24, 1817, 79, 24, 1804, 24, 83,
80, 3749, 80, 294, 75, 96, 1804, 4436, 4, 1808,
1809, 80, 80, 4945, 4, 86, 267, 4300, 24, 15,
1020, 3521, 18, 1822, 1847, 3773, 3769, 3770, 3771, 79,
3778, 24, 79, 83, 3782, 3783, 3921, 237, 3923, 3924,
3925, 267, 80, 294, 3787, 3793, 1987, 247, 3791, 80,
24, 3794, 80, 24, 80, 3940, 3941, 84, 85, 1882,
1883, 3946, 3947, 3948, 3949, 24, 3951, 1865, 294, 1867,
5, 3956, 3957, 3958, 80, 289, 11, 1865, 4027, 1867,
176, 4030, 24, 24, 4033, 1884, 1358, 80, 2990, 79,
24, 24, 3507, 267, 1366, 3603, 3604, 24, 24, 5,
3608, 197, 4, 3846, 3612, 11, 80, 24, 3, 773,
37, 38, 39, 40, 41, 86, 79, 213, 171, 172,
294, 80, 3872, 24, 220, 178, 2189, 2190, 37, 38,
39, 40, 41, 37, 38, 39, 40, 41, 80, 80,
1412, 1413, 24, 239, 24, 24, 80, 80, 1420, 11,
3, 4, 248, 15, 80, 1911, 252, 79, 60, 627,
22, 1911, 4969, 80, 632, 24, 24, 4974, 3561, 24,
1926, 4, 3226, 163, 164, 165, 166, 167, 312, 80,
24, 2141, 4250, 37, 38, 39, 40, 41, 40, 41,
37, 38, 39, 40, 41, 24, 24, 3866, 80, 24,
80, 80, 37, 38, 39, 40, 41, 37, 38, 39,
40, 41, 25, 26, 27, 28, 1488, 1489, 24, 190,
24, 80, 80, 213, 24, 80, 322, 60, 24, 79,
326, 37, 38, 39, 40, 41, 80, 24, 12, 246,
211, 163, 164, 165, 166, 167, 24, 1989, 1990, 342,
1522, 80, 80, 1995, 4325, 80, 24, 24, 354, 355,
4109, 1684, 252, 1686, 24, 79, 930, 37, 38, 39,
40, 41, 2028, 759, 80, 4346, 80, 4348, 4109, 1551,
80, 1704, 1554, 1555, 80, 1557, 24, 24, 1560, 24,
79, 213, 2363, 80, 83, 1567, 24, 24, 79, 80,
1572, 1573, 80, 771, 1576, 1577, 4036, 4037, 4038, 236,
24, 85, 80, 80, 24, 24, 90, 785, 24, 1591,
80, 2392, 312, 88, 24, 90, 79, 236, 79, 233,
252, 2154, 322, 304, 2129, 2158, 79, 2160, 1398, 2134,
1400, 809, 80, 80, 1404, 80, 4295, 815, 24, 24,
2173, 2174, 80, 80, 2149, 823, 924, 925, 205, 206,
207, 208, 24, 175, 354, 4108, 80, 79, 24, 24,
80, 80, 178, 1645, 80, 4123, 79, 1649, 2360, 2361,
80, 1653, 236, 79, 2183, 24, 4129, 24, 2187, 24,
312, 37, 38, 39, 40, 41, 243, 244, 245, 4147,
322, 236, 373, 555, 80, 80, 236, 181, 178, 4157,
4158, 24, 37, 38, 39, 40, 41, 248, 80, 79,
3527, 24, 2221, 394, 80, 80, 4152, 2226, 4154, 4155,
4156, 79, 354, 924, 925, 4185, 3543, 24, 5, 286,
287, 80, 413, 80, 11, 80, 3393, 4067, 544, 917,
918, 1790, 5, 1792, 4074, 24, 4076, 34, 11, 2522,
431, 79, 1801, 40, 4184, 24, 24, 80, 37, 38,
39, 40, 41, 3538, 321, 24, 24, 80, 2277, 24,
2279, 452, 79, 79, 24, 1757, 83, 458, 37, 38,
39, 40, 41, 80, 2293, 2294, 2295, 2296, 79, 24,
2299, 24, 24, 24, 1776, 4350, 4351, 319, 2307, 2308,
2309, 80, 3916, 2312, 2313, 2314, 37, 38, 39, 40,
41, 80, 80, 24, 371, 24, 300, 24, 24, 79,
24, 80, 80, 179, 24, 80, 24, 24, 509, 1811,
80, 1813, 1814, 1815, 1816, 1817, 3639, 518, 24, 3642,
79, 2350, 1020, 2352, 179, 80, 24, 80, 80, 80,
24, 532, 2385, 2386, 2387, 3658, 3659, 1839, 214, 37,
38, 39, 40, 41, 24, 1847, 24, 351, 246, 80,
4465, 80, 4467, 80, 80, 2341, 80, 24, 400, 214,
80, 2341, 80, 80, 24, 24, 24, 79, 79, 411,
412, 83, 414, 3895, 80, 379, 2362, 24, 79, 24,
1882, 1883, 80, 24, 3047, 3048, 80, 2416, 4408, 4409,
4410, 4411, 2445, 4016, 24, 4018, 24, 79, 440, 1000,
80, 759, 80, 4381, 446, 2458, 87, 88, 3930, 1911,
1912, 488, 940, 80, 3936, 46, 1918, 48, 49, 50,
80, 80, 80, 1925, 1926, 1927, 627, 4400, 4300, 79,
1398, 79, 1400, 80, 2520, 80, 1404, 1000, 4416, 80,
1942, 2646, 2520, 1945, 1946, 1302, 292, 773, 452, 92,
80, 24, 80, 2481, 1956, 1957, 1958, 1959, 1960, 772,
2489, 36, 2470, 2481, 79, 1967, 1968, 1969, 1970, 1971,
79, 1973, 79, 1975, 1976, 37, 38, 39, 40, 41,
79, 1983, 1984, 4393, 2470, 79, 4396, 4397, 4398, 1991,
37, 38, 39, 40, 41, 2524, 79, 698, 83, 79,
577, 37, 38, 39, 40, 41, 25, 26, 27, 28,
2496, 79, 4627, 37, 38, 39, 40, 41, 80, 2505,
2506, 2507, 79, 79, 725, 37, 38, 39, 40, 41,
2032, 79, 2034, 80, 79, 2521, 39, 40, 41, 4499,
582, 742, 546, 83, 80, 2531, 83, 4072, 79, 79,
1383, 79, 2605, 2758, 79, 1388, 80, 37, 38, 39,
40, 41, 4300, 37, 38, 39, 40, 41, 80, 1402,
771, 1398, 79, 1400, 578, 1432, 92, 1404, 779, 37,
38, 39, 40, 41, 785, 1418, 628, 79, 2641, 37,
38, 39, 40, 41, 4572, 37, 38, 39, 40, 41,
80, 79, 679, 79, 930, 580, 80, 79, 809, 79,
687, 79, 79, 690, 2639, 25, 26, 27, 28, 2121,
79, 2123, 80, 37, 38, 39, 40, 41, 30, 31,
32, 33, 80, 834, 79, 3811, 3812, 3813, 80, 79,
79, 4264, 79, 79, 2146, 2147, 37, 38, 39, 40,
41, 79, 2154, 79, 79, 2157, 2158, 2159, 2160, 79,
79, 79, 2164, 2165, 79, 92, 80, 2968, 79, 325,
79, 2173, 2174, 79, 79, 4653, 79, 4655, 79, 4657,
79, 4659, 79, 4661, 79, 79, 79, 79, 2981, 80,
2983, 79, 4, 5, 6, 7, 79, 9, 10, 11,
12, 4600, 79, 67, 68, 69, 18, 71, 72, 73,
787, 753, 79, 79, 79, 83, 917, 37, 38, 39,
40, 41, 764, 37, 38, 39, 40, 41, 37, 38,
39, 40, 41, 4513, 79, 79, 79, 4517, 79, 86,
79, 79, 943, 944, 786, 79, 2993, 37, 38, 39,
40, 41, 79, 65, 66, 37, 38, 39, 40, 41,
80, 79, 79, 79, 4544, 622, 80, 233, 79, 79,
971, 80, 79, 37, 38, 39, 40, 41, 855, 79,
2805, 37, 38, 39, 40, 41, 79, 988, 1645, 831,
80, 79, 1649, 79, 79, 79, 1653, 24, 80, 37,
38, 39, 40, 41, 79, 79, 79, 79, 37, 38,
39, 40, 41, 2899, 2822, 2844, 80, 2846, 79, 79,
2849, 2899, 2908, 81, 80, 2854, 2855, 79, 79, 79,
2908, 79, 79, 79, 2863, 2864, 2822, 79, 2824, 79,
79, 2870, 80, 190, 79, 157, 158, 159, 160, 161,
162, 80, 37, 38, 39, 40, 41, 83, 79, 83,
2889, 1718, 907, 83, 211, 83, 83, 907, 79, 2898,
907, 211, 233, 37, 38, 39, 40, 41, 267, 907,
907, 2910, 519, 2385, 2386, 2387, 621, 236, 200, 4,
2919, 347, 2921, 357, 2923, 80, 4, 4, 4, 249,
1757, 4, 2931, 37, 38, 39, 40, 41, 4, 2938,
96, 2940, 171, 2942, 185, 2944, 80, 2946, 367, 24,
354, 267, 2951, 2425, 37, 38, 39, 40, 41, 83,
267, 1008, 37, 38, 39, 40, 41, 59, 83, 5,
2969, 1018, 4, 2445, 5, 1024, 80, 5, 3, 2978,
2979, 5, 5, 2982, 2456, 2984, 2458, 304, 1025, 271,
272, 5, 5, 1019, 304, 174, 753, 80, 915, 954,
503, 2957, 2958, 2959, 2960, 2961, 2962, 2957, 2958, 2959,
2960, 2961, 2962, 2969, 4764, 4765, 4620, 753, 1019, 2969,
2492, 982, 2494, 553, 2496, 2497, 37, 38, 39, 40,
41, 331, 331, 2505, 2506, 2507, 2508, 37, 38, 39,
40, 41, 2514, 2515, 553, 808, 402, 3046, 808, 2521,
2522, 4198, 401, 401, 366, 87, 373, 1019, 860, 357,
325, 808, 15, 373, 3, 2537, 940, 1000, 226, 80,
92, 369, 44, 3, 2546, 24, 3032, 394, 86, 24,
80, 83, 3032, 80, 394, 37, 38, 39, 40, 41,
37, 38, 39, 40, 41, 2567, 413, 83, 80, 80,
80, 3057, 80, 413, 94, 94, 37, 38, 39, 40,
41, 3067, 2584, 80, 431, 413, 80, 2589, 2590, 2591,
2592, 2593, 2594, 94, 94, 80, 32, 175, 80, 2601,
24, 79, 2604, 2605, 2606, 452, 347, 24, 24, 24,
32, 458, 452, 636, 24, 37, 59, 39, 458, 80,
182, 183, 185, 580, 452, 59, 4, 67, 190, 37,
38, 39, 40, 41, 1991, 5, 954, 460, 59, 2641,
37, 38, 39, 40, 41, 59, 59, 15, 210, 24,
37, 38, 39, 40, 41, 483, 4, 219, 24, 4,
4, 24, 509, 37, 38, 39, 40, 41, 230, 509,
8, 518, 80, 3, 96, 80, 5, 80, 518, 80,
102, 80, 4, 80, 80, 532, 80, 80, 80, 80,
2692, 2693, 532, 80, 80, 4, 24, 259, 80, 80,
3501, 37, 38, 39, 40, 41, 80, 80, 192, 3510,
298, 185, 274, 275, 37, 38, 39, 40, 41, 24,
282, 283, 284, 664, 665, 666, 667, 298, 2730, 670,
2732, 37, 38, 39, 40, 41, 564, 2739, 185, 298,
3226, 682, 683, 684, 80, 307, 37, 38, 39, 40,
41, 298, 24, 79, 190, 404, 5, 80, 586, 503,
503, 197, 401, 325, 401, 746, 328, 49, 204, 1019,
203, 404, 994, 601, 80, 37, 38, 39, 40, 41,
627, 59, 344, 345, 346, 24, 982, 627, 5, 80,
212, 213, 214, 215, 4917, 970, 218, 219, 626, 50,
362, 363, 401, 3331, 523, 3330, 37, 38, 39, 40,
41, 974, 248, 235, 424, 237, 697, 974, 80, 1007,
3373, 247, 559, 245, 424, 901, 49, 263, 79, 236,
970, 4, 2189, 24, 236, 4958, 1019, 5, 3366, 3367,
608, 2843, 608, 37, 38, 39, 40, 41, 410, 80,
59, 698, 319, 415, 416, 59, 4979, 59, 698, 59,
2862, 24, 4, 2865, 987, 301, 569, 3375, 185, 226,
698, 3457, 92, 83, 821, 4998, 83, 83, 725, 3457,
3409, 175, 234, 319, 320, 725, 80, 83, 3374, 3375,
347, 313, 80, 80, 3374, 742, 80, 725, 83, 80,
80, 80, 742, 715, 80, 94, 342, 3436, 80, 80,
24, 94, 163, 80, 742, 236, 94, 24, 80, 3448,
94, 80, 484, 80, 771, 487, 24, 178, 94, 80,
80, 771, 779, 79, 4731, 79, 79, 73, 785, 779,
37, 38, 39, 40, 41, 785, 37, 38, 39, 40,
41, 79, 3481, 79, 3483, 79, 3485, 79, 520, 79,
211, 4, 809, 37, 38, 39, 40, 41, 80, 809,
37, 38, 39, 40, 41, 83, 3562, 79, 37, 38,
39, 40, 41, 80, 3562, 24, 80, 834, 24, 80,
83, 347, 239, 236, 834, 431, 37, 38, 39, 40,
41, 37, 38, 39, 40, 41, 80, 37, 38, 39,
40, 41, 448, 80, 37, 38, 39, 40, 41, 83,
3549, 80, 598, 4, 185, 319, 60, 80, 24, 79,
3032, 3033, 4, 469, 3563, 5, 4, 331, 3546, 80,
24, 626, 298, 370, 3573, 876, 3575, 298, 92, 369,
80, 24, 4, 304, 236, 3057, 35, 80, 296, 35,
3546, 79, 294, 24, 83, 3067, 3, 80, 80, 80,
917, 322, 1025, 1025, 3627, 80, 79, 917, 79, 3,
3566, 90, 4, 519, 3086, 24, 3088, 4, 524, 3091,
3092, 919, 347, 4, 96, 24, 943, 944, 37, 38,
39, 40, 41, 943, 944, 24, 400, 860, 3110, 864,
5, 236, 4, 424, 3116, 3117, 233, 411, 412, 555,
414, 954, 373, 5, 971, 4, 860, 4, 564, 565,
5, 971, 37, 38, 39, 40, 41, 5, 5, 864,
2497, 988, 5, 394, 3146, 4, 440, 373, 988, 585,
881, 3153, 446, 4, 347, 4, 3158, 719, 4, 3161,
5, 5, 413, 4, 3693, 298, 3695, 83, 3697, 3970,
369, 580, 233, 1001, 1002, 80, 79, 67, 718, 516,
3709, 94, 3184, 1011, 94, 380, 480, 357, 3190, 80,
626, 88, 94, 3195, 718, 37, 38, 39, 40, 41,
94, 452, 4, 4, 5, 6, 7, 458, 9, 10,
11, 12, 292, 1699, 1700, 1701, 1702, 18, 304, 3221,
37, 38, 39, 40, 41, 1711, 1712, 1713, 24, 3231,
3977, 4, 636, 2590, 24, 2592, 2593, 2594, 80, 37,
38, 39, 40, 41, 37, 38, 39, 40, 41, 2606,
79, 4, 80, 5, 4, 5, 6, 7, 509, 9,
10, 11, 12, 80, 65, 66, 24, 518, 18, 41,
37, 38, 39, 40, 41, 3277, 1721, 1722, 1723, 1724,
1725, 532, 80, 24, 24, 460, 96, 80, 582, 61,
62, 63, 64, 65, 66, 67, 68, 69, 79, 71,
72, 73, 3855, 508, 59, 35, 35, 743, 35, 35,
24, 32, 606, 80, 79, 24, 67, 41, 612, 233,
3322, 80, 3850, 37, 38, 39, 40, 41, 37, 38,
39, 40, 41, 3335, 628, 3888, 772, 61, 62, 63,
64, 65, 66, 67, 68, 69, 3348, 71, 72, 73,
4, 351, 80, 24, 191, 80, 157, 158, 159, 160,
161, 162, 298, 5, 24, 3873, 37, 38, 39, 40,
41, 3373, 3374, 90, 90, 79, 627, 37, 38, 39,
40, 41, 79, 347, 3913, 3914, 4, 3873, 1958, 1959,
1960, 3393, 4, 955, 4, 957, 958, 1967, 1968, 1969,
1970, 1971, 838, 1973, 24, 1975, 79, 157, 158, 159,
160, 161, 162, 1983, 5, 5, 24, 37, 38, 39,
40, 41, 5, 3952, 860, 24, 5, 5, 864, 37,
38, 39, 40, 41, 5, 3988, 24, 4, 37, 38,
39, 40, 41, 5, 3973, 3974, 5, 698, 24, 37,
38, 39, 40, 41, 9, 5, 1018, 5, 924, 753,
9, 37, 38, 39, 40, 41, 5, 702, 79, 5,
764, 907, 24, 79, 725, 5, 4, 24, 890, 471,
916, 24, 3990, 5, 753, 37, 38, 39, 40, 41,
1019, 742, 786, 860, 37, 38, 39, 40, 41, 763,
357, 59, 564, 5, 3990, 2862, 24, 498, 2865, 79,
946, 4, 1019, 5, 4043, 83, 390, 452, 954, 4,
771, 4, 4, 79, 5, 5, 49, 963, 779, 965,
5, 5, 5, 5, 785, 79, 5, 831, 61, 62,
63, 64, 65, 66, 67, 68, 69, 5, 71, 72,
73, 37, 38, 39, 40, 41, 24, 43, 809, 3561,
185, 997, 298, 178, 3566, 879, 357, 944, 92, 80,
79, 1007, 63, 64, 65, 66, 67, 68, 69, 79,
71, 72, 73, 834, 259, 80, 3588, 83, 94, 79,
79, 3593, 3594, 80, 304, 94, 46, 94, 48, 49,
50, 3603, 3604, 80, 80, 718, 3608, 298, 185, 80,
3612, 61, 62, 63, 64, 65, 66, 67, 68, 69,
80, 71, 72, 73, 2981, 3627, 324, 94, 94, 94,
4167, 3633, 94, 94, 84, 85, 80, 94, 94, 4167,
61, 62, 63, 64, 65, 66, 67, 68, 69, 94,
71, 72, 73, 62, 63, 64, 65, 66, 67, 68,
69, 94, 71, 72, 73, 94, 917, 182, 183, 184,
185, 186, 187, 188, 189, 3032, 3033, 94, 80, 80,
80, 80, 80, 236, 4192, 734, 472, 4197, 24, 875,
342, 24, 943, 944, 90, 269, 3698, 4205, 35, 876,
4229, 65, 66, 67, 68, 69, 4192, 71, 72, 73,
35, 35, 79, 79, 79, 5, 79, 79, 1025, 4205,
971, 79, 79, 79, 299, 79, 299, 79, 79, 79,
79, 79, 4261, 211, 4263, 3, 79, 988, 79, 5,
748, 211, 185, 5, 4, 4, 405, 424, 54, 96,
213, 79, 59, 4306, 968, 4308, 4, 4, 854, 4,
24, 4, 79, 5, 298, 185, 298, 3769, 3770, 3771,
4, 168, 83, 1195, 1196, 1197, 1198, 59, 1200, 1201,
233, 1203, 1204, 1024, 178, 3787, 87, 239, 5, 3791,
5, 4, 3794, 80, 4, 80, 3153, 80, 236, 80,
79, 3158, 59, 59, 185, 185, 224, 185, 354, 29,
240, 185, 185, 80, 298, 80, 361, 5, 79, 298,
5, 79, 383, 178, 5, 5, 5, 79, 79, 924,
79, 4, 4, 982, 3836, 5, 5, 325, 59, 4,
59, 59, 24, 59, 3846, 59, 985, 59, 59, 498,
80, 191, 90, 3855, 3856, 90, 185, 351, 941, 5,
3862, 292, 49, 24, 5, 94, 94, 5, 4, 185,
79, 185, 80, 80, 4, 185, 4, 3, 80, 24,
1302, 185, 241, 80, 79, 79, 3888, 80, 80, 90,
4, 12, 5, 185, 90, 354, 80, 5, 925, 4,
860, 92, 5, 5, 5, 4, 192, 5, 372, 4,
831, 79, 79, 79, 5, 190, 94, 80, 4, 83,
4, 4, 79, 178, 24, 79, 361, 4456, 956, 361,
4459, 4460, 5, 5, 5, 79, 1358, 951, 5, 5,
79, 951, 79, 59, 1366, 369, 4, 79, 79, 748,
79, 614, 79, 688, 41, 80, 325, 79, 620, 578,
4489, 4490, 308, 4, 49, 744, 298, 79, 924, 80,
80, 578, 79, 79, 924, 79, 5, 4, 4, 392,
688, 5, 79, 79, 4, 825, 3988, 5, 5, 5,
1412, 1413, 5, 4522, 5, 5, 951, 79, 1420, 79,
951, 924, 79, 79, 924, 83, 924, 5, 308, 5,
1432, 5, 924, 325, 4016, 1437, 4018, 3374, 79, 361,
924, 12, 361, 361, 924, 90, 4, 90, 5, 4031,
49, 924, 79, 620, 280, 924, 951, 3394, 24, 79,
4042, 92, 951, 951, 951, 951, 376, 59, 2984, 2362,
951, 4053, 759, 4634, 760, 4491, 79, 956, 3454, 4635,
2184, 1709, 1181, 2982, 1681, 3462, 1488, 1489, 0, 4598,
0, 3561, 2813, 3243, 3234, 3849, 4605, 3330, 2783, 2153,
4916, 4979, 4998, 233, 4184, 5013, 5015, 5008, 2877, 3425,
3674, 3642, 4340, 4081, 4891, 3219, 3865, 2822, 4853, 4045,
1522, 4920, 4047, 4902, 4976, 4994, 4108, 4886, 4906, 2808,
2808, 2808, 2808, 3358, 2646, 233, 4645, 1988, 4665, 3856,
3856, 4509, 2012, 0, 1381, 249, 1883, 4129, 1909, 1551,
4263, 2481, 1554, 1555, 1556, 1557, 4629, 4003, 1560, 4732,
163, 164, 165, 166, 167, 1567, 4267, 170, 171, 172,
1572, 1573, 4039, 176, 1576, 1577, 1481, 4008, 4738, 3046,
4512, 1411, 2496, 3092, 2489, 1413, 2515, 4259, 4494, 1591,
3095, 4035, 3117, 1918, 197, 1333, 1413, 3391, 2815, 1335,
2842, 4183, 4184, 2816, 1339, 2150, 1320, 2817, 2142, 1925,
213, 214, 215, 2458, 2389, 3025, 4198, 220, 4751, 4728,
26, 1205, 1592, 4711, 3561, 228, 1776, 1804, 2387, 4738,
3021, 2610, 4891, 3156, 4139, 3794, 239, 3270, 4747, 3772,
2694, 4774, 2746, 3316, 3315, 4711, 2062, 4160, 4389, 252,
1522, 2753, 3528, 2740, 2110, 1757, -1, -1, -1, -1,
4769, 264, 4771, -1, 4773, -1, -1, 270, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4264, -1, -1, -1, -1, -1, 291, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 302,
-1, -1, -1, -1, -1, -1, 309, 310, -1, 312,
4819, -1, -1, -1, 317, -1, 1718, -1, 4300, 322,
-1, -1, 325, 326, 4306, 4858, 4308, -1, -1, 4862,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 352,
4883, 354, -1, 356, -1, 3692, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1776, -1, -1, 4886, 4911, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1799, -1, -1,
-1, -1, -1, -1, 407, -1, -1, -1, -1, 1811,
-1, 1813, 1814, 1815, 1816, 1817, -1, -1, 4400, -1,
-1, -1, -1, -1, -1, -1, 1828, -1, 4961, -1,
-1, -1, -1, -1, -1, -1, -1, 1839, -1, -1,
-1, -1, -1, -1, -1, 1847, -1, 4429, -1, -1,
453, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3810, -1, -1, -1, -1, -1, -1,
1882, 1883, -1, -1, -1, -1, 489, -1, -1, -1,
4999, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 506, -1, 1907, -1, -1, -1, 1911,
1912, -1, -1, -1, -1, -1, 1918, -1, -1, -1,
-1, -1, -1, 1925, 1926, 1927, 529, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1942, -1, -1, 1945, 1946, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1956, 1957, 1958, 1959, 1960, -1,
-1, -1, -1, -1, -1, 1967, 1968, 1969, 1970, 1971,
-1, 1973, -1, 1975, 1976, 3912, -1, -1, -1, -1,
-1, 1983, 1984, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4597, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2032, 634, 2034, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4016,
-1, 4018, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4051, 4052, 4053, -1, -1, 2121,
-1, 2123, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2141,
-1, -1, -1, -1, 2146, 2147, -1, -1, -1, -1,
-1, 4088, 2154, 4090, -1, 2157, 2158, 2159, 2160, -1,
-1, -1, 2164, 2165, -1, 768, -1, -1, -1, 4751,
-1, 2173, 2174, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 2189, -1, -1,
-1, -1, 4774, -1, 174, -1, 176, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 188, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 824, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 213, -1, -1, -1, -1, -1, -1,
220, -1, -1, -1, -1, -1, -1, 4184, 851, -1,
-1, -1, -1, -1, 234, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4202, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4858, -1, -1, -1,
4862, -1, -1, -1, -1, -1, -1, -1, -1, -1,
270, -1, -1, -1, -1, -1, -1, -1, -1, 902,
-1, 4883, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4264, -1, 4911,
-1, -1, -1, -1, -1, 4917, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 325, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 967, -1, -1, -1, -1, -1,
-1, -1, -1, 4310, 4311, -1, 4958, -1, -1, 4961,
-1, -1, -1, 2385, 2386, 2387, -1, 2389, -1, -1,
-1, -1, -1, -1, 4331, -1, -1, 4979, 4335, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1016, -1, -1, 4998, -1, -1, 399,
-1, 401, -1, 2425, -1, -1, -1, 407, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 417, -1, -1,
-1, -1, -1, 2445, -1, 425, -1, -1, -1, 4386,
-1, -1, -1, 433, 2456, -1, 2458, -1, 438, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 2486, -1, -1, -1, 468, -1,
2492, -1, 2494, -1, 2496, -1, -1, -1, -1, -1,
-1, -1, -1, 2505, 2506, 2507, 2508, -1, -1, -1,
-1, 4448, 2514, 2515, -1, -1, -1, -1, -1, 2521,
2522, 501, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 514, 2537, 516, -1, -1, -1,
-1, -1, -1, -1, 2546, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 2567, -1, -1, -1, 549,
-1, -1, 4509, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 2584, -1, -1, -1, -1, 2589, -1, 2591,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2601,
-1, -1, 2604, 2605, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 597, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 2641,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 639,
-1, -1, -1, -1, -1, -1, 4603, 4604, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
2692, 2693, -1, -1, -1, -1, -1, -1, -1, -1,
680, -1, -1, -1, -1, 685, -1, 4644, -1, 689,
-1, 691, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 2730, -1,
2732, -1, -1, -1, -1, -1, -1, 2739, -1, -1,
-1, -1, -1, 723, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4710, -1, 4712, 4713, -1, 4715, -1,
-1, -1, -1, 4720, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 792, 2815, -1, -1, 796, -1, -1, -1,
-1, 4758, -1, 803, 804, -1, -1, -1, -1, -1,
-1, 4768, 812, -1, 2836, -1, -1, -1, 818, 819,
2842, 2843, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 837, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4804, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 868, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4848, -1, 4850, -1, -1, -1, -1, -1, -1,
-1, -1, 902, -1, -1, -1, -1, -1, -1, -1,
-1, 4868, -1, -1, -1, 915, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 931, 4889, 933, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4913, -1, -1, 2981,
4917, -1, -1, 2985, -1, -1, -1, -1, 2990, -1,
-1, 2993, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 987, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4958, -1, 1003, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4978, 4979, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3057, -1, -1, -1, -1,
-1, 4998, -1, -1, -1, 3067, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3086, -1, 3088, -1, -1, 3091,
3092, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3110, -1,
-1, -1, -1, -1, 3116, 3117, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1, -1,
3, -1, -1, -1, 3146, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3161,
-1, 24, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 3184, -1, -1, -1, -1, -1, 3190, -1,
-1, -1, -1, 3195, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3221,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 3231,
-1, -1, -1, -1, -1, -1, 99, -1, 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, -1, 130, 131, 132,
133, 134, 135, 136, -1, 3277, 139, 140, 141, 142,
143, 144, 145, 146, 147, 148, 149, 150, 151, 152,
153, 154, 155, 156, -1, 1, -1, 3, -1, -1,
-1, -1, -1, -1, -1, -1, 169, -1, 171, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 24, -1,
3322, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 3335, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3348, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 1, -1, 3, -1,
-1, 3373, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 24,
3392, 3393, 3394, 99, -1, 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, -1, 130, 131, 132, 133, 134, 135,
136, -1, -1, 139, 140, 141, 142, 143, 144, 145,
146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
156, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 169, 99, 171, 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, -1, 130, 131, 132, 133, 134,
135, 136, -1, -1, 139, 140, 141, 142, 143, 144,
145, 146, 147, 148, 149, 150, 151, 152, 153, 154,
155, 156, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 169, -1, 171, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3566, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3588, -1, -1, -1,
-1, 3593, 3594, -1, -1, -1, -1, -1, -1, -1,
-1, 3603, 3604, 1, -1, 3, 3608, -1, -1, -1,
3612, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3627, -1, -1, -1, -1,
-1, 3633, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3692, -1, -1, -1, -1, -1, 3698, -1, -1, -1,
-1, 99, -1, 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, -1, 130, 131, 132, 133, 134, 135, 136, -1,
-1, 139, 140, 141, 142, 143, 144, 145, 146, 147,
148, 149, 150, 151, 152, 153, 154, 155, 156, -1,
-1, -1, -1, -1, -1, -1, -1, 3769, 3770, 3771,
-1, -1, -1, 171, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3787, -1, -1, -1, 3791,
-1, -1, 3794, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 3810, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3836, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 3846, -1, -1, -1, -1, -1,
-1, -1, -1, 3855, 3856, -1, -1, -1, -1, -1,
3862, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 742,
-1, -1, -1, -1, -1, -1, 3888, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
3912, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 3977, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 3988, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4031,
-1, -1, -1, -1, -1, -1, 742, -1, 901, -1,
4042, -1, -1, -1, -1, -1, -1, -1, -1, 4051,
4052, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4088, -1, 4090, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4108, 742, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4129, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4183, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 901, 4198, 4199, -1, -1,
4202, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 901, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4300, -1,
-1, -1, -1, -1, 4306, -1, 4308, -1, 4310, 4311,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4331,
-1, -1, -1, 4335, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 742, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4386, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4400, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4429, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4448, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 901, -1, -1, -1, 4509, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4597, -1, -1, -1, -1,
-1, 4603, 4604, -1, -1, -1, -1, -1, 4610, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4644, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4710, -1,
4712, 4713, -1, 4715, -1, -1, -1, -1, 4720, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4751,
-1, -1, -1, -1, -1, -1, 4758, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4768, -1, -1, -1,
-1, -1, 4774, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4804, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4848, -1, 4850, -1,
-1, -1, -1, -1, -1, -1, 4858, -1, -1, -1,
4862, -1, -1, -1, -1, -1, 4868, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4883, -1, -1, -1, -1, -1, 4889, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4911,
-1, 4913, -1, -1, -1, 3, 4, 5, 6, 7,
-1, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, -1, -1, 21, 22, -1, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
38, 39, -1, 41, 42, 43, -1, 45, 46, 4961,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, 4978, 65, 66, -1,
-1, -1, -1, 71, 72, -1, -1, -1, 76, -1,
-1, 79, -1, 81, -1, 83, 84, 85, 86, 87,
88, -1, 90, -1, 92, -1, 94, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 157,
158, 159, 160, 161, 162, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 173, 174, -1, 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, -1,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, -1, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
348, 349, 350, -1, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5, 6,
7, -1, 9, 10, 11, 12, 13, 14, 15, -1,
-1, 18, -1, -1, 21, 22, -1, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, 38, 39, -1, 41, 42, 43, -1, 45, 46,
-1, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, 65, 66,
-1, -1, -1, -1, 71, 72, -1, -1, -1, 76,
-1, -1, 79, -1, 81, -1, 83, 84, 85, 86,
87, 88, -1, 90, -1, 92, -1, 94, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
157, 158, 159, 160, 161, 162, 163, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 173, 174, -1, 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,
-1, 218, 219, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, 232, 233, 234, 235, -1,
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, -1, 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, -1,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, -1, 349, 350, -1, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5,
6, 7, -1, 9, 10, 11, 12, 13, 14, 15,
-1, -1, 18, -1, -1, 21, 22, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
-1, -1, 38, 39, -1, 41, 42, 43, -1, 45,
46, -1, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, 65,
66, 67, -1, -1, -1, 71, 72, -1, -1, -1,
76, -1, -1, 79, -1, 81, -1, 83, 84, 85,
86, 87, 88, -1, 90, -1, 92, -1, 94, -1,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 157, 158, 159, 160, 161, 162, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 173, 174, -1,
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, -1, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
-1, 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, -1,
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, -1, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
-1, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, 350, -1, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4,
5, 6, 7, -1, 9, 10, 11, 12, 13, 14,
15, -1, -1, 18, -1, -1, 21, 22, -1, -1,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, -1, -1, 38, 39, -1, 41, 42, 43, -1,
45, 46, -1, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
65, 66, -1, -1, -1, -1, 71, 72, -1, -1,
-1, 76, -1, -1, 79, -1, 81, -1, 83, 84,
85, 86, 87, 88, -1, 90, -1, 92, -1, 94,
-1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 157, 158, 159, 160, 161, 162, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -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, -1, 218, 219, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
235, -1, 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,
-1, 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, -1, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, -1, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, -1, 349, 350, -1, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3,
4, 5, 6, 7, -1, 9, 10, 11, 12, 13,
14, 15, -1, -1, 18, -1, -1, 21, 22, -1,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, 38, 39, -1, 41, 42, 43,
-1, 45, 46, -1, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, 65, 66, 67, -1, -1, -1, 71, 72, -1,
-1, -1, 76, -1, -1, 79, -1, 81, -1, 83,
84, 85, 86, 87, 88, -1, 90, -1, 92, -1,
94, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 157, 158, 159, 160, 161, 162, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 173,
174, -1, 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, -1, 218, 219, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
234, 235, -1, 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, -1, 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, -1, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, -1, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, -1, 349, 350, -1, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 368, 369, 370, 371, 372, -1,
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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023,
3, 4, 5, 6, 7, -1, 9, 10, 11, 12,
13, 14, 15, -1, -1, 18, -1, -1, 21, 22,
-1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, -1, -1, 38, 39, -1, 41, 42,
43, -1, 45, 46, -1, 48, 49, 50, 51, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, 65, 66, -1, -1, -1, -1, 71, 72,
-1, -1, -1, 76, -1, -1, 79, -1, 81, -1,
83, 84, 85, 86, 87, 88, -1, 90, -1, 92,
-1, 94, -1, 96, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 157, 158, 159, 160, 161, 162,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
173, 174, -1, 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, -1, 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, -1, 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, -1,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, -1, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, -1, 349, 350, -1, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
-1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
1023, 3, 4, 5, 6, 7, -1, 9, 10, 11,
12, 13, 14, 15, -1, -1, 18, -1, -1, 21,
22, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, -1, -1, 38, 39, -1, 41,
42, 43, -1, 45, 46, -1, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
72, -1, -1, -1, 76, -1, -1, 79, -1, 81,
-1, 83, 84, 85, 86, 87, 88, -1, 90, -1,
92, -1, 94, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 157, 158, 159, 160, 161,
162, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 173, 174, -1, 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, -1, 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, -1, 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,
-1, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, -1, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, -1, 349, 350, -1,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, 1023, 3, 4, 5, 6, 7, -1, 9, 10,
11, 12, 13, 14, 15, -1, -1, 18, -1, -1,
21, 22, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, 38, 39, -1,
41, 42, 43, -1, 45, 46, -1, 48, 49, 50,
51, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
71, 72, -1, -1, -1, 76, -1, -1, 79, -1,
81, -1, 83, 84, 85, 86, 87, 88, -1, 90,
-1, 92, -1, 94, -1, 96, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 157, 158, 159, 160,
161, 162, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 173, 174, -1, 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, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, -1, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, -1, 349, 350,
-1, 352, 353, 354, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
371, 372, -1, 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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
-1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, 1023, 3, 4, 5, 6, 7, -1, 9,
10, 11, 12, 13, 14, 15, -1, -1, 18, -1,
-1, 21, 22, -1, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, 38, 39,
-1, 41, 42, 43, -1, 45, 46, -1, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, 65, 66, -1, -1, -1,
-1, 71, 72, -1, -1, -1, 76, -1, -1, 79,
80, 81, -1, 83, 84, 85, 86, 87, 88, -1,
90, -1, 92, -1, 94, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 157, 158, 159,
160, 161, 162, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 173, 174, -1, 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, -1, 218, 219,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, -1, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
350, -1, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
370, 371, 372, -1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, 1023, 3, 4, 5, 6, 7, -1,
9, 10, 11, 12, 13, 14, 15, -1, -1, 18,
-1, -1, 21, 22, -1, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, 38,
39, -1, 41, 42, 43, -1, 45, 46, -1, 48,
49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, 65, 66, -1, -1,
-1, -1, 71, 72, -1, -1, -1, 76, -1, -1,
79, -1, 81, -1, 83, 84, 85, 86, 87, 88,
-1, 90, -1, 92, -1, 94, -1, 96, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 157, 158,
159, 160, 161, 162, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 173, 174, -1, 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, -1, 218,
219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, -1, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, -1,
349, 350, -1, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, 1023, 3, 4, 5, 6, 7,
-1, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, -1, -1, 21, 22, -1, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
38, 39, -1, 41, 42, 43, -1, 45, 46, -1,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, 65, 66, -1,
-1, -1, -1, 71, 72, -1, -1, -1, 76, -1,
-1, 79, -1, 81, -1, 83, 84, 85, 86, 87,
88, -1, 90, -1, 92, -1, 94, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 157,
158, 159, 160, 161, 162, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 173, 174, -1, 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, -1,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, -1, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
-1, 349, 350, -1, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5, 6,
7, -1, 9, 10, 11, 12, 13, 14, 15, -1,
-1, 18, -1, -1, 21, 22, -1, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, 38, 39, -1, 41, 42, 43, -1, 45, 46,
-1, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, 65, 66,
-1, -1, -1, -1, 71, 72, -1, -1, -1, 76,
-1, -1, 79, -1, 81, -1, 83, 84, 85, 86,
87, 88, -1, 90, -1, 92, -1, 94, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
157, 158, 159, 160, 161, 162, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 173, 174, -1, 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,
-1, 218, 219, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, 232, 233, 234, 235, -1,
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, -1, 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, -1, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, -1,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, -1, 349, 350, -1, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5,
6, 7, -1, 9, 10, 11, 12, 13, 14, 15,
-1, -1, 18, -1, -1, 21, 22, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
-1, -1, 38, 39, -1, 41, 42, 43, -1, 45,
46, -1, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, 65,
66, -1, -1, -1, -1, 71, 72, -1, -1, -1,
76, -1, -1, 79, -1, 81, -1, 83, 84, 85,
86, 87, 88, -1, 90, -1, 92, -1, 94, -1,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 157, 158, 159, 160, 161, 162, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 173, 174, -1,
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, -1, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
-1, 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, -1,
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, -1, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
-1, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, 350, -1, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4,
5, 6, 7, -1, 9, 10, 11, 12, 13, 14,
15, -1, -1, 18, -1, -1, 21, 22, -1, -1,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, -1, -1, 38, 39, -1, 41, 42, 43, -1,
45, 46, -1, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
65, 66, -1, -1, -1, -1, 71, 72, -1, -1,
-1, 76, -1, -1, 79, -1, 81, -1, 83, 84,
85, 86, 87, 88, -1, 90, -1, 92, -1, 94,
-1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 157, 158, 159, 160, 161, 162, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 173, 174,
-1, 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, -1, 218, 219, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
235, -1, 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,
-1, 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, -1, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, -1, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, -1, 349, 350, -1, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3,
4, 5, 6, 7, -1, 9, 10, 11, 12, 13,
14, 15, -1, -1, 18, -1, -1, 21, 22, -1,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, 38, 39, -1, 41, 42, 43,
-1, 45, 46, -1, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, 65, 66, -1, -1, -1, -1, 71, 72, -1,
-1, -1, 76, -1, -1, 79, -1, 81, -1, 83,
84, 85, 86, 87, 88, -1, 90, -1, 92, -1,
94, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 157, 158, 159, 160, 161, 162, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 173,
174, -1, 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, -1, 218, 219, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
234, 235, -1, 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, -1, 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, -1, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, -1, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, -1, 349, 350, -1, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 368, 369, 370, 371, 372, -1,
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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023,
3, 4, 5, 6, 7, -1, 9, 10, 11, 12,
13, 14, 15, -1, -1, 18, -1, -1, 21, 22,
-1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, -1, -1, 38, 39, -1, 41, 42,
43, -1, 45, 46, -1, 48, 49, 50, 51, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, 65, 66, -1, -1, -1, -1, 71, 72,
-1, -1, -1, 76, -1, -1, 79, -1, 81, -1,
83, 84, 85, 86, 87, 88, -1, 90, -1, 92,
-1, 94, -1, 96, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 157, 158, 159, 160, 161, 162,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
173, 174, -1, 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, -1, 218, 219, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
233, 234, 235, -1, 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, -1, 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, -1,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, -1, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, -1, 349, 350, -1, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
-1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
1023, 3, 4, 5, 6, 7, -1, 9, 10, 11,
12, 13, 14, 15, -1, -1, 18, -1, -1, 21,
22, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, -1, -1, 38, 39, -1, 41,
42, 43, -1, 45, 46, -1, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
72, -1, -1, -1, 76, -1, -1, 79, -1, 81,
-1, 83, 84, 85, 86, 87, 88, -1, 90, -1,
92, -1, 94, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 157, 158, 159, 160, 161,
162, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 173, 174, -1, 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, -1, 218, 219, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
232, 233, 234, 235, -1, 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, -1, 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,
-1, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, -1, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, -1, 349, 350, -1,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, 1023, 3, 4, 5, 6, 7, -1, 9, 10,
11, 12, 13, 14, 15, -1, -1, 18, -1, -1,
21, 22, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, 38, 39, -1,
41, 42, 43, -1, 45, 46, -1, 48, 49, 50,
51, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
71, 72, -1, -1, -1, 76, -1, -1, 79, -1,
81, -1, 83, 84, 85, 86, 87, 88, -1, 90,
-1, 92, -1, 94, -1, 96, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 157, 158, 159, 160,
161, 162, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 173, 174, -1, 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, -1, 218, 219, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, -1, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, -1, 349, 350,
-1, 352, 353, 354, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
371, 372, -1, 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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
-1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, 1023, 3, 4, 5, 6, 7, -1, 9,
10, 11, 12, 13, 14, 15, -1, -1, 18, -1,
-1, 21, 22, -1, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, 38, 39,
-1, 41, 42, 43, -1, 45, 46, -1, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, 65, 66, -1, -1, -1,
-1, 71, 72, -1, -1, -1, 76, -1, -1, 79,
-1, 81, -1, 83, 84, 85, 86, 87, 88, -1,
90, -1, 92, -1, 94, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 157, 158, 159,
160, 161, 162, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 173, 174, -1, 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, -1, 218, 219,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, -1, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
350, -1, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
370, 371, 372, -1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, 1023, 3, 4, 5, 6, 7, -1,
9, 10, 11, 12, 13, 14, 15, -1, -1, 18,
-1, -1, 21, 22, -1, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, 38,
39, -1, 41, 42, 43, -1, 45, 46, -1, 48,
49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, 65, 66, -1, -1,
-1, -1, 71, 72, -1, -1, -1, 76, -1, -1,
79, -1, 81, -1, 83, 84, 85, 86, 87, 88,
-1, 90, -1, 92, -1, 94, -1, 96, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 157, 158,
159, 160, 161, 162, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 173, 174, -1, 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, -1, 218,
219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, -1, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, -1,
349, 350, -1, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, 1023, 3, 4, 5, 6, 7,
-1, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, -1, -1, 21, 22, -1, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
38, 39, -1, 41, 42, 43, -1, 45, 46, -1,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, 65, 66, -1,
-1, -1, -1, 71, 72, -1, -1, -1, 76, -1,
-1, 79, -1, 81, -1, 83, 84, 85, 86, 87,
88, -1, 90, -1, 92, -1, 94, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 157,
158, 159, 160, 161, 162, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 173, 174, -1, 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, -1,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, -1, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
-1, 349, 350, -1, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5, 6,
7, -1, 9, 10, 11, 12, 13, 14, 15, -1,
-1, 18, -1, -1, 21, 22, -1, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, 38, 39, -1, 41, 42, 43, -1, 45, 46,
-1, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, 65, 66,
-1, -1, -1, -1, 71, 72, -1, -1, -1, 76,
-1, -1, 79, -1, 81, -1, 83, 84, 85, 86,
87, 88, -1, 90, -1, 92, -1, 94, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
157, 158, 159, 160, 161, 162, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 173, 174, -1, 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,
-1, 218, 219, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, 232, 233, 234, 235, -1,
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, -1, 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, -1, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, -1,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, -1, 349, 350, -1, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5,
6, 7, -1, 9, 10, 11, 12, 13, 14, 15,
-1, -1, 18, -1, -1, 21, 22, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
-1, -1, 38, 39, -1, 41, 42, 43, -1, 45,
46, -1, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, 65,
66, -1, -1, -1, -1, 71, 72, -1, -1, -1,
76, -1, -1, 79, -1, 81, -1, 83, 84, 85,
86, 87, 88, -1, 90, -1, 92, -1, 94, -1,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 157, 158, 159, 160, 161, 162, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 173, 174, -1,
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, -1, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
-1, 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, -1,
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, -1, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
-1, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, 350, -1, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4,
5, 6, 7, -1, 9, 10, 11, 12, 13, 14,
15, -1, -1, 18, -1, -1, 21, 22, -1, -1,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, -1, -1, 38, 39, -1, 41, 42, 43, -1,
45, 46, -1, 48, 49, 50, 51, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
65, 66, -1, -1, -1, -1, 71, 72, -1, -1,
-1, 76, -1, -1, 79, -1, 81, -1, 83, 84,
85, 86, 87, 88, -1, 90, -1, 92, -1, 94,
-1, 96, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 157, 158, 159, 160, 161, 162, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 173, 174,
-1, 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, -1, 218, 219, 220, 221, 222, 223, 224,
225, 226, 227, 228, 229, 230, 231, 232, 233, 234,
235, -1, 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,
-1, 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, -1, 323, 324,
325, 326, 327, 328, 329, 330, 331, 332, 333, 334,
335, -1, 337, 338, 339, 340, 341, 342, 343, 344,
345, 346, 347, -1, 349, 350, -1, 352, 353, 354,
355, 356, 357, 358, 359, 360, 361, 362, 363, 364,
365, 366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, 939, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, 3,
4, 5, 6, 7, -1, 9, 10, 11, 12, 13,
14, 15, -1, -1, 18, -1, -1, 21, 22, -1,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, 38, 39, -1, 41, 42, 43,
-1, 45, 46, -1, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, 65, 66, -1, -1, -1, -1, 71, 72, -1,
-1, -1, 76, -1, -1, 79, -1, 81, -1, 83,
84, 85, 86, 87, 88, -1, 90, -1, 92, -1,
94, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 157, 158, 159, 160, 161, 162, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 173,
174, -1, 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, -1, 218, 219, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
234, 235, -1, 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, -1, 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, -1, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, -1, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, -1, 349, 350, -1, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 368, 369, 370, 371, 372, -1,
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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 1023,
3, 4, 5, 6, 7, -1, 9, 10, 11, 12,
13, 14, 15, -1, -1, 18, -1, -1, 21, 22,
-1, -1, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, -1, -1, 38, 39, -1, 41, 42,
43, -1, 45, 46, -1, 48, 49, 50, 51, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, 65, 66, -1, -1, -1, -1, 71, 72,
-1, -1, -1, 76, -1, -1, 79, -1, 81, -1,
83, 84, 85, 86, 87, 88, -1, 90, -1, 92,
-1, 94, -1, 96, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 157, 158, 159, 160, 161, 162,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
173, 174, -1, 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, -1, 218, 219, 220, 221, 222,
223, 224, 225, 226, 227, 228, 229, 230, 231, 232,
233, 234, 235, -1, 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, -1, 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, -1,
323, 324, 325, 326, 327, 328, 329, 330, 331, 332,
333, 334, 335, -1, 337, 338, 339, 340, 341, 342,
343, 344, 345, 346, 347, -1, 349, 350, -1, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
-1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, 939, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
1023, 3, 4, 5, 6, 7, -1, 9, 10, 11,
12, 13, 14, 15, -1, -1, 18, -1, -1, 21,
22, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, -1, -1, 38, 39, -1, 41,
42, 43, -1, 45, 46, -1, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, 65, 66, -1, -1, -1, -1, 71,
72, -1, -1, -1, 76, -1, -1, 79, -1, 81,
-1, 83, 84, 85, 86, 87, 88, -1, 90, -1,
92, -1, 94, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 157, 158, 159, 160, 161,
162, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 173, 174, -1, 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, -1, 218, 219, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
232, 233, 234, 235, -1, 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, -1, 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,
-1, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, -1, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, -1, 349, 350, -1,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, 1023, 3, 4, 5, 6, 7, -1, 9, 10,
11, 12, 13, 14, 15, -1, -1, 18, -1, -1,
21, 22, -1, -1, 25, 26, 27, 28, 29, 30,
31, 32, 33, 34, 35, -1, -1, 38, 39, -1,
41, 42, 43, -1, 45, 46, -1, 48, 49, 50,
51, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, 65, 66, -1, -1, -1, -1,
71, 72, -1, -1, -1, 76, -1, -1, 79, -1,
81, -1, 83, 84, 85, 86, 87, 88, -1, 90,
-1, 92, -1, 94, -1, 96, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 157, 158, 159, 160,
161, 162, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 173, 174, -1, 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, -1, 218, 219, 220,
221, 222, 223, 224, 225, 226, 227, 228, 229, 230,
231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329, 330,
331, 332, 333, 334, 335, -1, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, -1, 349, 350,
-1, 352, 353, 354, 355, 356, 357, 358, 359, 360,
361, 362, 363, 364, 365, 366, 367, 368, 369, 370,
371, 372, -1, 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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, 939, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
-1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, 1023, 3, 4, 5, 6, 7, -1, 9,
10, 11, 12, 13, 14, 15, -1, -1, 18, -1,
-1, 21, 22, -1, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, 38, 39,
-1, 41, 42, 43, -1, 45, 46, -1, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, 65, 66, -1, -1, -1,
-1, 71, 72, -1, -1, -1, 76, -1, -1, 79,
-1, 81, -1, 83, 84, 85, 86, 87, 88, -1,
90, -1, 92, -1, 94, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 157, 158, 159,
160, 161, 162, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 173, 174, -1, 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, -1, 218, 219,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, -1, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
350, -1, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
370, 371, 372, -1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, 1023, 3, 4, 5, 6, 7, -1,
9, 10, 11, 12, 13, 14, 15, -1, -1, 18,
-1, -1, 21, 22, -1, -1, 25, 26, 27, 28,
29, 30, 31, 32, 33, 34, 35, -1, -1, 38,
39, -1, 41, 42, 43, -1, 45, 46, -1, 48,
49, 50, 51, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, 65, 66, -1, -1,
-1, -1, 71, 72, -1, -1, -1, 76, -1, -1,
79, -1, 81, -1, 83, 84, 85, 86, 87, 88,
-1, 90, -1, 92, -1, 94, -1, 96, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 157, 158,
159, 160, 161, 162, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 173, 174, -1, 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, -1, 218,
219, 220, 221, 222, 223, 224, 225, 226, 227, 228,
229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328,
329, 330, 331, 332, 333, 334, 335, -1, 337, 338,
339, 340, 341, 342, 343, 344, 345, 346, 347, -1,
349, 350, -1, 352, 353, 354, 355, 356, 357, 358,
359, 360, 361, 362, 363, 364, 365, 366, 367, 368,
369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
939, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, 1023, 3, 4, 5, 6, 7,
-1, 9, 10, 11, 12, 13, 14, 15, -1, -1,
18, -1, -1, 21, 22, -1, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
38, 39, -1, 41, 42, 43, -1, 45, 46, -1,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, 65, 66, -1,
-1, -1, -1, 71, 72, -1, -1, -1, 76, -1,
-1, 79, -1, 81, -1, -1, 84, 85, 86, 87,
88, -1, 90, -1, 92, -1, 94, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 157,
158, 159, 160, 161, 162, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 173, 174, -1, 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, -1,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, -1, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
-1, 349, 350, -1, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, 939, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5, 6,
7, -1, 9, 10, 11, 12, 13, 14, 15, -1,
-1, 18, -1, -1, 21, 22, -1, -1, 25, 26,
27, 28, 29, 30, 31, 32, 33, 34, 35, -1,
-1, 38, 39, -1, 41, 42, 43, -1, 45, 46,
-1, 48, 49, 50, 51, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, 65, 66,
-1, -1, -1, -1, 71, 72, -1, -1, -1, 76,
-1, -1, 79, -1, 81, -1, -1, 84, 85, 86,
87, 88, -1, 90, -1, 92, -1, 94, -1, 96,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
157, 158, 159, 160, 161, 162, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 173, 174, -1, 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,
-1, 218, 219, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, 232, 233, 234, 235, -1,
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, -1, 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, -1, 323, 324, 325, 326,
327, 328, 329, 330, 331, 332, 333, 334, 335, -1,
337, 338, 339, 340, 341, 342, 343, 344, 345, 346,
347, -1, 349, 350, -1, 352, 353, 354, 355, 356,
357, 358, 359, 360, 361, 362, 363, 364, 365, 366,
367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, 939, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, 1023, 3, 4, 5,
6, 7, -1, 9, 10, 11, 12, 13, 14, 15,
-1, -1, 18, -1, -1, 21, 22, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
-1, -1, 38, 39, -1, 41, 42, 43, -1, 45,
46, -1, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, 65,
66, -1, -1, -1, -1, 71, 72, -1, -1, -1,
76, -1, -1, 79, -1, 81, -1, -1, 84, 85,
86, 87, 88, -1, 90, -1, 92, -1, 94, -1,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 157, 158, 159, 160, 161, 162, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 173, 174, -1,
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, -1, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
-1, 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, -1,
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, -1, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
-1, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, 350, -1, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, 939, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, 1023, -1, -1,
-1, -1, -1, 21, 22, -1, -1, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, -1, -1,
38, 39, -1, 41, 42, 43, -1, 45, 46, -1,
48, 49, 50, 51, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, -1, -1, 67,
-1, -1, -1, 71, 72, -1, -1, -1, -1, -1,
-1, -1, -1, 81, -1, -1, -1, 85, 86, 87,
88, -1, 90, -1, 92, -1, 94, -1, 96, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 173, 174, -1, 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, -1,
218, 219, 220, 221, 222, 223, 224, 225, 226, 227,
228, 229, 230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327,
328, 329, 330, 331, 332, 333, 334, 335, -1, 337,
338, 339, 340, 341, 342, 343, 344, 345, 346, 347,
-1, 349, 350, -1, 352, 353, 354, 355, 356, 357,
358, 359, 360, 361, 362, 363, 364, 365, 366, 367,
368, 369, 370, 371, 372, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, -1, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, -1, -1, -1, -1, -1,
-1, 21, 22, -1, -1, 25, 26, 27, 28, 29,
30, 31, 32, 33, 34, 35, -1, -1, 38, 39,
-1, 41, 42, 43, -1, 45, 46, -1, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, -1, -1, 67, -1, -1,
-1, 71, 72, -1, -1, -1, -1, -1, -1, -1,
-1, 81, -1, -1, -1, 85, 86, 87, 88, -1,
90, -1, 92, -1, 94, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 173, 174, -1, 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, -1, 218, 219,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, -1, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
350, -1, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
370, 371, 372, -1, 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,
-1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, -1,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, -1, -1, 38, 39, -1, 41,
42, 43, -1, 45, 46, -1, 48, 49, 50, 51,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, 67, -1, -1, -1, 71,
72, -1, -1, -1, -1, -1, -1, -1, -1, 81,
-1, -1, -1, 85, 86, 87, 88, -1, 90, -1,
92, -1, 94, -1, 96, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 173, 174, -1, 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, -1, 218, 219, 220, 221,
222, 223, 224, 225, 226, 227, 228, 229, 230, 231,
232, 233, 234, 235, -1, 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, -1, 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,
-1, 323, 324, 325, 326, 327, 328, 329, 330, 331,
332, 333, 334, 335, -1, 337, 338, 339, 340, 341,
342, 343, 344, 345, 346, 347, -1, 349, 350, -1,
352, 353, 354, 355, 356, 357, 358, 359, 360, 361,
362, 363, 364, 365, 366, 367, 368, 369, 370, 371,
372, -1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, -1, -1, -1, -1, -1, -1, 21, 22, -1,
-1, 25, 26, 27, 28, 29, 30, 31, 32, 33,
34, 35, -1, -1, 38, 39, -1, 41, 42, 43,
-1, 45, 46, -1, 48, 49, 50, 51, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 71, 72, -1,
-1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
-1, 85, 86, 87, 88, -1, 90, -1, 92, -1,
94, -1, 96, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 173,
174, -1, 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, -1, 218, 219, 220, 221, 222, 223,
224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
234, 235, -1, 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, -1, 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, -1, 323,
324, 325, 326, 327, 328, 329, 330, 331, 332, 333,
334, 335, -1, 337, 338, 339, 340, 341, 342, 343,
344, 345, 346, 347, -1, 349, 350, -1, 352, 353,
354, 355, 356, 357, 358, 359, 360, 361, 362, 363,
364, 365, 366, 367, 368, 369, 370, 371, 372, -1,
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, -1, 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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, -1, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1,
-1, -1, -1, -1, -1, 21, 22, -1, -1, 25,
26, 27, 28, 29, 30, 31, 32, 33, 34, 35,
-1, -1, 38, 39, -1, 41, 42, 43, -1, 45,
46, -1, 48, 49, 50, 51, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 71, 72, -1, -1, -1,
-1, -1, -1, -1, -1, 81, -1, -1, -1, 85,
86, 87, 88, -1, 90, -1, 92, -1, 94, -1,
96, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 173, 174, -1,
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, -1, 218, 219, 220, 221, 222, 223, 224, 225,
226, 227, 228, 229, 230, 231, 232, 233, 234, 235,
-1, 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, -1,
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, -1, 323, 324, 325,
326, 327, 328, 329, 330, 331, 332, 333, 334, 335,
-1, 337, 338, 339, 340, 341, 342, 343, 344, 345,
346, 347, -1, 349, 350, -1, 352, 353, 354, 355,
356, 357, 358, 359, 360, 361, 362, 363, 364, 365,
366, 367, 368, 369, 370, 371, 372, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, -1, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1,
-1, -1, -1, 21, 22, -1, -1, 25, 26, -1,
28, 29, -1, -1, 32, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 79, -1, 81, -1, 83, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 94, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 163, 164, 165, 166, 167,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 213, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 252, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 312, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 322, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 354, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, -1, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, -1, -1, -1, -1, -1,
-1, 21, 22, -1, -1, 25, 26, -1, 28, 29,
-1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
50, -1, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 79,
-1, 81, -1, -1, -1, -1, -1, -1, -1, -1,
90, -1, -1, -1, 94, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 163, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 194, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 248, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 322, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 351, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 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,
-1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, -1,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, -1, 28, 29, -1, -1,
32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
-1, -1, -1, -1, -1, -1, -1, -1, 90, -1,
-1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
192, -1, 194, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 235, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 248, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 298, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
14, 15, -1, -1, -1, -1, -1, 21, 22, -1,
-1, 25, 26, -1, 28, 29, -1, -1, 32, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 190, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 292, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, 939, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 3, 4,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
15, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
175, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 211, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, 843, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 3, 4, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 21, 22, -1, -1, -1,
-1, -1, -1, 29, -1, -1, 32, -1, -1, -1,
-1, 37, 38, 39, 40, 41, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 81, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 178, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, -1, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1,
-1, -1, -1, 21, 22, -1, -1, 25, 26, -1,
28, 29, -1, -1, 32, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 79, -1, 81, -1, 83, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 94, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 163, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 322, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, -1, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, -1, -1, -1, -1, -1, -1,
-1, 21, 22, -1, -1, 25, 26, 27, 28, 29,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
80, 81, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 94, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 178, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -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, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 294, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 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,
-1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, -1,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, -1, 28, 29, -1, -1,
32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 79, 80, 81,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 163, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
322, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, -1, -1, -1, -1, -1, -1, 21, 22, -1,
-1, 25, 26, -1, 28, 29, -1, -1, 32, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, 90, -1, -1, -1,
94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
194, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 248, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 351, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
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, -1, 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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, -1, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1,
-1, -1, -1, -1, -1, 21, 22, -1, -1, 25,
26, -1, 28, 29, -1, -1, 32, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 79, -1, 81, -1, 83, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 221, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, -1, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1,
-1, -1, -1, 21, 22, -1, -1, 25, 26, -1,
28, 29, -1, -1, 32, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 60, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 79, -1, 81, -1, 83, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 94, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1,
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, -1, 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, -1, 787,
788, 789, 790, 791, 792, 793, 794, 795, 796, 797,
798, 799, 800, 801, 802, 803, 804, 805, 806, 807,
808, 809, 810, 811, 812, 813, 814, 815, 816, 817,
818, 819, 820, 821, 822, 823, 824, 825, 826, 827,
828, 829, 830, 831, 832, 833, 834, 835, 836, 837,
838, 839, 840, -1, -1, -1, 844, 845, 846, 847,
848, 849, 850, 851, 852, 853, 854, 855, 856, 857,
858, 859, 860, 861, 862, 863, 864, 865, 866, 867,
868, 869, 870, 871, 872, 873, 874, 875, 876, 877,
878, 879, 880, 881, 882, 883, 884, 885, 886, 887,
888, 889, 890, 891, 892, 893, 894, 895, 896, 897,
898, 899, 900, 901, 902, 903, 904, 905, 906, 907,
908, 909, 910, 911, 912, 913, 914, 915, 916, 917,
918, 919, 920, 921, 922, 923, 924, 925, 926, 927,
928, 929, 930, 931, 932, 933, 934, 935, 936, 937,
938, -1, 940, 941, 942, 943, 944, 945, 946, 947,
948, 949, 950, 951, 952, 953, 954, 955, 956, 957,
958, 959, 960, 961, 962, 963, 964, 965, 966, 967,
968, 969, 970, 971, 972, 973, 974, 975, 976, 977,
978, 979, 980, 981, 982, 983, 984, 985, 986, 987,
988, 989, 990, 991, 992, 993, 994, 995, 996, 997,
998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007,
1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017,
1018, 1019, 1020, 1021, 14, 15, -1, -1, -1, -1,
-1, 21, 22, -1, -1, 25, 26, -1, 28, 29,
-1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 81, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 94, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1,
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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, 939,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, 3, 4, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
201, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
-1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 3, 4, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, -1, 28, 29, -1, -1,
32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 175, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, -1,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
3, 4, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 175, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
15, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 80, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 236,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, 83, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 175, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
-1, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, 3, 4, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, -1, 28, 29, -1, -1,
32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 81,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, -1, -1, -1, -1, -1, -1, 21, 22, -1,
-1, 25, 26, -1, 28, 29, -1, -1, 32, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 175, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
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, -1, 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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, -1, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 3, 4,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
67, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, 67, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 79, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 79, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 79, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 79, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, 67, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, -1, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, 3, 4, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 21, 22, -1, -1, 25, 26, -1, 28, 29,
-1, -1, 32, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
60, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 81, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 94, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 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,
-1, 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,
-1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789,
790, 791, 792, 793, 794, 795, 796, 797, 798, 799,
800, 801, 802, 803, 804, 805, 806, 807, 808, 809,
810, 811, 812, 813, 814, 815, 816, 817, 818, 819,
820, 821, 822, 823, 824, 825, 826, 827, 828, 829,
830, 831, 832, 833, 834, 835, 836, 837, 838, 839,
840, -1, -1, -1, 844, 845, 846, 847, 848, 849,
850, 851, 852, 853, 854, 855, 856, 857, 858, 859,
860, 861, 862, 863, 864, 865, 866, 867, 868, 869,
870, 871, 872, 873, 874, 875, 876, 877, 878, 879,
880, 881, 882, 883, 884, 885, 886, 887, 888, 889,
890, 891, 892, 893, 894, 895, 896, 897, 898, 899,
900, 901, 902, 903, 904, 905, 906, 907, 908, 909,
910, 911, 912, 913, 914, 915, 916, 917, 918, 919,
920, 921, 922, 923, 924, 925, 926, 927, 928, 929,
930, 931, 932, 933, 934, 935, 936, 937, 938, -1,
940, 941, 942, 943, 944, 945, 946, 947, 948, 949,
950, 951, 952, 953, 954, 955, 956, 957, 958, 959,
960, 961, 962, 963, 964, 965, 966, 967, 968, 969,
970, 971, 972, 973, 974, 975, 976, 977, 978, 979,
980, 981, 982, 983, 984, 985, 986, 987, 988, 989,
990, 991, 992, 993, 994, 995, 996, 997, 998, 999,
1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009,
1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019,
1020, 1021, -1, -1, -1, -1, -1, -1, -1, 21,
22, -1, -1, 25, 26, -1, 28, 29, -1, -1,
32, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 60, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 79, -1, 81,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 94, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 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, -1, 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, -1, 601,
602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791,
792, 793, 794, 795, 796, 797, 798, 799, 800, 801,
802, 803, 804, 805, 806, 807, 808, 809, 810, 811,
812, 813, 814, 815, 816, 817, 818, 819, 820, 821,
822, 823, 824, 825, 826, 827, 828, 829, 830, 831,
832, 833, 834, 835, 836, 837, 838, 839, 840, -1,
-1, -1, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, -1, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3,
1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021,
-1, -1, -1, -1, -1, -1, -1, 21, 22, -1,
-1, 25, 26, -1, 28, 29, -1, -1, 32, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 60, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 79, -1, 81, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
94, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
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, -1, 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, -1, 601, 602, 603,
604, -1, 606, -1, 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,
-1, 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, -1, 787, 788, 789, 790, 791, 792, 793,
794, 795, 796, 797, 798, 799, 800, 801, 802, 803,
804, 805, 806, 807, 808, 809, 810, 811, 812, 813,
814, 815, 816, 817, 818, 819, 820, 821, 822, 823,
824, 825, 826, 827, 828, 829, 830, 831, 832, 833,
834, 835, 836, 837, 838, 839, 840, -1, -1, -1,
844, 845, 846, 847, 848, 849, 850, 851, 852, 853,
854, 855, 856, 857, 858, 859, 860, 861, 862, 863,
864, 865, 866, 867, 868, 869, 870, 871, 872, 873,
874, 875, 876, 877, 878, 879, 880, 881, 882, 883,
884, 885, 886, 887, 888, 889, 890, 891, 892, 893,
894, 895, 896, 897, 898, 899, 900, 901, 902, 903,
904, 905, 906, 907, 908, 909, 910, 911, 912, 913,
914, 915, 916, 917, 918, 919, 920, 921, 922, 923,
924, 925, 926, 927, 928, 929, 930, 931, 932, 933,
934, 935, 936, 937, 938, -1, 940, 941, 942, 943,
944, 945, 946, 947, 948, 949, 950, 951, 952, 953,
954, 955, 956, 957, 958, 959, 960, 961, 962, 963,
964, 965, 966, 967, 968, 969, 970, 971, 972, 973,
974, 975, 976, 977, 978, 979, 980, 981, 982, 983,
984, 985, 986, 987, 988, 989, 990, 991, 992, 993,
994, 995, 996, 997, 998, 999, 1000, 1001, 1002, 1003,
1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013,
1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1,
-1, -1, -1, -1, -1, 21, 22, -1, -1, 25,
26, -1, 28, 29, -1, -1, 32, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 60, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 80, 81, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 94, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1,
606, -1, 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, -1, 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,
-1, 787, 788, 789, 790, 791, 792, 793, 794, 795,
796, 797, 798, 799, 800, 801, 802, 803, 804, 805,
806, 807, 808, 809, 810, 811, 812, 813, 814, 815,
816, 817, 818, 819, 820, 821, 822, 823, 824, 825,
826, 827, 828, 829, 830, 831, 832, 833, 834, 835,
836, 837, 838, 839, 840, -1, -1, -1, 844, 845,
846, 847, 848, 849, 850, 851, 852, 853, 854, 855,
856, 857, 858, 859, 860, 861, 862, 863, 864, 865,
866, 867, 868, 869, 870, 871, 872, 873, 874, 875,
876, 877, 878, 879, 880, 881, 882, 883, 884, 885,
886, 887, 888, 889, 890, 891, 892, 893, 894, 895,
896, 897, 898, 899, 900, 901, 902, 903, 904, 905,
906, 907, 908, 909, 910, 911, 912, 913, 914, 915,
916, 917, 918, 919, 920, 921, 922, 923, 924, 925,
926, 927, 928, 929, 930, 931, 932, 933, 934, 935,
936, 937, 938, -1, 940, 941, 942, 943, 944, 945,
946, 947, 948, 949, 950, 951, 952, 953, 954, 955,
956, 957, 958, 959, 960, 961, 962, 963, 964, 965,
966, 967, 968, 969, 970, 971, 972, 973, 974, 975,
976, 977, 978, 979, 980, 981, 982, 983, 984, 985,
986, 987, 988, 989, 990, 991, 992, 993, 994, 995,
996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005,
1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014, 1015,
1016, 1017, 1018, 1019, 1020, 1021, 3, -1, -1, -1,
-1, -1, -1, -1, -1, 12, -1, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
79, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, 15, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, 15, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 297, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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,
-1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 178,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 234, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 247, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 298,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 356, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
25, 26, -1, 28, 29, -1, -1, 32, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, 15, -1,
-1, -1, -1, -1, 21, 22, -1, -1, 25, 26,
-1, 28, 29, -1, -1, 32, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 178,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 234, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 247, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 356, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 178, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 234, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 247, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 356, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 178, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 234, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 247, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 356, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 178, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 234,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 247, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 356, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, 3, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, -1, -1, -1,
-1, -1, -1, -1, 21, 22, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 60, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 81, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 94, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 178, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 234, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
247, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 356,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606,
-1, 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, -1, 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, -1,
787, 788, 789, 790, 791, 792, 793, 794, 795, 796,
797, 798, 799, 800, 801, 802, 803, 804, 805, 806,
807, 808, 809, 810, 811, 812, 813, 814, 815, 816,
817, 818, 819, 820, 821, 822, 823, 824, 825, 826,
827, 828, 829, 830, 831, 832, 833, 834, 835, 836,
837, 838, 839, 840, -1, -1, -1, 844, 845, 846,
847, 848, 849, 850, 851, 852, 853, 854, 855, 856,
857, 858, 859, 860, 861, 862, 863, 864, 865, 866,
867, 868, 869, 870, 871, 872, 873, 874, 875, 876,
877, 878, 879, 880, 881, 882, 883, 884, 885, 886,
887, 888, 889, 890, 891, 892, 893, 894, 895, 896,
897, 898, 899, 900, 901, 902, 903, 904, 905, 906,
907, 908, 909, 910, 911, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 923, 924, 925, 926,
927, 928, 929, 930, 931, 932, 933, 934, 935, 936,
937, 938, -1, 940, 941, 942, 943, 944, 945, 946,
947, 948, 949, 950, 951, 952, 953, 954, 955, 956,
957, 958, 959, 960, 961, 962, 963, 964, 965, 966,
967, 968, 969, 970, 971, 972, 973, 974, 975, 976,
977, 978, 979, 980, 981, 982, 983, 984, 985, 986,
987, 988, 989, 990, 991, 992, 993, 994, 995, 996,
997, 998, 999, 1000, 1001, 1002, 1003, 1004, 1005, 1006,
1007, 1008, 1009, 1010, 3, 1012, 1013, 1014, 1015, 1016,
1017, 1018, 1019, 1020, 1021, -1, -1, -1, -1, -1,
-1, -1, 21, 22, -1, -1, 25, 26, -1, 28,
29, -1, -1, 32, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 60, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 81, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 94, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604, -1, 606, -1, 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, -1, 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,
-1, 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, -1, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, -1, -1, -1, 844, 845, 846, 847, 848,
849, 850, 851, 852, 853, 854, 855, 856, 857, 858,
859, 860, 861, 862, 863, 864, 865, 866, 867, 868,
869, 870, 871, 872, 873, 874, 875, 876, 877, 878,
879, 880, 881, 882, 883, 884, 885, 886, 887, 888,
889, 890, 891, 892, 893, 894, 895, 896, 897, 898,
899, 900, 901, 902, 903, 904, 905, 906, 907, 908,
909, 910, 911, 912, 913, 914, 915, 916, 917, 918,
919, 920, 921, 922, 923, 924, 925, 926, 927, 928,
929, 930, 931, 932, 933, 934, 935, 936, 937, 938,
-1, 940, 941, 942, 943, 944, 945, 946, 947, 948,
949, 950, 951, 952, 953, 954, 955, 956, 957, 958,
959, 960, 961, 962, 963, 964, 965, 966, 967, 968,
969, 970, 971, 972, 973, 974, 975, 976, 977, 978,
979, 980, 981, 982, 983, 984, 985, 986, 987, 988,
989, 990, 991, 992, 993, 994, 995, 996, 997, 998,
999, 1000, 1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008,
1009, 1010, 3, 1012, 1013, 1014, 1015, 1016, 1017, 1018,
1019, 1020, 1021, -1, -1, -1, -1, -1, -1, -1,
21, 22, -1, -1, 25, 26, -1, 28, 29, -1,
-1, 32, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 60,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
81, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 94, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 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, -1,
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, -1,
601, 602, 603, 604, -1, 606, -1, 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, -1, 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, -1, 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, -1, 787, 788, 789, 790,
791, 792, 793, 794, 795, 796, 797, 798, 799, 800,
801, 802, 803, 804, 805, 806, 807, 808, 809, 810,
811, 812, 813, 814, 815, 816, 817, 818, 819, 820,
821, 822, 823, 824, 825, 826, 827, 828, 829, 830,
831, 832, 833, 834, 835, 836, 837, 838, 839, 840,
-1, -1, -1, 844, 845, 846, 847, 848, 849, 850,
851, 852, 853, 854, 855, 856, 857, 858, 859, 860,
861, 862, 863, 864, 865, 866, 867, 868, 869, 870,
871, 872, 873, 874, 875, 876, 877, 878, 879, 880,
881, 882, 883, 884, 885, 886, 887, 888, 889, 890,
891, 892, 893, 894, 895, 896, 897, 898, 899, 900,
901, 902, 903, 904, 905, 906, 907, 908, 909, 910,
911, 912, 913, 914, 915, 916, 917, 918, 919, 920,
921, 922, 923, 924, 925, 926, 927, 928, 929, 930,
931, 932, 933, 934, 935, 936, 937, 938, -1, 940,
941, 942, 943, 944, 945, 946, 947, 948, 949, 950,
951, 952, 953, 954, 955, 956, 957, 958, 959, 960,
961, 962, 963, 964, 965, 966, 967, 968, 969, 970,
971, 972, 973, 974, 975, 976, 977, 978, 979, 980,
981, 982, 983, 984, 985, 986, 987, 988, 989, 990,
991, 992, 993, 994, 995, 996, 997, 998, 999, 1000,
1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010,
3, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020,
1021, -1, -1, -1, -1, -1, -1, -1, 21, 22,
-1, -1, 25, 26, -1, 28, 29, -1, -1, 32,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 60, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 81, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 94, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 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, -1, 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, -1, 601, 602,
603, 604, -1, 606, -1, 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, -1, 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, -1, 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, -1, 787, 788, 789, 790, 791, 792,
793, 794, 795, 796, 797, 798, 799, 800, 801, 802,
803, 804, 805, 806, 807, 808, 809, 810, 811, 812,
813, 814, 815, 816, 817, 818, 819, 820, 821, 822,
823, 824, 825, 826, 827, 828, 829, 830, 831, 832,
833, 834, 835, 836, 837, 838, 839, 840, -1, -1,
-1, 844, 845, 846, 847, 848, 849, 850, 851, 852,
853, 854, 855, 856, 857, 858, 859, 860, 861, 862,
863, 864, 865, 866, 867, 868, 869, 870, 871, 872,
873, 874, 875, 876, 877, 878, 879, 880, 881, 882,
883, 884, 885, 886, 887, 888, 889, 890, 891, 892,
893, 894, 895, 896, 897, 898, 899, 900, 901, 902,
903, 904, 905, 906, 907, 908, 909, 910, 911, 912,
913, 914, 915, 916, 917, 918, 919, 920, 921, 922,
923, 924, 925, 926, 927, 928, 929, 930, 931, 932,
933, 934, 935, 936, 937, 938, -1, 940, 941, 942,
943, 944, 945, 946, 947, 948, 949, 950, 951, 952,
953, 954, 955, 956, 957, 958, 959, 960, 961, 962,
963, 964, 965, 966, 967, 968, 969, 970, 971, 972,
973, 974, 975, 976, 977, 978, 979, 980, 981, 982,
983, 984, 985, 986, 987, 988, 989, 990, 991, 992,
993, 994, 995, 996, 997, 998, 999, 1000, 1001, 1002,
1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 3, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, -1,
-1, -1, -1, -1, -1, -1, 21, 22, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 60, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 81, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 94,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 178, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 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, -1, 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, -1, 601, 602, 603, 604,
-1, 606, -1, 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, -1,
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, -1, 787, 788, 789, 790, 791, 792, 793, 794,
795, 796, 797, 798, 799, 800, 801, 802, 803, 804,
805, 806, 807, 808, 809, 810, 811, 812, 813, 814,
815, 816, 817, 818, 819, 820, 821, 822, 823, 824,
825, 826, 827, 828, 829, 830, 831, 832, 833, 834,
835, 836, 837, 838, 839, 840, -1, -1, -1, 844,
845, 846, 847, 848, 849, 850, 851, 852, 853, 854,
855, 856, 857, 858, 859, 860, 861, 862, 863, 864,
865, 866, 867, 868, 869, 870, 871, 872, 873, 874,
875, 876, 877, 878, 879, 880, 881, 882, 883, 884,
885, 886, 887, 888, 889, 890, 891, 892, 893, 894,
895, 896, 897, 898, 899, 900, 901, 902, 903, 904,
905, 906, 907, 908, 909, 910, 911, 912, 913, 914,
915, 916, 917, 918, 919, 920, 921, 922, 923, 924,
925, 926, 927, 928, 929, 930, 931, 932, 933, 934,
935, 936, 937, 938, -1, 940, 941, 942, 943, 944,
945, 946, 947, 948, 949, 950, 951, 952, 953, 954,
955, 956, 957, 958, 959, 960, 961, 962, 963, 964,
965, 966, 967, 968, 969, 970, 971, 972, 973, 974,
975, 976, 977, 978, 979, 980, 981, 982, 983, 984,
985, 986, 987, 988, 989, 990, 991, 992, 993, 994,
995, 996, 997, 998, 999, 1000, 1001, 1002, 1003, 1004,
1005, 1006, 1007, 1008, 1009, 1010, -1, 1012, 1013, 1014,
1015, 1016, 1017, 1018, 1019, 1020, 1021, 27, -1, -1,
30, 31, -1, 33, 34, 35, -1, -1, 38, 39,
-1, 41, 42, 43, -1, 45, 46, -1, 48, 49,
50, 51, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 71, 72, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 85, 86, 87, 88, -1,
90, -1, 92, -1, -1, -1, 96, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 173, 174, -1, 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, -1, 218, 219,
220, 221, 222, 223, 224, 225, 226, 227, 228, 229,
230, 231, 232, 233, 234, 235, -1, 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, -1, 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, -1, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, -1, 337, 338, 339,
340, 341, 342, 343, 344, 345, 346, 347, -1, 349,
350, -1, 352, 353, 354, 355, 356, 357, 358, 359,
360, 361, 362, 363, 364, 365, 366, 367, 368, 369,
370, 371, 372
};
/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
symbol of state STATE-NUM. */
static const yytype_uint16 yystos[] =
{
0, 79, 163, 164, 165, 166, 167, 170, 171, 172,
176, 197, 213, 214, 215, 220, 228, 239, 252, 264,
270, 291, 302, 309, 310, 312, 317, 322, 325, 326,
352, 354, 356, 407, 453, 489, 506, 529, 634, 768,
824, 851, 902, 967, 1016, 1028, 1029, 1031, 1099, 1101,
1104, 1113, 1114, 1115, 1122, 1123, 1124, 1125, 1126, 1134,
1135, 1137, 1138, 1150, 1151, 1156, 1160, 1161, 1164, 1165,
1283, 1284, 1285, 1294, 1301, 1318, 1320, 1323, 1324, 1332,
1333, 1338, 1339, 1340, 1341, 1342, 1343, 1344, 1345, 1346,
1347, 1348, 1349, 1350, 1351, 1352, 1353, 1354, 1454, 1455,
1456, 1458, 1459, 1462, 1476, 1489, 1491, 1493, 1496, 1498,
1499, 1506, 1507, 1508, 1509, 1510, 1511, 1512, 1513, 1514,
1515, 1522, 1523, 1526, 1534, 1538, 1539, 1540, 1541, 1544,
1565, 1566, 1567, 1568, 1629, 1630, 1631, 1635, 1636, 1637,
1340, 1341, 1, 3, 99, 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, 130, 131, 132, 133, 134, 135, 136,
139, 140, 141, 142, 143, 144, 145, 146, 147, 148,
149, 150, 151, 152, 153, 154, 155, 156, 171, 742,
901, 1372, 1373, 1374, 1376, 1372, 1372, 1372, 1372, 1372,
203, 319, 342, 373, 504, 534, 814, 936, 954, 991,
1127, 38, 351, 373, 381, 814, 818, 952, 954, 991,
1127, 1159, 1162, 1296, 1302, 248, 373, 534, 555, 700,
784, 814, 818, 952, 954, 991, 1127, 1152, 1297, 1317,
175, 176, 197, 213, 220, 239, 248, 252, 322, 326,
354, 355, 544, 773, 930, 1516, 1517, 1518, 3, 4,
5, 6, 7, 9, 10, 11, 12, 13, 14, 15,
18, 21, 22, 25, 26, 27, 28, 29, 30, 31,
32, 33, 34, 35, 38, 39, 41, 42, 43, 45,
46, 48, 49, 50, 51, 60, 65, 66, 71, 72,
76, 79, 81, 83, 84, 85, 86, 87, 88, 90,
92, 94, 96, 157, 158, 159, 160, 161, 162, 173,
174, 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, 218, 219, 220, 221, 222, 223, 224, 225, 226,
227, 228, 229, 230, 231, 232, 233, 234, 235, 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, 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, 323, 324, 325, 326, 327, 328, 329,
330, 331, 332, 333, 334, 335, 337, 338, 339, 340,
341, 342, 343, 344, 345, 346, 347, 349, 350, 352,
353, 354, 355, 356, 357, 358, 359, 360, 361, 362,
363, 364, 365, 366, 367, 368, 369, 370, 371, 372,
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, 601, 602, 603, 604,
606, 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, 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, 787, 788,
789, 790, 791, 792, 793, 794, 795, 796, 797, 798,
799, 800, 801, 802, 803, 804, 805, 806, 807, 808,
809, 810, 811, 812, 813, 814, 815, 816, 817, 818,
819, 820, 821, 822, 823, 824, 825, 826, 827, 828,
829, 830, 831, 832, 833, 834, 835, 836, 837, 838,
839, 840, 844, 845, 846, 847, 848, 849, 850, 851,
852, 853, 854, 855, 856, 857, 858, 859, 860, 861,
862, 863, 864, 865, 866, 867, 868, 869, 870, 871,
872, 873, 874, 875, 876, 877, 878, 879, 880, 881,
882, 883, 884, 885, 886, 887, 888, 889, 890, 891,
892, 893, 894, 895, 896, 897, 898, 899, 900, 901,
902, 903, 904, 905, 906, 907, 908, 909, 910, 911,
912, 913, 914, 915, 916, 917, 918, 919, 920, 921,
922, 923, 924, 925, 926, 927, 928, 929, 930, 931,
932, 933, 934, 935, 936, 937, 938, 939, 940, 941,
942, 943, 944, 945, 946, 947, 948, 949, 950, 951,
952, 953, 954, 955, 956, 957, 958, 959, 960, 961,
962, 963, 964, 965, 966, 967, 968, 969, 970, 971,
972, 973, 974, 975, 976, 977, 978, 979, 980, 981,
982, 983, 984, 985, 986, 987, 988, 989, 990, 991,
992, 993, 994, 995, 996, 997, 998, 999, 1000, 1001,
1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1012,
1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1023,
1035, 1036, 1037, 1038, 1040, 1042, 1043, 1044, 1046, 1047,
1049, 1051, 1054, 1055, 1080, 1081, 1082, 1083, 1084, 1085,
1086, 1087, 1088, 1089, 1091, 1340, 1639, 1640, 1641, 1644,
1645, 1646, 1647, 1648, 481, 342, 954, 248, 342, 838,
954, 1127, 851, 342, 991, 175, 1516, 3, 14, 15,
21, 22, 81, 190, 292, 378, 386, 387, 388, 389,
395, 427, 431, 445, 448, 469, 474, 476, 478, 484,
485, 486, 490, 497, 506, 515, 538, 547, 551, 563,
564, 566, 567, 570, 577, 603, 611, 613, 616, 617,
625, 626, 637, 638, 662, 679, 681, 687, 690, 703,
715, 721, 722, 749, 751, 767, 787, 822, 831, 833,
840, 847, 855, 864, 865, 909, 910, 911, 912, 922,
926, 927, 929, 937, 938, 939, 957, 958, 959, 960,
966, 967, 991, 996, 1004, 1005, 1008, 1018, 1131, 1528,
1530, 1531, 1532, 1638, 1645, 32, 197, 204, 248, 263,
301, 319, 320, 342, 431, 448, 469, 524, 555, 564,
565, 585, 626, 743, 772, 838, 860, 864, 916, 946,
954, 963, 965, 1007, 1131, 1463, 1467, 1468, 1471, 1625,
947, 3, 431, 1128, 1640, 1644, 1012, 1504, 1504, 434,
521, 675, 3, 1524, 1642, 1644, 342, 947, 1319, 1524,
347, 1012, 1504, 1638, 81, 342, 1293, 407, 453, 516,
768, 824, 902, 0, 171, 172, 626, 845, 1139, 247,
1329, 1329, 294, 1394, 1395, 96, 1331, 1362, 1394, 1395,
233, 1385, 25, 26, 27, 28, 1355, 1356, 1357, 1385,
1357, 1385, 1394, 1395, 1357, 175, 217, 336, 351, 1400,
1401, 1402, 1329, 236, 1100, 1430, 1431, 1640, 1394, 1395,
83, 406, 534, 535, 536, 551, 748, 755, 1099, 1101,
1324, 1338, 1429, 1433, 1434, 1460, 1640, 768, 80, 80,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 1377, 1377, 1377, 1377,
1377, 1377, 1377, 1377, 1377, 79, 79, 79, 79, 79,
79, 24, 169, 1376, 1429, 1640, 1640, 1640, 765, 982,
174, 176, 188, 213, 220, 234, 270, 325, 399, 401,
407, 417, 425, 433, 438, 468, 501, 514, 516, 549,
597, 639, 680, 685, 689, 691, 723, 792, 796, 803,
804, 812, 818, 819, 837, 868, 902, 915, 931, 933,
987, 1003, 1562, 1585, 1589, 1598, 1602, 1607, 1628, 175,
1640, 3, 4, 1485, 1487, 1490, 1644, 3, 1136, 312,
246, 1166, 765, 982, 759, 1166, 1166, 1166, 342, 555,
534, 700, 1152, 1297, 248, 1640, 246, 1321, 1429, 1321,
765, 982, 759, 1321, 1487, 1490, 1321, 940, 1000, 1319,
772, 1519, 936, 954, 814, 940, 991, 1000, 292, 204,
1000, 92, 24, 36, 1049, 1049, 79, 1049, 1075, 15,
85, 1047, 1047, 79, 1047, 1032, 1049, 1340, 31, 33,
45, 72, 87, 88, 190, 196, 198, 199, 200, 201,
203, 211, 226, 246, 252, 271, 272, 280, 311, 312,
319, 358, 359, 360, 361, 1640, 1648, 1049, 1047, 79,
79, 79, 79, 79, 1090, 79, 1340, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 1060, 79, 79, 79, 79, 79, 79, 1061, 1060,
1061, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 79, 79, 79, 79,
79, 79, 79, 79, 79, 79, 4, 18, 83, 51,
52, 53, 54, 55, 56, 59, 1022, 46, 48, 49,
50, 61, 62, 63, 64, 65, 66, 67, 68, 69,
71, 72, 73, 84, 85, 1050, 75, 86, 1212, 37,
38, 39, 40, 41, 1047, 1090, 79, 83, 79, 83,
1322, 1429, 175, 1640, 1429, 1429, 1640, 1128, 1638, 1429,
1542, 1543, 1485, 1494, 1495, 1519, 92, 59, 347, 1533,
36, 1533, 304, 598, 1632, 1633, 325, 622, 580, 92,
81, 83, 81, 3, 4, 87, 211, 1209, 1210, 233,
1492, 81, 83, 1210, 24, 3, 1639, 1644, 36, 1533,
203, 301, 319, 342, 373, 555, 954, 1000, 1470, 907,
907, 50, 367, 1474, 79, 267, 1464, 907, 233, 1465,
1492, 1474, 907, 1474, 907, 1466, 1474, 49, 236, 1472,
1473, 1464, 1474, 1466, 519, 907, 997, 1472, 451, 543,
774, 947, 1469, 175, 781, 973, 175, 780, 621, 357,
1535, 1429, 1500, 1501, 236, 851, 1638, 347, 369, 1505,
1633, 1429, 4, 4, 4, 4, 4, 4, 171, 1030,
249, 96, 1328, 1328, 185, 267, 1361, 15, 297, 507,
1364, 1365, 1638, 1361, 354, 175, 217, 351, 1358, 1340,
1342, 1346, 1354, 1346, 1361, 1346, 67, 1049, 1403, 1405,
1402, 79, 1340, 1407, 1408, 1409, 1410, 1417, 1429, 1446,
1410, 1430, 1640, 367, 1359, 24, 236, 83, 1432, 1361,
1640, 1648, 1460, 1460, 1460, 1460, 59, 1460, 1460, 4,
1475, 1639, 83, 1524, 1024, 1436, 1436, 5, 5, 5,
558, 913, 1014, 1378, 3, 1025, 1436, 1436, 1436, 1436,
1436, 211, 713, 1379, 234, 392, 1380, 1436, 1436, 1436,
1436, 1436, 3, 1436, 5, 1436, 1436, 5, 1444, 1436,
1025, 1207, 5, 1436, 1436, 5, 1444, 1374, 174, 176,
188, 220, 298, 310, 325, 689, 805, 967, 1236, 1237,
1238, 1239, 1545, 1546, 1547, 1548, 1552, 1554, 1555, 1557,
1559, 1562, 174, 220, 298, 805, 967, 1277, 1278, 1279,
1280, 1290, 1291, 1550, 1553, 1562, 174, 220, 174, 602,
1640, 1640, 1019, 753, 954, 423, 539, 726, 808, 947,
915, 753, 503, 203, 604, 797, 1019, 1583, 1584, 213,
298, 401, 680, 1003, 1619, 602, 628, 827, 331, 331,
175, 319, 331, 400, 411, 412, 414, 440, 446, 480,
582, 606, 612, 628, 753, 764, 786, 831, 1575, 553,
982, 553, 808, 319, 675, 947, 975, 568, 860, 982,
1019, 402, 808, 954, 1613, 1640, 401, 608, 987, 522,
554, 727, 961, 962, 1623, 1624, 602, 987, 401, 808,
828, 366, 203, 423, 3, 443, 829, 971, 1620, 1621,
860, 1019, 808, 1019, 808, 602, 849, 832, 987, 1562,
310, 352, 634, 1497, 1562, 15, 1486, 313, 369, 580,
1479, 24, 375, 1562, 1050, 1640, 1166, 1166, 1640, 1640,
1477, 1478, 1485, 1128, 1166, 3, 1640, 940, 1000, 1166,
92, 226, 1640, 3, 1321, 1321, 1640, 1640, 1128, 3,
1128, 1153, 1644, 1321, 1321, 765, 982, 67, 1520, 1640,
1518, 1049, 1049, 44, 1076, 1077, 1049, 24, 80, 83,
83, 1049, 1032, 1049, 1049, 80, 5, 80, 3, 1179,
1639, 1640, 1049, 1049, 1179, 1334, 80, 5, 80, 5,
80, 1179, 1049, 1093, 1032, 1032, 1049, 1049, 175, 217,
351, 1097, 1049, 175, 217, 351, 1079, 80, 5, 80,
80, 1049, 1049, 1093, 1093, 80, 205, 206, 207, 208,
243, 244, 245, 286, 287, 321, 371, 488, 577, 679,
687, 690, 787, 855, 1008, 1018, 1643, 1049, 94, 484,
487, 957, 1184, 217, 351, 1096, 1049, 1049, 1049, 1032,
1049, 94, 94, 94, 1096, 1049, 1049, 1097, 1049, 1097,
1049, 1049, 5, 80, 1049, 1049, 80, 1046, 1049, 1032,
80, 80, 1049, 1079, 1079, 1079, 1079, 1049, 1093, 1097,
5, 80, 1049, 1049, 1094, 1643, 1094, 184, 265, 348,
1049, 1387, 1079, 1079, 1079, 1049, 1049, 1639, 9, 12,
989, 1050, 175, 385, 878, 1044, 1052, 1044, 1052, 1044,
1052, 1044, 1052, 1044, 1052, 1044, 1052, 1044, 1046, 4,
1046, 79, 1053, 1340, 4, 1047, 1046, 1046, 1046, 1046,
88, 1046, 88, 1046, 1046, 1046, 1046, 1046, 1046, 1046,
46, 48, 49, 50, 1047, 3, 4, 1206, 1049, 1049,
1049, 1049, 1049, 1049, 1092, 67, 1639, 1640, 1641, 1648,
1033, 1034, 1049, 1095, 1648, 24, 347, 24, 1486, 24,
24, 1520, 87, 92, 211, 1049, 1529, 1049, 1049, 370,
734, 636, 24, 59, 185, 580, 1632, 1632, 1212, 1213,
1485, 59, 1632, 564, 864, 1530, 1533, 1529, 1529, 1429,
1429, 1640, 1429, 1640, 1429, 1166, 1473, 1473, 4, 1049,
67, 5, 1473, 201, 954, 1613, 1614, 1474, 1128, 1474,
1474, 1474, 1474, 1429, 1473, 1472, 59, 59, 59, 15,
1536, 1537, 178, 277, 304, 370, 1404, 1502, 24, 4,
15, 18, 1187, 1525, 1638, 1638, 460, 24, 4, 1325,
1411, 1429, 1325, 1049, 1396, 1397, 5, 13, 1383, 4,
4, 24, 716, 717, 1006, 1386, 178, 1404, 1642, 24,
1362, 1363, 1340, 1407, 178, 1640, 24, 325, 30, 31,
32, 33, 34, 35, 289, 1448, 1449, 1452, 178, 234,
247, 298, 356, 850, 1415, 1419, 1420, 1427, 1428, 1640,
1359, 357, 83, 8, 1360, 1431, 1407, 67, 1640, 609,
964, 1461, 1640, 1648, 3, 1433, 1435, 79, 1435, 1443,
80, 5, 80, 80, 80, 4, 79, 1435, 1437, 1440,
1441, 1442, 1435, 1443, 1443, 1443, 80, 80, 1443, 1443,
1443, 1443, 1443, 80, 1443, 80, 1443, 79, 1435, 1439,
24, 1438, 80, 80, 4, 24, 1219, 80, 1443, 1435,
80, 80, 90, 192, 194, 248, 298, 351, 1305, 1422,
1560, 248, 1560, 1560, 192, 194, 235, 298, 373, 924,
1179, 1422, 185, 347, 1422, 1561, 1560, 298, 298, 924,
24, 211, 304, 373, 394, 413, 452, 458, 509, 518,
532, 627, 698, 725, 742, 771, 779, 785, 809, 834,
917, 943, 944, 971, 988, 1133, 1221, 1225, 1226, 1229,
298, 1293, 298, 185, 298, 298, 24, 408, 627, 698,
771, 972, 1287, 1289, 503, 503, 1460, 79, 883, 982,
983, 1020, 1109, 1112, 664, 665, 666, 667, 670, 682,
683, 684, 1105, 1106, 4, 175, 1227, 1640, 404, 973,
1227, 1574, 5, 401, 401, 746, 1599, 49, 404, 994,
203, 59, 1228, 1228, 24, 401, 697, 982, 5, 970,
523, 424, 1614, 974, 974, 1575, 1007, 559, 1617, 1618,
1614, 424, 247, 1588, 1228, 954, 1579, 1599, 1600, 860,
1019, 1590, 1591, 1594, 1595, 1595, 901, 49, 970, 1595,
1228, 236, 236, 4, 608, 1228, 1228, 1228, 1228, 1228,
24, 1591, 608, 550, 618, 1627, 1627, 319, 5, 59,
59, 59, 59, 24, 4, 1586, 1227, 1599, 1227, 1599,
1591, 1592, 1592, 987, 86, 452, 627, 632, 771, 785,
809, 815, 823, 917, 918, 1020, 1116, 1117, 1131, 1133,
1229, 1292, 569, 1116, 338, 435, 599, 713, 923, 1015,
1483, 1484, 663, 673, 1481, 1482, 185, 1487, 1497, 511,
771, 809, 1130, 1132, 1133, 1229, 1292, 226, 1286, 1287,
1288, 1289, 1640, 1640, 1116, 24, 369, 1479, 1480, 1486,
1129, 1130, 1429, 821, 92, 1128, 1153, 1298, 1429, 1433,
1429, 1640, 1640, 234, 302, 1158, 83, 234, 1157, 1322,
1322, 83, 347, 83, 24, 1049, 42, 1077, 1078, 24,
1049, 1639, 1648, 1648, 24, 24, 80, 357, 24, 357,
80, 80, 83, 24, 24, 24, 80, 80, 80, 80,
24, 80, 80, 80, 80, 80, 1049, 178, 1032, 1032,
67, 1049, 80, 94, 80, 24, 80, 80, 94, 236,
80, 247, 816, 1058, 3, 79, 1062, 1063, 24, 1032,
80, 80, 80, 80, 1058, 1062, 1062, 1062, 1032, 80,
24, 80, 1049, 80, 1049, 80, 80, 80, 80, 24,
94, 49, 80, 24, 94, 94, 80, 1049, 1049, 1049,
1049, 24, 80, 1049, 80, 80, 80, 80, 24, 80,
236, 1049, 236, 1049, 236, 1049, 236, 80, 1049, 1049,
1049, 24, 80, 80, 9, 12, 989, 79, 79, 79,
79, 79, 79, 41, 4, 1045, 1032, 1045, 60, 79,
1049, 1049, 1046, 4, 1046, 1053, 4, 1047, 24, 236,
80, 83, 79, 83, 24, 1404, 80, 1429, 1429, 1543,
347, 1494, 239, 236, 304, 807, 859, 1634, 598, 4,
1186, 1187, 185, 1486, 4, 749, 1529, 1128, 1474, 1474,
60, 80, 24, 1474, 79, 1473, 1474, 1429, 4, 5,
4, 24, 370, 626, 1503, 1640, 1501, 876, 369, 247,
312, 1140, 79, 325, 361, 995, 1326, 1327, 1338, 1418,
1419, 92, 1330, 179, 214, 1398, 24, 24, 730, 1131,
1211, 1365, 5, 11, 1642, 4, 1403, 236, 80, 1640,
1408, 1102, 1103, 1179, 35, 296, 1453, 35, 296, 1453,
35, 30, 31, 32, 33, 1450, 1451, 1409, 1447, 1447,
1447, 1640, 79, 1422, 411, 1416, 178, 857, 1412, 1428,
1640, 178, 1415, 1428, 1640, 1422, 1428, 1428, 1394, 1395,
1407, 1640, 1049, 83, 1432, 1460, 1436, 3, 1437, 80,
1438, 80, 1025, 1437, 1441, 80, 1438, 1438, 80, 80,
80, 80, 80, 80, 80, 80, 80, 80, 80, 80,
1437, 1219, 1444, 1025, 5, 1025, 1208, 80, 80, 1306,
1307, 1640, 79, 1251, 1254, 1549, 1421, 1422, 235, 300,
1303, 1304, 1640, 79, 1174, 1179, 1304, 1179, 1179, 1179,
79, 90, 3, 79, 1375, 1551, 1551, 187, 315, 1563,
1304, 90, 303, 422, 572, 1304, 1429, 1174, 1375, 1375,
1375, 1546, 370, 734, 1228, 1228, 1228, 1228, 1228, 1228,
1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228,
1228, 1228, 1228, 1228, 1228, 1221, 86, 1131, 1549, 1322,
1551, 90, 303, 422, 572, 1375, 1375, 1291, 1228, 1228,
1228, 1228, 1228, 1287, 4, 4, 347, 1457, 4, 1121,
96, 1228, 1228, 1228, 24, 1228, 1228, 1228, 1228, 1228,
1228, 1228, 1228, 24, 579, 797, 1021, 1596, 1597, 1614,
1228, 1228, 1590, 864, 236, 1590, 1227, 1227, 1584, 5,
4, 1595, 233, 1569, 954, 1578, 1228, 424, 1615, 1616,
1578, 1586, 5, 1228, 860, 1587, 1228, 1228, 1595, 864,
1578, 1227, 4, 1640, 1595, 4, 5, 5, 5, 5,
1227, 1624, 1590, 1591, 1599, 1601, 1594, 4, 5, 6,
7, 9, 10, 11, 12, 14, 66, 1041, 1042, 1041,
4, 1041, 1621, 24, 1592, 1590, 1562, 881, 1228, 1228,
1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228, 1228,
24, 997, 1119, 1228, 373, 347, 1119, 4, 4, 4,
41, 1484, 5, 5, 1482, 4, 1488, 1228, 1228, 1228,
1132, 86, 1131, 1276, 1277, 1278, 1279, 1280, 24, 810,
982, 983, 1020, 1107, 1108, 1105, 325, 997, 1118, 1478,
1481, 1480, 580, 50, 79, 178, 1221, 1222, 1225, 1230,
1236, 1237, 1238, 1239, 1338, 210, 259, 307, 920, 1163,
4, 1460, 83, 233, 79, 1299, 357, 1315, 1316, 3,
1153, 1644, 1563, 1563, 67, 1477, 67, 1640, 1049, 43,
1049, 516, 1049, 80, 1049, 1049, 1209, 87, 190, 210,
219, 353, 484, 487, 719, 871, 957, 1181, 1183, 1209,
1639, 1640, 1049, 1049, 1179, 380, 88, 1049, 94, 94,
94, 80, 1181, 80, 80, 80, 80, 1062, 88, 1062,
1049, 1058, 1059, 718, 3, 298, 1067, 1068, 1049, 1394,
1059, 718, 1394, 1049, 80, 80, 94, 1049, 1062, 1049,
1049, 1062, 1062, 80, 80, 80, 80, 1049, 80, 1049,
1049, 236, 1049, 236, 1049, 236, 1049, 80, 80, 80,
1049, 1340, 1341, 1341, 1341, 1341, 1341, 1341, 1044, 4,
80, 60, 4, 1047, 1049, 1643, 1643, 41, 1045, 1045,
60, 1049, 1049, 67, 1639, 1648, 1095, 1648, 1034, 4,
1642, 1485, 292, 1490, 454, 976, 304, 24, 636, 24,
4, 79, 4, 524, 1007, 5, 80, 1359, 1473, 24,
24, 1537, 1502, 24, 460, 96, 80, 1334, 1102, 79,
1335, 508, 1397, 1383, 1383, 1209, 1366, 1469, 221, 1406,
1407, 24, 1359, 59, 35, 1447, 35, 35, 1453, 1453,
1453, 35, 32, 92, 357, 92, 357, 1445, 1428, 1375,
233, 1423, 175, 403, 584, 1414, 1640, 79, 178, 1428,
1640, 1428, 1640, 178, 1412, 1428, 1640, 1428, 1423, 1361,
1384, 80, 80, 1438, 79, 1435, 80, 80, 1438, 80,
1435, 1441, 79, 1435, 1440, 80, 137, 138, 298, 572,
713, 843, 1381, 4, 80, 351, 191, 298, 1252, 1253,
1255, 1256, 1303, 90, 90, 1315, 1174, 1180, 4, 87,
182, 183, 190, 210, 219, 230, 259, 274, 275, 282,
283, 284, 307, 325, 328, 344, 345, 346, 362, 363,
410, 415, 416, 484, 487, 520, 719, 955, 957, 958,
1018, 1185, 1188, 1189, 1190, 1191, 1192, 1193, 601, 1001,
1226, 1556, 220, 325, 1564, 1174, 1563, 1375, 1304, 1375,
3, 24, 79, 79, 451, 79, 451, 79, 347, 96,
1227, 5, 11, 1275, 5, 4, 4, 4, 1227, 79,
4, 211, 1224, 5, 5, 15, 211, 843, 1223, 1227,
5, 5, 5, 211, 455, 457, 510, 795, 1282, 5,
4, 5, 5, 9, 1228, 1228, 5, 451, 924, 1281,
451, 1281, 1281, 96, 9, 1224, 5, 1223, 5, 702,
1573, 1590, 1460, 24, 80, 79, 1227, 5, 79, 1112,
1041, 1041, 1041, 1041, 1041, 1041, 1041, 1041, 1106, 1228,
1228, 1228, 24, 890, 1610, 1611, 5, 4, 471, 1593,
5, 753, 1019, 860, 763, 357, 1570, 59, 564, 1581,
5, 1228, 1581, 498, 79, 1228, 1592, 4, 1227, 5,
1019, 1582, 390, 1614, 1614, 1590, 5, 11, 452, 1622,
83, 1622, 1622, 1622, 4, 176, 188, 1598, 1597, 1228,
1206, 4, 4, 5, 1223, 5, 5, 79, 5, 5,
5, 79, 1117, 1527, 1531, 1209, 1228, 1640, 1484, 5,
1223, 5, 1228, 1228, 1288, 1228, 1228, 1228, 1228, 24,
997, 1527, 1527, 185, 1429, 50, 194, 351, 1167, 1168,
1174, 1305, 1422, 1338, 298, 1230, 1231, 1232, 1234, 1235,
1240, 1241, 24, 1404, 879, 357, 1457, 1153, 3, 1128,
1155, 1644, 1244, 1639, 944, 1300, 418, 572, 92, 1157,
369, 1521, 80, 1049, 80, 24, 80, 80, 79, 1200,
1202, 1202, 79, 1197, 259, 1182, 1197, 1182, 80, 79,
1199, 80, 83, 24, 24, 79, 1049, 80, 1062, 1062,
1062, 94, 80, 94, 94, 94, 80, 718, 80, 1067,
185, 80, 1394, 80, 324, 1098, 24, 80, 1098, 80,
94, 94, 1062, 80, 80, 80, 94, 94, 94, 94,
80, 94, 24, 1049, 1049, 1049, 94, 94, 94, 80,
80, 80, 80, 80, 80, 80, 4, 1047, 1045, 1044,
60, 4, 1047, 24, 233, 80, 1486, 236, 1633, 1634,
1187, 734, 1488, 1474, 472, 875, 1633, 876, 342, 1326,
80, 211, 1049, 1336, 1337, 24, 90, 269, 1369, 224,
225, 293, 343, 1367, 1368, 1359, 1359, 1103, 1394, 1337,
1445, 1447, 35, 35, 35, 1049, 79, 1049, 79, 80,
35, 240, 294, 79, 79, 1428, 5, 1640, 1428, 1428,
1640, 178, 1428, 1640, 1428, 79, 1437, 1441, 1437, 1219,
1382, 1025, 1421, 79, 1429, 24, 80, 24, 80, 1315,
1303, 79, 79, 24, 80, 1200, 1201, 1201, 1197, 299,
299, 79, 1200, 1200, 79, 1195, 79, 1197, 79, 1198,
237, 1175, 1214, 79, 1194, 79, 1196, 1199, 1202, 1202,
211, 211, 80, 80, 3, 80, 1244, 1049, 79, 1049,
79, 1049, 1304, 1549, 1049, 1157, 1206, 1209, 1281, 5,
185, 748, 1273, 5, 1273, 1273, 1549, 1157, 1228, 1590,
1592, 4, 96, 1121, 213, 1111, 4, 1120, 1227, 1227,
1227, 1596, 1228, 405, 1608, 1609, 1228, 1592, 424, 1228,
1228, 54, 470, 594, 635, 724, 788, 846, 1571, 1572,
1227, 1580, 1227, 1228, 1580, 79, 59, 968, 1577, 4,
4, 854, 1626, 1639, 1626, 1626, 1626, 701, 810, 1603,
1604, 1605, 1606, 4, 1157, 1121, 1120, 24, 12, 1640,
1206, 1209, 4, 1227, 5, 79, 1108, 1527, 749, 1488,
1429, 1306, 1307, 1421, 24, 80, 235, 300, 1303, 185,
298, 1240, 1404, 298, 1222, 1338, 4, 168, 233, 83,
1024, 1154, 24, 80, 59, 178, 1429, 239, 1032, 5,
11, 1039, 87, 1205, 5, 5, 1639, 1049, 1049, 4,
1643, 1062, 1062, 1062, 1062, 80, 1032, 303, 835, 1069,
1073, 1074, 4, 80, 1032, 80, 1062, 1062, 236, 1057,
1062, 1062, 1062, 1062, 1062, 1049, 1062, 1062, 1062, 1045,
4, 1047, 1045, 1049, 1049, 1490, 80, 59, 59, 1429,
1326, 24, 80, 79, 354, 339, 343, 1370, 1371, 185,
185, 224, 185, 1368, 29, 1064, 240, 1388, 1384, 1445,
1334, 1334, 185, 185, 3, 300, 1424, 1425, 1426, 5,
11, 1413, 80, 1428, 1428, 1640, 1428, 1425, 80, 80,
1438, 1381, 80, 1303, 1049, 361, 298, 1253, 298, 1256,
79, 79, 1244, 1308, 1309, 1639, 1174, 1205, 353, 871,
1203, 1186, 1205, 5, 1186, 1203, 5, 383, 178, 12,
92, 181, 211, 300, 351, 379, 394, 452, 546, 578,
737, 1050, 1215, 1218, 1558, 5, 1203, 5, 1203, 1205,
65, 66, 1038, 1217, 924, 1245, 1246, 1247, 80, 80,
1244, 80, 1244, 80, 80, 1273, 1281, 90, 303, 422,
572, 5, 79, 1251, 1281, 79, 1254, 1227, 1592, 79,
80, 982, 80, 1219, 4, 1228, 325, 5, 1157, 1578,
1227, 4, 5, 59, 59, 59, 59, 59, 59, 1571,
24, 4, 80, 1586, 1120, 1228, 985, 59, 1595, 1595,
1595, 1595, 1228, 1228, 1157, 1603, 498, 80, 80, 1531,
1120, 1488, 80, 351, 191, 1303, 1168, 1220, 1222, 90,
90, 1315, 192, 303, 185, 1338, 941, 1372, 1128, 1155,
3, 1155, 1644, 1590, 1639, 5, 1295, 1338, 79, 292,
80, 80, 24, 80, 80, 80, 24, 49, 1048, 46,
88, 475, 1049, 1071, 1072, 94, 80, 94, 546, 615,
1056, 1059, 1045, 5, 5, 1418, 1337, 1336, 1102, 185,
185, 1371, 4, 4, 185, 4, 3, 1065, 1066, 185,
241, 1399, 80, 80, 24, 80, 80, 1428, 80, 1441,
1315, 80, 49, 620, 1429, 1429, 1308, 1244, 80, 24,
80, 79, 1311, 1211, 372, 1204, 80, 1211, 80, 80,
1204, 80, 79, 354, 1639, 200, 271, 272, 715, 1086,
1216, 1217, 90, 1639, 4, 5, 1216, 12, 90, 80,
1204, 24, 80, 1204, 1211, 1039, 1039, 185, 1273, 1245,
1245, 80, 1245, 80, 1245, 1273, 5, 451, 924, 451,
924, 925, 1274, 1273, 1121, 92, 1228, 4, 5, 1612,
1639, 1611, 860, 1275, 5, 5, 1275, 1275, 1275, 1227,
80, 175, 392, 640, 1576, 4, 184, 675, 882, 1614,
1614, 1614, 1614, 5, 4, 1228, 80, 1421, 79, 1315,
1231, 1303, 1315, 79, 79, 79, 451, 392, 1041, 1233,
83, 1154, 1154, 1308, 5, 1049, 289, 416, 80, 1072,
1049, 831, 556, 778, 1070, 1062, 1062, 94, 190, 1141,
80, 4, 4, 4, 178, 24, 1049, 1389, 1390, 1391,
1049, 1064, 1424, 80, 79, 79, 1267, 956, 361, 361,
80, 80, 369, 413, 452, 483, 564, 586, 626, 698,
919, 1002, 1011, 1226, 1312, 1313, 1314, 1316, 1556, 1309,
1312, 5, 1398, 1213, 1205, 1213, 1205, 1049, 1086, 5,
1213, 90, 303, 422, 572, 79, 1248, 1273, 1273, 1245,
1273, 1245, 1273, 1251, 1274, 5, 951, 5, 951, 5,
1254, 80, 79, 79, 59, 1228, 369, 4, 1303, 1049,
79, 1404, 79, 79, 1308, 79, 1243, 1639, 80, 1049,
79, 748, 1155, 80, 80, 80, 614, 688, 41, 1643,
1062, 325, 1366, 1063, 1066, 179, 214, 1392, 24, 369,
1393, 1308, 211, 1049, 1268, 578, 1270, 79, 281, 1269,
1312, 308, 744, 1228, 4, 1228, 1228, 1228, 79, 1228,
1314, 80, 578, 1310, 1211, 1211, 80, 80, 79, 79,
451, 79, 451, 79, 298, 1249, 1250, 1248, 1251, 1273,
1254, 1273, 1248, 924, 79, 1261, 924, 79, 1264, 1120,
5, 1110, 1038, 4, 4, 1157, 1315, 80, 1308, 1338,
1244, 1244, 80, 1244, 24, 80, 80, 1244, 392, 1154,
1312, 688, 1072, 1210, 1369, 1391, 825, 80, 80, 24,
80, 5, 79, 1257, 1258, 1261, 1264, 281, 1049, 1271,
1272, 1270, 1429, 4, 5, 5, 5, 5, 1244, 5,
5, 1213, 1213, 340, 366, 1178, 1244, 1049, 79, 1049,
79, 1049, 1429, 24, 80, 1251, 1254, 951, 924, 1262,
1263, 951, 924, 1265, 1266, 80, 24, 80, 79, 80,
80, 80, 1312, 80, 1242, 1243, 80, 1231, 237, 247,
1142, 1312, 1049, 924, 1259, 1260, 24, 80, 1257, 79,
80, 1176, 80, 80, 1244, 80, 1244, 80, 1270, 1250,
1261, 1429, 24, 80, 1264, 1429, 24, 80, 5, 1308,
1312, 308, 1315, 24, 80, 5, 5, 79, 1144, 1429,
24, 80, 1272, 1244, 12, 85, 351, 452, 578, 1177,
1218, 1558, 924, 1274, 924, 80, 924, 80, 924, 1274,
1257, 361, 1263, 361, 1266, 80, 1429, 1622, 1243, 269,
835, 1143, 1143, 15, 80, 1145, 1146, 1179, 325, 1147,
361, 924, 1260, 80, 12, 90, 4, 5, 90, 951,
951, 924, 951, 924, 951, 620, 49, 1312, 79, 24,
80, 1148, 1149, 1179, 1429, 280, 1172, 79, 1258, 1261,
951, 1264, 951, 1258, 956, 1267, 1244, 1146, 24, 59,
32, 745, 872, 1173, 1169, 1261, 1264, 1269, 80, 1149,
1337, 92, 1170, 1172, 213, 354, 1169, 187, 315, 325,
710, 1171, 1171, 12, 211, 376
};
#define yyerrok (yyerrstatus = 0)
#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY (-2)
#define YYEOF 0
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrorlab
/* Like YYERROR except do call yyerror. This remains here temporarily
to ease the transition to the new meaning of YYERROR, for GCC.
Once GCC version 2 has supplanted version 1, this can go. */
#define YYFAIL goto yyerrlab
#define YYRECOVERING() (!!yyerrstatus)
#define YYBACKUP(Token, Value) \
do \
if (yychar == YYEMPTY && yylen == 1) \
{ \
yychar = (Token); \
yylval = (Value); \
yytoken = YYTRANSLATE (yychar); \
YYPOPSTACK (1); \
goto yybackup; \
} \
else \
{ \
yyerror (&yylloc, result, YY_("syntax error: cannot back up")); \
YYERROR; \
} \
while (YYID (0))
#define YYTERROR 1
#define YYERRCODE 256
/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
If N is 0, then set CURRENT to the empty location which ends
the previous symbol: RHS[0] (always defined). */
#define YYRHSLOC(Rhs, K) ((Rhs)[K])
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N) \
do \
if (YYID (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 (YYID (0))
#endif
/* 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 YYLTYPE_IS_TRIVIAL
# define YY_LOCATION_PRINT(File, Loc) \
fprintf (File, "%d.%d-%d.%d", \
(Loc).first_line, (Loc).first_column, \
(Loc).last_line, (Loc).last_column)
# else
# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
# endif
#endif
/* YYLEX -- calling `yylex' with the right arguments. */
#ifdef YYLEX_PARAM
# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
#else
# define YYLEX yylex (&yylval, &yylloc)
#endif
/* 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 (YYID (0))
# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
do { \
if (yydebug) \
{ \
YYFPRINTF (stderr, "%s ", Title); \
yy_symbol_print (stderr, \
Type, Value, Location, result); \
YYFPRINTF (stderr, "\n"); \
} \
} while (YYID (0))
/*--------------------------------.
| Print this symbol on YYOUTPUT. |
`--------------------------------*/
/*ARGSUSED*/
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, ParseResult *result)
#else
static void
yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, result)
FILE *yyoutput;
int yytype;
YYSTYPE const * const yyvaluep;
YYLTYPE const * const yylocationp;
ParseResult *result;
#endif
{
if (!yyvaluep)
return;
YYUSE (yylocationp);
YYUSE (result);
# ifdef YYPRINT
if (yytype < YYNTOKENS)
YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
# else
YYUSE (yyoutput);
# endif
switch (yytype)
{
default:
break;
}
}
/*--------------------------------.
| Print this symbol on YYOUTPUT. |
`--------------------------------*/
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, ParseResult *result)
#else
static void
yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, result)
FILE *yyoutput;
int yytype;
YYSTYPE const * const yyvaluep;
YYLTYPE const * const yylocationp;
ParseResult *result;
#endif
{
if (yytype < YYNTOKENS)
YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
else
YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
YY_LOCATION_PRINT (yyoutput, *yylocationp);
YYFPRINTF (yyoutput, ": ");
yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, result);
YYFPRINTF (yyoutput, ")");
}
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
| TOP (included). |
`------------------------------------------------------------------*/
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
#else
static void
yy_stack_print (yybottom, yytop)
yytype_int16 *yybottom;
yytype_int16 *yytop;
#endif
{
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 (YYID (0))
/*------------------------------------------------.
| Report that the YYRULE is going to be reduced. |
`------------------------------------------------*/
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, ParseResult *result)
#else
static void
yy_reduce_print (yyvsp, yylsp, yyrule, result)
YYSTYPE *yyvsp;
YYLTYPE *yylsp;
int yyrule;
ParseResult *result;
#endif
{
int yynrhs = yyr2[yyrule];
int yyi;
unsigned long int yylno = yyrline[yyrule];
YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
yyrule - 1, yylno);
/* The symbols being reduced. */
for (yyi = 0; yyi < yynrhs; yyi++)
{
YYFPRINTF (stderr, " $%d = ", yyi + 1);
yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
&(yyvsp[(yyi + 1) - (yynrhs)])
, &(yylsp[(yyi + 1) - (yynrhs)]) , result);
YYFPRINTF (stderr, "\n");
}
}
# define YY_REDUCE_PRINT(Rule) \
do { \
if (yydebug) \
yy_reduce_print (yyvsp, yylsp, Rule, result); \
} while (YYID (0))
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
# define YY_STACK_PRINT(Bottom, Top)
# define YY_REDUCE_PRINT(Rule)
#endif /* !YYDEBUG */
/* YYINITDEPTH -- initial size of the parser's stacks. */
#ifndef YYINITDEPTH
# define YYINITDEPTH 200
#endif
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
evaluated with infinite-precision integer arithmetic. */
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
#if YYERROR_VERBOSE
# ifndef yystrlen
# if defined __GLIBC__ && defined _STRING_H
# define yystrlen strlen
# else
/* Return the length of YYSTR. */
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static YYSIZE_T
yystrlen (const char *yystr)
#else
static YYSIZE_T
yystrlen (yystr)
const char *yystr;
#endif
{
YYSIZE_T yylen;
for (yylen = 0; yystr[yylen]; yylen++)
continue;
return yylen;
}
# endif
# endif
# ifndef yystpcpy
# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
# define yystpcpy stpcpy
# else
/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
YYDEST. */
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static char *
yystpcpy (char *yydest, const char *yysrc)
#else
static char *
yystpcpy (yydest, yysrc)
char *yydest;
const char *yysrc;
#endif
{
char *yyd = yydest;
const char *yys = yysrc;
while ((*yyd++ = *yys++) != '\0')
continue;
return yyd - 1;
}
# endif
# endif
# ifndef yytnamerr
/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
quotes and backslashes, so that it's suitable for yyerror. The
heuristic is that double-quoting is unnecessary unless the string
contains an apostrophe, a comma, or backslash (other than
backslash-backslash). YYSTR is taken from yytname. If YYRES is
null, do not copy; instead, return the length of what the result
would have been. */
static YYSIZE_T
yytnamerr (char *yyres, const char *yystr)
{
if (*yystr == '"')
{
YYSIZE_T yyn = 0;
char const *yyp = yystr;
for (;;)
switch (*++yyp)
{
case '\'':
case ',':
goto do_not_strip_quotes;
case '\\':
if (*++yyp != '\\')
goto do_not_strip_quotes;
/* Fall through. */
default:
if (yyres)
yyres[yyn] = *yyp;
yyn++;
break;
case '"':
if (yyres)
yyres[yyn] = '\0';
return yyn;
}
do_not_strip_quotes: ;
}
if (! yyres)
return yystrlen (yystr);
return yystpcpy (yyres, yystr) - yyres;
}
# endif
/* Copy into YYRESULT an error message about the unexpected token
YYCHAR while in state YYSTATE. Return the number of bytes copied,
including the terminating null byte. If YYRESULT is null, do not
copy anything; just return the number of bytes that would be
copied. As a special case, return 0 if an ordinary "syntax error"
message will do. Return YYSIZE_MAXIMUM if overflow occurs during
size calculation. */
static YYSIZE_T
yysyntax_error (char *yyresult, int yystate, int yychar)
{
int yyn = yypact[yystate];
if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
return 0;
else
{
int yytype = YYTRANSLATE (yychar);
YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
YYSIZE_T yysize = yysize0;
YYSIZE_T yysize1;
int yysize_overflow = 0;
enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
int yyx;
# if 0
/* This is so xgettext sees the translatable formats that are
constructed on the fly. */
YY_("syntax error, unexpected %s");
YY_("syntax error, unexpected %s, expecting %s");
YY_("syntax error, unexpected %s, expecting %s or %s");
YY_("syntax error, unexpected %s, expecting %s or %s or %s");
YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
# endif
char *yyfmt;
char const *yyf;
static char const yyunexpected[] = "syntax error, unexpected %s";
static char const yyexpecting[] = ", expecting %s";
static char const yyor[] = " or %s";
char yyformat[sizeof yyunexpected
+ sizeof yyexpecting - 1
+ ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
* (sizeof yyor - 1))];
char const *yyprefix = yyexpecting;
/* Start YYX at -YYN if negative to avoid negative indexes in
YYCHECK. */
int yyxbegin = yyn < 0 ? -yyn : 0;
/* Stay within bounds of both yycheck and yytname. */
int yychecklim = YYLAST - yyn + 1;
int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
int yycount = 1;
yyarg[0] = yytname[yytype];
yyfmt = yystpcpy (yyformat, yyunexpected);
for (yyx = yyxbegin; yyx < yyxend; ++yyx)
if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
{
if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
{
yycount = 1;
yysize = yysize0;
yyformat[sizeof yyunexpected - 1] = '\0';
break;
}
yyarg[yycount++] = yytname[yyx];
yysize1 = yysize + yytnamerr (0, yytname[yyx]);
yysize_overflow |= (yysize1 < yysize);
yysize = yysize1;
yyfmt = yystpcpy (yyfmt, yyprefix);
yyprefix = yyor;
}
yyf = YY_(yyformat);
yysize1 = yysize + yystrlen (yyf);
yysize_overflow |= (yysize1 < yysize);
yysize = yysize1;
if (yysize_overflow)
return YYSIZE_MAXIMUM;
if (yyresult)
{
/* Avoid sprintf, as that infringes on the user's name space.
Don't have undefined behavior even if the translation
produced a string with the wrong number of "%s"s. */
char *yyp = yyresult;
int yyi = 0;
while ((*yyp = *yyf) != '\0')
{
if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
{
yyp += yytnamerr (yyp, yyarg[yyi++]);
yyf += 2;
}
else
{
yyp++;
yyf++;
}
}
}
return yysize;
}
}
#endif /* YYERROR_VERBOSE */
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
/*ARGSUSED*/
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, ParseResult *result)
#else
static void
yydestruct (yymsg, yytype, yyvaluep, yylocationp, result)
const char *yymsg;
int yytype;
YYSTYPE *yyvaluep;
YYLTYPE *yylocationp;
ParseResult *result;
#endif
{
YYUSE (yyvaluep);
YYUSE (yylocationp);
YYUSE (result);
if (!yymsg)
yymsg = "Deleting";
YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
switch (yytype)
{
case 3: /* "NAME_OB" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27692 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 4: /* "STRING_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27701 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 5: /* "INTNUM" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27710 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 6: /* "DATE_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27719 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 7: /* "TIMESTAMP_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27728 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 8: /* "HINT_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27737 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 9: /* "BOOL_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27746 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 10: /* "APPROXNUM" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27755 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 11: /* "DECIMAL_VAL" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27764 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 12: /* "NULLX" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27773 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 13: /* "QUESTIONMARK" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27782 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 14: /* "SYSTEM_VARIABLE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27791 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 15: /* "USER_VARIABLE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27800 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 16: /* "CLIENT_VERSION" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27809 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 17: /* "MYSQL_DRIVER" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27818 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 18: /* "HEX_STRING_VALUE" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27827 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 19: /* "OUTLINE_DEFAULT_TOKEN" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27836 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1028: /* "sql_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27845 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1029: /* "stmt_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27854 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1030: /* "opt_end_p" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27863 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1031: /* "stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27872 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1032: /* "expr_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27881 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1033: /* "expr_as_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27890 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1034: /* "expr_with_opt_alias" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27899 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1035: /* "column_ref" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27908 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1036: /* "complex_string_literal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27917 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1037: /* "charset_introducer" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27926 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1038: /* "literal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27935 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1039: /* "number_literal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27944 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1040: /* "expr_const" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27953 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1041: /* "conf_const" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27962 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1043: /* "bool_pri" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27971 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1044: /* "predicate" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27980 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1045: /* "string_val_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27989 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1046: /* "bit_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 27998 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1047: /* "simple_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28007 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1049: /* "expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28016 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1050: /* "not" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28025 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1051: /* "not2" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28034 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1052: /* "sub_query_flag" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28043 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1053: /* "in_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28052 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1054: /* "case_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28061 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1055: /* "window_function" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28070 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1056: /* "first_or_last" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28079 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1057: /* "opt_from_first_or_last" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28088 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1058: /* "respect_or_ignore" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28097 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1059: /* "opt_respect_or_ignore_nulls" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28106 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1060: /* "win_fun_first_last_params" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28115 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1061: /* "win_fun_lead_lag_params" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28124 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1062: /* "new_generalized_window_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28133 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1063: /* "new_generalized_window_clause_with_blanket" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28142 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1064: /* "opt_named_windows" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28151 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1065: /* "named_windows" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28160 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1066: /* "named_window" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28169 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1067: /* "generalized_window_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28178 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1068: /* "opt_partition_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28187 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1069: /* "win_rows_or_range" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28196 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1070: /* "win_preceding_or_following" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28205 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1071: /* "win_interval" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28214 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1072: /* "win_bounding" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28223 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1073: /* "win_window" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28232 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1074: /* "opt_win_window" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28241 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1075: /* "case_arg" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28250 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1076: /* "when_clause_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28259 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1077: /* "when_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28268 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1078: /* "case_default" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28277 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1079: /* "opt_all" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28286 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1080: /* "func_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28295 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1081: /* "sys_interval_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28304 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1082: /* "utc_timestamp_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28313 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1083: /* "utc_time_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28322 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1084: /* "utc_date_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28331 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1085: /* "sysdate_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28340 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1086: /* "cur_timestamp_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28349 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1087: /* "now_synonyms_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28358 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1088: /* "cur_time_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28367 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1089: /* "cur_date_func" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28376 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1091: /* "substr_or_substring" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28385 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1092: /* "substr_params" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28394 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1093: /* "date_params" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28403 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1094: /* "timestamp_params" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28412 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1095: /* "opt_expr_as_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28421 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1096: /* "opt_distinct" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28430 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1097: /* "opt_distinct_or_all" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28439 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1098: /* "opt_separator" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28448 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1099: /* "delete_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28457 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1100: /* "multi_delete_table" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28466 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1101: /* "update_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28475 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1102: /* "update_asgn_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28484 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1103: /* "update_asgn_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28493 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1104: /* "create_resource_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28502 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1105: /* "opt_resource_unit_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28511 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1106: /* "resource_unit_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28520 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1107: /* "opt_create_resource_pool_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28529 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1108: /* "create_resource_pool_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28538 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1109: /* "alter_resource_pool_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28547 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1110: /* "unit_id_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28556 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1111: /* "opt_shrink_unit_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28565 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1112: /* "alter_resource_pool_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28574 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1113: /* "alter_resource_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28583 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1114: /* "drop_resource_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28592 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1115: /* "create_tenant_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28601 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1116: /* "opt_tenant_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28610 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1117: /* "tenant_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28619 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1118: /* "opt_set_sys_var" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28628 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1119: /* "opt_global_sys_vars_set" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28637 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1120: /* "zone_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28646 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1121: /* "resource_pool_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28655 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1122: /* "alter_tenant_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28664 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1123: /* "drop_tenant_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28673 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1124: /* "create_restore_point_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28682 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1125: /* "drop_restore_point_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28691 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1126: /* "create_database_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28700 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1127: /* "database_key" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28709 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1128: /* "database_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28718 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1129: /* "opt_database_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28727 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1130: /* "database_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28736 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1131: /* "charset_key" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28745 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1132: /* "database_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28754 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1133: /* "read_only_or_write" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28763 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1134: /* "drop_database_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28772 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1135: /* "alter_database_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28781 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1136: /* "opt_database_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28790 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1137: /* "load_data_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28799 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1138: /* "load_data_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28808 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1139: /* "opt_load_local" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28817 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1140: /* "opt_duplicate" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28826 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1141: /* "opt_load_charset" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28835 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1142: /* "opt_load_ignore_rows" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28844 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1143: /* "lines_or_rows" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28853 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1144: /* "opt_field_or_var_spec" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28862 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1145: /* "field_or_vars_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28871 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1146: /* "field_or_vars" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28880 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1147: /* "opt_load_set_spec" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28889 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1148: /* "load_set_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28898 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1149: /* "load_set_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28907 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1150: /* "use_database_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28916 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1151: /* "create_synonym_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28925 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1152: /* "opt_public" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28934 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1153: /* "synonym_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28943 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1154: /* "opt_dlink" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28952 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1155: /* "synonym_object" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28961 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1156: /* "drop_synonym_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28970 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1157: /* "opt_force" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28979 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1158: /* "opt_force_purge" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28988 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1159: /* "temporary_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 28997 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1160: /* "create_table_like_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29006 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1161: /* "create_table_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29015 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1162: /* "opt_agg" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29024 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1163: /* "ret_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29033 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1164: /* "create_function_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29042 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1165: /* "drop_function_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29051 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1166: /* "opt_if_not_exists" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29060 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1167: /* "table_element_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29069 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1168: /* "table_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29078 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1169: /* "opt_reference_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29087 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1170: /* "reference_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29096 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1172: /* "opt_match_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29105 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1174: /* "column_definition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29114 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1175: /* "opt_generated_keyname" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29123 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1176: /* "opt_generated_column_attribute_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29132 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1177: /* "generated_column_attribute" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29141 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1178: /* "opt_storage_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29150 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1179: /* "column_definition_ref" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29159 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1180: /* "column_definition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29168 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1181: /* "cast_data_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29177 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1184: /* "get_format_unit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29186 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1185: /* "data_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29195 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1186: /* "string_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29204 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1187: /* "text_string" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29213 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1196: /* "opt_float_precision" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29222 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1197: /* "opt_number_precision" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29231 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1205: /* "opt_binary" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29240 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1206: /* "collation_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29249 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1207: /* "trans_param_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29258 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1208: /* "trans_param_value" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29267 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1209: /* "charset_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29276 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1210: /* "charset_name_or_default" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29285 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1211: /* "opt_charset" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29294 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1212: /* "collation" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29303 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1213: /* "opt_collation" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29312 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1214: /* "opt_column_attribute_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29321 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1215: /* "column_attribute" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29330 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1216: /* "now_or_signed_literal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29339 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1217: /* "signed_literal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29348 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1218: /* "opt_primary" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29357 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1219: /* "opt_comma" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29366 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1220: /* "opt_table_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29375 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1221: /* "table_option_list_space_seperated" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29384 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1222: /* "table_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29393 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1223: /* "primary_zone_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29402 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1224: /* "locality_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29411 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1225: /* "table_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29420 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1226: /* "parallel_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29429 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1227: /* "relation_name_or_string" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29438 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1228: /* "opt_equal_mark" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29447 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1229: /* "opt_default_mark" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29456 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1230: /* "partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29465 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1231: /* "opt_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29474 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1232: /* "auto_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29483 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1233: /* "partition_size" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29492 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1234: /* "auto_partition_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29501 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1235: /* "auto_range_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29510 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1236: /* "hash_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29519 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1237: /* "list_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29528 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1238: /* "key_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29537 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1239: /* "range_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29546 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1240: /* "opt_column_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29555 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1241: /* "column_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29564 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1242: /* "aux_column_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29573 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1243: /* "vertical_column_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29582 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1244: /* "column_name_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29591 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1245: /* "subpartition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29600 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1246: /* "subpartition_template_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29609 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1247: /* "subpartition_individual_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29618 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1248: /* "opt_hash_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29627 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1249: /* "hash_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29636 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1250: /* "hash_partition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29645 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1251: /* "opt_range_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29654 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1252: /* "range_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29663 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1253: /* "range_partition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29672 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1254: /* "opt_list_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29681 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1255: /* "list_partition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29690 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1256: /* "list_partition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29699 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1257: /* "opt_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29708 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1258: /* "opt_hash_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29717 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1259: /* "hash_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29726 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1260: /* "hash_subpartition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29735 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1261: /* "opt_range_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29744 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1262: /* "range_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29753 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1263: /* "range_subpartition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29762 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1264: /* "opt_list_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29771 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1265: /* "list_subpartition_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29780 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1266: /* "list_subpartition_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29789 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1267: /* "list_partition_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29798 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1268: /* "list_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29807 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1269: /* "range_partition_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29816 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1270: /* "opt_part_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29825 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1271: /* "range_expr_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29834 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1272: /* "range_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29843 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1273: /* "opt_partitions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29852 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1274: /* "opt_subpartitions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29861 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1275: /* "int_or_decimal" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29870 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1276: /* "opt_tg_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29879 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1277: /* "tg_hash_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29888 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1278: /* "tg_key_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29897 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1279: /* "tg_range_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29906 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1280: /* "tg_list_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29915 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1281: /* "tg_subpartition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29924 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1282: /* "row_format_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29933 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1283: /* "create_tablegroup_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29942 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1284: /* "drop_tablegroup_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29951 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1285: /* "alter_tablegroup_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29960 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1286: /* "opt_tablegroup_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29969 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1287: /* "tablegroup_option_list_space_seperated" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29978 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1288: /* "tablegroup_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29987 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1289: /* "tablegroup_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 29996 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1290: /* "alter_tablegroup_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30005 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1291: /* "alter_tablegroup_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30014 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1292: /* "default_tablegroup" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30023 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1293: /* "opt_table" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30032 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1294: /* "create_view_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30041 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1295: /* "view_select_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30050 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1296: /* "opt_replace" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30059 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1297: /* "opt_materialized" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30068 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1298: /* "view_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30077 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1299: /* "opt_column_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30086 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1300: /* "opt_table_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30095 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1301: /* "create_index_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30104 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1303: /* "opt_index_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30113 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1304: /* "index_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30122 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1305: /* "opt_constraint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30131 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1306: /* "opt_constraint_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30140 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1307: /* "constraint_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30149 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1308: /* "sort_column_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30158 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1309: /* "sort_column_key" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30167 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1310: /* "opt_column_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30176 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1311: /* "opt_sort_column_key_length" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30185 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1312: /* "opt_index_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30194 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1313: /* "opt_index_options" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30203 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1314: /* "index_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30212 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1315: /* "opt_index_using_algorithm" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30221 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1316: /* "index_using_algorithm" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30230 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1317: /* "opt_materialized_or_temporary" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30239 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1318: /* "drop_table_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30248 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1319: /* "table_or_tables" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30257 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1320: /* "drop_view_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30266 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1321: /* "opt_if_exists" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30275 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1322: /* "table_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30284 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1323: /* "drop_index_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30293 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1324: /* "insert_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30302 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1325: /* "single_table_insert" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30311 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1326: /* "values_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30320 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1327: /* "value_or_values" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30329 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1328: /* "opt_into" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30338 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1329: /* "opt_ignore" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30347 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1330: /* "opt_on_duplicate_key_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30356 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1331: /* "opt_when" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30365 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1332: /* "replace_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30374 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1333: /* "insert_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30383 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1334: /* "column_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30392 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1335: /* "insert_vals_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30401 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1336: /* "insert_vals" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30410 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1337: /* "expr_or_default" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30419 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1338: /* "select_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30428 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1339: /* "select_into" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30437 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1340: /* "select_with_parens" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30446 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1341: /* "select_no_parens" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30455 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1342: /* "no_table_select" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30464 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1343: /* "select_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30473 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1344: /* "select_clause_set_with_order_and_limit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30482 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1345: /* "select_clause_set" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30491 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1346: /* "select_clause_set_right" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30500 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1347: /* "select_clause_set_left" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30509 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1348: /* "no_table_select_with_order_and_limit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30518 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1349: /* "simple_select_with_order_and_limit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30527 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1350: /* "select_with_parens_with_order_and_limit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30536 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1351: /* "select_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30545 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1352: /* "update_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30554 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1353: /* "delete_with_opt_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30563 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1354: /* "simple_select" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30572 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1357: /* "set_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30581 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1358: /* "set_expression_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30590 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1359: /* "opt_where" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30599 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1360: /* "opt_hint_value" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30608 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1361: /* "limit_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30617 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1362: /* "into_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30626 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1363: /* "into_opt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30635 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1364: /* "into_var_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30644 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1365: /* "into_var" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30653 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1366: /* "field_opt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30662 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1367: /* "field_term_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30671 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1368: /* "field_term" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30680 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1369: /* "line_opt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30689 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1370: /* "line_term_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30698 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1371: /* "line_term" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30707 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1372: /* "hint_list_with_end" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30716 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1373: /* "opt_hint_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30725 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1374: /* "hint_options" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30734 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1375: /* "name_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30743 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1376: /* "hint_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30752 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1377: /* "opt_qb_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30761 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1381: /* "distribute_method" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30770 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1382: /* "opt_distribute_method" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30779 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1383: /* "limit_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30788 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1384: /* "opt_limit_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30797 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1385: /* "opt_for_update" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30806 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1386: /* "opt_for_update_wait" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30815 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1387: /* "parameterized_trim" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30824 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1388: /* "opt_groupby" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30833 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1389: /* "groupby_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30842 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1390: /* "sort_list_for_group_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30851 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1391: /* "sort_key_for_group_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30860 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1392: /* "opt_asc_desc_for_group_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30869 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1393: /* "opt_rollup" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30878 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1394: /* "opt_order_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30887 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1395: /* "order_by" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30896 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1396: /* "sort_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30905 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1397: /* "sort_key" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30914 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1398: /* "opt_asc_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30923 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1399: /* "opt_having" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30932 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1400: /* "opt_query_expression_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30941 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1401: /* "query_expression_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30950 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1402: /* "query_expression_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30959 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1403: /* "projection" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30968 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1404: /* "opt_as" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30977 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1405: /* "select_expr_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30986 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1406: /* "from_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 30995 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1407: /* "table_references" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31004 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1408: /* "table_reference" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31013 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1409: /* "table_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31022 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1410: /* "tbl_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31031 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1411: /* "dml_table_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31040 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1412: /* "seed" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31049 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1413: /* "sample_percent" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31058 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1414: /* "opt_sample_scope" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31067 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1415: /* "sample_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31076 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1416: /* "opt_block" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31085 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1417: /* "table_subquery" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31094 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1418: /* "opt_use_partition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31103 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1419: /* "use_partition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31112 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1420: /* "index_hint_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31121 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1421: /* "opt_key_or_index" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31130 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1422: /* "key_or_index" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31139 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1423: /* "index_hint_scope" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31148 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1424: /* "index_element" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31157 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1425: /* "index_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31166 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1426: /* "opt_index_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31175 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1427: /* "index_hint_definition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31184 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1428: /* "index_hint_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31193 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1429: /* "relation_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31202 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1430: /* "relation_with_star_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31211 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1431: /* "relation_factor_with_star" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31220 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1432: /* "opt_with_star" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31229 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1433: /* "normal_relation_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31238 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1434: /* "dot_relation_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31247 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1435: /* "relation_factor_in_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31256 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1436: /* "qb_name_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31265 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1437: /* "relation_factor_in_hint_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31274 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1439: /* "relation_factor_in_pq_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31283 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1440: /* "relation_factor_in_leading_hint" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31292 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1441: /* "relation_factor_in_leading_hint_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31301 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1442: /* "relation_factor_in_leading_hint_list_entry" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31310 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1443: /* "relation_factor_in_use_join_hint_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31319 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1444: /* "tracing_num_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31328 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1445: /* "join_condition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31337 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1446: /* "joined_table" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31346 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1447: /* "opt_full_table_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31355 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1448: /* "natural_join_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31364 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1449: /* "inner_join_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31373 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1450: /* "opt_inner" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31382 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1451: /* "outer_join_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31391 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1452: /* "except_full_outer_join_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31400 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1453: /* "opt_outer" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31409 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1454: /* "create_outline_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31418 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1455: /* "alter_outline_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31427 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1456: /* "drop_outline_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31436 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1457: /* "opt_outline_target" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31445 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1458: /* "explain_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31454 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1459: /* "explain_or_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31463 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1460: /* "explainable_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31472 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1461: /* "format_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31481 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1462: /* "show_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31490 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1463: /* "databases_or_schemas" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31499 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1464: /* "opt_limit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31508 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1465: /* "opt_for_grant_user" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31517 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1466: /* "opt_status" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31526 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1467: /* "opt_storage" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31535 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1469: /* "columns_or_fields" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31544 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1470: /* "database_or_schema" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31553 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1471: /* "index_or_indexes_or_keys" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31562 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1472: /* "from_or_in" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31571 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1473: /* "opt_from_or_in_database_clause" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31580 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1474: /* "opt_show_condition" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31589 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1475: /* "opt_desc_column_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31598 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1476: /* "create_user_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31607 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1477: /* "user_specification_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31616 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1478: /* "user_specification" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31625 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1479: /* "require_specification" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31634 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1480: /* "opt_resource_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31643 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1481: /* "resource_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31652 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1482: /* "resource_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31661 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1483: /* "tls_option_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31670 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1484: /* "tls_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31679 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1485: /* "user" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31688 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1486: /* "opt_host_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31697 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1487: /* "user_with_host_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31706 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1488: /* "password" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31715 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1489: /* "drop_user_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31724 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1490: /* "user_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31733 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1491: /* "set_password_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31742 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1492: /* "opt_for_user" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31751 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1493: /* "rename_user_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31760 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1494: /* "rename_info" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31769 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1495: /* "rename_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31778 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1496: /* "lock_user_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31787 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1497: /* "lock_spec_mysql57" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31796 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1498: /* "lock_tables_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31805 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1499: /* "unlock_tables_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31814 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1500: /* "lock_table_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31823 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1501: /* "lock_table" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31832 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1502: /* "lock_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31841 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1503: /* "opt_local" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31850 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1504: /* "opt_work" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31859 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1506: /* "begin_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31868 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1507: /* "xa_begin_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31877 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1508: /* "xa_end_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31886 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1509: /* "xa_prepare_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31895 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1510: /* "xa_commit_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31904 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1511: /* "xa_rollback_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31913 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1512: /* "commit_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31922 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1513: /* "rollback_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31931 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1514: /* "kill_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31940 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1515: /* "grant_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31949 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1516: /* "grant_privileges" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31958 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1517: /* "priv_type_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31967 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1518: /* "priv_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31976 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1519: /* "opt_privilege" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31985 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1520: /* "priv_level" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 31994 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1521: /* "grant_options" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32003 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1522: /* "revoke_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32012 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1523: /* "prepare_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32021 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1524: /* "stmt_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32030 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1525: /* "preparable_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32039 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1526: /* "variable_set_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32048 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1527: /* "sys_var_and_val_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32057 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1528: /* "var_and_val_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32066 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1529: /* "set_expr_or_default" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32075 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1530: /* "var_and_val" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32084 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1531: /* "sys_var_and_val" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32093 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1533: /* "to_or_eq" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32102 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1534: /* "execute_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32111 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1535: /* "opt_using_args" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32120 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1536: /* "argument_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32129 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1537: /* "argument" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32138 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1538: /* "deallocate_prepare_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32147 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1539: /* "deallocate_or_drop" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32156 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1540: /* "truncate_table_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32165 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1541: /* "rename_table_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32174 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1542: /* "rename_table_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32183 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1543: /* "rename_table_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32192 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1544: /* "alter_table_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32201 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1545: /* "alter_table_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32210 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1546: /* "alter_table_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32219 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1547: /* "alter_constraint_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32228 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1548: /* "alter_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32237 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1549: /* "opt_partition_range_or_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32246 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1550: /* "alter_tg_partition_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32255 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1551: /* "drop_partition_name_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32264 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1552: /* "modify_partition_info" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32273 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1553: /* "modify_tg_partition_info" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32282 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1554: /* "alter_index_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32291 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1555: /* "alter_foreign_key_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32300 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1556: /* "visibility_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32309 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1557: /* "alter_column_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32318 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1558: /* "opt_position_column" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32327 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1559: /* "alter_tablegroup_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32336 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1560: /* "opt_column" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32345 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1561: /* "opt_to" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32354 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1562: /* "opt_set" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32363 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1564: /* "alter_column_behavior" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32372 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1565: /* "purge_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32381 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1566: /* "optimize_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32390 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1567: /* "dump_memory_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32399 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1568: /* "alter_system_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32408 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1569: /* "opt_sql_throttle_for_priority" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32417 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1570: /* "opt_sql_throttle_using_cond" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32426 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1571: /* "sql_throttle_one_or_more_metrics" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32435 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1572: /* "sql_throttle_metric" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32444 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1573: /* "opt_disk_alias" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32453 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1574: /* "change_tenant_name_or_tenant_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32462 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1575: /* "cache_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32471 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1576: /* "balance_task_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32480 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1577: /* "opt_balance_task_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32489 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1578: /* "opt_tenant_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32498 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1579: /* "tenant_list_tuple" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32507 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1580: /* "tenant_name_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32516 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1581: /* "flush_scope" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32525 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1582: /* "opt_zone_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32534 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1583: /* "server_info_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32543 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1584: /* "server_info" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32552 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1585: /* "server_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32561 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1586: /* "server_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32570 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1587: /* "opt_server_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32579 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1588: /* "opt_ignore_server_list" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32588 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1589: /* "zone_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32597 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1590: /* "ip_port" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32606 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1591: /* "zone_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32615 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1592: /* "opt_zone_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32624 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1593: /* "opt_create_timestamp" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32633 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1594: /* "server_or_zone" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32642 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1595: /* "opt_server_or_zone" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32651 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1596: /* "add_or_alter_zone_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32660 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1597: /* "add_or_alter_zone_options" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32669 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1598: /* "alter_or_change_or_modify" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32678 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1599: /* "partition_id_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32687 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1600: /* "opt_tenant_list_or_partition_id_desc" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32696 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1601: /* "partition_id_or_server_or_zone" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32705 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1602: /* "migrate_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32714 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1603: /* "change_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32723 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1604: /* "change_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32732 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1605: /* "replica_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32741 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1606: /* "memstore_percent" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32750 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1607: /* "suspend_or_resume" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32759 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1608: /* "baseline_id_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32768 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1609: /* "opt_baseline_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32777 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1610: /* "sql_id_expr" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32786 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1611: /* "opt_sql_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32795 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1612: /* "baseline_asgn_factor" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32804 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1613: /* "tenant_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32813 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1614: /* "opt_tenant_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32822 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1615: /* "cache_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32831 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1616: /* "opt_cache_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32840 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1617: /* "file_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32849 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1618: /* "opt_file_id" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32858 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1619: /* "cancel_task_type" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32867 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1620: /* "alter_system_set_parameter_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32876 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1621: /* "alter_system_set_parameter_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32885 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1622: /* "opt_comment" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32894 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1623: /* "alter_system_settp_actions" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32903 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1624: /* "settp_option" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32912 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1627: /* "partition_role" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32921 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1628: /* "upgrade_action" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32930 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1629: /* "set_names_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32939 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1630: /* "set_charset_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32948 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1631: /* "set_transaction_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32957 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1632: /* "transaction_characteristics" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32966 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1633: /* "transaction_access_mode" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32975 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1634: /* "isolation_level" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32984 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1635: /* "create_savepoint_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 32993 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1636: /* "rollback_savepoint_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33002 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1637: /* "release_savepoint_stmt" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33011 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1638: /* "var_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33020 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1639: /* "column_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33029 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1640: /* "relation_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33038 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1641: /* "function_name" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33047 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1642: /* "column_label" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33056 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
case 1643: /* "date_unit" */
/* Line 1000 of yacc.c */
#line 37 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{destroy_tree((yyvaluep->node));};
/* Line 1000 of yacc.c */
#line 33065 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
break;
default:
break;
}
}
/* Prevent warnings from -Wmissing-prototypes. */
#ifdef YYPARSE_PARAM
#if defined __STDC__ || defined __cplusplus
int yyparse (void *YYPARSE_PARAM);
#else
int yyparse ();
#endif
#else /* ! YYPARSE_PARAM */
#if defined __STDC__ || defined __cplusplus
int yyparse (ParseResult *result);
#else
int yyparse ();
#endif
#endif /* ! YYPARSE_PARAM */
/*-------------------------.
| yyparse or yypush_parse. |
`-------------------------*/
#ifdef YYPARSE_PARAM
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
int
yyparse (void *YYPARSE_PARAM)
#else
int
yyparse (YYPARSE_PARAM)
void *YYPARSE_PARAM;
#endif
#else /* ! YYPARSE_PARAM */
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
int
yyparse (ParseResult *result)
#else
int
yyparse (result)
ParseResult *result;
#endif
#endif
{
/* The lookahead symbol. */
int yychar;
/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Location data for the lookahead symbol. */
YYLTYPE yylloc;
/* Number of syntax errors so far. */
int yynerrs;
int yystate;
/* Number of tokens to shift before error messages enabled. */
int yyerrstatus;
/* The stacks and their tools:
`yyss': related to states.
`yyvs': related to semantic values.
`yyls': related to locations.
Refer to the stacks thru separate pointers, to allow yyoverflow
to reallocate them elsewhere. */
/* The state stack. */
yytype_int16 yyssa[YYINITDEPTH];
yytype_int16 *yyss;
yytype_int16 *yyssp;
/* The semantic value stack. */
YYSTYPE yyvsa[YYINITDEPTH];
YYSTYPE *yyvs;
YYSTYPE *yyvsp;
/* The location stack. */
YYLTYPE yylsa[YYINITDEPTH];
YYLTYPE *yyls;
YYLTYPE *yylsp;
/* The locations where the error started and ended. */
YYLTYPE yyerror_range[2];
YYSIZE_T yystacksize;
int yyn;
int yyresult;
/* Lookahead token as an internal (translated) token number. */
int yytoken;
/* The variables used to return semantic value and location from the
action routines. */
YYSTYPE yyval;
YYLTYPE yyloc;
#if YYERROR_VERBOSE
/* Buffer for error messages, and its allocated size. */
char yymsgbuf[128];
char *yymsg = yymsgbuf;
YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
#endif
#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
/* The number of symbols on the RHS of the reduced rule.
Keep to zero when no symbol should be popped. */
int yylen = 0;
yytoken = 0;
yyss = yyssa;
yyvs = yyvsa;
yyls = yylsa;
yystacksize = YYINITDEPTH;
YYDPRINTF ((stderr, "Starting parse\n"));
yystate = 0;
yyerrstatus = 0;
yynerrs = 0;
yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
so that they stay on the same level as the state stack.
The wasted elements are never initialized. */
yyssp = yyss;
yyvsp = yyvs;
yylsp = yyls;
#if YYLTYPE_IS_TRIVIAL
/* Initialize the default location before parsing starts. */
yylloc.first_line = yylloc.last_line = 1;
yylloc.first_column = yylloc.last_column = 1;
#endif
goto yysetstate;
/*------------------------------------------------------------.
| yynewstate -- Push a new state, which is found in yystate. |
`------------------------------------------------------------*/
yynewstate:
/* In all cases, when you get here, the value and location stacks
have just been pushed. So pushing a state here evens the stacks. */
yyssp++;
yysetstate:
*yyssp = yystate;
if (yyss + yystacksize - 1 <= yyssp)
{
/* Get the current used size of the three stacks, in elements. */
YYSIZE_T yysize = yyssp - yyss + 1;
#ifdef yyoverflow
{
/* Give user a chance to reallocate the stack. Use copies of
these so that the &'s don't force the real ones into
memory. */
YYSTYPE *yyvs1 = yyvs;
yytype_int16 *yyss1 = yyss;
YYLTYPE *yyls1 = yyls;
/* Each stack pointer address is followed by the size of the
data in use in that stack, in bytes. This used to be a
conditional around just the two extra args, but that might
be undefined if yyoverflow is a macro. */
yyoverflow (YY_("memory exhausted"),
&yyss1, yysize * sizeof (*yyssp),
&yyvs1, yysize * sizeof (*yyvsp),
&yyls1, yysize * sizeof (*yylsp),
&yystacksize);
yyls = yyls1;
yyss = yyss1;
yyvs = yyvs1;
}
#else /* no yyoverflow */
# ifndef YYSTACK_RELOCATE
goto yyexhaustedlab;
# else
/* Extend the stack our own way. */
if (YYMAXDEPTH <= yystacksize)
goto yyexhaustedlab;
yystacksize *= 2;
if (YYMAXDEPTH < yystacksize)
yystacksize = YYMAXDEPTH;
{
yytype_int16 *yyss1 = yyss;
union yyalloc *yyptr =
(union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
if (! yyptr)
goto yyexhaustedlab;
YYSTACK_RELOCATE (yyss_alloc, yyss);
YYSTACK_RELOCATE (yyvs_alloc, yyvs);
YYSTACK_RELOCATE (yyls_alloc, yyls);
# undef YYSTACK_RELOCATE
if (yyss1 != yyssa)
YYSTACK_FREE (yyss1);
}
# endif
#endif /* no yyoverflow */
yyssp = yyss + yysize - 1;
yyvsp = yyvs + yysize - 1;
yylsp = yyls + yysize - 1;
YYDPRINTF ((stderr, "Stack size increased to %lu\n",
(unsigned long int) yystacksize));
if (yyss + yystacksize - 1 <= yyssp)
YYABORT;
}
YYDPRINTF ((stderr, "Entering state %d\n", yystate));
if (yystate == YYFINAL)
YYACCEPT;
goto yybackup;
/*-----------.
| yybackup. |
`-----------*/
yybackup:
/* Do appropriate processing given the current state. Read a
lookahead token if we need one and don't already have one. */
/* First try to decide what to do without reference to lookahead token. */
yyn = yypact[yystate];
if (yyn == YYPACT_NINF)
goto yydefault;
/* Not known => get a lookahead token if don't already have one. */
/* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
yychar = YYLEX;
}
if (yychar <= YYEOF)
{
yychar = yytoken = YYEOF;
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
else
{
yytoken = YYTRANSLATE (yychar);
YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
/* If the proper action on seeing token YYTOKEN is to reduce or to
detect an error, take that action. */
yyn += yytoken;
if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
goto yydefault;
yyn = yytable[yyn];
if (yyn <= 0)
{
if (yyn == 0 || yyn == YYTABLE_NINF)
goto yyerrlab;
yyn = -yyn;
goto yyreduce;
}
/* Count tokens shifted since error; after three, turn off error
status. */
if (yyerrstatus)
yyerrstatus--;
/* Shift the lookahead token. */
YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
/* Discard the shifted token. */
yychar = YYEMPTY;
yystate = yyn;
*++yyvsp = yylval;
*++yylsp = yylloc;
goto yynewstate;
/*-----------------------------------------------------------.
| yydefault -- do the default action for the current state. |
`-----------------------------------------------------------*/
yydefault:
yyn = yydefact[yystate];
if (yyn == 0)
goto yyerrlab;
goto yyreduce;
/*-----------------------------.
| yyreduce -- Do a reduction. |
`-----------------------------*/
yyreduce:
/* yyn is the number of a rule to reduce with. */
yylen = yyr2[yyn];
/* If YYLEN is nonzero, implement the default value of the action:
`$$ = $1'.
Otherwise, the following line sets YYVAL to garbage.
This behavior is undocumented and Bison
users should not rely upon it. Assigning to YYVAL
unconditionally makes the parser a bit smaller, and it avoids a
GCC warning that YYVAL may be used uninitialized. */
yyval = yyvsp[1-yylen];
/* Default location. */
YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
YY_REDUCE_PRINT (yyn);
switch (yyn)
{
case 2:
/* Line 1455 of yacc.c */
#line 434 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_STMT_LIST, (yyvsp[(1) - (1)].node));
result->result_tree_ = (yyval.node);
YYACCEPT;
;}
break;
case 3:
/* Line 1455 of yacc.c */
#line 443 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_EMPTY_QUERY);
(yyval.node)->value_ = result->has_encount_comment_;
;}
break;
case 4:
/* Line 1455 of yacc.c */
#line 448 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_EMPTY_QUERY);
(yyval.node)->value_ = result->has_encount_comment_;
;}
break;
case 5:
/* Line 1455 of yacc.c */
#line 453 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (NULL != (yyvsp[(1) - (2)].node)) ? (yyvsp[(1) - (2)].node) : NULL;
;}
break;
case 6:
/* Line 1455 of yacc.c */
#line 457 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (3)].node));
(yyval.node) = (NULL != (yyvsp[(1) - (3)].node)) ? (yyvsp[(1) - (3)].node) : NULL;
;}
break;
case 7:
/* Line 1455 of yacc.c */
#line 464 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 8:
/* Line 1455 of yacc.c */
#line 465 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 9:
/* Line 1455 of yacc.c */
#line 470 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 10:
/* Line 1455 of yacc.c */
#line 471 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 11:
/* Line 1455 of yacc.c */
#line 472 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 12:
/* Line 1455 of yacc.c */
#line 473 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 13:
/* Line 1455 of yacc.c */
#line 474 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 14:
/* Line 1455 of yacc.c */
#line 475 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 15:
/* Line 1455 of yacc.c */
#line 476 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 16:
/* Line 1455 of yacc.c */
#line 477 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 17:
/* Line 1455 of yacc.c */
#line 478 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 18:
/* Line 1455 of yacc.c */
#line 479 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 19:
/* Line 1455 of yacc.c */
#line 480 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 20:
/* Line 1455 of yacc.c */
#line 481 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 21:
/* Line 1455 of yacc.c */
#line 482 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 22:
/* Line 1455 of yacc.c */
#line 483 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 23:
/* Line 1455 of yacc.c */
#line 484 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 24:
/* Line 1455 of yacc.c */
#line 485 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 25:
/* Line 1455 of yacc.c */
#line 486 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 26:
/* Line 1455 of yacc.c */
#line 487 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 27:
/* Line 1455 of yacc.c */
#line 488 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 28:
/* Line 1455 of yacc.c */
#line 489 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 29:
/* Line 1455 of yacc.c */
#line 490 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); question_mark_issue((yyval.node), result); ;}
break;
case 30:
/* Line 1455 of yacc.c */
#line 491 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 31:
/* Line 1455 of yacc.c */
#line 492 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 32:
/* Line 1455 of yacc.c */
#line 493 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 33:
/* Line 1455 of yacc.c */
#line 494 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 34:
/* Line 1455 of yacc.c */
#line 495 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 35:
/* Line 1455 of yacc.c */
#line 496 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 36:
/* Line 1455 of yacc.c */
#line 497 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 37:
/* Line 1455 of yacc.c */
#line 498 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 38:
/* Line 1455 of yacc.c */
#line 499 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 39:
/* Line 1455 of yacc.c */
#line 500 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 40:
/* Line 1455 of yacc.c */
#line 501 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 41:
/* Line 1455 of yacc.c */
#line 502 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 42:
/* Line 1455 of yacc.c */
#line 503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 43:
/* Line 1455 of yacc.c */
#line 504 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 44:
/* Line 1455 of yacc.c */
#line 505 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 45:
/* Line 1455 of yacc.c */
#line 506 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 46:
/* Line 1455 of yacc.c */
#line 507 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 47:
/* Line 1455 of yacc.c */
#line 508 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 48:
/* Line 1455 of yacc.c */
#line 509 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 49:
/* Line 1455 of yacc.c */
#line 510 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 50:
/* Line 1455 of yacc.c */
#line 511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 51:
/* Line 1455 of yacc.c */
#line 512 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 52:
/* Line 1455 of yacc.c */
#line 513 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 53:
/* Line 1455 of yacc.c */
#line 514 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 54:
/* Line 1455 of yacc.c */
#line 515 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 55:
/* Line 1455 of yacc.c */
#line 516 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 56:
/* Line 1455 of yacc.c */
#line 517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 57:
/* Line 1455 of yacc.c */
#line 518 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 58:
/* Line 1455 of yacc.c */
#line 519 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 59:
/* Line 1455 of yacc.c */
#line 520 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 60:
/* Line 1455 of yacc.c */
#line 521 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 61:
/* Line 1455 of yacc.c */
#line 522 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 62:
/* Line 1455 of yacc.c */
#line 523 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 63:
/* Line 1455 of yacc.c */
#line 524 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 64:
/* Line 1455 of yacc.c */
#line 525 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 65:
/* Line 1455 of yacc.c */
#line 526 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 66:
/* Line 1455 of yacc.c */
#line 527 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 67:
/* Line 1455 of yacc.c */
#line 528 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 68:
/* Line 1455 of yacc.c */
#line 529 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 69:
/* Line 1455 of yacc.c */
#line 531 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); (yyval.node)->value_ = 1; ;}
break;
case 70:
/* Line 1455 of yacc.c */
#line 533 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); (yyval.node)->value_ = 1; ;}
break;
case 71:
/* Line 1455 of yacc.c */
#line 534 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 72:
/* Line 1455 of yacc.c */
#line 535 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 73:
/* Line 1455 of yacc.c */
#line 536 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 74:
/* Line 1455 of yacc.c */
#line 537 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 75:
/* Line 1455 of yacc.c */
#line 538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 76:
/* Line 1455 of yacc.c */
#line 539 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 77:
/* Line 1455 of yacc.c */
#line 540 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 78:
/* Line 1455 of yacc.c */
#line 541 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 79:
/* Line 1455 of yacc.c */
#line 542 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); check_question_mark((yyval.node), result); ;}
break;
case 80:
/* Line 1455 of yacc.c */
#line 553 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
/* every mysql's item(same as ob's expr) has its own name */
if (OB_UNLIKELY((NULL == (yyval.node)->str_value_)) && (yyval.node)->type_ != T_VARCHAR) {
dup_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
}
;}
break;
case 81:
/* Line 1455 of yacc.c */
#line 561 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 82:
/* Line 1455 of yacc.c */
#line 568 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 83:
/* Line 1455 of yacc.c */
#line 572 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 84:
/* Line 1455 of yacc.c */
#line 578 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
/* every mysql's item(same as ob's expr) has its own name */
if (OB_UNLIKELY((NULL == (yyval.node)->str_value_)) && (yyval.node)->type_ != T_VARCHAR) {
dup_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
}
;}
break;
case 85:
/* Line 1455 of yacc.c */
#line 587 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
ParseNode *alias_node = NULL;
if (OB_UNLIKELY((NULL == (yyvsp[(1) - (3)].node)))) {
yyerror(NULL, result, "alias expr can not be NULL\n");
YYABORT_UNEXPECTED;
} else if (OB_UNLIKELY(T_COLUMN_REF == (yyvsp[(1) - (3)].node)->type_ && NULL != (yyvsp[(1) - (3)].node)->children_ && NULL != (yyvsp[(1) - (3)].node)->children_[1]
&& NULL != (yyvsp[(1) - (3)].node)->children_[2] && T_STAR == (yyvsp[(1) - (3)].node)->children_[2]->type_)) {
yyerror(&(yylsp[(2) - (3)]), result, "table.* as label is invalid\n");
YYERROR;
} else {
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_WITH_ALIAS, 1, alias_node);
dup_expr_string((yyval.node), result, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
dup_node_string((yyvsp[(3) - (3)].node), alias_node, result->malloc_pool_);
alias_node->param_num_ = 0;
}
;}
break;
case 86:
/* Line 1455 of yacc.c */
#line 606 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
if (OB_UNLIKELY(NULL == (yyvsp[(1) - (3)].node))) {
yyerror(NULL, result, "alias expr can not be NULL\n");
YYABORT_UNEXPECTED;
} else if (OB_UNLIKELY(T_COLUMN_REF == (yyvsp[(1) - (3)].node)->type_ && NULL !=(yyvsp[(1) - (3)].node)->children_ && NULL != (yyvsp[(1) - (3)].node)->children_[1]
&& NULL != (yyvsp[(1) - (3)].node)->children_[2] && T_STAR == (yyvsp[(1) - (3)].node)->children_[2]->type_)) {
yyerror(&(yylsp[(2) - (3)]), result, "table.* as label is invalid\n");
YYERROR;
} else {
ParseNode *alias_node = NULL;
ParseNode *alias_name_node = NULL;
malloc_terminal_node(alias_name_node, result->malloc_pool_, T_IDENT);
dup_node_string((yyvsp[(3) - (3)].node), alias_name_node, result->malloc_pool_);
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), alias_name_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_WITH_ALIAS, 1, alias_node);
dup_expr_string((yyval.node), result, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
dup_node_string((yyvsp[(3) - (3)].node), alias_node, result->malloc_pool_);
alias_node->param_num_ = 1;
}
;}
break;
case 87:
/* Line 1455 of yacc.c */
#line 632 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, NULL, (yyvsp[(1) - (1)].node));
dup_node_string((yyvsp[(1) - (1)].node), (yyval.node), result->malloc_pool_);
#ifndef SQL_PARSER_COMPILATION
#endif
;}
break;
case 88:
/* Line 1455 of yacc.c */
#line 639 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
dup_node_string((yyvsp[(3) - (3)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 89:
/* Line 1455 of yacc.c */
#line 644 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(1) - (3)].node), col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 90:
/* Line 1455 of yacc.c */
#line 651 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
ParseNode *table_name = NULL;
get_non_reserved_node(table_name, result->malloc_pool_, (yylsp[(1) - (3)]).first_column, (yylsp[(1) - (3)]).last_column);
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, table_name, col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 91:
/* Line 1455 of yacc.c */
#line 660 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(1) - (3)].node), node);
(yyval.node)->value_ = 0;
;}
break;
case 92:
/* Line 1455 of yacc.c */
#line 667 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
dup_node_string((yyvsp[(5) - (5)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 93:
/* Line 1455 of yacc.c */
#line 672 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(5) - (5)]).first_column, (yylsp[(5) - (5)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 94:
/* Line 1455 of yacc.c */
#line 679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
ParseNode *table_name = NULL;
get_non_reserved_node(table_name, result->malloc_pool_, (yylsp[(3) - (5)]).first_column, (yylsp[(3) - (5)]).last_column);
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(5) - (5)]).first_column, (yylsp[(5) - (5)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, (yyvsp[(1) - (5)].node), table_name, col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 95:
/* Line 1455 of yacc.c */
#line 688 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), node);
(yyval.node)->value_ = 0;
;}
break;
case 96:
/* Line 1455 of yacc.c */
#line 695 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
dup_node_string((yyvsp[(4) - (4)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 97:
/* Line 1455 of yacc.c */
#line 700 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(4) - (4)]).first_column, (yylsp[(4) - (4)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(2) - (4)].node), col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 98:
/* Line 1455 of yacc.c */
#line 707 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *col_name = NULL;
ParseNode *table_name = NULL;
get_non_reserved_node(table_name, result->malloc_pool_, (yylsp[(2) - (4)]).first_column, (yylsp[(2) - (4)]).last_column);
get_non_reserved_node(col_name, result->malloc_pool_, (yylsp[(4) - (4)]).first_column, (yylsp[(4) - (4)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, table_name, col_name);
dup_node_string(col_name, (yyval.node), result->malloc_pool_);
;}
break;
case 99:
/* Line 1455 of yacc.c */
#line 720 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR, 2, NULL, (yyvsp[(1) - (1)].node));
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->str_len_;
(yyval.node)->raw_text_ = (yyvsp[(1) - (1)].node)->raw_text_;
(yyval.node)->text_len_ = (yyvsp[(1) - (1)].node)->text_len_;
(yyloc).first_column = (yylsp[(1) - (1)]).first_column;
(yyloc).last_column = (yylsp[(1) - (1)]).last_column;
;}
break;
case 100:
/* Line 1455 of yacc.c */
#line 730 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
(yyval.node)->raw_text_ = (yyvsp[(2) - (2)].node)->raw_text_;
(yyval.node)->text_len_ = (yyvsp[(2) - (2)].node)->text_len_;
;}
break;
case 101:
/* Line 1455 of yacc.c */
#line 738 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR, 1, (yyvsp[(1) - (2)].node));
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
(yyval.node)->raw_text_ = (yyvsp[(2) - (2)].node)->raw_text_;
(yyval.node)->text_len_ = (yyvsp[(2) - (2)].node)->text_len_;
;}
break;
case 102:
/* Line 1455 of yacc.c */
#line 749 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("utf8", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 103:
/* Line 1455 of yacc.c */
#line 758 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("utf8mb4", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 104:
/* Line 1455 of yacc.c */
#line 767 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("binary", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 105:
/* Line 1455 of yacc.c */
#line 776 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("gbk", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string");
YYABORT_NO_MEMORY;
}
;}
break;
case 106:
/* Line 1455 of yacc.c */
#line 785 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("gb18030", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string");
YYABORT_NO_MEMORY;
}
;}
break;
case 107:
/* Line 1455 of yacc.c */
#line 794 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = parse_strdup("utf16", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "no more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 108:
/* Line 1455 of yacc.c */
#line 805 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 109:
/* Line 1455 of yacc.c */
#line 806 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 110:
/* Line 1455 of yacc.c */
#line 807 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 111:
/* Line 1455 of yacc.c */
#line 808 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 112:
/* Line 1455 of yacc.c */
#line 809 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 113:
/* Line 1455 of yacc.c */
#line 810 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 114:
/* Line 1455 of yacc.c */
#line 811 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 115:
/* Line 1455 of yacc.c */
#line 812 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 116:
/* Line 1455 of yacc.c */
#line 814 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->type_ = T_HEX_STRING;
;}
break;
case 117:
/* Line 1455 of yacc.c */
#line 821 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); (yyval.node)->param_num_ = 1;;}
break;
case 118:
/* Line 1455 of yacc.c */
#line 822 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); (yyval.node)->param_num_ = 1;;}
break;
case 119:
/* Line 1455 of yacc.c */
#line 826 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 120:
/* Line 1455 of yacc.c */
#line 827 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 121:
/* Line 1455 of yacc.c */
#line 828 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 122:
/* Line 1455 of yacc.c */
#line 830 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(3) - (3)].node)->type_ = T_SYSTEM_VARIABLE;
(yyvsp[(3) - (3)].node)->value_ = (yyvsp[(1) - (3)].ival)[0];
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 132:
/* Line 1455 of yacc.c */
#line 848 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(3) - (3)].node)->type_ = T_SYSTEM_VARIABLE;
(yyvsp[(3) - (3)].node)->value_ = (yyvsp[(1) - (3)].ival)[0];
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 133:
/* Line 1455 of yacc.c */
#line 854 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(2) - (2)].node)->value_ = -(yyvsp[(2) - (2)].node)->value_;
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 134:
/* Line 1455 of yacc.c */
#line 859 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
int32_t len = (yyvsp[(2) - (2)].node)->str_len_ + 2;
char *str_value = (char *)parse_malloc(len, result->malloc_pool_);
if (OB_LIKELY(NULL != str_value)) {
snprintf(str_value, len, "-%.*s", (int32_t)((yyvsp[(2) - (2)].node)->str_len_), (yyvsp[(2) - (2)].node)->str_value_);
(yyval.node) = (yyvsp[(2) - (2)].node);
(yyval.node)->str_value_ = str_value;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_ + 1;
} else {
yyerror(NULL, result, "No more space for copying expression string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 135:
/* Line 1455 of yacc.c */
#line 875 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 136:
/* Line 1455 of yacc.c */
#line 876 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 137:
/* Line 1455 of yacc.c */
#line 881 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 138:
/* Line 1455 of yacc.c */
#line 887 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS_NOT, 2, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (4)]).first_column, (yylsp[(4) - (4)]).last_column),
&(yylsp[(1) - (4)]), result);
;}
break;
case 139:
/* Line 1455 of yacc.c */
#line 894 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 140:
/* Line 1455 of yacc.c */
#line 900 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LE, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 141:
/* Line 1455 of yacc.c */
#line 908 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LT, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 142:
/* Line 1455 of yacc.c */
#line 914 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LT, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 143:
/* Line 1455 of yacc.c */
#line 922 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_EQ, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 144:
/* Line 1455 of yacc.c */
#line 928 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_EQ, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 145:
/* Line 1455 of yacc.c */
#line 936 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NSEQ, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 146:
/* Line 1455 of yacc.c */
#line 942 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 147:
/* Line 1455 of yacc.c */
#line 948 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GE, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 148:
/* Line 1455 of yacc.c */
#line 956 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GT, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 149:
/* Line 1455 of yacc.c */
#line 962 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GT, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 150:
/* Line 1455 of yacc.c */
#line 970 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 151:
/* Line 1455 of yacc.c */
#line 976 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sub_query = NULL;
malloc_non_terminal_node(sub_query, result->malloc_pool_, (yyvsp[(3) - (6)].node)->type_, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NE, 2, (yyvsp[(1) - (6)].node), sub_query);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (6)]).first_column, (yylsp[(6) - (6)]).last_column),
&(yylsp[(1) - (6)]), result);
;}
break;
case 152:
/* Line 1455 of yacc.c */
#line 983 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column),
&(yylsp[(1) - (1)]), result);
;}
break;
case 153:
/* Line 1455 of yacc.c */
#line 992 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IN, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 154:
/* Line 1455 of yacc.c */
#line 996 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_IN, 2, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 155:
/* Line 1455 of yacc.c */
#line 1001 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_BTW, 3, (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 156:
/* Line 1455 of yacc.c */
#line 1006 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BTW, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 157:
/* Line 1455 of yacc.c */
#line 1010 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//In the resolver, if only two children are found, the escape parameter will be set to '\'
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 158:
/* Line 1455 of yacc.c */
#line 1015 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//在resolver时,如果发现只有两个children,会将escape 参数设置为‘\’
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 2, (yyvsp[(1) - (4)].node), concat_node);
;}
break;
case 159:
/* Line 1455 of yacc.c */
#line 1027 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// If escape is an empty string '', the default value'\' is used
if (OB_UNLIKELY(T_VARCHAR == (yyvsp[(5) - (5)].node)->type_ && 0 == (yyvsp[(5) - (5)].node)->str_len_)) {
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), node);
} else {
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
}
;}
break;
case 160:
/* Line 1455 of yacc.c */
#line 1040 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// 如果escape 为空串 '', 则使用默认值'\'
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(3) - (6)].node), (yyvsp[(4) - (6)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
if (OB_UNLIKELY(T_VARCHAR == (yyvsp[(6) - (6)].node)->type_ && 0 == (yyvsp[(6) - (6)].node)->str_len_)) {
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (6)].node), concat_node, node);
} else {
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (6)].node), concat_node, (yyvsp[(6) - (6)].node));
}
;}
break;
case 161:
/* Line 1455 of yacc.c */
#line 1060 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *escape_node = NULL;
malloc_non_terminal_node(escape_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
ParseNode *escape_list_node = NULL;
merge_nodes(escape_list_node, result, T_EXPR_LIST, escape_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, escape_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (6)].node), (yyvsp[(3) - (6)].node), concat_node);
;}
break;
case 162:
/* Line 1455 of yacc.c */
#line 1071 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *str_node = NULL;
ParseNode *escape_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node(escape_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
ParseNode *string_list_node = NULL;
ParseNode *escape_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
merge_nodes(escape_list_node, result, T_EXPR_LIST, escape_node);
ParseNode *concat_node1 = NULL;
ParseNode *concat_node2 = NULL;
make_name_node(concat_node1, result->malloc_pool_, "concat");
make_name_node(concat_node2, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node1, result->malloc_pool_, T_FUN_SYS, 2, concat_node1, string_list_node);
malloc_non_terminal_node(concat_node2, result->malloc_pool_, T_FUN_SYS, 2, concat_node2, escape_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_LIKE, 3, (yyvsp[(1) - (7)].node), concat_node1, concat_node2);
;}
break;
case 163:
/* Line 1455 of yacc.c */
#line 1089 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
//In the resolver, if only two children are found, the escape parameter will be set to '\'
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 2, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 164:
/* Line 1455 of yacc.c */
#line 1095 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node));
//在resolver时,如果发现只有两个children,会将escape 参数设置为‘\’
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 2, (yyvsp[(1) - (5)].node), concat_node);
;}
break;
case 165:
/* Line 1455 of yacc.c */
#line 1108 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (6)].node));
// If escape is an empty string '', the default value'\' is used
if (OB_UNLIKELY(T_VARCHAR == (yyvsp[(6) - (6)].node)->type_ && 0 == (yyvsp[(6) - (6)].node)->str_len_)) {
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node), node);
} else {
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node));
}
;}
break;
case 166:
/* Line 1455 of yacc.c */
#line 1122 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (7)].node));
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(4) - (7)].node), (yyvsp[(5) - (7)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
// 如果escape 为空串 '', 则使用默认值'\'
if (OB_UNLIKELY(T_VARCHAR == (yyvsp[(7) - (7)].node)->type_ && 0 == (yyvsp[(7) - (7)].node)->str_len_)) {
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (7)].node), concat_node, node);
} else {
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (7)].node), concat_node, (yyvsp[(7) - (7)].node));
}
;}
break;
case 167:
/* Line 1455 of yacc.c */
#line 1143 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (7)].node));
ParseNode *escape_node = NULL;
malloc_non_terminal_node(escape_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
ParseNode *escape_list_node = NULL;
merge_nodes(escape_list_node, result, T_EXPR_LIST, escape_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, escape_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (7)].node), (yyvsp[(4) - (7)].node), concat_node);
;}
break;
case 168:
/* Line 1455 of yacc.c */
#line 1155 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (8)].node));
ParseNode *str_node = NULL;
ParseNode *escape_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(4) - (8)].node), (yyvsp[(5) - (8)].node));
malloc_non_terminal_node(escape_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node));
ParseNode *string_list_node = NULL;
ParseNode *escape_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
merge_nodes(escape_list_node, result, T_EXPR_LIST, escape_node);
ParseNode *concat_node1 = NULL;
ParseNode *concat_node2 = NULL;
make_name_node(concat_node1, result->malloc_pool_, "concat");
make_name_node(concat_node2, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node1, result->malloc_pool_, T_FUN_SYS, 2, concat_node1, string_list_node);
malloc_non_terminal_node(concat_node2, result->malloc_pool_, T_FUN_SYS, 2, concat_node2, escape_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_LIKE, 3, (yyvsp[(1) - (8)].node), concat_node1, concat_node2);
;}
break;
case 169:
/* Line 1455 of yacc.c */
#line 1174 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_REGEXP, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 170:
/* Line 1455 of yacc.c */
#line 1178 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_REGEXP, 2, (yyvsp[(1) - (4)].node), concat_node);
;}
break;
case 171:
/* Line 1455 of yacc.c */
#line 1189 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_REGEXP, 2, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 172:
/* Line 1455 of yacc.c */
#line 1194 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node));
ParseNode *str_node = NULL;
malloc_non_terminal_node(str_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_EXPR_LIST, str_node);
ParseNode *concat_node = NULL;
make_name_node(concat_node, result->malloc_pool_, "concat");
malloc_non_terminal_node(concat_node, result->malloc_pool_, T_FUN_SYS, 2, concat_node, string_list_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT_REGEXP, 2, (yyvsp[(1) - (5)].node), concat_node);
;}
break;
case 173:
/* Line 1455 of yacc.c */
#line 1206 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 174:
/* Line 1455 of yacc.c */
#line 1211 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 175:
/* Line 1455 of yacc.c */
#line 1215 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 176:
/* Line 1455 of yacc.c */
#line 1221 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_OR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 177:
/* Line 1455 of yacc.c */
#line 1227 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_AND, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 178:
/* Line 1455 of yacc.c */
#line 1233 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_LEFT_SHIFT, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 179:
/* Line 1455 of yacc.c */
#line 1239 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_RIGHT_SHIFT, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 180:
/* Line 1455 of yacc.c */
#line 1245 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_ADD, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 181:
/* Line 1455 of yacc.c */
#line 1251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_MINUS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 182:
/* Line 1455 of yacc.c */
#line 1257 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
make_name_node((yyval.node), result->malloc_pool_, "date_add");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (5)]).first_column, (yylsp[(4) - (5)]).last_column),
&(yylsp[(1) - (5)]), result);
;}
break;
case 183:
/* Line 1455 of yacc.c */
#line 1266 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
make_name_node((yyval.node), result->malloc_pool_, "date_sub");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (5)]).first_column, (yylsp[(4) - (5)]).last_column),
&(yylsp[(1) - (5)]), result);
;}
break;
case 184:
/* Line 1455 of yacc.c */
#line 1275 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_MUL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 185:
/* Line 1455 of yacc.c */
#line 1281 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_DIV, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 186:
/* Line 1455 of yacc.c */
#line 1287 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_MOD, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 187:
/* Line 1455 of yacc.c */
#line 1293 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_MOD, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 188:
/* Line 1455 of yacc.c */
#line 1299 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_INT_DIV, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 189:
/* Line 1455 of yacc.c */
#line 1305 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_XOR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(3) - (3)]).last_column),
&(yylsp[(1) - (3)]), result);
;}
break;
case 190:
/* Line 1455 of yacc.c */
#line 1311 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column),
&(yylsp[(1) - (1)]), result);
;}
break;
case 191:
/* Line 1455 of yacc.c */
#line 1320 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
make_name_node((yyval.node), result->malloc_pool_, "set_collation");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 192:
/* Line 1455 of yacc.c */
#line 1327 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *cast_type = NULL;
malloc_terminal_node(cast_type, result->malloc_pool_, T_CAST_ARGUMENT);
cast_type->value_ = 0;
cast_type->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_VARCHAR; /* data type */
cast_type->int16_values_[OB_NODE_CAST_COLL_IDX] = BINARY_COLLATION; /* is binary */
cast_type->int32_values_[OB_NODE_CAST_C_LEN_IDX] = DEFAULT_STR_LENGTH; /* precision */
cast_type->param_num_ = 0;
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(2) - (2)].node), cast_type);
make_name_node((yyval.node), result->malloc_pool_, "cast");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 193:
/* Line 1455 of yacc.c */
#line 1341 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 194:
/* Line 1455 of yacc.c */
#line 1342 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 195:
/* Line 1455 of yacc.c */
#line 1344 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_CNN, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 196:
/* Line 1455 of yacc.c */
#line 1348 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_POS, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 197:
/* Line 1455 of yacc.c */
#line 1352 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (T_UINT64 == (yyvsp[(2) - (2)].node)->type_ && 0 == (yyvsp[(2) - (2)].node)->is_assigned_from_child_) {
uint64_t value = (yyvsp[(2) - (2)].node)->value_;
int64_t pos = 0;
for (; pos < (yyvsp[(2) - (2)].node)->str_len_ && ISSPACE((yyvsp[(2) - (2)].node)->str_value_[pos]); pos++);
int64_t num_len = (yyvsp[(2) - (2)].node)->str_len_ - pos;
if (INT64_MAX == value - 1) {
char *new_str_value = (char *)parse_malloc((int32_t)num_len + 2, result->malloc_pool_);
if (NULL == new_str_value) {
yyerror(NULL, result, "No more space for copy str");
YYABORT_NO_MEMORY;
} else {
new_str_value[0] = '-';
memmove(new_str_value + 1, (yyvsp[(2) - (2)].node)->str_value_ + pos, num_len);
new_str_value[num_len + 1] = '\0';
(yyvsp[(2) - (2)].node)->str_value_ = new_str_value;
(yyvsp[(2) - (2)].node)->str_len_ = num_len + 1;
(yyvsp[(2) - (2)].node)->value_ = INT64_MIN;
(yyvsp[(2) - (2)].node)->type_ = T_INT;
(yyval.node) = (yyvsp[(2) - (2)].node);
}
} else {
char *new_str_value = (char *)parse_malloc((int32_t)num_len + 1, result->malloc_pool_);
if (NULL == new_str_value) {
yyerror(NULL, result, "No more space for copy str");
YYABORT_NO_MEMORY;
} else {
memmove(new_str_value, (yyvsp[(2) - (2)].node)->str_value_ + pos, num_len);
new_str_value[num_len] = '\0';
(yyvsp[(2) - (2)].node)->str_value_ = new_str_value;
(yyvsp[(2) - (2)].node)->str_len_ = num_len;
(yyvsp[(2) - (2)].node)->type_ = T_NUMBER;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NEG, 1, (yyvsp[(2) - (2)].node));
}
}
} else {
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NEG, 1, (yyvsp[(2) - (2)].node));
}
;}
break;
case 198:
/* Line 1455 of yacc.c */
#line 1392 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_BIT_NEG, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 199:
/* Line 1455 of yacc.c */
#line 1396 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 200:
/* Line 1455 of yacc.c */
#line 1401 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 201:
/* Line 1455 of yacc.c */
#line 1403 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (3)].node); (yyval.node)->is_assigned_from_child_ = 1; ;}
break;
case 202:
/* Line 1455 of yacc.c */
#line 1405 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_non_terminal_node(node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node));
merge_nodes((yyval.node), result, T_EXPR_LIST, node);
;}
break;
case 203:
/* Line 1455 of yacc.c */
#line 1411 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_non_terminal_node(node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
merge_nodes((yyval.node), result, T_EXPR_LIST, node);
;}
break;
case 204:
/* Line 1455 of yacc.c */
#line 1417 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (NULL == (yyvsp[(2) - (2)].node)->children_[PARSE_SELECT_FROM]) {
(yyvsp[(2) - (2)].node)->value_ = 2;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_EXISTS, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 205:
/* Line 1455 of yacc.c */
#line 1424 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
merge_nodes(node, result, T_MATCH_COLUMN_LIST, (yyvsp[(3) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_MATCH_AGAINST, 2, node, (yyvsp[(7) - (9)].node));
(yyval.node)->value_ = (yyvsp[(8) - (9)].ival)[0];
;}
break;
case 206:
/* Line 1455 of yacc.c */
#line 1431 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 207:
/* Line 1455 of yacc.c */
#line 1435 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 208:
/* Line 1455 of yacc.c */
#line 1439 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 209:
/* Line 1455 of yacc.c */
#line 1446 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GET_USER_VAR, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 210:
/* Line 1455 of yacc.c */
#line 1453 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 0;
;}
break;
case 211:
/* Line 1455 of yacc.c */
#line 1457 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 1;
;}
break;
case 212:
/* Line 1455 of yacc.c */
#line 1461 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 0;
;}
break;
case 213:
/* Line 1455 of yacc.c */
#line 1467 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_AND, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 214:
/* Line 1455 of yacc.c */
#line 1471 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_AND, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 215:
/* Line 1455 of yacc.c */
#line 1475 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_OR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 216:
/* Line 1455 of yacc.c */
#line 1479 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_OR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 217:
/* Line 1455 of yacc.c */
#line 1483 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_XOR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 218:
/* Line 1455 of yacc.c */
#line 1487 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_NOT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 219:
/* Line 1455 of yacc.c */
#line 1491 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 220:
/* Line 1455 of yacc.c */
#line 1495 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS_NOT, 2, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 221:
/* Line 1455 of yacc.c */
#line 1500 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* Unknown is can only appears in grammer 'bool_pri is unknown'
* and it is equal to NULL semanticly
* so we set its value to to NULL directly
*/
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_DEFAULT_NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS, 2, (yyvsp[(1) - (3)].node), node);
;}
break;
case 222:
/* Line 1455 of yacc.c */
#line 1510 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (4)].node));
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_DEFAULT_NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_IS_NOT, 2, (yyvsp[(1) - (4)].node), node);
;}
break;
case 223:
/* Line 1455 of yacc.c */
#line 1517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 224:
/* Line 1455 of yacc.c */
#line 1519 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(1) - (3)].node)->type_ = T_LEFT_VALUE;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_ASSIGN, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 225:
/* Line 1455 of yacc.c */
#line 1526 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 226:
/* Line 1455 of yacc.c */
#line 1527 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 227:
/* Line 1455 of yacc.c */
#line 1531 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 228:
/* Line 1455 of yacc.c */
#line 1532 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 229:
/* Line 1455 of yacc.c */
#line 1538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 230:
/* Line 1455 of yacc.c */
#line 1542 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ANY);
;}
break;
case 231:
/* Line 1455 of yacc.c */
#line 1546 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ANY);
;}
break;
case 232:
/* Line 1455 of yacc.c */
#line 1553 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 233:
/* Line 1455 of yacc.c */
#line 1557 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ merge_nodes((yyval.node), result, T_EXPR_LIST, (yyvsp[(2) - (3)].node)); ;}
break;
case 234:
/* Line 1455 of yacc.c */
#line 1562 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_WHEN_LIST, (yyvsp[(3) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CASE, 3, (yyvsp[(2) - (5)].node), (yyval.node), (yyvsp[(4) - (5)].node));
;}
break;
case 235:
/* Line 1455 of yacc.c */
#line 1570 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (7)].node));
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 1, node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 236:
/* Line 1455 of yacc.c */
#line 1578 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyvsp[(3) - (7)].node), result->malloc_pool_, T_ALL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 237:
/* Line 1455 of yacc.c */
#line 1584 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *distinct = NULL;
malloc_terminal_node(distinct, result->malloc_pool_, T_DISTINCT);
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 2, distinct, expr_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 238:
/* Line 1455 of yacc.c */
#line 1593 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(3) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT, 1, expr_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(6) - (6)].node));
;}
break;
case 239:
/* Line 1455 of yacc.c */
#line 1600 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(3) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT_SYNOPSIS, 1, expr_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(6) - (6)].node));
;}
break;
case 240:
/* Line 1455 of yacc.c */
#line 1607 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT_SYNOPSIS_MERGE, 1, (yyvsp[(3) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(6) - (6)].node));
;}
break;
case 241:
/* Line 1455 of yacc.c */
#line 1612 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SUM, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 242:
/* Line 1455 of yacc.c */
#line 1617 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_MAX, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 243:
/* Line 1455 of yacc.c */
#line 1622 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_MIN, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 244:
/* Line 1455 of yacc.c */
#line 1627 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_AVG, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 245:
/* Line 1455 of yacc.c */
#line 1632 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 246:
/* Line 1455 of yacc.c */
#line 1637 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 247:
/* Line 1455 of yacc.c */
#line 1642 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VARIANCE, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 248:
/* Line 1455 of yacc.c */
#line 1647 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV_POP, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 249:
/* Line 1455 of yacc.c */
#line 1652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV_SAMP, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 250:
/* Line 1455 of yacc.c */
#line 1657 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VAR_POP, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 251:
/* Line 1455 of yacc.c */
#line 1662 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VAR_SAMP, 2, (yyvsp[(3) - (7)].node), (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(7) - (7)].node));
;}
break;
case 252:
/* Line 1455 of yacc.c */
#line 1667 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *group_concat_exprs = NULL;
merge_nodes(group_concat_exprs, result, T_EXPR_LIST, (yyvsp[(4) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_GROUP_CONCAT, 4, (yyvsp[(3) - (9)].node), group_concat_exprs, (yyvsp[(5) - (9)].node), (yyvsp[(6) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(9) - (9)].node));
;}
break;
case 253:
/* Line 1455 of yacc.c */
#line 1674 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *group_concat_exprs = NULL;
merge_nodes(group_concat_exprs, result, T_EXPR_LIST, (yyvsp[(4) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_GROUP_CONCAT, 4, (yyvsp[(3) - (9)].node), group_concat_exprs, (yyvsp[(5) - (9)].node), (yyvsp[(6) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(9) - (9)].node));
;}
break;
case 254:
/* Line 1455 of yacc.c */
#line 1681 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_RANK);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(5) - (5)].node));
;}
break;
case 255:
/* Line 1455 of yacc.c */
#line 1686 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_DENSE_RANK);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(5) - (5)].node));
;}
break;
case 256:
/* Line 1455 of yacc.c */
#line 1691 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_PERCENT_RANK);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(5) - (5)].node));
;}
break;
case 257:
/* Line 1455 of yacc.c */
#line 1696 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_ROW_NUMBER);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(5) - (5)].node));
;}
break;
case 258:
/* Line 1455 of yacc.c */
#line 1701 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_NTILE, 1, (yyvsp[(3) - (6)].node) );
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(6) - (6)].node));
;}
break;
case 259:
/* Line 1455 of yacc.c */
#line 1706 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_CUME_DIST);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(5) - (5)].node));
;}
break;
case 260:
/* Line 1455 of yacc.c */
#line 1711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->type_ = T_WIN_FUN_FIRST_VALUE;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 261:
/* Line 1455 of yacc.c */
#line 1717 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->type_ = T_WIN_FUN_LAST_VALUE;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 262:
/* Line 1455 of yacc.c */
#line 1723 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->type_ = T_WIN_FUN_LEAD;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 263:
/* Line 1455 of yacc.c */
#line 1729 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (4)].node);
(yyval.node)->type_ = T_WIN_FUN_LAG;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 264:
/* Line 1455 of yacc.c */
#line 1735 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_FUN_NTH_VALUE, 4, (yyvsp[(3) - (10)].node), (yyvsp[(5) - (10)].node), (yyvsp[(7) - (10)].node), (yyvsp[(8) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WINDOW_FUNCTION, 2, (yyval.node), (yyvsp[(10) - (10)].node));
;}
break;
case 265:
/* Line 1455 of yacc.c */
#line 1743 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FIRST);
;}
break;
case 266:
/* Line 1455 of yacc.c */
#line 1748 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LAST);
;}
break;
case 267:
/* Line 1455 of yacc.c */
#line 1755 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 268:
/* Line 1455 of yacc.c */
#line 1760 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 269:
/* Line 1455 of yacc.c */
#line 1765 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RESPECT);
;}
break;
case 270:
/* Line 1455 of yacc.c */
#line 1770 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_IGNORE);
;}
break;
case 271:
/* Line 1455 of yacc.c */
#line 1777 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (2)].non_reserved_keyword)) ; /* make bison mute */
(yyval.node) = (yyvsp[(1) - (2)].node);
;}
break;
case 272:
/* Line 1455 of yacc.c */
#line 1783 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 273:
/* Line 1455 of yacc.c */
#line 1788 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INVALID, 2, (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].node));
;}
break;
case 274:
/* Line 1455 of yacc.c */
#line 1792 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INVALID, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 275:
/* Line 1455 of yacc.c */
#line 1799 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params_node = NULL;
malloc_non_terminal_node(params_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(2) - (5)].node), NULL);
merge_nodes(params_node, result, T_EXPR_LIST, params_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INVALID, 2, params_node, (yyvsp[(3) - (5)].node));
;}
break;
case 276:
/* Line 1455 of yacc.c */
#line 1807 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params_node = NULL;
malloc_non_terminal_node(params_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(2) - (7)].node), (yyvsp[(6) - (7)].node));
merge_nodes(params_node, result, T_EXPR_LIST, params_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INVALID, 2, params_node, (yyvsp[(3) - (7)].node));
;}
break;
case 277:
/* Line 1455 of yacc.c */
#line 1814 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params_node = NULL;
merge_nodes(params_node, result, T_EXPR_LIST, (yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INVALID, 2, params_node, (yyvsp[(4) - (4)].node));
;}
break;
case 278:
/* Line 1455 of yacc.c */
#line 1823 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_NEW_GENERALIZED_WINDOW, 2, (yyvsp[(1) - (1)].node), NULL);
;}
break;
case 279:
/* Line 1455 of yacc.c */
#line 1828 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 280:
/* Line 1455 of yacc.c */
#line 1834 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_NEW_GENERALIZED_WINDOW, 2, (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node));
;}
break;
case 281:
/* Line 1455 of yacc.c */
#line 1839 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_NEW_GENERALIZED_WINDOW, 2, NULL, (yyvsp[(2) - (3)].node));
;}
break;
case 282:
/* Line 1455 of yacc.c */
#line 1846 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 283:
/* Line 1455 of yacc.c */
#line 1848 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_WIN_NAMED_WINDOWS, (yyvsp[(2) - (2)].node));
;}
break;
case 284:
/* Line 1455 of yacc.c */
#line 1855 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 285:
/* Line 1455 of yacc.c */
#line 1859 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 286:
/* Line 1455 of yacc.c */
#line 1866 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_NAMED_WINDOW, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
dup_string((yyvsp[(3) - (3)].node), result, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
;}
break;
case 287:
/* Line 1455 of yacc.c */
#line 1874 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_GENERALIZED_WINDOW, 3, (yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 288:
/* Line 1455 of yacc.c */
#line 1881 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 289:
/* Line 1455 of yacc.c */
#line 1883 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_EXPR_LIST, (yyvsp[(3) - (3)].node));
;}
break;
case 290:
/* Line 1455 of yacc.c */
#line 1889 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->value_ = 1;
;}
break;
case 291:
/* Line 1455 of yacc.c */
#line 1895 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->value_ = 2;
;}
break;
case 292:
/* Line 1455 of yacc.c */
#line 1903 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->value_ = 1;
;}
break;
case 293:
/* Line 1455 of yacc.c */
#line 1909 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->value_ = 2;
;}
break;
case 294:
/* Line 1455 of yacc.c */
#line 1918 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_INTERVAL, 1, (yyvsp[(1) - (1)].node));
(yyval.node)->value_ = 1;
;}
break;
case 295:
/* Line 1455 of yacc.c */
#line 1923 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_INTERVAL, 2, (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 296:
/* Line 1455 of yacc.c */
#line 1930 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WIN_BOUND);
(yyval.node)->value_ = 1;
;}
break;
case 297:
/* Line 1455 of yacc.c */
#line 1935 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_BOUND, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
dup_string((yyvsp[(1) - (2)].node), result, (yylsp[(1) - (2)]).first_column, (yylsp[(1) - (2)]).last_column);
(yyval.node)->value_ = 2;
;}
break;
case 298:
/* Line 1455 of yacc.c */
#line 1943 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_WINDOW, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
(yyval.node)->value_ = 1;
;}
break;
case 299:
/* Line 1455 of yacc.c */
#line 1948 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WIN_WINDOW, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
(yyval.node)->value_ = 2;
;}
break;
case 300:
/* Line 1455 of yacc.c */
#line 1956 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 301:
/* Line 1455 of yacc.c */
#line 1958 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 302:
/* Line 1455 of yacc.c */
#line 1964 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 303:
/* Line 1455 of yacc.c */
#line 1965 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 304:
/* Line 1455 of yacc.c */
#line 1969 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 305:
/* Line 1455 of yacc.c */
#line 1971 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); ;}
break;
case 306:
/* Line 1455 of yacc.c */
#line 1976 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WHEN, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 307:
/* Line 1455 of yacc.c */
#line 1982 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (2)].node); ;}
break;
case 308:
/* Line 1455 of yacc.c */
#line 1983 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT_NULL); ;}
break;
case 309:
/* Line 1455 of yacc.c */
#line 1987 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 310:
/* Line 1455 of yacc.c */
#line 1990 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 311:
/* Line 1455 of yacc.c */
#line 1995 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_MOD, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 312:
/* Line 1455 of yacc.c */
#line 1999 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (5)].node));
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 1, node);
;}
break;
case 313:
/* Line 1455 of yacc.c */
#line 2006 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyvsp[(3) - (5)].node), result->malloc_pool_, T_ALL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 314:
/* Line 1455 of yacc.c */
#line 2011 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *distinct = NULL;
malloc_terminal_node(distinct, result->malloc_pool_, T_DISTINCT);
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 2, distinct, expr_list);
;}
break;
case 315:
/* Line 1455 of yacc.c */
#line 2019 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *distinct = NULL;
malloc_terminal_node(distinct, result->malloc_pool_, T_DISTINCT);
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_COUNT, 2, distinct, expr_list);
;}
break;
case 316:
/* Line 1455 of yacc.c */
#line 2027 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT, 1, expr_list);
;}
break;
case 317:
/* Line 1455 of yacc.c */
#line 2033 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *expr_list = NULL;
merge_nodes(expr_list, result, T_EXPR_LIST, (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT_SYNOPSIS, 1, expr_list);
;}
break;
case 318:
/* Line 1455 of yacc.c */
#line 2039 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_APPROX_COUNT_DISTINCT_SYNOPSIS_MERGE, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 319:
/* Line 1455 of yacc.c */
#line 2043 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SUM, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 320:
/* Line 1455 of yacc.c */
#line 2047 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_MAX, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 321:
/* Line 1455 of yacc.c */
#line 2051 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_MIN, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 322:
/* Line 1455 of yacc.c */
#line 2055 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_AVG, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 323:
/* Line 1455 of yacc.c */
#line 2059 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 324:
/* Line 1455 of yacc.c */
#line 2063 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 325:
/* Line 1455 of yacc.c */
#line 2067 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VARIANCE, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 326:
/* Line 1455 of yacc.c */
#line 2071 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV_POP, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 327:
/* Line 1455 of yacc.c */
#line 2075 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_STDDEV_SAMP, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 328:
/* Line 1455 of yacc.c */
#line 2079 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VAR_POP, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 329:
/* Line 1455 of yacc.c */
#line 2083 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_VAR_SAMP, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 330:
/* Line 1455 of yacc.c */
#line 2087 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_GROUPING, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 331:
/* Line 1455 of yacc.c */
#line 2091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *group_concat_exprs = NULL;
merge_nodes(group_concat_exprs, result, T_EXPR_LIST, (yyvsp[(4) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_GROUP_CONCAT, 4, (yyvsp[(3) - (7)].node), group_concat_exprs, (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node));
;}
break;
case 332:
/* Line 1455 of yacc.c */
#line 2097 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(3) - (8)].node), (yyvsp[(5) - (8)].node), (yyvsp[(7) - (8)].node));
make_name_node((yyval.node), result->malloc_pool_, "if");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_IF, 2, (yyval.node), params);
;}
break;
case 333:
/* Line 1455 of yacc.c */
#line 2104 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "isnull");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_ISNULL, 2, (yyval.node), params);
;}
break;
case 334:
/* Line 1455 of yacc.c */
#line 2111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 335:
/* Line 1455 of yacc.c */
#line 2115 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 336:
/* Line 1455 of yacc.c */
#line 2119 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 337:
/* Line 1455 of yacc.c */
#line 2123 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 338:
/* Line 1455 of yacc.c */
#line 2127 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 339:
/* Line 1455 of yacc.c */
#line 2131 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 340:
/* Line 1455 of yacc.c */
#line 2135 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 341:
/* Line 1455 of yacc.c */
#line 2139 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//cast_data_type is a T_CAST_ARGUMENT rather than a T_INT to avoid being parameterized automatically
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "cast");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 342:
/* Line 1455 of yacc.c */
#line 2147 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 4, (yyvsp[(3) - (10)].node), (yyvsp[(5) - (10)].node), (yyvsp[(7) - (10)].node), (yyvsp[(9) - (10)].node));
make_name_node((yyval.node), result->malloc_pool_, "insert");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 343:
/* Line 1455 of yacc.c */
#line 2154 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "left");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 344:
/* Line 1455 of yacc.c */
#line 2161 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//same as CAST
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "cast");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 345:
/* Line 1455 of yacc.c */
#line 2169 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "convert");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 346:
/* Line 1455 of yacc.c */
#line 2176 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "position");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 347:
/* Line 1455 of yacc.c */
#line 2183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node)); /* unused */
make_name_node((yyval.node), result->malloc_pool_, "substr");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 348:
/* Line 1455 of yacc.c */
#line 2189 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "trim");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 349:
/* Line 1455 of yacc.c */
#line 2194 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "date");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 350:
/* Line 1455 of yacc.c */
#line 2201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "year");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 351:
/* Line 1455 of yacc.c */
#line 2208 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "time");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 352:
/* Line 1455 of yacc.c */
#line 2215 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "timestamp");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 353:
/* Line 1455 of yacc.c */
#line 2222 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "month");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 354:
/* Line 1455 of yacc.c */
#line 2229 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "week");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 355:
/* Line 1455 of yacc.c */
#line 2236 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "week");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 356:
/* Line 1455 of yacc.c */
#line 2243 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "quarter");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 357:
/* Line 1455 of yacc.c */
#line 2250 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "second");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 358:
/* Line 1455 of yacc.c */
#line 2257 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "get_format");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 359:
/* Line 1455 of yacc.c */
#line 2264 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "minute");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 360:
/* Line 1455 of yacc.c */
#line 2271 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "microsecond");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 361:
/* Line 1455 of yacc.c */
#line 2278 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "hour");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 362:
/* Line 1455 of yacc.c */
#line 2285 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "date_add");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 363:
/* Line 1455 of yacc.c */
#line 2290 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "date_sub");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 364:
/* Line 1455 of yacc.c */
#line 2295 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "date_add");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 365:
/* Line 1455 of yacc.c */
#line 2300 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "date_sub");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 366:
/* Line 1455 of yacc.c */
#line 2305 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *param = NULL;
ParseNode *interval = NULL;
malloc_terminal_node(interval, result->malloc_pool_, T_INT);
interval->value_ = DATE_UNIT_DAY;
interval->is_hidden_const_ = 1;
malloc_non_terminal_node(param, result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node), interval);
make_name_node((yyval.node), result->malloc_pool_, "date_add");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), param);
;}
break;
case 367:
/* Line 1455 of yacc.c */
#line 2319 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *param = NULL;
ParseNode *interval = NULL;
malloc_terminal_node(interval, result->malloc_pool_, T_INT);
interval->value_ = DATE_UNIT_DAY;
interval->is_hidden_const_ = 1;
malloc_non_terminal_node(param, result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node), interval);
make_name_node((yyval.node), result->malloc_pool_, "date_sub");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), param);
;}
break;
case 368:
/* Line 1455 of yacc.c */
#line 2333 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "timestampdiff");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 369:
/* Line 1455 of yacc.c */
#line 2338 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "timestampadd");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), (yyvsp[(3) - (4)].node));
;}
break;
case 370:
/* Line 1455 of yacc.c */
#line 2343 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "extract");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 371:
/* Line 1455 of yacc.c */
#line 2350 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "ascii");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 372:
/* Line 1455 of yacc.c */
#line 2357 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
ParseNode *null_node1 = NULL;
ParseNode *null_node2 = NULL;
ParseNode *null_node3 = NULL;
ParseNode *null_node4 = NULL;
malloc_terminal_node(null_node1, result->malloc_pool_, T_NULL);
null_node1->is_hidden_const_ = 1;
malloc_terminal_node(null_node2, result->malloc_pool_, T_NULL);
null_node2->is_hidden_const_ = 1;
malloc_terminal_node(null_node3, result->malloc_pool_, T_NULL);
null_node3->is_hidden_const_ = 1;
malloc_terminal_node(null_node4, result->malloc_pool_, T_NULL);
null_node4->is_hidden_const_ = 1;
malloc_non_terminal_node(node, result->malloc_pool_, T_EXPR_LIST, 5, (yyvsp[(3) - (4)].node), null_node1,
null_node2, null_node3, null_node4);
make_name_node((yyval.node), result->malloc_pool_, "default");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), node);
;}
break;
case 373:
/* Line 1455 of yacc.c */
#line 2378 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(3) - (4)].node));
make_name_node((yyval.node), result->malloc_pool_, "values");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 374:
/* Line 1455 of yacc.c */
#line 2385 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//default using binary
ParseNode *charset_node = NULL;
malloc_terminal_node(charset_node, result->malloc_pool_, T_CHAR_CHARSET);
charset_node->str_value_ = parse_strdup("binary", result->malloc_pool_, &(charset_node->str_len_));
if (OB_UNLIKELY(NULL == charset_node->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
ParseNode *params_node = NULL;
malloc_non_terminal_node(params_node, result->malloc_pool_, T_LINK_NODE, 2, charset_node, (yyvsp[(3) - (4)].node));
merge_nodes(params_node, result, T_EXPR_LIST, params_node);
make_name_node((yyval.node), result->malloc_pool_, "char");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params_node);
;}
break;
case 375:
/* Line 1455 of yacc.c */
#line 2404 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params_node = NULL;
(yyvsp[(5) - (6)].node)->type_ = T_CHAR_CHARSET;
malloc_non_terminal_node(params_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(5) - (6)].node), (yyvsp[(3) - (6)].node));
merge_nodes(params_node, result, T_EXPR_LIST, params_node);
make_name_node((yyval.node), result->malloc_pool_, "char");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params_node);
;}
break;
case 376:
/* Line 1455 of yacc.c */
#line 2414 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
make_name_node((yyval.node), result->malloc_pool_, "log");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), params);
;}
break;
case 377:
/* Line 1455 of yacc.c */
#line 2421 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *param_node = NULL;
malloc_terminal_node(param_node, result->malloc_pool_, T_SFU_DOUBLE);
int64_t len = strlen("2.718281828459045");
param_node->str_value_ = parse_strndup("2.718281828459045", len, result->malloc_pool_);
if (OB_UNLIKELY(NULL == param_node->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
param_node->str_len_ = len;
ParseNode *param_list_node = NULL;
malloc_non_terminal_node(param_list_node, result->malloc_pool_, T_LINK_NODE, 2, param_node, (yyvsp[(3) - (4)].node));
merge_nodes(param_list_node, result, T_EXPR_LIST, param_list_node);
make_name_node((yyval.node), result->malloc_pool_, "log");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), param_list_node);
;}
break;
case 378:
/* Line 1455 of yacc.c */
#line 2438 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *param_node = NULL;
malloc_terminal_node(param_node, result->malloc_pool_, T_SFU_DOUBLE);
int64_t len = strlen("2.718281828459045");
param_node->str_value_ = parse_strndup("2.718281828459045", len, result->malloc_pool_);
if (OB_UNLIKELY(NULL == param_node->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
param_node->str_len_ = len;
ParseNode *param_list_node = NULL;
malloc_non_terminal_node(param_list_node, result->malloc_pool_, T_LINK_NODE, 2, param_node, (yyvsp[(3) - (4)].node));
merge_nodes(param_list_node, result, T_EXPR_LIST, param_list_node);
make_name_node((yyval.node), result->malloc_pool_, "log");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyval.node), param_list_node);
;}
break;
case 379:
/* Line 1455 of yacc.c */
#line 2455 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (NULL != (yyvsp[(3) - (4)].node))
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, (yyvsp[(1) - (4)].node), params);
store_pl_ref_object_symbol((yyval.node), result, REF_FUNC);
}
else
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 1, (yyvsp[(1) - (4)].node));
store_pl_ref_object_symbol((yyval.node), result, REF_FUNC);
}
;}
break;
case 380:
/* Line 1455 of yacc.c */
#line 2470 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (NULL != (yyvsp[(5) - (6)].node))
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_UDF, 4, (yyvsp[(3) - (6)].node), params, (yyvsp[(1) - (6)].node), NULL);
store_pl_ref_object_symbol((yyval.node), result, REF_FUNC);
}
else
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_UDF, 4, (yyvsp[(3) - (6)].node), NULL, (yyvsp[(1) - (6)].node), NULL);
store_pl_ref_object_symbol((yyval.node), result, REF_FUNC);
}
;}
break;
case 381:
/* Line 1455 of yacc.c */
#line 2485 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 382:
/* Line 1455 of yacc.c */
#line 2492 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "interval");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_INTERVAL, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 383:
/* Line 1455 of yacc.c */
#line 2497 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *params_node = NULL;
make_name_node((yyval.node), result->malloc_pool_, "interval");
malloc_non_terminal_node(params, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(5) - (8)].node), (yyvsp[(7) - (8)].node));
merge_nodes(params_node, result, T_EXPR_LIST, params);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_INTERVAL, 2, (yyvsp[(3) - (8)].node), params_node);
;}
break;
case 384:
/* Line 1455 of yacc.c */
#line 2509 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIMESTAMP, 1, NULL);
;}
break;
case 385:
/* Line 1455 of yacc.c */
#line 2513 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIMESTAMP, 1, NULL);
;}
break;
case 386:
/* Line 1455 of yacc.c */
#line 2517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIMESTAMP, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 387:
/* Line 1455 of yacc.c */
#line 2524 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIME, 1, NULL);
;}
break;
case 388:
/* Line 1455 of yacc.c */
#line 2528 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIME, 1, NULL);
;}
break;
case 389:
/* Line 1455 of yacc.c */
#line 2532 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_TIME, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 390:
/* Line 1455 of yacc.c */
#line 2539 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_DATE, 1, NULL);
;}
break;
case 391:
/* Line 1455 of yacc.c */
#line 2543 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_UTC_DATE, 1, NULL);
;}
break;
case 392:
/* Line 1455 of yacc.c */
#line 2551 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_SYSDATE, 1, NULL);
;}
break;
case 393:
/* Line 1455 of yacc.c */
#line 2555 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_SYSDATE, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 394:
/* Line 1455 of yacc.c */
#line 2562 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIMESTAMP, 1, NULL);
;}
break;
case 395:
/* Line 1455 of yacc.c */
#line 2566 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIMESTAMP, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 396:
/* Line 1455 of yacc.c */
#line 2570 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
if (0 != (yyvsp[(2) - (2)].ival)[1])
{
ParseNode *params = NULL;
malloc_terminal_node(params, result->malloc_pool_, T_INT);
params->value_ = (yyvsp[(2) - (2)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIMESTAMP, 1, params);
}
else
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIMESTAMP, 1, NULL);
}
;}
break;
case 397:
/* Line 1455 of yacc.c */
#line 2588 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 398:
/* Line 1455 of yacc.c */
#line 2589 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 399:
/* Line 1455 of yacc.c */
#line 2590 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 400:
/* Line 1455 of yacc.c */
#line 2595 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIME, 1, NULL);
;}
break;
case 401:
/* Line 1455 of yacc.c */
#line 2599 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIME, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 402:
/* Line 1455 of yacc.c */
#line 2603 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (0 != (yyvsp[(2) - (2)].ival)[1])
{
ParseNode *params = NULL;
malloc_terminal_node(params, result->malloc_pool_, T_INT);
params->value_ = (yyvsp[(2) - (2)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIME, 1, params);
}
else
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_TIME, 1, NULL);
}
;}
break;
case 403:
/* Line 1455 of yacc.c */
#line 2620 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_DATE, 1, NULL);
;}
break;
case 404:
/* Line 1455 of yacc.c */
#line 2624 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_DATE, 1, NULL);
;}
break;
case 405:
/* Line 1455 of yacc.c */
#line 2628 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS_CUR_DATE, 1, NULL);
;}
break;
case 406:
/* Line 1455 of yacc.c */
#line 2634 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_; (yyval.ival)[1] = 1; ;}
break;
case 407:
/* Line 1455 of yacc.c */
#line 2635 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; (yyval.ival)[1] = 0; ;}
break;
case 408:
/* Line 1455 of yacc.c */
#line 2636 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; (yyval.ival)[1] = 0; ;}
break;
case 409:
/* Line 1455 of yacc.c */
#line 2643 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 410:
/* Line 1455 of yacc.c */
#line 2647 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 411:
/* Line 1455 of yacc.c */
#line 2655 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 412:
/* Line 1455 of yacc.c */
#line 2659 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 413:
/* Line 1455 of yacc.c */
#line 2663 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 414:
/* Line 1455 of yacc.c */
#line 2667 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 415:
/* Line 1455 of yacc.c */
#line 2674 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 416:
/* Line 1455 of yacc.c */
#line 2681 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 417:
/* Line 1455 of yacc.c */
#line 2688 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 418:
/* Line 1455 of yacc.c */
#line 2690 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 419:
/* Line 1455 of yacc.c */
#line 2695 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 420:
/* Line 1455 of yacc.c */
#line 2699 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 421:
/* Line 1455 of yacc.c */
#line 2703 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 422:
/* Line 1455 of yacc.c */
#line 2710 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 423:
/* Line 1455 of yacc.c */
#line 2714 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 424:
/* Line 1455 of yacc.c */
#line 2718 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 425:
/* Line 1455 of yacc.c */
#line 2722 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 426:
/* Line 1455 of yacc.c */
#line 2729 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 427:
/* Line 1455 of yacc.c */
#line 2733 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SEPARATOR_CLAUSE, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 428:
/* Line 1455 of yacc.c */
#line 2745 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *from_list = NULL;
ParseNode *delete_table_node = NULL;
merge_nodes(from_list, result, T_TABLE_REFERENCES, (yyvsp[(3) - (6)].node));
malloc_non_terminal_node(delete_table_node, result->malloc_pool_, T_DELETE_TABLE_NODE, 2,
NULL, /*0. delete list*/
from_list); /*1. from list*/
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DELETE, 7,
delete_table_node, /* 0. table_node */
(yyvsp[(4) - (6)].node), /* 1. where */
(yyvsp[(5) - (6)].node), /* 2. order by */
(yyvsp[(6) - (6)].node), /* 3. limit */
NULL, /* 4. when */
(yyvsp[(1) - (6)].node), /* 5. hint */
NULL /* 6. returning, unused in mysql */
);
;}
break;
case 429:
/* Line 1455 of yacc.c */
#line 2764 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DELETE, 7,
(yyvsp[(2) - (3)].node), /* 0. table_node */
(yyvsp[(3) - (3)].node), /* 1. where */
NULL, /* 2. order by */
NULL, /* 3. limit */
NULL, /* 4. when */
(yyvsp[(1) - (3)].node), /* 5. hint */
NULL /* 6. returning, unused in mysql */
);
;}
break;
case 430:
/* Line 1455 of yacc.c */
#line 2779 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *delete_list = NULL;
ParseNode *from_list = NULL;
merge_nodes(delete_list, result, T_TABLE_REFERENCES, (yyvsp[(1) - (3)].node));
merge_nodes(from_list, result, T_TABLE_REFERENCES, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DELETE_TABLE_NODE, 2,
delete_list, /*0. delete list*/
from_list); /*1. from list*/
;}
break;
case 431:
/* Line 1455 of yacc.c */
#line 2789 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *delete_list = NULL;
ParseNode *from_list = NULL;
merge_nodes(delete_list, result, T_TABLE_REFERENCES, (yyvsp[(2) - (4)].node));
merge_nodes(from_list, result, T_TABLE_REFERENCES, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DELETE_TABLE_NODE, 2,
delete_list, /*0. delete list*/
from_list); /*1. from list*/
;}
break;
case 432:
/* Line 1455 of yacc.c */
#line 2808 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *from_list = NULL;
ParseNode *assign_list = NULL;
merge_nodes(from_list, result, T_TABLE_REFERENCES, (yyvsp[(3) - (8)].node));
merge_nodes(assign_list, result, T_ASSIGN_LIST, (yyvsp[(5) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UPDATE, 9,
from_list, /* 0. table node */
assign_list, /* 1. update list */
(yyvsp[(6) - (8)].node), /* 2. where node */
(yyvsp[(7) - (8)].node), /* 3. order by node */
(yyvsp[(8) - (8)].node), /* 4. limit node */
NULL, /* 5. when node */
(yyvsp[(1) - (8)].node), /* 6. hint node */
(yyvsp[(2) - (8)].node), /* 7. ignore */
NULL /* 8. returning, unused in mysql */
);
;}
break;
case 433:
/* Line 1455 of yacc.c */
#line 2830 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 434:
/* Line 1455 of yacc.c */
#line 2834 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 435:
/* Line 1455 of yacc.c */
#line 2841 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ASSIGN_ITEM, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 436:
/* Line 1455 of yacc.c */
#line 2853 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *resource_options = NULL;
merge_nodes(resource_options, result, T_RESOURCE_UNIT_OPTION_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_RESOURCE_UNIT, 3,
(yyvsp[(4) - (6)].node),
(yyvsp[(5) - (6)].node), /* resource unit name */
resource_options); /* resource opt */
;}
break;
case 437:
/* Line 1455 of yacc.c */
#line 2862 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *resource_options = NULL;
merge_nodes(resource_options, result, T_RESOURCE_POOL_OPTION_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_RESOURCE_POOL, 3,
(yyvsp[(4) - (6)].node),
(yyvsp[(5) - (6)].node), // resource pool name
resource_options); // resource opt
;}
break;
case 438:
/* Line 1455 of yacc.c */
#line 2873 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 439:
/* Line 1455 of yacc.c */
#line 2877 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 440:
/* Line 1455 of yacc.c */
#line 2881 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 441:
/* Line 1455 of yacc.c */
#line 2888 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIN_CPU, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 442:
/* Line 1455 of yacc.c */
#line 2893 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIN_IOPS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 443:
/* Line 1455 of yacc.c */
#line 2898 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIN_MEMORY, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 444:
/* Line 1455 of yacc.c */
#line 2903 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_CPU, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 445:
/* Line 1455 of yacc.c */
#line 2908 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_MEMORY, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 446:
/* Line 1455 of yacc.c */
#line 2913 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_IOPS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 447:
/* Line 1455 of yacc.c */
#line 2918 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_DISK_SIZE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 448:
/* Line 1455 of yacc.c */
#line 2923 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_SESSION_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 449:
/* Line 1455 of yacc.c */
#line 2931 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 450:
/* Line 1455 of yacc.c */
#line 2935 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 451:
/* Line 1455 of yacc.c */
#line 2939 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 452:
/* Line 1455 of yacc.c */
#line 2946 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UNIT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 453:
/* Line 1455 of yacc.c */
#line 2951 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /*make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UNIT_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 454:
/* Line 1455 of yacc.c */
#line 2956 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)); /* make bison mute */
merge_nodes((yyval.node), result, T_ZONE_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 455:
/* Line 1455 of yacc.c */
#line 2961 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REPLICA_TYPE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 456:
/* Line 1455 of yacc.c */
#line 2969 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 457:
/* Line 1455 of yacc.c */
#line 2973 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 458:
/* Line 1455 of yacc.c */
#line 2980 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 459:
/* Line 1455 of yacc.c */
#line 2985 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 460:
/* Line 1455 of yacc.c */
#line 2992 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (6)].node)); /* make bison mute */
merge_nodes((yyval.node), result, T_UNIT_ID_LIST, (yyvsp[(5) - (6)].node));
;}
break;
case 461:
/* Line 1455 of yacc.c */
#line 2997 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 462:
/* Line 1455 of yacc.c */
#line 3004 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UNIT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 463:
/* Line 1455 of yacc.c */
#line 3009 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UNIT_NUM, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 464:
/* Line 1455 of yacc.c */
#line 3014 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
merge_nodes((yyval.node), result, T_ZONE_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 465:
/* Line 1455 of yacc.c */
#line 3022 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *resource_options = NULL;
merge_nodes(resource_options, result, T_RESOURCE_UNIT_OPTION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_RESOURCE_UNIT, 2,
(yyvsp[(4) - (5)].node), /* resource unit name */
resource_options); /* resource opt */
;}
break;
case 466:
/* Line 1455 of yacc.c */
#line 3030 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *resource_pool_options = NULL;
merge_nodes(resource_pool_options, result, T_RESOURCE_POOL_OPTION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_RESOURCE_POOL, 2,
(yyvsp[(4) - (5)].node), /* resource_pool name */
resource_pool_options); /* resource_pool opt */
;}
break;
case 467:
/* Line 1455 of yacc.c */
#line 3038 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *resource_pool_list = NULL;
ParseNode *zone_list = NULL;
merge_nodes(resource_pool_list, result, T_RESOURCE_POOL_LIST, (yyvsp[(8) - (13)].node));
merge_nodes(zone_list, result, T_ZONE_LIST, (yyvsp[(12) - (13)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SPLIT_RESOURCE_POOL, 3,
(yyvsp[(4) - (13)].node), /* resource pool name */
resource_pool_list, /* new pool names */
zone_list); /* corresponding zones */
;}
break;
case 468:
/* Line 1455 of yacc.c */
#line 3049 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *old_resource_pool_list = NULL;
ParseNode *new_resource_pool_list = NULL;
merge_nodes(old_resource_pool_list, result, T_RESOURCE_POOL_LIST, (yyvsp[(6) - (11)].node));
merge_nodes(new_resource_pool_list, result, T_RESOURCE_POOL_LIST, (yyvsp[(10) - (11)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MERGE_RESOURCE_POOL, 2,
old_resource_pool_list, /* to be merged*/
new_resource_pool_list); /* finish merge*/
;}
break;
case 469:
/* Line 1455 of yacc.c */
#line 3062 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_RESOURCE_UNIT, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 470:
/* Line 1455 of yacc.c */
#line 3066 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_RESOURCE_POOL, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 471:
/* Line 1455 of yacc.c */
#line 3079 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tenant_options = NULL;
merge_nodes(tenant_options, result, T_TENANT_OPTION_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TENANT, 4,
(yyvsp[(3) - (6)].node), /* if not exists */
(yyvsp[(4) - (6)].node), /* tenant name */
tenant_options, /* tenant opt */
(yyvsp[(6) - (6)].node)); /* system variable set opt */
;}
break;
case 472:
/* Line 1455 of yacc.c */
#line 3091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 473:
/* Line 1455 of yacc.c */
#line 3095 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 474:
/* Line 1455 of yacc.c */
#line 3099 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 475:
/* Line 1455 of yacc.c */
#line 3106 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOGONLY_REPLICA_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 476:
/* Line 1455 of yacc.c */
#line 3111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node)) ;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOCALITY, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 477:
/* Line 1455 of yacc.c */
#line 3116 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REPLICA_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 478:
/* Line 1455 of yacc.c */
#line 3121 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REWRITE_MERGE_VERSION, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 479:
/* Line 1455 of yacc.c */
#line 3126 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_STORAGE_FORMAT_VERSION, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 480:
/* Line 1455 of yacc.c */
#line 3131 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_STORAGE_FORMAT_WORK_VERSION, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 481:
/* Line 1455 of yacc.c */
#line 3136 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_ZONE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 482:
/* Line 1455 of yacc.c */
#line 3141 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
merge_nodes((yyval.node), result, T_TENANT_RESOURCE_POOL_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 483:
/* Line 1455 of yacc.c */
#line 3146 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
merge_nodes((yyval.node), result, T_ZONE_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 484:
/* Line 1455 of yacc.c */
#line 3151 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = (yyvsp[(3) - (3)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(3) - (3)].node)->str_len_;
;}
break;
case 485:
/* Line 1455 of yacc.c */
#line 3159 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COLLATION);
(yyval.node)->str_value_ = (yyvsp[(3) - (3)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(3) - (3)].node)->str_len_;
(yyval.node)->param_num_ = (yyvsp[(3) - (3)].node)->param_num_;
;}
break;
case 486:
/* Line 1455 of yacc.c */
#line 3167 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_READ_ONLY, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 487:
/* Line 1455 of yacc.c */
#line 3171 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute*/
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMENT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 488:
/* Line 1455 of yacc.c */
#line 3176 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 489:
/* Line 1455 of yacc.c */
#line 3180 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROGRESSIVE_MERGE_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 490:
/* Line 1455 of yacc.c */
#line 3188 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VARIABLE_SET, (yyvsp[(2) - (2)].node));
;}
break;
case 491:
/* Line 1455 of yacc.c */
#line 3192 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VARIABLE_SET, (yyvsp[(3) - (3)].node));
;}
break;
case 492:
/* Line 1455 of yacc.c */
#line 3196 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VARIABLE_SET, (yyvsp[(2) - (2)].node));
;}
break;
case 493:
/* Line 1455 of yacc.c */
#line 3200 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 494:
/* Line 1455 of yacc.c */
#line 3206 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VARIABLE_SET, (yyvsp[(2) - (2)].node));
;}
break;
case 495:
/* Line 1455 of yacc.c */
#line 3210 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 496:
/* Line 1455 of yacc.c */
#line 3219 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 497:
/* Line 1455 of yacc.c */
#line 3221 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (void)((yyvsp[(2) - (3)].node)); malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
break;
case 498:
/* Line 1455 of yacc.c */
#line 3226 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 499:
/* Line 1455 of yacc.c */
#line 3228 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
break;
case 500:
/* Line 1455 of yacc.c */
#line 3233 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(4) - (6)].node);
ParseNode *tenant_options = NULL;
merge_nodes(tenant_options, result, T_TENANT_OPTION_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MODIFY_TENANT, 4,
(yyvsp[(3) - (6)].node), /* tenant name */
tenant_options, /* tenant opt */
(yyvsp[(6) - (6)].node), /* global sys vars set opt */
NULL); /* new tenant name */
;}
break;
case 501:
/* Line 1455 of yacc.c */
#line 3244 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(4) - (6)].node);
ParseNode *tenant_options = NULL;
merge_nodes(tenant_options, result, T_TENANT_OPTION_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MODIFY_TENANT, 4,
NULL, /* tenant name */
tenant_options, /* tenant opt */
(yyvsp[(6) - (6)].node), /* global sys vars set opt */
NULL); /* new tenant name */
;}
break;
case 502:
/* Line 1455 of yacc.c */
#line 3255 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MODIFY_TENANT, 4,
(yyvsp[(3) - (7)].node), /* tenant name */
NULL, /* tenant opt */
NULL, /* global sys vars set opt */
(yyvsp[(7) - (7)].node)); /* new tenant name */
;}
break;
case 503:
/* Line 1455 of yacc.c */
#line 3263 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/*ParseNode *tenant_options = NULL;*/
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOCK_TENANT, 2,
(yyvsp[(3) - (4)].node), /* tenant name */
(yyvsp[(4) - (4)].node)); /* lock opt */
;}
break;
case 504:
/* Line 1455 of yacc.c */
#line 3273 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_TENANT, 3, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 505:
/* Line 1455 of yacc.c */
#line 3280 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_RESTORE_POINT, 1, (yyvsp[(4) - (4)].node));
;}
break;
case 506:
/* Line 1455 of yacc.c */
#line 3286 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_RESTORE_POINT, 1, (yyvsp[(4) - (4)].node));
;}
break;
case 507:
/* Line 1455 of yacc.c */
#line 3299 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node));
ParseNode *database_option = NULL;
merge_nodes(database_option, result, T_DATABASE_OPTION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_DATABASE, 3, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node), database_option);
;}
break;
case 508:
/* Line 1455 of yacc.c */
#line 3309 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 509:
/* Line 1455 of yacc.c */
#line 3313 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 510:
/* Line 1455 of yacc.c */
#line 3319 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 511:
/* Line 1455 of yacc.c */
#line 3326 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 512:
/* Line 1455 of yacc.c */
#line 3330 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 513:
/* Line 1455 of yacc.c */
#line 3337 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 514:
/* Line 1455 of yacc.c */
#line 3341 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 515:
/* Line 1455 of yacc.c */
#line 3348 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 516:
/* Line 1455 of yacc.c */
#line 3352 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 517:
/* Line 1455 of yacc.c */
#line 3358 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node));
(void)((yyvsp[(2) - (4)].node));
(void)((yyvsp[(3) - (4)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
;}
break;
case 518:
/* Line 1455 of yacc.c */
#line 3367 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node));
(void)((yyvsp[(3) - (4)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COLLATION);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
(yyval.node)->param_num_ = (yyvsp[(4) - (4)].node)->param_num_;
;}
break;
case 519:
/* Line 1455 of yacc.c */
#line 3376 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_REPLICA_NUM);
(yyval.node)->value_ = (yyvsp[(3) - (3)].node)->value_;
;}
break;
case 520:
/* Line 1455 of yacc.c */
#line 3382 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_ZONE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 521:
/* Line 1455 of yacc.c */
#line 3387 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_READ_ONLY, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 522:
/* Line 1455 of yacc.c */
#line 3391 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 523:
/* Line 1455 of yacc.c */
#line 3395 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DATABASE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 524:
/* Line 1455 of yacc.c */
#line 3402 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_ON); ;}
break;
case 525:
/* Line 1455 of yacc.c */
#line 3404 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_OFF); ;}
break;
case 526:
/* Line 1455 of yacc.c */
#line 3414 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_DATABASE, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 527:
/* Line 1455 of yacc.c */
#line 3427 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node));
(void)((yyvsp[(4) - (5)].node));
ParseNode *database_option = NULL;
merge_nodes(database_option, result, T_DATABASE_OPTION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_DATABASE, 2, (yyvsp[(3) - (5)].node), database_option);
;}
break;
case 528:
/* Line 1455 of yacc.c */
#line 3438 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 529:
/* Line 1455 of yacc.c */
#line 3442 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 530:
/* Line 1455 of yacc.c */
#line 3455 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(9) - (15)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOAD_DATA, 11,
(yyvsp[(2) - (15)].node), /* 0. local */
(yyvsp[(4) - (15)].node), /* 1. filename */
(yyvsp[(5) - (15)].node), /* 2. duplicate */
(yyvsp[(8) - (15)].node), /* 3. table */
(yyvsp[(10) - (15)].node), /* 4. charset */
(yyvsp[(11) - (15)].node), /* 5. field */
(yyvsp[(12) - (15)].node), /* 6. line */
(yyvsp[(13) - (15)].node), /* 7. ignore rows */
(yyvsp[(14) - (15)].node), /* 8. field or vars */
(yyvsp[(15) - (15)].node), /* 9. set field */
(yyvsp[(1) - (15)].node) /* 10. hint */
);
;}
break;
case 531:
/* Line 1455 of yacc.c */
#line 3474 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 532:
/* Line 1455 of yacc.c */
#line 3476 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(2) - (2)].node);;}
break;
case 533:
/* Line 1455 of yacc.c */
#line 3481 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node)= NULL;
;}
break;
case 534:
/* Line 1455 of yacc.c */
#line 3485 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LOCAL);
;}
break;
case 535:
/* Line 1455 of yacc.c */
#line 3489 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_REMOTE_OSS);
;}
break;
case 536:
/* Line 1455 of yacc.c */
#line 3495 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 537:
/* Line 1455 of yacc.c */
#line 3496 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_IGNORE); ;}
break;
case 538:
/* Line 1455 of yacc.c */
#line 3497 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_REPLACE); ;}
break;
case 539:
/* Line 1455 of yacc.c */
#line 3501 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 540:
/* Line 1455 of yacc.c */
#line 3503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_CHARSET, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 541:
/* Line 1455 of yacc.c */
#line 3509 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 542:
/* Line 1455 of yacc.c */
#line 3511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(3) - (3)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_IGNORE_ROWS, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 543:
/* Line 1455 of yacc.c */
#line 3516 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(3) - (3)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_GEN_ROWS, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 544:
/* Line 1455 of yacc.c */
#line 3523 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 545:
/* Line 1455 of yacc.c */
#line 3524 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 546:
/* Line 1455 of yacc.c */
#line 3528 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 547:
/* Line 1455 of yacc.c */
#line 3529 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 548:
/* Line 1455 of yacc.c */
#line 3531 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_COLUMN_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 549:
/* Line 1455 of yacc.c */
#line 3538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 550:
/* Line 1455 of yacc.c */
#line 3542 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 551:
/* Line 1455 of yacc.c */
#line 3549 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 552:
/* Line 1455 of yacc.c */
#line 3553 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USER_VARIABLE_IDENTIFIER, 1, (yyvsp[(1) - (1)].node));
dup_node_string((yyvsp[(1) - (1)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 553:
/* Line 1455 of yacc.c */
#line 3560 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node)= NULL; ;}
break;
case 554:
/* Line 1455 of yacc.c */
#line 3562 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VALUE_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 555:
/* Line 1455 of yacc.c */
#line 3569 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 556:
/* Line 1455 of yacc.c */
#line 3573 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 557:
/* Line 1455 of yacc.c */
#line 3580 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ASSIGN_ITEM, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 558:
/* Line 1455 of yacc.c */
#line 3592 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_DATABASE, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 559:
/* Line 1455 of yacc.c */
#line 3605 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_CREATE_SYNONYM,
7,
(yyvsp[(2) - (8)].node), /*or replace*/
(yyvsp[(3) - (8)].node), /* public */
NULL, /* opt schema name */
(yyvsp[(5) - (8)].node), /* synonym name */
NULL, /* opt schema name */
(yyvsp[(7) - (8)].node), /* synonym object */
(yyvsp[(8) - (8)].node)); /* partition optition */
;}
break;
case 560:
/* Line 1455 of yacc.c */
#line 3621 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_CREATE_SYNONYM,
7,
(yyvsp[(2) - (10)].node), /*or replace*/
(yyvsp[(3) - (10)].node), /* public */
(yyvsp[(5) - (10)].node), /* opt schema name */
(yyvsp[(7) - (10)].node), /* synonym name */
NULL, /* opt schema name */
(yyvsp[(9) - (10)].node), /* synonym object */
(yyvsp[(10) - (10)].node)); /* partition optition */
;}
break;
case 561:
/* Line 1455 of yacc.c */
#line 3637 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_CREATE_SYNONYM,
7,
(yyvsp[(2) - (10)].node), /*or replace*/
(yyvsp[(3) - (10)].node), /* public */
NULL, /* opt schema name */
(yyvsp[(5) - (10)].node), /* synonym name */
(yyvsp[(7) - (10)].node), /* opt schema name */
(yyvsp[(9) - (10)].node), /* synonym object */
(yyvsp[(10) - (10)].node)); /* partition optition */
;}
break;
case 562:
/* Line 1455 of yacc.c */
#line 3652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_CREATE_SYNONYM,
7,
(yyvsp[(2) - (12)].node), /*or replace*/
(yyvsp[(3) - (12)].node), /* public */
(yyvsp[(5) - (12)].node), /* opt schema name */
(yyvsp[(7) - (12)].node), /* synonym name */
(yyvsp[(9) - (12)].node), /* opt schema name */
(yyvsp[(11) - (12)].node), /* synonym object */
(yyvsp[(12) - (12)].node)); /* partition optition */
;}
break;
case 563:
/* Line 1455 of yacc.c */
#line 3669 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PUBLIC); ;}
break;
case 564:
/* Line 1455 of yacc.c */
#line 3672 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 565:
/* Line 1455 of yacc.c */
#line 3678 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 566:
/* Line 1455 of yacc.c */
#line 3680 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 567:
/* Line 1455 of yacc.c */
#line 3687 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);;}
break;
case 568:
/* Line 1455 of yacc.c */
#line 3690 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 569:
/* Line 1455 of yacc.c */
#line 3695 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 570:
/* Line 1455 of yacc.c */
#line 3697 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 571:
/* Line 1455 of yacc.c */
#line 3709 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_DROP_SYNONYM,
4,
(yyvsp[(2) - (5)].node), /*opt public*/
NULL, /* opt schema name */
(yyvsp[(4) - (5)].node), /* synonym name */
(yyvsp[(5) - (5)].node)); /* opt force */
;}
break;
case 572:
/* Line 1455 of yacc.c */
#line 3721 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node),
result->malloc_pool_,
T_DROP_SYNONYM,
4,
(yyvsp[(2) - (7)].node), /*opt public*/
(yyvsp[(4) - (7)].node), /* opt schema name */
(yyvsp[(6) - (7)].node), /* synonym name */
(yyvsp[(7) - (7)].node)); /* opt force */
;}
break;
case 573:
/* Line 1455 of yacc.c */
#line 3735 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FORCE); ;}
break;
case 574:
/* Line 1455 of yacc.c */
#line 3738 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 575:
/* Line 1455 of yacc.c */
#line 3743 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FORCE); ;}
break;
case 576:
/* Line 1455 of yacc.c */
#line 3746 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PURGE); ;}
break;
case 577:
/* Line 1455 of yacc.c */
#line 3749 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 578:
/* Line 1455 of yacc.c */
#line 3754 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY); ;}
break;
case 579:
/* Line 1455 of yacc.c */
#line 3757 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 580:
/* Line 1455 of yacc.c */
#line 3768 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE_LIKE, 4, (yyvsp[(2) - (7)].node), (yyvsp[(4) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 581:
/* Line 1455 of yacc.c */
#line 3772 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE_LIKE, 4, (yyvsp[(2) - (9)].node), (yyvsp[(4) - (9)].node), (yyvsp[(5) - (9)].node), (yyvsp[(8) - (9)].node));
;}
break;
case 582:
/* Line 1455 of yacc.c */
#line 3786 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_elements = NULL;
ParseNode *table_options = NULL;
merge_nodes(table_elements, result, T_TABLE_ELEMENT_LIST, (yyvsp[(7) - (10)].node));
merge_nodes(table_options, result, T_TABLE_OPTION_LIST, (yyvsp[(9) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 7,
(yyvsp[(2) - (10)].node), /* temporary option */
(yyvsp[(4) - (10)].node), /* if not exists */
(yyvsp[(5) - (10)].node), /* table name */
table_elements, /* columns or primary key */
table_options, /* table option(s) */
(yyvsp[(10) - (10)].node), /* partition optition */
NULL); /* The on commit option for storing temporary tables
in oracle compatibility mode */
;}
break;
case 583:
/* Line 1455 of yacc.c */
#line 3803 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(11) - (12)].node);
ParseNode *table_elements = NULL;
ParseNode *table_options = NULL;
merge_nodes(table_elements, result, T_TABLE_ELEMENT_LIST, (yyvsp[(7) - (12)].node));
merge_nodes(table_options, result, T_TABLE_OPTION_LIST, (yyvsp[(9) - (12)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 8,
(yyvsp[(2) - (12)].node), /* temporary option */
(yyvsp[(4) - (12)].node), /* if not exists */
(yyvsp[(5) - (12)].node), /* table name */
table_elements, /* columns or primary key */
table_options, /* table option(s) */
(yyvsp[(10) - (12)].node), /* partition optition */
NULL, /* The on commit option for storing temporary tables
in oracle compatibility mode */
(yyvsp[(12) - (12)].node)); /* select_stmt */
;}
break;
case 584:
/* Line 1455 of yacc.c */
#line 3821 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(8) - (9)].node);
ParseNode *table_options = NULL;
merge_nodes(table_options, result, T_TABLE_OPTION_LIST, (yyvsp[(6) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 8,
(yyvsp[(2) - (9)].node), /* temporary option */
(yyvsp[(4) - (9)].node), /* if not exists */
(yyvsp[(5) - (9)].node), /* table name */
NULL, /* columns or primary key */
table_options, /* table option(s) */
(yyvsp[(7) - (9)].node), /* partition optition */
NULL, /* The on commit option for storing temporary tables
in oracle compatibility mode */
(yyvsp[(9) - (9)].node)); /* select_stmt */
;}
break;
case 585:
/* Line 1455 of yacc.c */
#line 3837 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(7) - (8)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 8,
(yyvsp[(2) - (8)].node), /* temporary option */
(yyvsp[(4) - (8)].node), /* if not exists */
(yyvsp[(5) - (8)].node), /* table name */
NULL, /* columns or primary key */
NULL, /* table option(s) */
(yyvsp[(6) - (8)].node), /* partition optition */
NULL, /* The on commit option for storing temporary tables
in oracle compatibility mode */
(yyvsp[(8) - (8)].node)); /* select_stmt */
;}
break;
case 586:
/* Line 1455 of yacc.c */
#line 3851 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 8,
(yyvsp[(2) - (6)].node), /* temporary option */
(yyvsp[(4) - (6)].node), /* if not exists */
(yyvsp[(5) - (6)].node), /* table name */
NULL, /* columns or primary key */
NULL, /* table option(s) */
NULL, /* partition optition */
NULL, /* The on commit option for storing temporary tables
in oracle compatibility mode */
(yyvsp[(6) - (6)].node)); /* select_stmt */
;}
break;
case 587:
/* Line 1455 of yacc.c */
#line 3864 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLE, 8,
(yyvsp[(2) - (7)].node), /* temporary option */
(yyvsp[(4) - (7)].node), /* if not exists */
(yyvsp[(5) - (7)].node), /* table name */
NULL, /* columns or primary key */
NULL, /* table option(s) */
NULL, /* partition optition */
NULL, /* The on commit option for storing temporary tables
in oracle compatibility mode */
(yyvsp[(7) - (7)].node)); /* select_stmt */
;}
break;
case 588:
/* Line 1455 of yacc.c */
#line 3880 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 589:
/* Line 1455 of yacc.c */
#line 3885 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 590:
/* Line 1455 of yacc.c */
#line 3893 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 591:
/* Line 1455 of yacc.c */
#line 3899 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 592:
/* Line 1455 of yacc.c */
#line 3905 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 593:
/* Line 1455 of yacc.c */
#line 3911 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 4;
;}
break;
case 594:
/* Line 1455 of yacc.c */
#line 3919 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_FUNC, 4, (yyvsp[(2) - (8)].node), (yyvsp[(4) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(8) - (8)].node));
;}
break;
case 595:
/* Line 1455 of yacc.c */
#line 3926 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_FUNC, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 596:
/* Line 1455 of yacc.c */
#line 3933 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_IF_NOT_EXISTS); ;}
break;
case 597:
/* Line 1455 of yacc.c */
#line 3937 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 598:
/* Line 1455 of yacc.c */
#line 3942 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 599:
/* Line 1455 of yacc.c */
#line 3946 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 600:
/* Line 1455 of yacc.c */
#line 3953 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 601:
/* Line 1455 of yacc.c */
#line 3957 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (9)].node));
ParseNode *col_list= NULL;
merge_nodes(col_list, result, T_COLUMN_LIST, (yyvsp[(6) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_KEY, 3, col_list, NULL != (yyvsp[(8) - (9)].node) ? (yyvsp[(8) - (9)].node) : (yyvsp[(4) - (9)].node), (yyvsp[(9) - (9)].node));
;}
break;
case 602:
/* Line 1455 of yacc.c */
#line 3964 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (7)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(5) - (7)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(7) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX, 4, (yyvsp[(2) - (7)].node), col_list, index_option, (yyvsp[(3) - (7)].node));
(yyval.node)->value_ = 0;
;}
break;
case 603:
/* Line 1455 of yacc.c */
#line 3974 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (8)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(6) - (8)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(8) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX, 4, (yyvsp[(3) - (8)].node), col_list, index_option, (yyvsp[(4) - (8)].node));
(yyval.node)->value_ = 1;
;}
break;
case 604:
/* Line 1455 of yacc.c */
#line 3984 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(4) - (10)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(8) - (10)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(10) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX, 4, (yyvsp[(5) - (10)].node) ? (yyvsp[(5) - (10)].node) : (yyvsp[(2) - (10)].node), col_list, index_option, (yyvsp[(6) - (10)].node));
(yyval.node)->value_ = 1;
;}
break;
case 605:
/* Line 1455 of yacc.c */
#line 3994 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
dup_expr_string((yyvsp[(5) - (6)].node), result, (yylsp[(5) - (6)]).first_column, (yylsp[(5) - (6)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHECK_CONSTRAINT, 2, (yyvsp[(2) - (6)].node), (yyvsp[(5) - (6)].node));
(yyval.node)->value_ = 1;
;}
break;
case 606:
/* Line 1455 of yacc.c */
#line 4000 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *child_col_list= NULL;
ParseNode *parent_col_list= NULL;
ParseNode *reference_option_list = NULL;
merge_nodes(child_col_list, result, T_COLUMN_LIST, (yyvsp[(6) - (14)].node));
merge_nodes(parent_col_list, result, T_COLUMN_LIST, (yyvsp[(11) - (14)].node));
merge_nodes(reference_option_list, result, T_REFERENCE_OPTION_LIST, (yyvsp[(14) - (14)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FOREIGN_KEY, 7, child_col_list, (yyvsp[(9) - (14)].node), parent_col_list, reference_option_list, (yyvsp[(1) - (14)].node), (yyvsp[(4) - (14)].node), (yyvsp[(13) - (14)].node));
;}
break;
case 607:
/* Line 1455 of yacc.c */
#line 4013 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 608:
/* Line 1455 of yacc.c */
#line 4017 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 609:
/* Line 1455 of yacc.c */
#line 4024 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_REFERENCE_OPTION);
(yyval.node)->int32_values_[0] = T_UPDATE;
(yyval.node)->int32_values_[1] = (yyvsp[(3) - (3)].ival)[0];
;}
break;
case 610:
/* Line 1455 of yacc.c */
#line 4030 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_REFERENCE_OPTION);
(yyval.node)->int32_values_[0] = T_DELETE;
(yyval.node)->int32_values_[1] = (yyvsp[(3) - (3)].ival)[0];
;}
break;
case 611:
/* Line 1455 of yacc.c */
#line 4039 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_RESTRICT;
;}
break;
case 612:
/* Line 1455 of yacc.c */
#line 4043 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_CASCADE;
;}
break;
case 613:
/* Line 1455 of yacc.c */
#line 4047 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (2)].node));
(yyval.ival)[0] = T_SET_NULL;
;}
break;
case 614:
/* Line 1455 of yacc.c */
#line 4052 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_NO_ACTION;
;}
break;
case 615:
/* Line 1455 of yacc.c */
#line 4056 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_SET_DEFAULT;
;}
break;
case 616:
/* Line 1455 of yacc.c */
#line 4063 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FOREIGN_KEY_MATCH);
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (2)].ival)[0];
;}
break;
case 617:
/* Line 1455 of yacc.c */
#line 4068 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 618:
/* Line 1455 of yacc.c */
#line 4075 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_SIMPLE;
;}
break;
case 619:
/* Line 1455 of yacc.c */
#line 4079 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_FULL;
;}
break;
case 620:
/* Line 1455 of yacc.c */
#line 4083 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = T_PARTIAL;
;}
break;
case 621:
/* Line 1455 of yacc.c */
#line 4091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *attributes = NULL;
merge_nodes(attributes, result, T_COLUMN_ATTRIBUTES, (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_DEFINITION, 4, (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].node), attributes, (yyvsp[(4) - (4)].node));
;}
break;
case 622:
/* Line 1455 of yacc.c */
#line 4097 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (10)].node));
ParseNode *attributes = NULL;
dup_expr_string((yyvsp[(6) - (10)].node), result, (yylsp[(6) - (10)]).first_column, (yylsp[(6) - (10)]).last_column);
merge_nodes(attributes, result, T_COLUMN_ATTRIBUTES, (yyvsp[(9) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_DEFINITION, 6, (yyvsp[(1) - (10)].node), (yyvsp[(2) - (10)].node), attributes, (yyvsp[(6) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(10) - (10)].node));
;}
break;
case 623:
/* Line 1455 of yacc.c */
#line 4108 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 624:
/* Line 1455 of yacc.c */
#line 4112 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 625:
/* Line 1455 of yacc.c */
#line 4119 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 626:
/* Line 1455 of yacc.c */
#line 4123 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 627:
/* Line 1455 of yacc.c */
#line 4129 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (2)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_NOT_NULL);
;}
break;
case 628:
/* Line 1455 of yacc.c */
#line 4134 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (1)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_NULL);
;}
break;
case 629:
/* Line 1455 of yacc.c */
#line 4139 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_UNIQUE_KEY);
;}
break;
case 630:
/* Line 1455 of yacc.c */
#line 4143 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_PRIMARY_KEY);
;}
break;
case 631:
/* Line 1455 of yacc.c */
#line 4148 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_UNIQUE_KEY);
;}
break;
case 632:
/* Line 1455 of yacc.c */
#line 4152 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMENT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 633:
/* Line 1455 of yacc.c */
#line 4156 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ID, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 634:
/* Line 1455 of yacc.c */
#line 4163 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VIRTUAL_COLUMN);
;}
break;
case 635:
/* Line 1455 of yacc.c */
#line 4167 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_STORED_COLUMN);
;}
break;
case 636:
/* Line 1455 of yacc.c */
#line 4171 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 637:
/* Line 1455 of yacc.c */
#line 4178 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, NULL, (yyvsp[(1) - (1)].node));
dup_node_string((yyvsp[(1) - (1)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 638:
/* Line 1455 of yacc.c */
#line 4183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, NULL, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
dup_node_string((yyvsp[(3) - (3)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 639:
/* Line 1455 of yacc.c */
#line 4188 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_REF, 3, (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
dup_node_string((yyvsp[(5) - (5)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 640:
/* Line 1455 of yacc.c */
#line 4197 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 641:
/* Line 1455 of yacc.c */
#line 4201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 642:
/* Line 1455 of yacc.c */
#line 4208 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_CHAR; /* data type */
(yyval.node)->int16_values_[OB_NODE_CAST_COLL_IDX] = BINARY_COLLATION; /* is binary */
(yyval.node)->int32_values_[OB_NODE_CAST_C_LEN_IDX] = (yyvsp[(2) - (2)].ival)[0]; /* length */
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].ival)[1];
;}
break;
case 643:
/* Line 1455 of yacc.c */
#line 4217 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_CHAR;//to keep consitent with mysql
(yyval.node)->int16_values_[OB_NODE_CAST_COLL_IDX] = INVALID_COLLATION; /* is char */
(yyval.node)->int32_values_[OB_NODE_CAST_C_LEN_IDX] = (yyvsp[(2) - (3)].ival)[0]; /* length */
(yyval.node)->param_num_ = (yyvsp[(2) - (3)].ival)[1];
;}
break;
case 644:
/* Line 1455 of yacc.c */
#line 4227 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = (yyvsp[(1) - (2)].ival)[0];
(yyval.node)->int16_values_[OB_NODE_CAST_N_SCALE_IDX] = (yyvsp[(2) - (2)].ival)[0];
(yyval.node)->param_num_ = (yyvsp[(1) - (2)].ival)[1] + (yyvsp[(2) - (2)].ival)[1];
;}
break;
case 645:
/* Line 1455 of yacc.c */
#line 4235 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_NUMBER;
if (NULL != (yyvsp[(2) - (2)].node)) {
(yyval.node)->int16_values_[OB_NODE_CAST_N_PREC_IDX] = (yyvsp[(2) - (2)].node)->int16_values_[0]; /* precision */
(yyval.node)->int16_values_[OB_NODE_CAST_N_SCALE_IDX] = (yyvsp[(2) - (2)].node)->int16_values_[1]; /* scale */
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].node)->param_num_;
}
;}
break;
case 646:
/* Line 1455 of yacc.c */
#line 4246 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_NUMBER;
if (NULL != (yyvsp[(2) - (2)].node)) {
(yyval.node)->int16_values_[OB_NODE_CAST_N_PREC_IDX] = (yyvsp[(2) - (2)].node)->int16_values_[0]; /* precision */
(yyval.node)->int16_values_[OB_NODE_CAST_N_SCALE_IDX] = (yyvsp[(2) - (2)].node)->int16_values_[1]; /* scale */
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].node)->param_num_;
}
;}
break;
case 647:
/* Line 1455 of yacc.c */
#line 4257 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (2)].ival));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_INT;
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].ival)[1];
;}
break;
case 648:
/* Line 1455 of yacc.c */
#line 4265 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_UINT64;
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].ival)[1];
;}
break;
case 649:
/* Line 1455 of yacc.c */
#line 4272 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CAST_ARGUMENT);
(yyval.node)->value_ = 0;
(yyval.node)->int16_values_[OB_NODE_CAST_TYPE_IDX] = T_DOUBLE;
(yyval.node)->int16_values_[OB_NODE_CAST_N_PREC_IDX] = -1; /* precision */
(yyval.node)->int16_values_[OB_NODE_CAST_N_SCALE_IDX] = -1; /* scale */
(yyval.node)->param_num_ = 0;
;}
break;
case 650:
/* Line 1455 of yacc.c */
#line 4283 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; (yyval.ival)[1] = 0;;}
break;
case 651:
/* Line 1455 of yacc.c */
#line 4284 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; (yyval.ival)[1] = 0;;}
break;
case 652:
/* Line 1455 of yacc.c */
#line 4288 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DATETIME; (yyval.ival)[1] = 0; ;}
break;
case 653:
/* Line 1455 of yacc.c */
#line 4289 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DATE; (yyval.ival)[1] = 0; ;}
break;
case 654:
/* Line 1455 of yacc.c */
#line 4290 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TIME; (yyval.ival)[1] = 0; ;}
break;
case 655:
/* Line 1455 of yacc.c */
#line 4295 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = GET_FORMAT_DATETIME;
;}
break;
case 656:
/* Line 1455 of yacc.c */
#line 4300 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = GET_FORMAT_DATE;
;}
break;
case 657:
/* Line 1455 of yacc.c */
#line 4305 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = GET_FORMAT_TIME;
;}
break;
case 658:
/* Line 1455 of yacc.c */
#line 4313 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, ((yyvsp[(3) - (4)].ival)[0] || (yyvsp[(4) - (4)].ival)[0]) ? (yyvsp[(1) - (4)].ival)[0] + (T_UTINYINT - T_TINYINT) : (yyvsp[(1) - (4)].ival)[0]);
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (4)].ival)[0];
(yyval.node)->int16_values_[2] = (yyvsp[(4) - (4)].ival)[0]; /* 2 is the same index as float or number. */
;}
break;
case 659:
/* Line 1455 of yacc.c */
#line 4319 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, ((yyvsp[(3) - (4)].ival)[0] || (yyvsp[(4) - (4)].ival)[0]) ? (yyvsp[(1) - (4)].ival)[0] + (T_UFLOAT - T_FLOAT) : (yyvsp[(1) - (4)].ival)[0]);
if (NULL != (yyvsp[(2) - (4)].node)) {
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (4)].node)->int16_values_[0];
(yyval.node)->int16_values_[1] = (yyvsp[(2) - (4)].node)->int16_values_[1];
}
/* malloc_terminal_node() has set memory to 0 filled, so there is no else. */
(yyval.node)->int16_values_[2] = (yyvsp[(4) - (4)].ival)[0];
;}
break;
case 660:
/* Line 1455 of yacc.c */
#line 4329 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, ((yyvsp[(3) - (4)].ival)[0] || (yyvsp[(4) - (4)].ival)[0]) ? T_UNUMBER : T_NUMBER);
if (NULL != (yyvsp[(2) - (4)].node)) {
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (4)].node)->int16_values_[0];
(yyval.node)->int16_values_[1] = (yyvsp[(2) - (4)].node)->int16_values_[1];
}
/* malloc_terminal_node() has set memory to 0 filled, so there is no else. */
(yyval.node)->int16_values_[2] = (yyvsp[(4) - (4)].ival)[0];
;}
break;
case 661:
/* Line 1455 of yacc.c */
#line 4339 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, ((yyvsp[(3) - (4)].ival)[0] || (yyvsp[(4) - (4)].ival)[0]) ? T_UNUMBER : T_NUMBER);
if (NULL != (yyvsp[(2) - (4)].node)) {
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (4)].node)->int16_values_[0];
(yyval.node)->int16_values_[1] = (yyvsp[(2) - (4)].node)->int16_values_[1];
}
/* malloc_terminal_node() has set memory to 0 filled, so there is no else. */
(yyval.node)->int16_values_[2] = (yyvsp[(4) - (4)].ival)[0];
;}
break;
case 662:
/* Line 1455 of yacc.c */
#line 4349 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TINYINT);
(yyval.node)->int16_values_[0] = 1;
(yyval.node)->int16_values_[2] = 0; // zerofill always false
;}
break;
case 663:
/* Line 1455 of yacc.c */
#line 4355 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TINYINT);
(yyval.node)->int16_values_[0] = 1;
(yyval.node)->int16_values_[2] = 0; // zerofill always false
;}
break;
case 664:
/* Line 1455 of yacc.c */
#line 4361 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (2)].ival)[0]);
(yyval.node)->int16_values_[1] = (yyvsp[(2) - (2)].ival)[0];
;}
break;
case 665:
/* Line 1455 of yacc.c */
#line 4366 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (1)].ival)[0]);
;}
break;
case 666:
/* Line 1455 of yacc.c */
#line 4370 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHAR, 3, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node), (yyvsp[(3) - (5)].node));
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (5)].ival)[0];
(yyval.node)->int32_values_[1] = 0; /* is char */
;}
break;
case 667:
/* Line 1455 of yacc.c */
#line 4383 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR, 3, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node), (yyvsp[(3) - (5)].node));
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (5)].ival)[0];
(yyval.node)->int32_values_[1] = 0; /* is char */
;}
break;
case 668:
/* Line 1455 of yacc.c */
#line 4389 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (2)].ival)[0]);
if (0 == (yyvsp[(2) - (2)].ival)[1]) {
(yyvsp[(2) - (2)].ival)[0] = 0; /* change default string len from -1 to 0 for compat mysql */
}
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (2)].ival)[0];
(yyval.node)->int32_values_[1] = 1; /* is binary */
;}
break;
case 669:
/* Line 1455 of yacc.c */
#line 4398 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (5)].ival)[0], 3, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node), (yyvsp[(3) - (5)].node));
if ((yyvsp[(1) - (5)].ival)[0] != T_TEXT && (yyvsp[(2) - (5)].ival)[0] != -1) {
yyerror(&(yylsp[(2) - (5)]), result, "not support to specify the length in parentheses\n");
YYERROR;
} else if (0 == (yyvsp[(2) - (5)].ival)[1]) {
(yyvsp[(2) - (5)].ival)[0] = 0; /* change default string len from -1 to 0 for compat mysql */
}
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (5)].ival)[0];
(yyval.node)->int32_values_[1] = 0; /* is text */
;}
break;
case 670:
/* Line 1455 of yacc.c */
#line 4410 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHAR);
if ((yyvsp[(2) - (2)].ival)[0] < 0) {
(yyvsp[(2) - (2)].ival)[0] = 1;
}
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (2)].ival)[0];
(yyval.node)->int32_values_[1] = 1; /* is binary */
;}
break;
case 671:
/* Line 1455 of yacc.c */
#line 4419 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR);
(yyval.node)->int32_values_[0] = (yyvsp[(2) - (2)].ival)[0];
(yyval.node)->int32_values_[1] = 1; /* is binary */
;}
break;
case 672:
/* Line 1455 of yacc.c */
#line 4425 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INVALID);
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->str_len_;
;}
break;
case 673:
/* Line 1455 of yacc.c */
#line 4431 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BIT);
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (2)].ival)[0];
;}
break;
case 674:
/* Line 1455 of yacc.c */
#line 4436 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_STRING_LIST, (yyvsp[(3) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ENUM, 4, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node), (yyvsp[(5) - (7)].node), string_list_node);
(yyval.node)->int32_values_[0] = 0;//not used so far
(yyval.node)->int32_values_[1] = 0; /* is char */
;}
break;
case 675:
/* Line 1455 of yacc.c */
#line 4444 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_STRING_LIST, (yyvsp[(3) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET, 4, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node), (yyvsp[(5) - (7)].node), string_list_node);
(yyval.node)->int32_values_[0] = 0;//not used so far
(yyval.node)->int32_values_[1] = 0; /* is char */
;}
break;
case 676:
/* Line 1455 of yacc.c */
#line 4455 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 677:
/* Line 1455 of yacc.c */
#line 4459 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 678:
/* Line 1455 of yacc.c */
#line 4465 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 679:
/* Line 1455 of yacc.c */
#line 4469 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 680:
/* Line 1455 of yacc.c */
#line 4475 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TINYINT; ;}
break;
case 681:
/* Line 1455 of yacc.c */
#line 4476 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_SMALLINT; ;}
break;
case 682:
/* Line 1455 of yacc.c */
#line 4477 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_MEDIUMINT; ;}
break;
case 683:
/* Line 1455 of yacc.c */
#line 4478 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_INT32; ;}
break;
case 684:
/* Line 1455 of yacc.c */
#line 4479 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_INT; ;}
break;
case 685:
/* Line 1455 of yacc.c */
#line 4483 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_FLOAT; ;}
break;
case 686:
/* Line 1455 of yacc.c */
#line 4484 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DOUBLE; ;}
break;
case 687:
/* Line 1455 of yacc.c */
#line 4485 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DOUBLE; ;}
break;
case 688:
/* Line 1455 of yacc.c */
#line 4486 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DOUBLE; ;}
break;
case 689:
/* Line 1455 of yacc.c */
#line 4487 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DOUBLE; ;}
break;
case 690:
/* Line 1455 of yacc.c */
#line 4491 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DATETIME; ;}
break;
case 691:
/* Line 1455 of yacc.c */
#line 4492 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TIMESTAMP; ;}
break;
case 692:
/* Line 1455 of yacc.c */
#line 4493 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TIME; ;}
break;
case 693:
/* Line 1455 of yacc.c */
#line 4497 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_DATE; ;}
break;
case 694:
/* Line 1455 of yacc.c */
#line 4498 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_YEAR; ;}
break;
case 695:
/* Line 1455 of yacc.c */
#line 4502 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TINYTEXT; ;}
break;
case 696:
/* Line 1455 of yacc.c */
#line 4503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TEXT; ;}
break;
case 697:
/* Line 1455 of yacc.c */
#line 4504 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_MEDIUMTEXT; ;}
break;
case 698:
/* Line 1455 of yacc.c */
#line 4505 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_LONGTEXT; ;}
break;
case 699:
/* Line 1455 of yacc.c */
#line 4509 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TINYTEXT; ;}
break;
case 700:
/* Line 1455 of yacc.c */
#line 4510 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_TEXT; ;}
break;
case 701:
/* Line 1455 of yacc.c */
#line 4511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_MEDIUMTEXT; ;}
break;
case 702:
/* Line 1455 of yacc.c */
#line 4512 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_LONGTEXT; ;}
break;
case 703:
/* Line 1455 of yacc.c */
#line 4516 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_; ;}
break;
case 704:
/* Line 1455 of yacc.c */
#line 4517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = -1; ;}
break;
case 705:
/* Line 1455 of yacc.c */
#line 4521 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_; ;}
break;
case 706:
/* Line 1455 of yacc.c */
#line 4522 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 707:
/* Line 1455 of yacc.c */
#line 4527 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE);
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (5)].node)->value_;
(yyval.node)->int16_values_[1] = (yyvsp[(4) - (5)].node)->value_;
;}
break;
case 708:
/* Line 1455 of yacc.c */
#line 4533 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE);
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (3)].node)->value_;
(yyval.node)->int16_values_[1] = -1;
;}
break;
case 709:
/* Line 1455 of yacc.c */
#line 4539 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 710:
/* Line 1455 of yacc.c */
#line 4546 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE);
if((yyvsp[(2) - (5)].node)->value_ > OB_MAX_PARSER_INT16_VALUE) {
(yyval.node)->int16_values_[0] = OB_MAX_PARSER_INT16_VALUE;
} else {
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (5)].node)->value_;
}
if((yyvsp[(4) - (5)].node)->value_ > OB_MAX_PARSER_INT16_VALUE) {
(yyval.node)->int16_values_[1] = OB_MAX_PARSER_INT16_VALUE;
} else {
(yyval.node)->int16_values_[1] = (yyvsp[(4) - (5)].node)->value_;
}
(yyval.node)->param_num_ = 2;
;}
break;
case 711:
/* Line 1455 of yacc.c */
#line 4561 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE);
if((yyvsp[(2) - (3)].node)->value_ > OB_MAX_PARSER_INT16_VALUE) {
(yyval.node)->int16_values_[0] = OB_MAX_PARSER_INT16_VALUE;
} else {
(yyval.node)->int16_values_[0] = (yyvsp[(2) - (3)].node)->value_;
}
(yyval.node)->int16_values_[1] = 0;
(yyval.node)->param_num_ = 1;
;}
break;
case 712:
/* Line 1455 of yacc.c */
#line 4572 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE);
(yyval.node)->int16_values_[0] = 10;
(yyval.node)->int16_values_[1] = 0;
(yyval.node)->param_num_ = 0;
;}
break;
case 713:
/* Line 1455 of yacc.c */
#line 4581 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_; ;}
break;
case 714:
/* Line 1455 of yacc.c */
#line 4582 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 715:
/* Line 1455 of yacc.c */
#line 4586 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_; (yyval.ival)[1] = 1; ;}
break;
case 716:
/* Line 1455 of yacc.c */
#line 4587 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; (yyval.ival)[1] = 0;;}
break;
case 717:
/* Line 1455 of yacc.c */
#line 4592 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// Report a syntax error at `*`
// select cast('' as BINARY(-1));
// *
// select cast('' as CHARACTER(-1));
// *
int64_t val = 0;
if (T_NUMBER == (yyvsp[(2) - (3)].node)->type_) {
errno = 0;
val = strtoll((yyvsp[(2) - (3)].node)->str_value_, NULL, 10);
if (ERANGE == errno) {
(yyval.ival)[0] = OUT_OF_STR_LEN;// out of str_max_len
} else if (val < 0) {
yyerror(&(yylsp[(2) - (3)]), result, "length cannot < 0\n");
YYABORT_UNEXPECTED;
} else if (val > UINT32_MAX) {
(yyval.ival)[0] = OUT_OF_STR_LEN;// out of str_max_len
} else if (val > INT32_MAX) {
(yyval.ival)[0] = DEFAULT_STR_LENGTH;
} else {
(yyval.ival)[0] = val;
}
} else if ((yyvsp[(2) - (3)].node)->value_ < 0) {
yyerror(&(yylsp[(2) - (3)]), result, "length cannot < 0\n");
YYABORT_UNEXPECTED;
} else if ((yyvsp[(2) - (3)].node)->value_ > UINT32_MAX) {
(yyval.ival)[0] = OUT_OF_STR_LEN;;
} else if ((yyvsp[(2) - (3)].node)->value_ > INT32_MAX) {
(yyval.ival)[0] = DEFAULT_STR_LENGTH;
} else {
(yyval.ival)[0] = (yyvsp[(2) - (3)].node)->value_;
}
(yyval.ival)[1] = (yyvsp[(2) - (3)].node)->param_num_;
;}
break;
case 718:
/* Line 1455 of yacc.c */
#line 4629 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(1) - (1)].ival)[0]; (yyval.ival)[1] = (yyvsp[(1) - (1)].ival)[1];;}
break;
case 719:
/* Line 1455 of yacc.c */
#line 4630 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; (yyval.ival)[1] = 0;;}
break;
case 720:
/* Line 1455 of yacc.c */
#line 4634 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = (yyvsp[(1) - (1)].ival)[0]; (yyval.ival)[1] = (yyvsp[(1) - (1)].ival)[1]; ;}
break;
case 721:
/* Line 1455 of yacc.c */
#line 4635 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = DEFAULT_STR_LENGTH; (yyval.ival)[1] = 0; ;}
break;
case 722:
/* Line 1455 of yacc.c */
#line 4639 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 723:
/* Line 1455 of yacc.c */
#line 4640 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 724:
/* Line 1455 of yacc.c */
#line 4641 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 725:
/* Line 1455 of yacc.c */
#line 4645 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 726:
/* Line 1455 of yacc.c */
#line 4646 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 727:
/* Line 1455 of yacc.c */
#line 4651 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BINARY);
(yyval.node)->value_ = 1;
;}
break;
case 728:
/* Line 1455 of yacc.c */
#line 4655 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = 0; ;}
break;
case 729:
/* Line 1455 of yacc.c */
#line 4660 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->type_ = T_VARCHAR;
(yyval.node)->param_num_ = 0;
;}
break;
case 730:
/* Line 1455 of yacc.c */
#line 4666 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->param_num_ = 1;
;}
break;
case 731:
/* Line 1455 of yacc.c */
#line 4674 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
(yyval.node)->type_ = T_VARCHAR;
(yyval.node)->param_num_ = 1;
(yyval.node)->is_hidden_const_ = 0;
;}
break;
case 732:
/* Line 1455 of yacc.c */
#line 4684 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
(yyval.node)->type_ = T_VARCHAR;
(yyval.node)->param_num_ = 1;
;}
break;
case 733:
/* Line 1455 of yacc.c */
#line 4690 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->type_ = T_INT;
(yyval.node)->param_num_ = 1;
;}
break;
case 734:
/* Line 1455 of yacc.c */
#line 4698 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->type_ = T_VARCHAR;
(yyval.node)->param_num_ = 0;
(yyval.node)->is_hidden_const_ = 1;
;}
break;
case 735:
/* Line 1455 of yacc.c */
#line 4705 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->param_num_ = 1;
(yyval.node)->is_hidden_const_ = 0;
;}
break;
case 736:
/* Line 1455 of yacc.c */
#line 4711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR);
(yyval.node)->str_value_ = parse_strdup("binary", result->malloc_pool_, &((yyval.node)->str_len_));
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
(yyval.node)->param_num_ = 0;
(yyval.node)->is_hidden_const_ = 1;
;}
break;
case 737:
/* Line 1455 of yacc.c */
#line 4725 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 738:
/* Line 1455 of yacc.c */
#line 4729 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 739:
/* Line 1455 of yacc.c */
#line 4736 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET);
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
;}
break;
case 740:
/* Line 1455 of yacc.c */
#line 4743 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 741:
/* Line 1455 of yacc.c */
#line 4748 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COLLATION);
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
(yyval.node)->param_num_ = (yyvsp[(2) - (2)].node)->param_num_;
;}
break;
case 742:
/* Line 1455 of yacc.c */
#line 4757 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 743:
/* Line 1455 of yacc.c */
#line 4761 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 744:
/* Line 1455 of yacc.c */
#line 4766 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); ;}
break;
case 745:
/* Line 1455 of yacc.c */
#line 4768 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 746:
/* Line 1455 of yacc.c */
#line 4773 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node)) ;
(void)((yyvsp[(2) - (2)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_NOT_NULL);
;}
break;
case 747:
/* Line 1455 of yacc.c */
#line 4779 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (1)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_NULL);
;}
break;
case 748:
/* Line 1455 of yacc.c */
#line 4784 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_DEFAULT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 749:
/* Line 1455 of yacc.c */
#line 4788 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_ORIG_DEFAULT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 750:
/* Line 1455 of yacc.c */
#line 4792 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_AUTO_INCREMENT);
;}
break;
case 751:
/* Line 1455 of yacc.c */
#line 4796 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_UNIQUE_KEY);
;}
break;
case 752:
/* Line 1455 of yacc.c */
#line 4801 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_PRIMARY_KEY);
;}
break;
case 753:
/* Line 1455 of yacc.c */
#line 4806 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_UNIQUE_KEY);
;}
break;
case 754:
/* Line 1455 of yacc.c */
#line 4810 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMENT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 755:
/* Line 1455 of yacc.c */
#line 4814 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ON_UPDATE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 756:
/* Line 1455 of yacc.c */
#line 4818 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ID, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 757:
/* Line 1455 of yacc.c */
#line 4825 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 758:
/* Line 1455 of yacc.c */
#line 4829 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 759:
/* Line 1455 of yacc.c */
#line 4836 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 760:
/* Line 1455 of yacc.c */
#line 4838 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (2)].node); ;}
break;
case 761:
/* Line 1455 of yacc.c */
#line 4840 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (T_UINT64 == (yyvsp[(2) - (2)].node)->type_) {
uint64_t value = (yyvsp[(2) - (2)].node)->value_;
if (INT64_MAX == value - 1) {
(yyvsp[(2) - (2)].node)->value_ = INT64_MIN;
(yyvsp[(2) - (2)].node)->type_ = T_INT;
} else {
(yyvsp[(2) - (2)].node)->value_ = -(yyvsp[(2) - (2)].node)->value_;
(yyvsp[(2) - (2)].node)->type_ = T_NUMBER;
}
} else {
(yyvsp[(2) - (2)].node)->value_ = -(yyvsp[(2) - (2)].node)->value_;
}
int32_t len = (yyvsp[(2) - (2)].node)->str_len_ + 2;
char *str_value = (char*)parse_malloc(len, result->malloc_pool_);
if (OB_LIKELY(NULL != str_value)) {
snprintf(str_value, len, "-%.*s", (int32_t)((yyvsp[(2) - (2)].node)->str_len_), (yyvsp[(2) - (2)].node)->str_value_);
(yyval.node) = (yyvsp[(2) - (2)].node);
(yyval.node)->str_value_ = str_value;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_ + 1;
} else {
yyerror(NULL, result, "No more space for copying expression string\n");
YYABORT_NO_MEMORY;
}
;}
break;
case 762:
/* Line 1455 of yacc.c */
#line 4869 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 763:
/* Line 1455 of yacc.c */
#line 4873 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 764:
/* Line 1455 of yacc.c */
#line 4880 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 765:
/* Line 1455 of yacc.c */
#line 4884 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 766:
/* Line 1455 of yacc.c */
#line 4891 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 767:
/* Line 1455 of yacc.c */
#line 4895 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 768:
/* Line 1455 of yacc.c */
#line 4902 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 769:
/* Line 1455 of yacc.c */
#line 4906 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 770:
/* Line 1455 of yacc.c */
#line 4913 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 771:
/* Line 1455 of yacc.c */
#line 4917 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 772:
/* Line 1455 of yacc.c */
#line 4924 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 773:
/* Line 1455 of yacc.c */
#line 4928 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RANDOM);
;}
break;
case 774:
/* Line 1455 of yacc.c */
#line 4932 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GET_USER_VAR, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 775:
/* Line 1455 of yacc.c */
#line 4936 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 776:
/* Line 1455 of yacc.c */
#line 4943 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 777:
/* Line 1455 of yacc.c */
#line 4947 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 778:
/* Line 1455 of yacc.c */
#line 4954 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLE_MODE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 779:
/* Line 1455 of yacc.c */
#line 4959 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUPLICATE_SCOPE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 780:
/* Line 1455 of yacc.c */
#line 4964 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOCALITY, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 781:
/* Line 1455 of yacc.c */
#line 4969 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPIRE_INFO, 1, (yyvsp[(4) - (5)].node));
dup_expr_string((yyval.node), result, (yylsp[(4) - (5)]).first_column, (yylsp[(4) - (5)]).last_column);
;}
break;
case 782:
/* Line 1455 of yacc.c */
#line 4975 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROGRESSIVE_MERGE_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 783:
/* Line 1455 of yacc.c */
#line 4980 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BLOCK_SIZE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 784:
/* Line 1455 of yacc.c */
#line 4985 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 785:
/* Line 1455 of yacc.c */
#line 4990 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REPLICA_NUM, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 786:
/* Line 1455 of yacc.c */
#line 4995 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMPRESSION, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 787:
/* Line 1455 of yacc.c */
#line 5000 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_STORE_FORMAT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 788:
/* Line 1455 of yacc.c */
#line 5005 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_STORAGE_FORMAT_VERSION, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 789:
/* Line 1455 of yacc.c */
#line 5010 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_BLOOM_FILTER, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 790:
/* Line 1455 of yacc.c */
#line 5015 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node)) ; /* make bison mute */
(void)((yyvsp[(2) - (4)].node)) ; /* make bison mute */
(void)((yyvsp[(3) - (4)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHARSET, 1, (yyvsp[(4) - (4)].node));
;}
break;
case 791:
/* Line 1455 of yacc.c */
#line 5022 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node));
(void)((yyvsp[(3) - (4)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COLLATION);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
(yyval.node)->param_num_ = (yyvsp[(4) - (4)].node)->param_num_;
;}
break;
case 792:
/* Line 1455 of yacc.c */
#line 5031 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute*/
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMENT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 793:
/* Line 1455 of yacc.c */
#line 5036 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_ZONE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 794:
/* Line 1455 of yacc.c */
#line 5041 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLEGROUP, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 795:
/* Line 1455 of yacc.c */
#line 5046 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_AUTO_INCREMENT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 796:
/* Line 1455 of yacc.c */
#line 5051 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_READ_ONLY, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 797:
/* Line 1455 of yacc.c */
#line 5055 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ENGINE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 798:
/* Line 1455 of yacc.c */
#line 5060 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLET_SIZE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 799:
/* Line 1455 of yacc.c */
#line 5065 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PCTFREE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 800:
/* Line 1455 of yacc.c */
#line 5070 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_USED_PART_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 801:
/* Line 1455 of yacc.c */
#line 5075 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 802:
/* Line 1455 of yacc.c */
#line 5082 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
if (OB_UNLIKELY((yyvsp[(3) - (3)].node)->value_ < 1)) {
yyerror(&(yylsp[(1) - (3)]), result, "value for PARALLEL or DEGREE must be greater than 0!\n");
YYERROR;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARALLEL, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 803:
/* Line 1455 of yacc.c */
#line 5091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *int_node = NULL;
malloc_terminal_node(int_node, result->malloc_pool_, T_INT);
int_node->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARALLEL, 1, int_node);
;}
break;
case 804:
/* Line 1455 of yacc.c */
#line 5101 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); (yyval.node)->type_ = T_VARCHAR;;}
break;
case 805:
/* Line 1455 of yacc.c */
#line 5102 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 806:
/* Line 1455 of yacc.c */
#line 5104 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "all");
;}
break;
case 807:
/* Line 1455 of yacc.c */
#line 5111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 808:
/* Line 1455 of yacc.c */
#line 5112 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 809:
/* Line 1455 of yacc.c */
#line 5116 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 810:
/* Line 1455 of yacc.c */
#line 5117 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 811:
/* Line 1455 of yacc.c */
#line 5122 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 812:
/* Line 1455 of yacc.c */
#line 5126 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 813:
/* Line 1455 of yacc.c */
#line 5130 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 814:
/* Line 1455 of yacc.c */
#line 5134 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 815:
/* Line 1455 of yacc.c */
#line 5141 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_OPTION, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 816:
/* Line 1455 of yacc.c */
#line 5145 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 817:
/* Line 1455 of yacc.c */
#line 5149 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 818:
/* Line 1455 of yacc.c */
#line 5155 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_AUTO_PARTITION, 2, (yyvsp[(1) - (6)].node), (yyvsp[(4) - (6)].node));
;}
break;
case 819:
/* Line 1455 of yacc.c */
#line 5162 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 820:
/* Line 1455 of yacc.c */
#line 5166 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_AUTO);
;}
break;
case 821:
/* Line 1455 of yacc.c */
#line 5173 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 822:
/* Line 1455 of yacc.c */
#line 5180 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 1, params);
;}
break;
case 823:
/* Line 1455 of yacc.c */
#line 5185 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 1, params);
dup_expr_string((yyval.node), result, (yylsp[(5) - (6)]).first_column, (yylsp[(5) - (6)]).last_column);
;}
break;
case 824:
/* Line 1455 of yacc.c */
#line 5192 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 1, params);
dup_expr_string((yyval.node), result, (yylsp[(6) - (7)]).first_column, (yylsp[(6) - (7)]).last_column);
;}
break;
case 825:
/* Line 1455 of yacc.c */
#line 5201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *hash_func = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (8)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, params);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 6, (yyval.node), (yyvsp[(8) - (8)].node), NULL, (yyvsp[(7) - (8)].node), NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (8)]).first_column, (yylsp[(5) - (8)]).last_column);
;}
break;
case 826:
/* Line 1455 of yacc.c */
#line 5211 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *hash_func = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, params);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 6, (yyval.node), (yyvsp[(8) - (9)].node), (yyvsp[(9) - (9)].node), (yyvsp[(7) - (9)].node), NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 827:
/* Line 1455 of yacc.c */
#line 5224 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_PARTITION, 5, params, (yyvsp[(9) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(8) - (9)].node), NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 828:
/* Line 1455 of yacc.c */
#line 5231 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_COLUMNS_PARTITION, 5, params, (yyvsp[(10) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(9) - (10)].node), NULL);
dup_expr_string((yyval.node), result, (yylsp[(6) - (10)]).first_column, (yylsp[(6) - (10)]).last_column);
;}
break;
case 829:
/* Line 1455 of yacc.c */
#line 5241 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *column_name_list = NULL;
ParseNode *hash_func = NULL;
merge_nodes(column_name_list, result, T_EXPR_LIST, (yyvsp[(5) - (8)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), (yyvsp[(8) - (8)].node), NULL, (yyvsp[(7) - (8)].node), NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (8)]).first_column, (yylsp[(5) - (8)]).last_column);
;}
break;
case 830:
/* Line 1455 of yacc.c */
#line 5251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *column_name_list = NULL;
ParseNode *hash_func = NULL;
merge_nodes(column_name_list, result, T_EXPR_LIST, (yyvsp[(5) - (9)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), (yyvsp[(8) - (9)].node), (yyvsp[(9) - (9)].node), (yyvsp[(7) - (9)].node), NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 831:
/* Line 1455 of yacc.c */
#line 5261 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
ParseNode *column_name_list = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), (yyvsp[(7) - (7)].node), NULL, (yyvsp[(6) - (7)].node), NULL, NULL);
;}
break;
case 832:
/* Line 1455 of yacc.c */
#line 5269 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
ParseNode *column_name_list = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node), (yyvsp[(6) - (8)].node), NULL, NULL);
;}
break;
case 833:
/* Line 1455 of yacc.c */
#line 5280 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 5, params, (yyvsp[(9) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(8) - (9)].node), NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 834:
/* Line 1455 of yacc.c */
#line 5287 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (10)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 5, params, (yyvsp[(10) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(9) - (10)].node), NULL);
dup_expr_string((yyval.node), result, (yylsp[(6) - (10)]).first_column, (yylsp[(6) - (10)]).last_column);
;}
break;
case 835:
/* Line 1455 of yacc.c */
#line 5296 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 836:
/* Line 1455 of yacc.c */
#line 5298 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) =(yyvsp[(1) - (1)].node); ;}
break;
case 837:
/* Line 1455 of yacc.c */
#line 5303 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VERTICAL_COLUMNS_PARTITION, 2, (yyvsp[(5) - (6)].node), NULL /*aux_column_list*/);
;}
break;
case 838:
/* Line 1455 of yacc.c */
#line 5307 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *aux_column_list= NULL;
merge_nodes(aux_column_list, result, T_COLUMN_LIST, (yyvsp[(7) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VERTICAL_COLUMNS_PARTITION, 2, (yyvsp[(5) - (8)].node), aux_column_list);
;}
break;
case 839:
/* Line 1455 of yacc.c */
#line 5316 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 840:
/* Line 1455 of yacc.c */
#line 5320 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 841:
/* Line 1455 of yacc.c */
#line 5327 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->value_ = 1;
;}
break;
case 842:
/* Line 1455 of yacc.c */
#line 5332 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_COLUMN_LIST, (yyvsp[(2) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 843:
/* Line 1455 of yacc.c */
#line 5341 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 844:
/* Line 1455 of yacc.c */
#line 5345 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 845:
/* Line 1455 of yacc.c */
#line 5352 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 846:
/* Line 1455 of yacc.c */
#line 5356 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 847:
/* Line 1455 of yacc.c */
#line 5362 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *template_mark = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 5, params, (yyvsp[(9) - (9)].node), NULL, NULL, template_mark);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 848:
/* Line 1455 of yacc.c */
#line 5371 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *template_mark = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (10)].node));
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 5, params, (yyvsp[(10) - (10)].node), NULL, NULL, template_mark);
dup_expr_string((yyval.node), result, (yylsp[(6) - (10)]).first_column, (yylsp[(6) - (10)]).last_column);
;}
break;
case 849:
/* Line 1455 of yacc.c */
#line 5380 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *hash_func = NULL;
ParseNode *template_mark = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, params);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 6, (yyval.node), NULL, (yyvsp[(9) - (9)].node), NULL, template_mark, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 850:
/* Line 1455 of yacc.c */
#line 5392 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *template_mark = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (9)].node));
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_PARTITION, 5, params, (yyvsp[(9) - (9)].node), NULL, NULL, template_mark);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 851:
/* Line 1455 of yacc.c */
#line 5401 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *template_mark = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (10)].node));
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_COLUMNS_PARTITION, 5, params, (yyvsp[(10) - (10)].node), NULL, NULL, template_mark);
dup_expr_string((yyval.node), result, (yylsp[(6) - (10)]).first_column, (yylsp[(6) - (10)]).last_column);
;}
break;
case 852:
/* Line 1455 of yacc.c */
#line 5410 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *column_name_list = NULL;
ParseNode *hash_func = NULL;
ParseNode *template_mark = NULL;
merge_nodes(column_name_list, result, T_EXPR_LIST, (yyvsp[(5) - (9)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
make_name_node(template_mark, result->malloc_pool_, "template_mark");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), NULL, (yyvsp[(9) - (9)].node), NULL, template_mark, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (9)]).first_column, (yylsp[(5) - (9)]).last_column);
;}
break;
case 853:
/* Line 1455 of yacc.c */
#line 5422 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 854:
/* Line 1455 of yacc.c */
#line 5429 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 5, params, NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (6)]).first_column, (yylsp[(5) - (6)]).last_column);
;}
break;
case 855:
/* Line 1455 of yacc.c */
#line 5436 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 5, params, NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(6) - (7)]).first_column, (yylsp[(6) - (7)]).last_column);
;}
break;
case 856:
/* Line 1455 of yacc.c */
#line 5443 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
ParseNode *hash_func = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (7)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, params);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 6, (yyval.node), (yyvsp[(7) - (7)].node), NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (7)]).first_column, (yylsp[(5) - (7)]).last_column);
;}
break;
case 857:
/* Line 1455 of yacc.c */
#line 5453 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
malloc_non_terminal_node(params, result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_PARTITION, 5, params, NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (6)]).first_column, (yylsp[(5) - (6)]).last_column);
;}
break;
case 858:
/* Line 1455 of yacc.c */
#line 5460 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *params = NULL;
merge_nodes(params, result, T_EXPR_LIST, (yyvsp[(6) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_COLUMNS_PARTITION, 5, params, NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(6) - (7)]).first_column, (yylsp[(6) - (7)]).last_column);
;}
break;
case 859:
/* Line 1455 of yacc.c */
#line 5467 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *column_name_list = NULL;
ParseNode *hash_func = NULL;
merge_nodes(column_name_list, result, T_EXPR_LIST, (yyvsp[(5) - (7)].node));
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, column_name_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 6, (yyval.node), (yyvsp[(7) - (7)].node), NULL, NULL, NULL, NULL);
dup_expr_string((yyval.node), result, (yylsp[(5) - (7)]).first_column, (yylsp[(5) - (7)]).last_column);
;}
break;
case 860:
/* Line 1455 of yacc.c */
#line 5480 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_PARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 861:
/* Line 1455 of yacc.c */
#line 5486 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 862:
/* Line 1455 of yacc.c */
#line 5490 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 863:
/* Line 1455 of yacc.c */
#line 5497 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (4)].node), NULL, (yyvsp[(3) - (4)].node), NULL, (yyvsp[(4) - (4)].node));
;}
break;
case 864:
/* Line 1455 of yacc.c */
#line 5504 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_PARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 865:
/* Line 1455 of yacc.c */
#line 5511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 866:
/* Line 1455 of yacc.c */
#line 5515 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 867:
/* Line 1455 of yacc.c */
#line 5521 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node), NULL, (yyvsp[(8) - (8)].node));
;}
break;
case 868:
/* Line 1455 of yacc.c */
#line 5528 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_PARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 869:
/* Line 1455 of yacc.c */
#line 5535 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 870:
/* Line 1455 of yacc.c */
#line 5539 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 871:
/* Line 1455 of yacc.c */
#line 5546 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node), NULL, (yyvsp[(7) - (7)].node));
;}
break;
case 872:
/* Line 1455 of yacc.c */
#line 5553 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 873:
/* Line 1455 of yacc.c */
#line 5557 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 874:
/* Line 1455 of yacc.c */
#line 5561 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 875:
/* Line 1455 of yacc.c */
#line 5565 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 876:
/* Line 1455 of yacc.c */
#line 5571 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_HASH_SUBPARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 877:
/* Line 1455 of yacc.c */
#line 5577 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 878:
/* Line 1455 of yacc.c */
#line 5581 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 879:
/* Line 1455 of yacc.c */
#line 5587 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (2)].node), NULL, NULL, NULL, NULL);
;}
break;
case 880:
/* Line 1455 of yacc.c */
#line 5594 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_RANGE_SUBPARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 881:
/* Line 1455 of yacc.c */
#line 5601 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 882:
/* Line 1455 of yacc.c */
#line 5605 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 883:
/* Line 1455 of yacc.c */
#line 5612 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (6)].node), (yyvsp[(6) - (6)].node), NULL, NULL, NULL);
;}
break;
case 884:
/* Line 1455 of yacc.c */
#line 5619 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_LIST_SUBPARTITION_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 885:
/* Line 1455 of yacc.c */
#line 5626 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 886:
/* Line 1455 of yacc.c */
#line 5630 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 887:
/* Line 1455 of yacc.c */
#line 5637 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ELEMENT, 5, (yyvsp[(2) - (5)].node), (yyvsp[(5) - (5)].node), NULL, NULL, NULL);
;}
break;
case 888:
/* Line 1455 of yacc.c */
#line 5643 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_EXPR_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 889:
/* Line 1455 of yacc.c */
#line 5647 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 890:
/* Line 1455 of yacc.c */
#line 5653 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 891:
/* Line 1455 of yacc.c */
#line 5657 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 892:
/* Line 1455 of yacc.c */
#line 5664 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_EXPR_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 893:
/* Line 1455 of yacc.c */
#line 5668 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *max_node = NULL;
malloc_terminal_node(max_node, result->malloc_pool_, T_MAXVALUE);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 1, max_node);
;}
break;
case 894:
/* Line 1455 of yacc.c */
#line 5677 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 895:
/* Line 1455 of yacc.c */
#line 5679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PART_ID, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 896:
/* Line 1455 of yacc.c */
#line 5686 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 897:
/* Line 1455 of yacc.c */
#line 5690 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 898:
/* Line 1455 of yacc.c */
#line 5697 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 899:
/* Line 1455 of yacc.c */
#line 5701 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_MAXVALUE);
;}
break;
case 900:
/* Line 1455 of yacc.c */
#line 5717 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 901:
/* Line 1455 of yacc.c */
#line 5721 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 902:
/* Line 1455 of yacc.c */
#line 5728 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 903:
/* Line 1455 of yacc.c */
#line 5732 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 904:
/* Line 1455 of yacc.c */
#line 5738 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 905:
/* Line 1455 of yacc.c */
#line 5739 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 906:
/* Line 1455 of yacc.c */
#line 5744 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 907:
/* Line 1455 of yacc.c */
#line 5748 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 908:
/* Line 1455 of yacc.c */
#line 5752 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 909:
/* Line 1455 of yacc.c */
#line 5756 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 910:
/* Line 1455 of yacc.c */
#line 5760 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 911:
/* Line 1455 of yacc.c */
#line 5767 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 3, (yyval.node), (yyvsp[(5) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 912:
/* Line 1455 of yacc.c */
#line 5777 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, (yyvsp[(4) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 3, (yyval.node), (yyvsp[(6) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 913:
/* Line 1455 of yacc.c */
#line 5786 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 4, NULL, (yyvsp[(6) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 914:
/* Line 1455 of yacc.c */
#line 5790 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 4, (yyvsp[(5) - (8)].node), (yyvsp[(8) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node));
;}
break;
case 915:
/* Line 1455 of yacc.c */
#line 5797 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_PARTITION, 4, NULL, (yyvsp[(6) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 916:
/* Line 1455 of yacc.c */
#line 5801 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_COLUMNS_PARTITION, 4, (yyvsp[(5) - (8)].node), (yyvsp[(8) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node));
;}
break;
case 917:
/* Line 1455 of yacc.c */
#line 5808 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_PARTITION, 4, NULL, (yyvsp[(6) - (6)].node), NULL, NULL);
;}
break;
case 918:
/* Line 1455 of yacc.c */
#line 5812 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RANGE_COLUMNS_PARTITION, 4, (yyvsp[(5) - (8)].node), (yyvsp[(8) - (8)].node), NULL, NULL);
;}
break;
case 919:
/* Line 1455 of yacc.c */
#line 5816 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_hash");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_HASH_PARTITION, 3, (yyval.node), (yyvsp[(4) - (4)].node), NULL);
;}
break;
case 920:
/* Line 1455 of yacc.c */
#line 5823 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *hash_func = NULL;
make_name_node(hash_func, result->malloc_pool_, "partition_key_v2");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FUN_SYS, 2, hash_func, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KEY_PARTITION, 3, (yyval.node), (yyvsp[(5) - (5)].node), NULL);
;}
break;
case 921:
/* Line 1455 of yacc.c */
#line 5830 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_PARTITION, 4, NULL, (yyvsp[(6) - (6)].node), NULL, NULL);
;}
break;
case 922:
/* Line 1455 of yacc.c */
#line 5834 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIST_COLUMNS_PARTITION, 4, (yyvsp[(5) - (8)].node), (yyvsp[(8) - (8)].node), NULL, NULL);
;}
break;
case 923:
/* Line 1455 of yacc.c */
#line 5838 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 924:
/* Line 1455 of yacc.c */
#line 5845 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 925:
/* Line 1455 of yacc.c */
#line 5850 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 926:
/* Line 1455 of yacc.c */
#line 5855 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 927:
/* Line 1455 of yacc.c */
#line 5860 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 4;
;}
break;
case 928:
/* Line 1455 of yacc.c */
#line 5865 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 929:
/* Line 1455 of yacc.c */
#line 5877 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tablegroup_options = NULL;
merge_nodes(tablegroup_options, result, T_TABLEGROUP_OPTION_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TABLEGROUP, 4, (yyvsp[(3) - (6)].node), (yyvsp[(4) - (6)].node), tablegroup_options, (yyvsp[(6) - (6)].node));
;}
break;
case 930:
/* Line 1455 of yacc.c */
#line 5891 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_TABLEGROUP, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 931:
/* Line 1455 of yacc.c */
#line 5903 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(5) - (6)].node));
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_TABLE_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLEGROUP, 2, (yyvsp[(3) - (6)].node), table_list);
;}
break;
case 932:
/* Line 1455 of yacc.c */
#line 5910 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tablegroup_actions = NULL;
merge_nodes(tablegroup_actions, result, T_ALTER_TABLEGROUP_ACTION_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLEGROUP, 2, (yyvsp[(3) - (4)].node), tablegroup_actions);
;}
break;
case 933:
/* Line 1455 of yacc.c */
#line 5916 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *partition_options = NULL;
malloc_non_terminal_node(partition_options, result->malloc_pool_, T_ALTER_PARTITION_OPTION, 1, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLEGROUP, 2, (yyvsp[(3) - (4)].node), partition_options);
;}
break;
case 934:
/* Line 1455 of yacc.c */
#line 5925 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 935:
/* Line 1455 of yacc.c */
#line 5929 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 936:
/* Line 1455 of yacc.c */
#line 5937 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 937:
/* Line 1455 of yacc.c */
#line 5941 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 938:
/* Line 1455 of yacc.c */
#line 5948 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 939:
/* Line 1455 of yacc.c */
#line 5952 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 940:
/* Line 1455 of yacc.c */
#line 5959 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOCALITY, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 941:
/* Line 1455 of yacc.c */
#line 5964 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_ZONE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 942:
/* Line 1455 of yacc.c */
#line 5969 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLEGROUP_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 943:
/* Line 1455 of yacc.c */
#line 5974 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLEGROUP_BINDING, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 944:
/* Line 1455 of yacc.c */
#line 5979 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_USED_PART_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 945:
/* Line 1455 of yacc.c */
#line 5988 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 946:
/* Line 1455 of yacc.c */
#line 5992 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 947:
/* Line 1455 of yacc.c */
#line 5999 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(1) - (2)].node);
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 948:
/* Line 1455 of yacc.c */
#line 6012 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node)) ; /* make bison mute */
(void)((yyvsp[(3) - (4)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT_TABLEGROUP);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
;}
break;
case 949:
/* Line 1455 of yacc.c */
#line 6020 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (4)].node)) ; /* make bison mute */
(void)((yyvsp[(3) - (4)].node)) ; /* make bison mute */
(void)((yyvsp[(4) - (4)].node)) ; /* make bison mute */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT_TABLEGROUP);
;}
break;
case 950:
/* Line 1455 of yacc.c */
#line 6030 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 951:
/* Line 1455 of yacc.c */
#line 6031 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 952:
/* Line 1455 of yacc.c */
#line 6041 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_VIEW, 7,
(yyvsp[(3) - (9)].node), /* opt_materialized */
(yyvsp[(5) - (9)].node), /* view name */
(yyvsp[(6) - (9)].node), /* column list */
(yyvsp[(7) - (9)].node), /* table_id */
(yyvsp[(9) - (9)].node), /* select_stmt */
(yyvsp[(2) - (9)].node),
NULL /* with option */
);
dup_expr_string((yyvsp[(9) - (9)].node), result, (yylsp[(9) - (9)]).first_column, (yylsp[(9) - (9)]).last_column);
;}
break;
case 953:
/* Line 1455 of yacc.c */
#line 6057 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 954:
/* Line 1455 of yacc.c */
#line 6064 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_IF_NOT_EXISTS); ;}
break;
case 955:
/* Line 1455 of yacc.c */
#line 6066 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 956:
/* Line 1455 of yacc.c */
#line 6071 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_MATERIALIZED); ;}
break;
case 957:
/* Line 1455 of yacc.c */
#line 6073 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 958:
/* Line 1455 of yacc.c */
#line 6078 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 959:
/* Line 1455 of yacc.c */
#line 6083 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_COLUMN_LIST, (yyvsp[(2) - (3)].node));
;}
break;
case 960:
/* Line 1455 of yacc.c */
#line 6086 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 961:
/* Line 1455 of yacc.c */
#line 6091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TABLE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 962:
/* Line 1455 of yacc.c */
#line 6094 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 963:
/* Line 1455 of yacc.c */
#line 6105 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *idx_columns = NULL;
ParseNode *index_options = NULL;
merge_nodes(idx_columns, result, T_INDEX_COLUMN_LIST, (yyvsp[(10) - (13)].node));
merge_nodes(index_options, result, T_TABLE_OPTION_LIST, (yyvsp[(12) - (13)].node));
(yyvsp[(5) - (13)].node)->value_ = (yyvsp[(2) - (13)].ival)[0]; /* index prefix keyname */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_INDEX, 7,
(yyvsp[(5) - (13)].node), /* index name */
(yyvsp[(8) - (13)].node), /* table name */
idx_columns, /* index columns */
index_options, /* index option(s) */
(yyvsp[(6) - (13)].node), /* index method */
(yyvsp[(13) - (13)].node), /* partition method*/
(yyvsp[(4) - (13)].node)); /* if not exists*/
;}
break;
case 964:
/* Line 1455 of yacc.c */
#line 6122 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 965:
/* Line 1455 of yacc.c */
#line 6123 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 966:
/* Line 1455 of yacc.c */
#line 6129 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 967:
/* Line 1455 of yacc.c */
#line 6133 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 968:
/* Line 1455 of yacc.c */
#line 6139 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 969:
/* Line 1455 of yacc.c */
#line 6144 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHECK_CONSTRAINT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 970:
/* Line 1455 of yacc.c */
#line 6148 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 971:
/* Line 1455 of yacc.c */
#line 6155 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 972:
/* Line 1455 of yacc.c */
#line 6159 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 973:
/* Line 1455 of yacc.c */
#line 6165 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 974:
/* Line 1455 of yacc.c */
#line 6170 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 975:
/* Line 1455 of yacc.c */
#line 6172 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
break;
case 976:
/* Line 1455 of yacc.c */
#line 6177 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SORT_COLUMN_KEY, 4, (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 977:
/* Line 1455 of yacc.c */
#line 6193 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = 0; ;}
break;
case 978:
/* Line 1455 of yacc.c */
#line 6195 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ID, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 979:
/* Line 1455 of yacc.c */
#line 6201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
;}
break;
case 980:
/* Line 1455 of yacc.c */
#line 6205 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 981:
/* Line 1455 of yacc.c */
#line 6212 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 982:
/* Line 1455 of yacc.c */
#line 6216 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 983:
/* Line 1455 of yacc.c */
#line 6223 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 984:
/* Line 1455 of yacc.c */
#line 6227 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 985:
/* Line 1455 of yacc.c */
#line 6234 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_operand = NULL;
malloc_terminal_node(default_operand, result->malloc_pool_, T_VARCHAR);
int64_t len = strlen("GLOBAL");
default_operand->str_value_ = parse_strndup("GLOBAL", len, result->malloc_pool_);
if (OB_UNLIKELY(NULL == default_operand->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
default_operand->str_len_ = len;
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_INT);
default_type->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_SCOPE, 2, default_type, default_operand);
;}
break;
case 986:
/* Line 1455 of yacc.c */
#line 6251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_operand = NULL;
malloc_terminal_node(default_operand, result->malloc_pool_, T_VARCHAR);
int64_t len = strlen("LOCAL");
default_operand->str_value_ = parse_strndup("LOCAL", len, result->malloc_pool_);
if (OB_UNLIKELY(NULL == default_operand->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
default_operand->str_len_ = len;
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_INT);
default_type->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_SCOPE, 2, default_type, default_operand);
;}
break;
case 987:
/* Line 1455 of yacc.c */
#line 6268 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BLOCK_SIZE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 988:
/* Line 1455 of yacc.c */
#line 6273 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMENT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 989:
/* Line 1455 of yacc.c */
#line 6277 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_STORING_COLUMN_LIST, (yyvsp[(3) - (4)].node));
;}
break;
case 990:
/* Line 1455 of yacc.c */
#line 6281 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_WITH_ROWID);
;}
break;
case 991:
/* Line 1455 of yacc.c */
#line 6285 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARSER_NAME, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 992:
/* Line 1455 of yacc.c */
#line 6289 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 993:
/* Line 1455 of yacc.c */
#line 6293 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 994:
/* Line 1455 of yacc.c */
#line 6297 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DATA_TABLE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 995:
/* Line 1455 of yacc.c */
#line 6302 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_TABLE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 996:
/* Line 1455 of yacc.c */
#line 6307 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VIRTUAL_COLUMN_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 997:
/* Line 1455 of yacc.c */
#line 6312 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_USED_PART_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 998:
/* Line 1455 of yacc.c */
#line 6317 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 999:
/* Line 1455 of yacc.c */
#line 6324 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1000:
/* Line 1455 of yacc.c */
#line 6328 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1001:
/* Line 1455 of yacc.c */
#line 6335 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USING_BTREE);
;}
break;
case 1002:
/* Line 1455 of yacc.c */
#line 6339 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USING_HASH);
;}
break;
case 1003:
/* Line 1455 of yacc.c */
#line 6346 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY); ;}
break;
case 1004:
/* Line 1455 of yacc.c */
#line 6349 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_MATERIALIZED); ;}
break;
case 1005:
/* Line 1455 of yacc.c */
#line 6351 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1006:
/* Line 1455 of yacc.c */
#line 6361 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (6)].node));
ParseNode *tables = NULL;
merge_nodes(tables, result, T_TABLE_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_TABLE, 3, (yyvsp[(2) - (6)].node), (yyvsp[(4) - (6)].node), tables);
;}
break;
case 1007:
/* Line 1455 of yacc.c */
#line 6371 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1008:
/* Line 1455 of yacc.c */
#line 6375 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1009:
/* Line 1455 of yacc.c */
#line 6382 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *views = NULL;
merge_nodes(views, result, T_VIEW_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_VIEW, 3, (yyvsp[(2) - (6)].node), (yyvsp[(4) - (6)].node), views);
;}
break;
case 1010:
/* Line 1455 of yacc.c */
#line 6391 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1011:
/* Line 1455 of yacc.c */
#line 6393 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_IF_EXISTS); ;}
break;
case 1012:
/* Line 1455 of yacc.c */
#line 6398 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1013:
/* Line 1455 of yacc.c */
#line 6402 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1014:
/* Line 1455 of yacc.c */
#line 6416 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_INDEX, 2, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1015:
/* Line 1455 of yacc.c */
#line 6429 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (5)].node));
if (NULL == (yyvsp[(4) - (5)].node)) {
yyerror(NULL, result, "invalid single table insert node\n");
YYABORT_UNEXPECTED;
}
(yyvsp[(4) - (5)].node)->children_[2] = (yyvsp[(5) - (5)].node); /*duplicate key node*/
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INSERT, 4,
(yyvsp[(4) - (5)].node), /*single or multi table insert node*/
(yyvsp[(1) - (5)].node)->children_[0], /* is replacement */
(yyvsp[(1) - (5)].node)->children_[1], /* hint */
(yyvsp[(2) - (5)].node) /*ignore node*/);
;}
break;
case 1016:
/* Line 1455 of yacc.c */
#line 6443 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INSERT, 4,
(yyvsp[(4) - (4)].node), /*single or multi table insert node*/
(yyvsp[(1) - (4)].node)->children_[0], /* is replacement */
(yyvsp[(1) - (4)].node)->children_[1], /* hint */
(yyvsp[(2) - (4)].node) /*ignore node*/);
;}
break;
case 1017:
/* Line 1455 of yacc.c */
#line 6455 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *into_node = NULL;
malloc_non_terminal_node(into_node, result->malloc_pool_, T_INSERT_INTO_CLAUSE, 2, (yyvsp[(1) - (2)].node), NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SINGLE_TABLE_INSERT, 3,
into_node, /*insert_into_clause*/
(yyvsp[(2) - (2)].node), /*values_clause*/
NULL /*duplicate key node*/);
;}
break;
case 1018:
/* Line 1455 of yacc.c */
#line 6464 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *into_node = NULL;
malloc_non_terminal_node(into_node, result->malloc_pool_, T_INSERT_INTO_CLAUSE, 2, (yyvsp[(1) - (4)].node), NULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SINGLE_TABLE_INSERT, 3,
into_node, /*insert_into_clause*/
(yyvsp[(4) - (4)].node), /*values_clause*/
NULL /*duplicate key node*/);
;}
break;
case 1019:
/* Line 1455 of yacc.c */
#line 6473 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *into_node = NULL;
ParseNode *column_list = NULL;
merge_nodes(column_list, result, T_COLUMN_LIST, (yyvsp[(3) - (5)].node));
malloc_non_terminal_node(into_node, result->malloc_pool_, T_INSERT_INTO_CLAUSE, 2, (yyvsp[(1) - (5)].node), column_list);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SINGLE_TABLE_INSERT, 3,
into_node, /*insert_into_clause*/
(yyvsp[(5) - (5)].node), /*values_clause*/
NULL /*duplicate key node*/);
;}
break;
case 1020:
/* Line 1455 of yacc.c */
#line 6484 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *val_list = NULL;
ParseNode *into_node = NULL;
merge_nodes(val_list, result, T_ASSIGN_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node(into_node, result->malloc_pool_, T_INSERT_INTO_CLAUSE, 1, (yyvsp[(1) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SINGLE_TABLE_INSERT, 3,
into_node, /*insert_into_clause*/
val_list, /*values_list*/
NULL /*duplicate key node*/);
;}
break;
case 1021:
/* Line 1455 of yacc.c */
#line 6498 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
merge_nodes((yyval.node), result, T_VALUE_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 1022:
/* Line 1455 of yacc.c */
#line 6503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1023:
/* Line 1455 of yacc.c */
#line 6510 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1024:
/* Line 1455 of yacc.c */
#line 6514 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1025:
/* Line 1455 of yacc.c */
#line 6520 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1026:
/* Line 1455 of yacc.c */
#line 6524 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1027:
/* Line 1455 of yacc.c */
#line 6530 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_IGNORE);
;}
break;
case 1028:
/* Line 1455 of yacc.c */
#line 6534 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1029:
/* Line 1455 of yacc.c */
#line 6541 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *assign_list = NULL;
merge_nodes(assign_list, result, T_ASSIGN_LIST, (yyvsp[(5) - (5)].node));
(yyval.node) = assign_list;
;}
break;
case 1030:
/* Line 1455 of yacc.c */
#line 6547 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1031:
/* Line 1455 of yacc.c */
#line 6552 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1032:
/* Line 1455 of yacc.c */
#line 6556 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *op_node = NULL;
malloc_terminal_node(op_node, result->malloc_pool_, T_REPLACE);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, op_node, NULL);
;}
break;
case 1033:
/* Line 1455 of yacc.c */
#line 6562 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *op_node = NULL;
malloc_terminal_node(op_node, result->malloc_pool_, T_REPLACE);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, op_node, (yyvsp[(2) - (2)].node));
;}
break;
case 1034:
/* Line 1455 of yacc.c */
#line 6571 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *op_node = NULL;
malloc_terminal_node(op_node, result->malloc_pool_, T_INSERT);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, op_node, NULL);
;}
break;
case 1035:
/* Line 1455 of yacc.c */
#line 6577 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *op_node = NULL;
malloc_terminal_node(op_node, result->malloc_pool_, T_INSERT);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, op_node, (yyvsp[(2) - (2)].node));
;}
break;
case 1036:
/* Line 1455 of yacc.c */
#line 6585 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1037:
/* Line 1455 of yacc.c */
#line 6587 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1038:
/* Line 1455 of yacc.c */
#line 6594 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VALUE_VECTOR, (yyvsp[(2) - (3)].node));
;}
break;
case 1039:
/* Line 1455 of yacc.c */
#line 6598 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyvsp[(4) - (5)].node), result, T_VALUE_VECTOR, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 1040:
/* Line 1455 of yacc.c */
#line 6605 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1041:
/* Line 1455 of yacc.c */
#line 6607 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1042:
/* Line 1455 of yacc.c */
#line 6611 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_EMPTY);
;}
break;
case 1043:
/* Line 1455 of yacc.c */
#line 6616 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 1044:
/* Line 1455 of yacc.c */
#line 6618 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 1045:
/* Line 1455 of yacc.c */
#line 6631 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_WHEN] = (yyvsp[(2) - (2)].node);
if (NULL == (yyval.node)->children_[PARSE_SELECT_FOR_UPD] && NULL != (yyvsp[(2) - (2)].node))
{
malloc_terminal_node((yyval.node)->children_[PARSE_SELECT_FOR_UPD], result->malloc_pool_, T_INT);
(yyval.node)->children_[PARSE_SELECT_FOR_UPD]->value_ = -1;
}
;}
break;
case 1046:
/* Line 1455 of yacc.c */
#line 6641 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1047:
/* Line 1455 of yacc.c */
#line 6645 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1048:
/* Line 1455 of yacc.c */
#line 6654 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
if ((yyvsp[(2) - (2)].node) != NULL) {
if ((yyval.node)->children_[PARSE_SELECT_INTO] != NULL) {
yyerror(&(yylsp[(2) - (2)]), result, "");
YYERROR;
} else {
(yyval.node)->children_[PARSE_SELECT_INTO_EXTRA] = (yyvsp[(2) - (2)].node);
}
}
;}
break;
case 1049:
/* Line 1455 of yacc.c */
#line 6668 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (3)].node); ;}
break;
case 1050:
/* Line 1455 of yacc.c */
#line 6669 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (3)].node); ;}
break;
case 1051:
/* Line 1455 of yacc.c */
#line 6674 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_FOR_UPD] = (yyvsp[(2) - (2)].node);
;}
break;
case 1052:
/* Line 1455 of yacc.c */
#line 6679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_FOR_UPD] = (yyvsp[(2) - (2)].node);
;}
break;
case 1053:
/* Line 1455 of yacc.c */
#line 6684 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_FOR_UPD] = (yyvsp[(2) - (2)].node);
;}
break;
case 1054:
/* Line 1455 of yacc.c */
#line 6692 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *project_list = NULL;
merge_nodes(project_list, result, T_PROJECT_LIST, (yyvsp[(3) - (4)].node));
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_DISTINCT] = (yyvsp[(2) - (4)].node);
select_node->children_[PARSE_SELECT_SELECT] = project_list;
select_node->children_[PARSE_SELECT_HINTS] = (yyvsp[(1) - (4)].node);
select_node->children_[PARSE_SELECT_INTO] = (yyvsp[(4) - (4)].node);
(yyval.node) = select_node;
setup_token_pos_info(select_node, (yylsp[(1) - (4)]).first_column - 1, 6);
;}
break;
case 1055:
/* Line 1455 of yacc.c */
#line 6708 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *project_list = NULL;
merge_nodes(project_list, result, T_PROJECT_LIST, (yyvsp[(3) - (8)].node));
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_DISTINCT] = (yyvsp[(2) - (8)].node);
select_node->children_[PARSE_SELECT_SELECT] = project_list;
select_node->children_[PARSE_SELECT_WHERE] = (yyvsp[(7) - (8)].node);
select_node->children_[PARSE_SELECT_HINTS] = (yyvsp[(1) - (8)].node);
select_node->children_[PARSE_SELECT_INTO] = (yyvsp[(4) - (8)].node);
select_node->children_[PARSE_SELECT_NAMED_WINDOWS] = (yyvsp[(8) - (8)].node);
(yyval.node) = select_node;
setup_token_pos_info(select_node, (yylsp[(1) - (8)]).first_column - 1, 6);
;}
break;
case 1056:
/* Line 1455 of yacc.c */
#line 6728 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1057:
/* Line 1455 of yacc.c */
#line 6732 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1058:
/* Line 1455 of yacc.c */
#line 6736 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1059:
/* Line 1455 of yacc.c */
#line 6740 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1060:
/* Line 1455 of yacc.c */
#line 6744 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1061:
/* Line 1455 of yacc.c */
#line 6751 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (2)].node);
;}
break;
case 1062:
/* Line 1455 of yacc.c */
#line 6756 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_LIMIT] = (yyvsp[(3) - (3)].node);
;}
break;
case 1063:
/* Line 1455 of yacc.c */
#line 6765 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_SET] = (yyvsp[(2) - (3)].node);
select_node->children_[PARSE_SELECT_FORMER] = (yyvsp[(1) - (3)].node);
select_node->children_[PARSE_SELECT_LATER] = (yyvsp[(3) - (3)].node);
(yyval.node) = select_node;
;}
break;
case 1064:
/* Line 1455 of yacc.c */
#line 6773 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_SET] = (yyvsp[(2) - (3)].node);
select_node->children_[PARSE_SELECT_FORMER] = (yyvsp[(1) - (3)].node);
select_node->children_[PARSE_SELECT_LATER] = (yyvsp[(3) - (3)].node);
(yyval.node) = select_node;
;}
break;
case 1065:
/* Line 1455 of yacc.c */
#line 6781 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_SET] = (yyvsp[(2) - (3)].node);
select_node->children_[PARSE_SELECT_FORMER] = (yyvsp[(1) - (3)].node);
select_node->children_[PARSE_SELECT_LATER] = (yyvsp[(3) - (3)].node);
(yyval.node) = select_node;
;}
break;
case 1066:
/* Line 1455 of yacc.c */
#line 6793 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1067:
/* Line 1455 of yacc.c */
#line 6797 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1068:
/* Line 1455 of yacc.c */
#line 6801 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1069:
/* Line 1455 of yacc.c */
#line 6808 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1070:
/* Line 1455 of yacc.c */
#line 6812 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1071:
/* Line 1455 of yacc.c */
#line 6816 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1072:
/* Line 1455 of yacc.c */
#line 6823 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (2)].node);
;}
break;
case 1073:
/* Line 1455 of yacc.c */
#line 6828 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_LIMIT] = (yyvsp[(3) - (3)].node);
;}
break;
case 1074:
/* Line 1455 of yacc.c */
#line 6837 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (2)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (2)].node);
;}
break;
case 1075:
/* Line 1455 of yacc.c */
#line 6842 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (3)].node);
(yyval.node)->children_[PARSE_SELECT_LIMIT] = (yyvsp[(3) - (3)].node);
;}
break;
case 1076:
/* Line 1455 of yacc.c */
#line 6851 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// select_list
ParseNode *project_list = NULL;
ParseNode *star_node = NULL;
malloc_terminal_node(star_node, result->malloc_pool_, T_STAR);
ParseNode *upper_node = NULL;
malloc_non_terminal_node(upper_node, result->malloc_pool_, T_PROJECT_STRING, 1, star_node);
dup_string_to_node(upper_node, result->malloc_pool_, "*");
merge_nodes(project_list, result, T_PROJECT_LIST, upper_node);
// from_list
ParseNode *alias_node = NULL;
make_name_node(alias_node, result->malloc_pool_, "");
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (2)].node), alias_node);
ParseNode *from_list = NULL;
merge_nodes(from_list, result, T_FROM_LIST, alias_node);
// upper stmt
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_SELECT] = project_list;
select_node->children_[PARSE_SELECT_FROM] = from_list;
select_node->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (2)].node);
(yyval.node) = select_node;
;}
break;
case 1077:
/* Line 1455 of yacc.c */
#line 6881 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// select_list
ParseNode *project_list = NULL;
ParseNode *star_node = NULL;
malloc_terminal_node(star_node, result->malloc_pool_, T_STAR);
ParseNode *upper_node = NULL;
malloc_non_terminal_node(upper_node, result->malloc_pool_, T_PROJECT_STRING, 1, star_node);
dup_string_to_node(upper_node, result->malloc_pool_, "*");
merge_nodes(project_list, result, T_PROJECT_LIST, upper_node);
// from_list
ParseNode *alias_node = NULL;
make_name_node(alias_node, result->malloc_pool_, "");
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), alias_node);
ParseNode *from_list = NULL;
merge_nodes(from_list, result, T_FROM_LIST, alias_node);
// upper stmt
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_SELECT] = project_list;
select_node->children_[PARSE_SELECT_FROM] = from_list;
select_node->children_[PARSE_SELECT_ORDER] = (yyvsp[(2) - (3)].node);
select_node->children_[PARSE_SELECT_LIMIT] = (yyvsp[(3) - (3)].node);
(yyval.node) = select_node;
;}
break;
case 1078:
/* Line 1455 of yacc.c */
#line 6915 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1079:
/* Line 1455 of yacc.c */
#line 6917 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
#ifdef SQL_PARSER_COMPILATION
if (NULL != (yyval.node)) {
if (OB_UNLIKELY(NULL == (yyvsp[(2) - (2)].node))) {
yyerror(NULL, result, "hint_list_with_end not cannot be NULL here");
YYABORT;
} else {
// select /*+ no_rewrite */ 1 from dual;
// @1.first_column: pos of 'select' (1)
// @1.last_column: pos of '+' (10)
// @2.first_column: start pos of 'no_rewrite' (12)
// @2.last_column: end pos of '*/' (24)
setup_token_pos_info((yyval.node), (yylsp[(1) - (2)]).last_column - 1, (yylsp[(2) - (2)]).last_column - (yylsp[(1) - (2)]).last_column + 1);
result->stop_add_comment_ = true;
}
}
#endif
;}
break;
case 1080:
/* Line 1455 of yacc.c */
#line 6938 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1081:
/* Line 1455 of yacc.c */
#line 6940 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(2) - (2)].node);;}
break;
case 1082:
/* Line 1455 of yacc.c */
#line 6944 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1083:
/* Line 1455 of yacc.c */
#line 6946 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = (yyvsp[(2) - (2)].node);;}
break;
case 1084:
/* Line 1455 of yacc.c */
#line 6953 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *project_list = NULL;
ParseNode *from_list = NULL;
merge_nodes(project_list, result, T_PROJECT_LIST, (yyvsp[(3) - (10)].node));
merge_nodes(from_list, result, T_FROM_LIST, (yyvsp[(6) - (10)].node));
ParseNode *select_node = NULL;
malloc_select_node(select_node, result->malloc_pool_);
select_node->children_[PARSE_SELECT_DISTINCT] = (yyvsp[(2) - (10)].node);
select_node->children_[PARSE_SELECT_SELECT] = project_list;
select_node->children_[PARSE_SELECT_FROM] = from_list;
select_node->children_[PARSE_SELECT_WHERE] = (yyvsp[(7) - (10)].node);
select_node->children_[PARSE_SELECT_GROUP] = (yyvsp[(8) - (10)].node);
select_node->children_[PARSE_SELECT_HAVING] = (yyvsp[(9) - (10)].node);
select_node->children_[PARSE_SELECT_HINTS] = (yyvsp[(1) - (10)].node);
select_node->children_[PARSE_SELECT_INTO] = (yyvsp[(4) - (10)].node);
select_node->children_[PARSE_SELECT_NAMED_WINDOWS] = (yyvsp[(10) - (10)].node);
(yyval.node) = select_node;
setup_token_pos_info(from_list, (yylsp[(5) - (10)]).first_column - 1, 4);
setup_token_pos_info(select_node, (yylsp[(1) - (10)]).first_column - 1, 6);
;}
break;
case 1085:
/* Line 1455 of yacc.c */
#line 6978 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_SET_UNION; ;}
break;
case 1086:
/* Line 1455 of yacc.c */
#line 6982 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_SET_INTERSECT; ;}
break;
case 1087:
/* Line 1455 of yacc.c */
#line 6983 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_SET_EXCEPT; ;}
break;
case 1088:
/* Line 1455 of yacc.c */
#line 6984 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = T_SET_EXCEPT; ;}
break;
case 1089:
/* Line 1455 of yacc.c */
#line 6989 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (2)].ival)[0], 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1090:
/* Line 1455 of yacc.c */
#line 6993 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, (yyvsp[(1) - (1)].ival)[0], 1, NULL);
;}
break;
case 1091:
/* Line 1455 of yacc.c */
#line 6999 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1092:
/* Line 1455 of yacc.c */
#line 7001 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 1093:
/* Line 1455 of yacc.c */
#line 7005 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 1094:
/* Line 1455 of yacc.c */
#line 7009 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 1095:
/* Line 1455 of yacc.c */
#line 7016 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1096:
/* Line 1455 of yacc.c */
#line 7018 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WHERE_CLAUSE, 2, (yyvsp[(3) - (3)].node), (yyvsp[(2) - (3)].node));
setup_token_pos_info((yyval.node), (yylsp[(1) - (3)]).first_column - 1, 5);
;}
break;
case 1097:
/* Line 1455 of yacc.c */
#line 7026 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1098:
/* Line 1455 of yacc.c */
#line 7028 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1099:
/* Line 1455 of yacc.c */
#line 7035 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (4)].node) != NULL) {
if (T_INT == (yyvsp[(2) - (4)].node)->type_) {
(yyvsp[(2) - (4)].node)->type_ = T_LIMIT_INT;
} else if (T_UINT64 == (yyvsp[(2) - (4)].node)->type_) {
(yyvsp[(2) - (4)].node)->type_ = T_LIMIT_UINT;
}
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIMIT_CLAUSE, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (4)]).first_column, (yylsp[(4) - (4)]).last_column),
&(yylsp[(1) - (4)]), result);
;}
break;
case 1100:
/* Line 1455 of yacc.c */
#line 7048 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (2)].node) != NULL) {
if (T_INT == (yyvsp[(2) - (2)].node)->type_) {
(yyvsp[(2) - (2)].node)->type_ = T_LIMIT_INT;
} else if (T_UINT64 == (yyvsp[(2) - (2)].node)->type_) {
(yyvsp[(2) - (2)].node)->type_ = T_LIMIT_UINT;
}
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIMIT_CLAUSE, 2, (yyvsp[(2) - (2)].node), NULL);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (2)]).first_column, (yylsp[(2) - (2)]).last_column),
&(yylsp[(1) - (2)]), result);
;}
break;
case 1101:
/* Line 1455 of yacc.c */
#line 7061 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(4) - (4)].node) != NULL) {
if (T_INT == (yyvsp[(4) - (4)].node)->type_) {
(yyvsp[(4) - (4)].node)->type_ = T_LIMIT_INT;
} else if (T_UINT64 == (yyvsp[(4) - (4)].node)->type_) {
(yyvsp[(4) - (4)].node)->type_ = T_LIMIT_UINT;
}
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COMMA_LIMIT_CLAUSE, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
// setup_token_pos_info($$, @1.first_column - 1, @4.last_column - @1.first_column + 1);
check_ret(setup_token_pos_info_and_dup_string((yyval.node), result, (yylsp[(1) - (4)]).first_column, (yylsp[(4) - (4)]).last_column),
&(yylsp[(1) - (4)]), result);
;}
break;
case 1102:
/* Line 1455 of yacc.c */
#line 7078 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INTO_OUTFILE, 4, (yyvsp[(3) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1103:
/* Line 1455 of yacc.c */
#line 7082 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INTO_DUMPFILE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1104:
/* Line 1455 of yacc.c */
#line 7086 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *vars_list = NULL;
merge_nodes(vars_list, result, T_INTO_VARS_LIST, (yyvsp[(2) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INTO_VARIABLES, 1, vars_list);
copy_and_skip_symbol(result, (yylsp[(1) - (2)]).first_column, (yylsp[(2) - (2)]).last_column);
;}
break;
case 1105:
/* Line 1455 of yacc.c */
#line 7096 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1106:
/* Line 1455 of yacc.c */
#line 7100 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1107:
/* Line 1455 of yacc.c */
#line 7107 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1108:
/* Line 1455 of yacc.c */
#line 7111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1109:
/* Line 1455 of yacc.c */
#line 7118 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1110:
/* Line 1455 of yacc.c */
#line 7123 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1111:
/* Line 1455 of yacc.c */
#line 7130 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(1) - (2)].node);
merge_nodes((yyval.node), result, T_INTO_FIELD_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 1112:
/* Line 1455 of yacc.c */
#line 7135 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1113:
/* Line 1455 of yacc.c */
#line 7142 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1114:
/* Line 1455 of yacc.c */
#line 7146 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1115:
/* Line 1455 of yacc.c */
#line 7153 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FIELD_TERMINATED_STR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1116:
/* Line 1455 of yacc.c */
#line 7157 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OPTIONALLY_CLOSED_STR, 1, (yyvsp[(4) - (4)].node));
;}
break;
case 1117:
/* Line 1455 of yacc.c */
#line 7161 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CLOSED_STR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1118:
/* Line 1455 of yacc.c */
#line 7165 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ESCAPED_STR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1119:
/* Line 1455 of yacc.c */
#line 7172 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INTO_LINE_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 1120:
/* Line 1455 of yacc.c */
#line 7176 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1121:
/* Line 1455 of yacc.c */
#line 7183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1122:
/* Line 1455 of yacc.c */
#line 7187 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1123:
/* Line 1455 of yacc.c */
#line 7194 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINE_TERMINATED_STR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1124:
/* Line 1455 of yacc.c */
#line 7198 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINE_START_STR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1125:
/* Line 1455 of yacc.c */
#line 7205 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (NULL != (yyvsp[(1) - (2)].node)) {
merge_nodes((yyval.node), result, T_HINT_OPTION_LIST, (yyvsp[(1) - (2)].node));
} else {
(yyval.node) = NULL;
}
;}
break;
case 1126:
/* Line 1455 of yacc.c */
#line 7216 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1127:
/* Line 1455 of yacc.c */
#line 7220 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1128:
/* Line 1455 of yacc.c */
#line 7224 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1129:
/* Line 1455 of yacc.c */
#line 7231 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1130:
/* Line 1455 of yacc.c */
#line 7235 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1131:
/* Line 1455 of yacc.c */
#line 7242 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1132:
/* Line 1455 of yacc.c */
#line 7246 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1133:
/* Line 1455 of yacc.c */
#line 7250 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1134:
/* Line 1455 of yacc.c */
#line 7257 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_REWRITE);
;}
break;
case 1135:
/* Line 1455 of yacc.c */
#line 7261 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_READ_CONSISTENCY);
(yyval.node)->value_ = (yyvsp[(3) - (4)].ival)[0];
;}
break;
case 1136:
/* Line 1455 of yacc.c */
#line 7266 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX, 3, (yyvsp[(3) - (6)].node), (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 1137:
/* Line 1455 of yacc.c */
#line 7270 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_QUERY_TIMEOUT, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1138:
/* Line 1455 of yacc.c */
#line 7274 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FROZEN_VERSION, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1139:
/* Line 1455 of yacc.c */
#line 7278 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TOPK, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 1140:
/* Line 1455 of yacc.c */
#line 7282 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_HOTSPOT);
;}
break;
case 1141:
/* Line 1455 of yacc.c */
#line 7286 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOG_LEVEL, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1142:
/* Line 1455 of yacc.c */
#line 7290 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOG_LEVEL, 1, (yyvsp[(4) - (6)].node));
;}
break;
case 1143:
/* Line 1455 of yacc.c */
#line 7294 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *link_node = NULL;
malloc_non_terminal_node(link_node, result->malloc_pool_, T_LINK_NODE, 1, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LEADING, 2, (yyvsp[(3) - (5)].node), link_node);
;}
break;
case 1144:
/* Line 1455 of yacc.c */
#line 7300 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LEADING, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 1145:
/* Line 1455 of yacc.c */
#line 7304 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ORDERED);
;}
break;
case 1146:
/* Line 1455 of yacc.c */
#line 7308 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FULL, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 1147:
/* Line 1455 of yacc.c */
#line 7312 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USE_PLAN_CACHE);
(yyval.node)->value_ = (yyvsp[(3) - (4)].ival)[0];
;}
break;
case 1148:
/* Line 1455 of yacc.c */
#line 7317 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_MERGE, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1149:
/* Line 1455 of yacc.c */
#line 7323 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_MERGE, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1150:
/* Line 1455 of yacc.c */
#line 7329 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_HASH, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1151:
/* Line 1455 of yacc.c */
#line 7335 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_HASH, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1152:
/* Line 1455 of yacc.c */
#line 7341 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_NL, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1153:
/* Line 1455 of yacc.c */
#line 7347 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_NL, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1154:
/* Line 1455 of yacc.c */
#line 7353 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_BNL, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1155:
/* Line 1455 of yacc.c */
#line 7359 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_BNL, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1156:
/* Line 1455 of yacc.c */
#line 7365 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_NL_MATERIALIZATION, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1157:
/* Line 1455 of yacc.c */
#line 7371 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_NL_MATERIALIZATION, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1158:
/* Line 1455 of yacc.c */
#line 7377 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USE_HASH_AGGREGATE);
;}
break;
case 1159:
/* Line 1455 of yacc.c */
#line 7381 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_HASH_AGGREGATE);
;}
break;
case 1160:
/* Line 1455 of yacc.c */
#line 7385 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MERGE_HINT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1161:
/* Line 1455 of yacc.c */
#line 7389 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_MERGE_HINT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1162:
/* Line 1455 of yacc.c */
#line 7393 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_EXPAND, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1163:
/* Line 1455 of yacc.c */
#line 7397 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_CONCAT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1164:
/* Line 1455 of yacc.c */
#line 7401 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_UNNEST, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1165:
/* Line 1455 of yacc.c */
#line 7405 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_UNNEST, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1166:
/* Line 1455 of yacc.c */
#line 7409 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PLACE_GROUP_BY, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1167:
/* Line 1455 of yacc.c */
#line 7413 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_PLACE_GROUP_BY, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1168:
/* Line 1455 of yacc.c */
#line 7417 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_PRED_DEDUCE, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1169:
/* Line 1455 of yacc.c */
#line 7421 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USE_JIT);
(yyval.node)->value_ = (yyvsp[(3) - (4)].ival)[0];
;}
break;
case 1170:
/* Line 1455 of yacc.c */
#line 7426 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_JIT);
;}
break;
case 1171:
/* Line 1455 of yacc.c */
#line 7430 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USE_LATE_MATERIALIZATION);
;}
break;
case 1172:
/* Line 1455 of yacc.c */
#line 7434 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_LATE_MATERIALIZATION);
;}
break;
case 1173:
/* Line 1455 of yacc.c */
#line 7438 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TRACE_LOG);
;}
break;
case 1174:
/* Line 1455 of yacc.c */
#line 7442 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tracing_nums = NULL;
merge_nodes(tracing_nums, result, T_STAT, (yyvsp[(3) - (4)].node));
(yyval.node)=tracing_nums;
;}
break;
case 1175:
/* Line 1455 of yacc.c */
#line 7448 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tracing_nums = NULL;
merge_nodes(tracing_nums, result, T_TRACING, (yyvsp[(3) - (4)].node));
(yyval.node)=tracing_nums;
;}
break;
case 1176:
/* Line 1455 of yacc.c */
#line 7454 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_USE_PX);
;}
break;
case 1177:
/* Line 1455 of yacc.c */
#line 7458 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_USE_PX);
;}
break;
case 1178:
/* Line 1455 of yacc.c */
#line 7462 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(4) - (6)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANS_PARAM, 2, (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node));
;}
break;
case 1179:
/* Line 1455 of yacc.c */
#line 7467 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PX_JOIN_FILTER, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1180:
/* Line 1455 of yacc.c */
#line 7473 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_list = NULL;
merge_nodes(table_list, result, T_RELATION_FACTOR_IN_USE_JOIN_HINT_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NO_PX_JOIN_FILTER, 2, (yyvsp[(3) - (5)].node), table_list);
;}
break;
case 1181:
/* Line 1455 of yacc.c */
#line 7479 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FORCE_REFRESH_LOCATION_CACHE);
;}
break;
case 1182:
/* Line 1455 of yacc.c */
#line 7483 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_QB_NAME, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1183:
/* Line 1455 of yacc.c */
#line 7487 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MAX_CONCURRENT, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1184:
/* Line 1455 of yacc.c */
#line 7491 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARALLEL, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1185:
/* Line 1455 of yacc.c */
#line 7495 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_NO_PARALLEL);
;}
break;
case 1186:
/* Line 1455 of yacc.c */
#line 7499 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(5) - (8)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PQ_DISTRIBUTE, 4, (yyvsp[(3) - (8)].node), (yyvsp[(4) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node));
;}
break;
case 1187:
/* Line 1455 of yacc.c */
#line 7504 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOAD_BATCH_SIZE, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1188:
/* Line 1455 of yacc.c */
#line 7508 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PQ_MAP, 2, (yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node));
;}
break;
case 1189:
/* Line 1455 of yacc.c */
#line 7512 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
destroy_tree((yyvsp[(1) - (1)].node));
(yyval.node) = NULL;
;}
break;
case 1190:
/* Line 1455 of yacc.c */
#line 7517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
yyerror(&(yylsp[(1) - (1)]), result, "unterminated hint string\n");
YYABORT;
;}
break;
case 1191:
/* Line 1455 of yacc.c */
#line 7523 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
yyerror(&(yylsp[(1) - (1)]), result, "unterminated hint string\n");
YYABORT;
;}
break;
case 1192:
/* Line 1455 of yacc.c */
#line 7529 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1193:
/* Line 1455 of yacc.c */
#line 7533 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ENABLE_PARALLEL_DML);
;}
break;
case 1194:
/* Line 1455 of yacc.c */
#line 7537 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISABLE_PARALLEL_DML);
;}
break;
case 1195:
/* Line 1455 of yacc.c */
#line 7544 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OPT_QB_NAME, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 1196:
/* Line 1455 of yacc.c */
#line 7548 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1197:
/* Line 1455 of yacc.c */
#line 7555 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 3;
;}
break;
case 1198:
/* Line 1455 of yacc.c */
#line 7559 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 4;
;}
break;
case 1199:
/* Line 1455 of yacc.c */
#line 7563 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 2;
;}
break;
case 1200:
/* Line 1455 of yacc.c */
#line 7570 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 1;
;}
break;
case 1201:
/* Line 1455 of yacc.c */
#line 7574 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 2;
;}
break;
case 1202:
/* Line 1455 of yacc.c */
#line 7580 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 1;
;}
break;
case 1203:
/* Line 1455 of yacc.c */
#line 7584 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 2;
;}
break;
case 1204:
/* Line 1455 of yacc.c */
#line 7590 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTRIBUTE_NONE);
;}
break;
case 1205:
/* Line 1455 of yacc.c */
#line 7594 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTRIBUTE_PARTITION);
;}
break;
case 1206:
/* Line 1455 of yacc.c */
#line 7598 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RANDOM);
;}
break;
case 1207:
/* Line 1455 of yacc.c */
#line 7602 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTRIBUTE_RANDOM_LOCAL);
;}
break;
case 1208:
/* Line 1455 of yacc.c */
#line 7606 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTRIBUTE_HASH);
;}
break;
case 1209:
/* Line 1455 of yacc.c */
#line 7610 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTRIBUTE_BROADCAST);
;}
break;
case 1210:
/* Line 1455 of yacc.c */
#line 7616 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(1) - (2)].node);
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 1211:
/* Line 1455 of yacc.c */
#line 7621 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1212:
/* Line 1455 of yacc.c */
#line 7627 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1213:
/* Line 1455 of yacc.c */
#line 7629 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1214:
/* Line 1455 of yacc.c */
#line 7634 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1215:
/* Line 1455 of yacc.c */
#line 7636 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1216:
/* Line 1455 of yacc.c */
#line 7641 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1217:
/* Line 1455 of yacc.c */
#line 7643 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 1218:
/* Line 1455 of yacc.c */
#line 7650 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* USE T_SFU_XXX to avoid being parsed by plan cache as template var */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = -1;
;}
break;
case 1219:
/* Line 1455 of yacc.c */
#line 7656 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_DECIMAL);
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
;}
break;
case 1220:
/* Line 1455 of yacc.c */
#line 7662 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = (yyvsp[(2) - (2)].node)->value_;
;}
break;
case 1221:
/* Line 1455 of yacc.c */
#line 7667 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = 0;
;}
break;
case 1222:
/* Line 1455 of yacc.c */
#line 7672 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = 0;
;}
break;
case 1223:
/* Line 1455 of yacc.c */
#line 7679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1224:
/* Line 1455 of yacc.c */
#line 7683 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
//avoid parameterized, so use T_DEFAULT_INT
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, default_type, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1225:
/* Line 1455 of yacc.c */
#line 7691 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, default_type, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1226:
/* Line 1455 of yacc.c */
#line 7698 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, default_type, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1227:
/* Line 1455 of yacc.c */
#line 7705 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 3, default_type, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1228:
/* Line 1455 of yacc.c */
#line 7712 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 2, default_type, (yyvsp[(3) - (3)].node));
;}
break;
case 1229:
/* Line 1455 of yacc.c */
#line 7719 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 2, default_type, (yyvsp[(3) - (3)].node));
;}
break;
case 1230:
/* Line 1455 of yacc.c */
#line 7726 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *default_type = NULL;
malloc_terminal_node(default_type, result->malloc_pool_, T_DEFAULT_INT);
default_type->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPR_LIST, 2, default_type, (yyvsp[(3) - (3)].node));
;}
break;
case 1231:
/* Line 1455 of yacc.c */
#line 7736 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1232:
/* Line 1455 of yacc.c */
#line 7738 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_GROUPBY_CLAUSE, 1, (yyvsp[(3) - (3)].node));
setup_token_pos_info((yyval.node), (yylsp[(1) - (3)]).first_column - 1, 8);
;}
break;
case 1233:
/* Line 1455 of yacc.c */
#line 7746 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *group_exprs = NULL;
merge_nodes(group_exprs, result, T_SORT_LIST, (yyvsp[(1) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WITH_ROLLUP_CLAUSE, 2, (yyvsp[(2) - (2)].node), group_exprs);
;}
break;
case 1234:
/* Line 1455 of yacc.c */
#line 7755 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1235:
/* Line 1455 of yacc.c */
#line 7757 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
break;
case 1236:
/* Line 1455 of yacc.c */
#line 7762 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SORT_KEY, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); ;}
break;
case 1237:
/* Line 1455 of yacc.c */
#line 7767 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 1238:
/* Line 1455 of yacc.c */
#line 7769 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SORT_ASC); ;}
break;
case 1239:
/* Line 1455 of yacc.c */
#line 7771 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SORT_DESC); ;}
break;
case 1240:
/* Line 1455 of yacc.c */
#line 7776 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL;;}
break;
case 1241:
/* Line 1455 of yacc.c */
#line 7778 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_ROLLUP); ;}
break;
case 1242:
/* Line 1455 of yacc.c */
#line 7783 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 1243:
/* Line 1455 of yacc.c */
#line 7784 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1244:
/* Line 1455 of yacc.c */
#line 7789 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *sort_list = NULL;
ParseNode *opt_siblings = NULL;
merge_nodes(sort_list, result, T_SORT_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORDER_BY, 2, sort_list, opt_siblings);
setup_token_pos_info((yyval.node), (yylsp[(1) - (3)]).first_column - 1, 8);
;}
break;
case 1245:
/* Line 1455 of yacc.c */
#line 7800 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1246:
/* Line 1455 of yacc.c */
#line 7802 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node)); ;}
break;
case 1247:
/* Line 1455 of yacc.c */
#line 7807 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SORT_KEY, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
if (NULL == (yyvsp[(1) - (2)].node)->str_value_) {
dup_string((yyvsp[(1) - (2)].node), result, (yylsp[(1) - (2)]).first_column, (yylsp[(1) - (2)]).last_column);
}
;}
break;
case 1248:
/* Line 1455 of yacc.c */
#line 7820 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SORT_ASC); (yyval.node)->value_ = 2; ;}
break;
case 1249:
/* Line 1455 of yacc.c */
#line 7822 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SORT_ASC); (yyval.node)->value_ = 2; ;}
break;
case 1250:
/* Line 1455 of yacc.c */
#line 7824 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SORT_DESC); (yyval.node)->value_ = 2; ;}
break;
case 1251:
/* Line 1455 of yacc.c */
#line 7829 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = 0; ;}
break;
case 1252:
/* Line 1455 of yacc.c */
#line 7831 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
setup_token_pos_info((yyval.node), (yylsp[(1) - (2)]).first_column - 1, 6);
;}
break;
case 1253:
/* Line 1455 of yacc.c */
#line 7839 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_QEURY_EXPRESSION_LIST, (yyvsp[(1) - (1)].node));
;}
break;
case 1254:
/* Line 1455 of yacc.c */
#line 7843 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1255:
/* Line 1455 of yacc.c */
#line 7850 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1256:
/* Line 1455 of yacc.c */
#line 7854 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1257:
/* Line 1455 of yacc.c */
#line 7861 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 1258:
/* Line 1455 of yacc.c */
#line 7865 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 1259:
/* Line 1455 of yacc.c */
#line 7869 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISTINCT);
;}
break;
case 1260:
/* Line 1455 of yacc.c */
#line 7873 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FOUND_ROWS);
;}
break;
case 1261:
/* Line 1455 of yacc.c */
#line 7879 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROJECT_STRING, 1, (yyvsp[(1) - (1)].node));
if (T_VARCHAR == (yyvsp[(1) - (1)].node)->type_) {
if (2 == (yyvsp[(1) - (1)].node)->num_child_ && 1 == (yyvsp[(1) - (1)].node)->children_[1]->num_child_)
{
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->children_[1]->children_[0]->str_value_;
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->children_[1]->children_[0]->str_len_;
}
else
{
if (1 == (yylsp[(1) - (1)]).last_column - (yylsp[(1) - (1)]).first_column) {
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->str_len_;
} else {
dup_node_string((yyvsp[(1) - (1)].node), (yyval.node), result->malloc_pool_);
}
}
}
else
{
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
}
(yyval.node)->raw_sql_offset_ = (yylsp[(1) - (1)]).first_column - 1;
;}
break;
case 1262:
/* Line 1455 of yacc.c */
#line 7904 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *alias_node = NULL;
if (OB_UNLIKELY((NULL == (yyvsp[(1) - (2)].node)))) {
yyerror(NULL, result, "alias expr can not be NULL\n");
YYABORT_UNEXPECTED;
} else if (OB_UNLIKELY(T_COLUMN_REF == (yyvsp[(1) - (2)].node)->type_ && NULL != (yyvsp[(1) - (2)].node)->children_ && NULL != (yyvsp[(1) - (2)].node)->children_[1]
&& NULL != (yyvsp[(1) - (2)].node)->children_[2] && T_STAR == (yyvsp[(1) - (2)].node)->children_[2]->type_)) {
yyerror(&(yylsp[(2) - (2)]), result, "select table.* as label is invalid\n");
YYERROR;
} else {
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROJECT_STRING, 1, alias_node);
dup_expr_string((yyval.node), result, (yylsp[(1) - (2)]).first_column, (yylsp[(1) - (2)]).last_column);
dup_node_string((yyvsp[(2) - (2)].node), alias_node, result->malloc_pool_);
alias_node->param_num_ = 0;
}
;}
break;
case 1263:
/* Line 1455 of yacc.c */
#line 7922 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *alias_node = NULL;
if (OB_UNLIKELY((NULL == (yyvsp[(1) - (3)].node)))) {
yyerror(NULL, result, "alias expr can not be NULL\n");
YYABORT_UNEXPECTED;
} else if (OB_UNLIKELY(T_COLUMN_REF == (yyvsp[(1) - (3)].node)->type_ && NULL != (yyvsp[(1) - (3)].node)->children_ && NULL != (yyvsp[(1) - (3)].node)->children_[1]
&& NULL != (yyvsp[(1) - (3)].node)->children_[2] && T_STAR == (yyvsp[(1) - (3)].node)->children_[2]->type_)) {
yyerror(&(yylsp[(2) - (3)]), result, "select table.* as label is invalid\n");
YYERROR;
} else {
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROJECT_STRING, 1, alias_node);
dup_expr_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(1) - (3)]).last_column);
dup_node_string((yyvsp[(3) - (3)].node), alias_node, result->malloc_pool_);
alias_node->param_num_ = 0;
}
;}
break;
case 1264:
/* Line 1455 of yacc.c */
#line 7940 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
if (OB_UNLIKELY(NULL == (yyvsp[(1) - (3)].node))) {
yyerror(NULL, result, "alias expr can not be NULL\n");
YYABORT_UNEXPECTED;
} else if (OB_UNLIKELY(T_COLUMN_REF == (yyvsp[(1) - (3)].node)->type_ && NULL !=(yyvsp[(1) - (3)].node)->children_ && NULL != (yyvsp[(1) - (3)].node)->children_[1]
&& NULL != (yyvsp[(1) - (3)].node)->children_[2] && T_STAR == (yyvsp[(1) - (3)].node)->children_[2]->type_)) {
yyerror(&(yylsp[(2) - (3)]), result, "select table.* as label is invalid\n");
YYERROR;
} else {
ParseNode *alias_node = NULL;
ParseNode *alias_name_node = NULL;
malloc_terminal_node(alias_name_node, result->malloc_pool_, T_IDENT);
if (NULL == (yyvsp[(3) - (3)].node)->str_value_) {
alias_name_node->str_value_ = NULL;
alias_name_node->str_len_ = 0;
} else {
dup_node_string((yyvsp[(3) - (3)].node), alias_name_node, result->malloc_pool_);
}
malloc_non_terminal_node(alias_node, result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), alias_name_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROJECT_STRING, 1, alias_node);
dup_expr_string((yyval.node), result, (yylsp[(1) - (3)]).first_column, (yylsp[(1) - (3)]).last_column);
if (NULL == (yyvsp[(3) - (3)].node)->str_value_) {
alias_node->str_value_ = NULL;
alias_node->str_len_ = 0;
} else {
dup_node_string((yyvsp[(3) - (3)].node), alias_node, result->malloc_pool_);
}
alias_node->param_num_ = 1;
}
;}
break;
case 1265:
/* Line 1455 of yacc.c */
#line 7972 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *star_node = NULL;
malloc_terminal_node(star_node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PROJECT_STRING, 1, star_node);
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
setup_token_pos_info(star_node, (yylsp[(1) - (1)]).first_column - 1, 1);
;}
break;
case 1266:
/* Line 1455 of yacc.c */
#line 7982 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1267:
/* Line 1455 of yacc.c */
#line 7983 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1268:
/* Line 1455 of yacc.c */
#line 7988 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1269:
/* Line 1455 of yacc.c */
#line 7992 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1270:
/* Line 1455 of yacc.c */
#line 8000 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1271:
/* Line 1455 of yacc.c */
#line 8007 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1272:
/* Line 1455 of yacc.c */
#line 8011 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1273:
/* Line 1455 of yacc.c */
#line 8018 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1274:
/* Line 1455 of yacc.c */
#line 8022 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1275:
/* Line 1455 of yacc.c */
#line 8029 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1276:
/* Line 1455 of yacc.c */
#line 8033 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1277:
/* Line 1455 of yacc.c */
#line 8037 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *unname_node = NULL;
make_name_node(unname_node, result->malloc_pool_, "");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (1)].node), unname_node);
;}
break;
case 1278:
/* Line 1455 of yacc.c */
#line 8043 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
;}
break;
case 1279:
/* Line 1455 of yacc.c */
#line 8050 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (1)].node), NULL, NULL, NULL);
;}
break;
case 1280:
/* Line 1455 of yacc.c */
#line 8054 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (2)].node), NULL, (yyvsp[(2) - (2)].node), NULL);
;}
break;
case 1281:
/* Line 1455 of yacc.c */
#line 8058 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (3)].node), (yyval.node), (yyvsp[(2) - (3)].node), NULL);
;}
break;
case 1282:
/* Line 1455 of yacc.c */
#line 8063 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (3)].node), NULL, (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1283:
/* Line 1455 of yacc.c */
#line 8067 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(3) - (4)].node) != NULL) {
(yyvsp[(3) - (4)].node)->children_[2] = (yyvsp[(4) - (4)].node);
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (4)].node), NULL, (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node));
;}
break;
case 1284:
/* Line 1455 of yacc.c */
#line 8074 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (4)].node), (yyval.node), (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node));
;}
break;
case 1285:
/* Line 1455 of yacc.c */
#line 8079 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(3) - (5)].node) != NULL) {
(yyvsp[(3) - (5)].node)->children_[2] = (yyvsp[(4) - (5)].node);
}
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (5)].node), (yyval.node), (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].node));
;}
break;
case 1286:
/* Line 1455 of yacc.c */
#line 8087 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (2)].node), NULL, NULL, (yyvsp[(2) - (2)].node));
;}
break;
case 1287:
/* Line 1455 of yacc.c */
#line 8091 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (3)].node) != NULL) {
(yyvsp[(2) - (3)].node)->children_[2] = (yyvsp[(3) - (3)].node);
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (3)].node), NULL, NULL, (yyvsp[(2) - (3)].node));
;}
break;
case 1288:
/* Line 1455 of yacc.c */
#line 8098 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (3)].node), (yyval.node), NULL, (yyvsp[(2) - (3)].node));
;}
break;
case 1289:
/* Line 1455 of yacc.c */
#line 8103 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (4)].node) != NULL) {
(yyvsp[(2) - (4)].node)->children_[2] = (yyvsp[(3) - (4)].node);
}
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (4)].node), (yyval.node), NULL, (yyvsp[(2) - (4)].node));
;}
break;
case 1290:
/* Line 1455 of yacc.c */
#line 8111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(2) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 4, (yyvsp[(1) - (2)].node), (yyval.node), NULL, NULL);
;}
break;
case 1291:
/* Line 1455 of yacc.c */
#line 8116 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), NULL, NULL, NULL);
;}
break;
case 1292:
/* Line 1455 of yacc.c */
#line 8120 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), NULL, (yyvsp[(2) - (4)].node), NULL);
;}
break;
case 1293:
/* Line 1455 of yacc.c */
#line 8124 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), NULL, NULL, (yyvsp[(2) - (4)].node));
;}
break;
case 1294:
/* Line 1455 of yacc.c */
#line 8128 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (5)].node) != NULL) {
(yyvsp[(2) - (5)].node)->children_[2] = (yyvsp[(3) - (5)].node);
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), NULL, NULL, (yyvsp[(2) - (5)].node));
;}
break;
case 1295:
/* Line 1455 of yacc.c */
#line 8135 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), NULL, (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].node));
;}
break;
case 1296:
/* Line 1455 of yacc.c */
#line 8139 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(3) - (6)].node) != NULL) {
(yyvsp[(3) - (6)].node)->children_[2] = (yyvsp[(4) - (6)].node);
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), NULL, (yyvsp[(2) - (6)].node), (yyvsp[(3) - (6)].node));
;}
break;
case 1297:
/* Line 1455 of yacc.c */
#line 8146 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), (yyval.node), NULL, NULL);
;}
break;
case 1298:
/* Line 1455 of yacc.c */
#line 8151 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyval.node), (yyvsp[(2) - (5)].node), NULL);
;}
break;
case 1299:
/* Line 1455 of yacc.c */
#line 8157 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyval.node), NULL, (yyvsp[(2) - (5)].node));
;}
break;
case 1300:
/* Line 1455 of yacc.c */
#line 8162 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(2) - (6)].node) != NULL) {
(yyvsp[(2) - (6)].node)->children_[2] = (yyvsp[(3) - (6)].node);
}
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yyval.node), NULL, (yyvsp[(2) - (6)].node));
;}
break;
case 1301:
/* Line 1455 of yacc.c */
#line 8170 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yyval.node), (yyvsp[(2) - (6)].node), (yyvsp[(3) - (6)].node));
;}
break;
case 1302:
/* Line 1455 of yacc.c */
#line 8175 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(3) - (7)].node) != NULL) {
(yyvsp[(3) - (7)].node)->children_[2] = (yyvsp[(4) - (7)].node);
}
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(7) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (7)].node), (yyvsp[(6) - (7)].node), (yyval.node), (yyvsp[(2) - (7)].node), (yyvsp[(3) - (7)].node));
;}
break;
case 1303:
/* Line 1455 of yacc.c */
#line 8183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node), NULL, NULL, NULL);
;}
break;
case 1304:
/* Line 1455 of yacc.c */
#line 8187 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), NULL, (yyvsp[(2) - (3)].node), NULL);
;}
break;
case 1305:
/* Line 1455 of yacc.c */
#line 8191 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyval.node), NULL, NULL);
;}
break;
case 1306:
/* Line 1455 of yacc.c */
#line 8196 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), (yyval.node), (yyvsp[(2) - (4)].node), NULL);
;}
break;
case 1307:
/* Line 1455 of yacc.c */
#line 8201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), NULL, NULL, (yyvsp[(2) - (4)].node));
if ((yyvsp[(2) - (4)].node) != NULL) {
(yyvsp[(2) - (4)].node)->children_[2] = (yyvsp[(3) - (4)].node);
}
;}
break;
case 1308:
/* Line 1455 of yacc.c */
#line 8208 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), NULL, (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].node));
if ((yyvsp[(3) - (5)].node) != NULL) {
(yyvsp[(3) - (5)].node)->children_[2] = (yyvsp[(4) - (5)].node);
}
;}
break;
case 1309:
/* Line 1455 of yacc.c */
#line 8215 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyval.node), NULL, (yyvsp[(2) - (5)].node));
if ((yyvsp[(2) - (5)].node) != NULL) {
(yyvsp[(2) - (5)].node)->children_[2] = (yyvsp[(3) - (5)].node);
}
;}
break;
case 1310:
/* Line 1455 of yacc.c */
#line 8223 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yyval.node), (yyvsp[(2) - (6)].node), (yyvsp[(3) - (6)].node));
if ((yyvsp[(3) - (6)].node) != NULL) {
(yyvsp[(3) - (6)].node)->children_[2] = (yyvsp[(4) - (6)].node);
}
;}
break;
case 1311:
/* Line 1455 of yacc.c */
#line 8231 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), NULL, NULL, (yyvsp[(2) - (3)].node));
;}
break;
case 1312:
/* Line 1455 of yacc.c */
#line 8235 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), NULL, (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node));
;}
break;
case 1313:
/* Line 1455 of yacc.c */
#line 8239 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), (yyval.node), NULL, (yyvsp[(2) - (4)].node));
;}
break;
case 1314:
/* Line 1455 of yacc.c */
#line 8244 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_INDEX_HINT_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 5, (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyval.node), (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].node));
;}
break;
case 1315:
/* Line 1455 of yacc.c */
#line 8251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ORG, 3, (yyvsp[(1) - (2)].node), NULL, (yyvsp[(2) - (2)].node));
;}
break;
case 1316:
/* Line 1455 of yacc.c */
#line 8257 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* USE T_SFU_XXX to avoid being parsed by plan cache as template var */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = (yyvsp[(3) - (4)].node)->value_;
;}
break;
case 1317:
/* Line 1455 of yacc.c */
#line 8265 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* USE T_SFU_XXX to avoid being parsed by plan cache as template var */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_INT);
(yyval.node)->value_ = (yyvsp[(1) - (1)].node)->value_;
;}
break;
case 1318:
/* Line 1455 of yacc.c */
#line 8272 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* USE T_SFU_XXX to avoid being parsed by plan cache as template var */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SFU_DECIMAL);
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->str_len_;
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->str_value_;
;}
break;
case 1319:
/* Line 1455 of yacc.c */
#line 8281 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 1320:
/* Line 1455 of yacc.c */
#line 8285 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ALL);
;}
break;
case 1321:
/* Line 1455 of yacc.c */
#line 8289 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BASE);
;}
break;
case 1322:
/* Line 1455 of yacc.c */
#line 8293 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INCR);
;}
break;
case 1323:
/* Line 1455 of yacc.c */
#line 8299 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SAMPLE_SCAN, 4, (yyvsp[(2) - (6)].node), (yyvsp[(5) - (6)].node), NULL, (yyvsp[(3) - (6)].node));
;}
break;
case 1324:
/* Line 1455 of yacc.c */
#line 8306 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1325:
/* Line 1455 of yacc.c */
#line 8311 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1326:
/* Line 1455 of yacc.c */
#line 8319 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1327:
/* Line 1455 of yacc.c */
#line 8323 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1328:
/* Line 1455 of yacc.c */
#line 8334 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1329:
/* Line 1455 of yacc.c */
#line 8338 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1330:
/* Line 1455 of yacc.c */
#line 8345 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *name_list = NULL;
merge_nodes(name_list, result, T_NAME_LIST, (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USE_PARTITION, 1, name_list);
;}
break;
case 1331:
/* Line 1455 of yacc.c */
#line 8353 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FORCE);
;}
break;
case 1332:
/* Line 1455 of yacc.c */
#line 8357 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_IGNORE);
;}
break;
case 1333:
/* Line 1455 of yacc.c */
#line 8364 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(1) - (1)].node);
(yyval.node) = NULL;
;}
break;
case 1334:
/* Line 1455 of yacc.c */
#line 8369 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1335:
/* Line 1455 of yacc.c */
#line 8376 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1336:
/* Line 1455 of yacc.c */
#line 8380 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1337:
/* Line 1455 of yacc.c */
#line 8388 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1338:
/* Line 1455 of yacc.c */
#line 8392 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1339:
/* Line 1455 of yacc.c */
#line 8396 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1340:
/* Line 1455 of yacc.c */
#line 8400 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1341:
/* Line 1455 of yacc.c */
#line 8407 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1342:
/* Line 1455 of yacc.c */
#line 8411 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_IDENT);
int64_t len = strlen("PRIAMRY");
(yyval.node)->str_value_ = parse_strndup("PRIMARY", len, result->malloc_pool_);
if (OB_UNLIKELY(NULL == (yyval.node)->str_value_)) {
yyerror(NULL, result, "No more space for mallocing string\n");
YYABORT_NO_MEMORY;
}
(yyval.node)->str_len_ = len;
;}
break;
case 1343:
/* Line 1455 of yacc.c */
#line 8425 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1344:
/* Line 1455 of yacc.c */
#line 8429 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1345:
/* Line 1455 of yacc.c */
#line 8436 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1346:
/* Line 1455 of yacc.c */
#line 8440 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1347:
/* Line 1455 of yacc.c */
#line 8447 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *use_node = NULL;
malloc_terminal_node(use_node, result->malloc_pool_, T_USE);
(void) (yyvsp[(2) - (6)].node);
(void) (yyvsp[(3) - (6)].node);
ParseNode *index_list = NULL;
merge_nodes(index_list, result, T_NAME_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_HINT_DEF, 2, use_node, index_list);
;}
break;
case 1348:
/* Line 1455 of yacc.c */
#line 8458 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void) (yyvsp[(2) - (6)].node);
(void) (yyvsp[(3) - (6)].node);
ParseNode *index_list = NULL;
merge_nodes(index_list, result, T_NAME_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_HINT_DEF, 2, (yyvsp[(1) - (6)].node), index_list);
;}
break;
case 1349:
/* Line 1455 of yacc.c */
#line 8469 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1350:
/* Line 1455 of yacc.c */
#line 8473 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1351:
/* Line 1455 of yacc.c */
#line 8481 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
store_pl_ref_object_symbol((yyval.node), result, REF_REL);
;}
break;
case 1352:
/* Line 1455 of yacc.c */
#line 8486 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
store_pl_ref_object_symbol((yyval.node), result, REF_REL);
;}
break;
case 1353:
/* Line 1455 of yacc.c */
#line 8494 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1354:
/* Line 1455 of yacc.c */
#line 8498 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1355:
/* Line 1455 of yacc.c */
#line 8505 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(1) - (2)].node));
dup_node_string((yyvsp[(1) - (2)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 1356:
/* Line 1455 of yacc.c */
#line 8511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node));
dup_node_string((yyvsp[(3) - (4)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 1357:
/* Line 1455 of yacc.c */
#line 8520 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1358:
/* Line 1455 of yacc.c */
#line 8524 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1359:
/* Line 1455 of yacc.c */
#line 8531 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(1) - (1)].node));
dup_node_string((yyvsp[(1) - (1)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 1360:
/* Line 1455 of yacc.c */
#line 8536 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
dup_node_string((yyvsp[(3) - (3)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 1361:
/* Line 1455 of yacc.c */
#line 8541 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_name = NULL;
get_non_reserved_node(table_name, result->malloc_pool_, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, (yyvsp[(1) - (3)].node), table_name);
dup_node_string(table_name, (yyval.node), result->malloc_pool_);
;}
break;
case 1362:
/* Line 1455 of yacc.c */
#line 8551 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(2) - (2)].node));
dup_node_string((yyvsp[(2) - (2)].node), (yyval.node), result->malloc_pool_);
;}
break;
case 1363:
/* Line 1455 of yacc.c */
#line 8556 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_name = NULL;
get_non_reserved_node(table_name, result->malloc_pool_, (yylsp[(2) - (2)]).first_column, (yylsp[(2) - (2)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, table_name);
dup_node_string(table_name, (yyval.node), result->malloc_pool_);
;}
break;
case 1364:
/* Line 1455 of yacc.c */
#line 8566 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1365:
/* Line 1455 of yacc.c */
#line 8573 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (2)].node); ;}
break;
case 1366:
/* Line 1455 of yacc.c */
#line 8575 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1367:
/* Line 1455 of yacc.c */
#line 8580 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1368:
/* Line 1455 of yacc.c */
#line 8584 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1369:
/* Line 1455 of yacc.c */
#line 8591 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{;}
break;
case 1370:
/* Line 1455 of yacc.c */
#line 8593 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{;}
break;
case 1371:
/* Line 1455 of yacc.c */
#line 8598 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1372:
/* Line 1455 of yacc.c */
#line 8603 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 1373:
/* Line 1455 of yacc.c */
#line 8609 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 1374:
/* Line 1455 of yacc.c */
#line 8615 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1375:
/* Line 1455 of yacc.c */
#line 8619 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1376:
/* Line 1455 of yacc.c */
#line 8623 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1377:
/* Line 1455 of yacc.c */
#line 8627 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 1378:
/* Line 1455 of yacc.c */
#line 8631 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *link_node = NULL;
malloc_non_terminal_node(link_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, link_node);
;}
break;
case 1379:
/* Line 1455 of yacc.c */
#line 8637 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *link_node = NULL;
ParseNode *link_node2 = NULL;
malloc_non_terminal_node(link_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(4) - (7)].node), (yyvsp[(6) - (7)].node));
malloc_non_terminal_node(link_node2, result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, link_node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (7)].node), link_node2);
;}
break;
case 1380:
/* Line 1455 of yacc.c */
#line 8648 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1381:
/* Line 1455 of yacc.c */
#line 8652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1382:
/* Line 1455 of yacc.c */
#line 8659 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1383:
/* Line 1455 of yacc.c */
#line 8663 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, (yyvsp[(2) - (3)].node));
;}
break;
case 1384:
/* Line 1455 of yacc.c */
#line 8667 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1385:
/* Line 1455 of yacc.c */
#line 8671 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *link_node = NULL;
malloc_non_terminal_node(link_node, result->malloc_pool_, T_RELATION_FACTOR_IN_HINT_LIST, 1, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (5)].node), link_node);
;}
break;
case 1386:
/* Line 1455 of yacc.c */
#line 8680 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *link_node = NULL;
malloc_non_terminal_node(link_node, result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), link_node);
;}
break;
case 1387:
/* Line 1455 of yacc.c */
#line 8686 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node)=(yyvsp[(1) - (1)].node);
;}
break;
case 1388:
/* Line 1455 of yacc.c */
#line 8692 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 1389:
/* Line 1455 of yacc.c */
#line 8696 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_COLUMN_LIST, (yyvsp[(3) - (4)].node));
;}
break;
case 1390:
/* Line 1455 of yacc.c */
#line 8706 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyvsp[(2) - (3)].node), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), NULL, NULL);
;}
break;
case 1391:
/* Line 1455 of yacc.c */
#line 8711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyvsp[(2) - (5)].node), (yyvsp[(1) - (5)].node), (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node), NULL);
;}
break;
case 1392:
/* Line 1455 of yacc.c */
#line 8716 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (7)].node), (yyvsp[(3) - (7)].node));
ParseNode *condition_node = NULL;
merge_nodes(condition_node, result, T_COLUMN_LIST, (yyvsp[(6) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyvsp[(2) - (7)].node), (yyvsp[(1) - (7)].node), (yyvsp[(3) - (7)].node), condition_node, NULL);
;}
break;
case 1393:
/* Line 1455 of yacc.c */
#line 8723 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyvsp[(2) - (4)].node), (yyvsp[(1) - (4)].node), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node), NULL);
;}
break;
case 1394:
/* Line 1455 of yacc.c */
#line 8728 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_FULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyval.node), (yyvsp[(1) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node), NULL);
;}
break;
case 1395:
/* Line 1455 of yacc.c */
#line 8734 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_FULL);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyval.node), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node), NULL);
;}
break;
case 1396:
/* Line 1455 of yacc.c */
#line 8740 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(1) - (2)].node)->type_ == T_ORG) {
ParseNode *name_node = NULL;
make_name_node(name_node, result->malloc_pool_, "full");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, (yyvsp[(1) - (2)].node)->num_child_ + 1);
for (int i = 0; i <= (yyvsp[(1) - (2)].node)->num_child_; ++i) {
if (i == 0) {
(yyval.node)->children_[i] = (yyvsp[(1) - (2)].node)->children_[i];
} else if (i == 1) {
(yyval.node)->children_[i] = name_node;
} else {
(yyval.node)->children_[i] = (yyvsp[(1) - (2)].node)->children_[i - 1];
}
}
} else if ((yyvsp[(1) - (2)].node)->type_ == T_ALIAS && (yyvsp[(1) - (2)].node)->children_[1] != NULL &&
strlen((yyvsp[(1) - (2)].node)->children_[1]->str_value_) == 0) {
ParseNode *name_node = NULL;
make_name_node(name_node, result->malloc_pool_, "full");
(yyvsp[(1) - (2)].node)->children_[1] = name_node;
(yyval.node) = (yyvsp[(1) - (2)].node);
} else {
yyerror(&(yylsp[(2) - (2)]), result, "occur multi alias name\n");
YYERROR;
}
;}
break;
case 1397:
/* Line 1455 of yacc.c */
#line 8766 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
JOIN_MERGE_NODES((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
ParseNode *join_attr = NULL;
malloc_terminal_node(join_attr, result->malloc_pool_, T_NATURAL_JOIN);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_JOINED_TABLE, 5, (yyvsp[(2) - (3)].node), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), NULL, join_attr);
;}
break;
case 1398:
/* Line 1455 of yacc.c */
#line 8778 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1399:
/* Line 1455 of yacc.c */
#line 8782 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(1) - (2)].node)->type_ == T_ORG) {
ParseNode *name_node = NULL;
make_name_node(name_node, result->malloc_pool_, "full");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALIAS, (yyvsp[(1) - (2)].node)->num_child_ + 1);
for (int i = 0; i <= (yyvsp[(1) - (2)].node)->num_child_; ++i) {
if (i == 0) {
(yyval.node)->children_[i] = (yyvsp[(1) - (2)].node)->children_[i];
} else if (i == 1) {
(yyval.node)->children_[i] = name_node;
} else {
(yyval.node)->children_[i] = (yyvsp[(1) - (2)].node)->children_[i - 1];
}
}
} else if ((yyvsp[(1) - (2)].node)->type_ == T_ALIAS && (yyvsp[(1) - (2)].node)->children_[1] != NULL &&
strlen((yyvsp[(1) - (2)].node)->children_[1]->str_value_) == 0) {
ParseNode *name_node = NULL;
make_name_node(name_node, result->malloc_pool_, "full");
(yyvsp[(1) - (2)].node)->children_[1] = name_node;
(yyval.node) = (yyvsp[(1) - (2)].node);
} else {
yyerror(&(yylsp[(2) - (2)]), result, "occur multi alias name\n");
YYERROR;
}
;}
break;
case 1400:
/* Line 1455 of yacc.c */
#line 8811 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node)
;}
break;
case 1401:
/* Line 1455 of yacc.c */
#line 8815 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (3)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_INNER);
;}
break;
case 1402:
/* Line 1455 of yacc.c */
#line 8823 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_INNER);
;}
break;
case 1403:
/* Line 1455 of yacc.c */
#line 8827 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_INNER);
;}
break;
case 1404:
/* Line 1455 of yacc.c */
#line 8831 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_INNER);
;}
break;
case 1405:
/* Line 1455 of yacc.c */
#line 8837 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1406:
/* Line 1455 of yacc.c */
#line 8838 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1407:
/* Line 1455 of yacc.c */
#line 8843 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* make bison mute */
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_FULL);
;}
break;
case 1408:
/* Line 1455 of yacc.c */
#line 8849 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* make bison mute */
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_LEFT);
;}
break;
case 1409:
/* Line 1455 of yacc.c */
#line 8855 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* make bison mute */
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_RIGHT);
;}
break;
case 1410:
/* Line 1455 of yacc.c */
#line 8864 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* make bison mute */
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_LEFT);
;}
break;
case 1411:
/* Line 1455 of yacc.c */
#line 8870 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* make bison mute */
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_JOIN_RIGHT);
;}
break;
case 1412:
/* Line 1455 of yacc.c */
#line 8879 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1413:
/* Line 1455 of yacc.c */
#line 8880 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1414:
/* Line 1455 of yacc.c */
#line 8890 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *name_node = NULL;
ParseNode *flag_node = new_terminal_node(result->malloc_pool_, T_DEFAULT);
flag_node->value_ = 1;
malloc_non_terminal_node(name_node, result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(4) - (7)].node));
dup_node_string((yyvsp[(4) - (7)].node), name_node, result->malloc_pool_);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_OUTLINE, 5, (yyvsp[(2) - (7)].node), name_node, flag_node, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
dup_expr_string((yyvsp[(6) - (7)].node), result, (yylsp[(6) - (7)]).first_column, (yylsp[(6) - (7)]).last_column);
;}
break;
case 1415:
/* Line 1455 of yacc.c */
#line 8902 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *name_node = NULL;
malloc_non_terminal_node(name_node, result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(4) - (9)].node));
ParseNode *flag_node = new_terminal_node(result->malloc_pool_, T_DEFAULT);
flag_node->value_ = 2;
if ((yyvsp[(9) - (9)].node) != NULL) {
dup_expr_string((yyvsp[(9) - (9)].node), result, (yylsp[(9) - (9)]).first_column, (yylsp[(9) - (9)]).last_column);
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_OUTLINE, 5, (yyvsp[(2) - (9)].node), name_node, flag_node, (yyvsp[(9) - (9)].node), (yyvsp[(6) - (9)].node));
;}
break;
case 1416:
/* Line 1455 of yacc.c */
#line 8922 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *name_node = NULL;
malloc_non_terminal_node(name_node, result->malloc_pool_, T_RELATION_FACTOR, 2, NULL, (yyvsp[(3) - (6)].node));
dup_node_string((yyvsp[(3) - (6)].node), name_node, result->malloc_pool_);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_OUTLINE, 3, name_node, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
dup_expr_string((yyvsp[(5) - (6)].node), result, (yylsp[(5) - (6)]).first_column, (yylsp[(5) - (6)]).last_column);
;}
break;
case 1417:
/* Line 1455 of yacc.c */
#line 8938 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_OUTLINE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1418:
/* Line 1455 of yacc.c */
#line 8945 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
dup_expr_string((yyval.node), result, (yylsp[(2) - (2)]).first_column, (yylsp[(2) - (2)]).last_column);
;}
break;
case 1419:
/* Line 1455 of yacc.c */
#line 8950 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1420:
/* Line 1455 of yacc.c */
#line 8961 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_COLUMNS, 4, (yyval.node), (yyvsp[(2) - (3)].node), NULL, (yyvsp[(3) - (3)].node));
;}
break;
case 1421:
/* Line 1455 of yacc.c */
#line 8968 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, NULL, (yyvsp[(2) - (2)].node));
;}
break;
case 1422:
/* Line 1455 of yacc.c */
#line 8973 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_BASIC);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1423:
/* Line 1455 of yacc.c */
#line 8980 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_OUTLINE);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1424:
/* Line 1455 of yacc.c */
#line 8987 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_EXTENDED);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1425:
/* Line 1455 of yacc.c */
#line 8994 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_EXTENDED_NOADDR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1426:
/* Line 1455 of yacc.c */
#line 9001 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_PLANREGRESS);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1427:
/* Line 1455 of yacc.c */
#line 9008 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
ParseNode *type_node = NULL;
malloc_terminal_node(type_node, result->malloc_pool_, T_PARTITIONS);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, type_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1428:
/* Line 1455 of yacc.c */
#line 9015 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXPLAIN, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1429:
/* Line 1455 of yacc.c */
#line 9022 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1430:
/* Line 1455 of yacc.c */
#line 9023 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1431:
/* Line 1455 of yacc.c */
#line 9024 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1432:
/* Line 1455 of yacc.c */
#line 9028 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1433:
/* Line 1455 of yacc.c */
#line 9029 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1434:
/* Line 1455 of yacc.c */
#line 9030 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1435:
/* Line 1455 of yacc.c */
#line 9031 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1436:
/* Line 1455 of yacc.c */
#line 9036 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_TRADITIONAL); ;}
break;
case 1437:
/* Line 1455 of yacc.c */
#line 9038 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_JSON); ;}
break;
case 1438:
/* Line 1455 of yacc.c */
#line 9049 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = (yyvsp[(2) - (5)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TABLES, 3, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node), value);
;}
break;
case 1439:
/* Line 1455 of yacc.c */
#line 9056 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (4)].node);
//(void)$3;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_DATABASES, 2, (yyvsp[(4) - (4)].node), (yyvsp[(3) - (4)].node));
;}
break;
case 1440:
/* Line 1455 of yacc.c */
#line 9062 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(3) - (7)].node);
(void)(yyvsp[(4) - (7)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = (yyvsp[(2) - (7)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_COLUMNS, 4, (yyval.node), (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 1441:
/* Line 1455 of yacc.c */
#line 9070 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TABLE_STATUS, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
break;
case 1442:
/* Line 1455 of yacc.c */
#line 9072 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_PROCEDURE_STATUS, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
break;
case 1443:
/* Line 1455 of yacc.c */
#line 9074 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_FUNCTION_STATUS, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node)); ;}
break;
case 1444:
/* Line 1455 of yacc.c */
#line 9076 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TRIGGERS, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node)); ;}
break;
case 1445:
/* Line 1455 of yacc.c */
#line 9078 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_SERVER_STATUS, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1446:
/* Line 1455 of yacc.c */
#line 9080 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = (yyvsp[(2) - (4)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_VARIABLES, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 1447:
/* Line 1455 of yacc.c */
#line 9086 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_SCHEMA); ;}
break;
case 1448:
/* Line 1455 of yacc.c */
#line 9088 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(3) - (5)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_DATABASE, 2, (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1449:
/* Line 1455 of yacc.c */
#line 9093 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_TABLE, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1450:
/* Line 1455 of yacc.c */
#line 9095 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_VIEW, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1451:
/* Line 1455 of yacc.c */
#line 9097 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_PROCEDURE, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1452:
/* Line 1455 of yacc.c */
#line 9099 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_FUNCTION, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1453:
/* Line 1455 of yacc.c */
#line 9101 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_WARNINGS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1454:
/* Line 1455 of yacc.c */
#line 9105 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_ERRORS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1455:
/* Line 1455 of yacc.c */
#line 9109 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *fun = NULL;
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node(fun, result->malloc_pool_, T_FUN_COUNT, 1, node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_WARNINGS, 1, fun);
;}
break;
case 1456:
/* Line 1455 of yacc.c */
#line 9117 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *fun = NULL;
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node(fun, result->malloc_pool_, T_FUN_COUNT, 1, node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_ERRORS, 1, fun);
;}
break;
case 1457:
/* Line 1455 of yacc.c */
#line 9125 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_GRANTS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1458:
/* Line 1455 of yacc.c */
#line 9129 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (3)].node);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CHARSET, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1459:
/* Line 1455 of yacc.c */
#line 9134 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TRACE, 1, (yyvsp[(3) - (3)].node)); ;}
break;
case 1460:
/* Line 1455 of yacc.c */
#line 9136 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_COLLATION, 1, (yyvsp[(3) - (3)].node)); ;}
break;
case 1461:
/* Line 1455 of yacc.c */
#line 9181 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_PARAMETERS, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1462:
/* Line 1455 of yacc.c */
#line 9185 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (6)].node);//useless
(void)(yyvsp[(3) - (6)].node);//useless
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_INDEXES, 3, (yyvsp[(4) - (6)].node), (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1463:
/* Line 1455 of yacc.c */
#line 9191 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *full_node = NULL;
malloc_terminal_node(full_node, result->malloc_pool_, T_INT);
full_node->value_ = (yyvsp[(2) - (3)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_PROCESSLIST, 1, full_node);
;}
break;
case 1464:
/* Line 1455 of yacc.c */
#line 9198 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TABLEGROUPS, 1, (yyvsp[(3) - (3)].node)); ;}
break;
case 1465:
/* Line 1455 of yacc.c */
#line 9200 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = (yyvsp[(2) - (4)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_STATUS, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 1466:
/* Line 1455 of yacc.c */
#line 9206 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_TENANT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1467:
/* Line 1455 of yacc.c */
#line 9210 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_TENANT, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1468:
/* Line 1455 of yacc.c */
#line 9212 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (3)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_ENGINES);
;}
break;
case 1469:
/* Line 1455 of yacc.c */
#line 9217 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_PRIVILEGES);
;}
break;
case 1470:
/* Line 1455 of yacc.c */
#line 9221 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_RECYCLEBIN);
;}
break;
case 1471:
/* Line 1455 of yacc.c */
#line 9225 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_CREATE_TABLEGROUP, 1, (yyvsp[(4) - (4)].node)); ;}
break;
case 1472:
/* Line 1455 of yacc.c */
#line 9229 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1473:
/* Line 1455 of yacc.c */
#line 9230 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1474:
/* Line 1455 of yacc.c */
#line 9235 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (OB_UNLIKELY((yyvsp[(2) - (4)].node)->value_ < 0 || (yyvsp[(4) - (4)].node)->value_ < 0)) {
yyerror(&(yylsp[(1) - (4)]), result, "OFFSET/COUNT must not be less than 0!\n");
YYERROR;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_LIMIT, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1475:
/* Line 1455 of yacc.c */
#line 9243 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (OB_UNLIKELY((yyvsp[(2) - (2)].node)->value_ < 0)) {
yyerror(&(yylsp[(1) - (2)]), result, "COUNT must not be less than 0!\n");
YYERROR;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_LIMIT, 2, NULL, (yyvsp[(2) - (2)].node));
;}
break;
case 1476:
/* Line 1455 of yacc.c */
#line 9251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1477:
/* Line 1455 of yacc.c */
#line 9256 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1478:
/* Line 1455 of yacc.c */
#line 9258 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1479:
/* Line 1455 of yacc.c */
#line 9260 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1480:
/* Line 1455 of yacc.c */
#line 9264 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_terminal_node((yyval.node), result->malloc_pool_, T_SHOW_STATUS); ;}
break;
case 1481:
/* Line 1455 of yacc.c */
#line 9265 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1482:
/* Line 1455 of yacc.c */
#line 9270 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1483:
/* Line 1455 of yacc.c */
#line 9272 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1484:
/* Line 1455 of yacc.c */
#line 9276 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 1485:
/* Line 1455 of yacc.c */
#line 9277 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1486:
/* Line 1455 of yacc.c */
#line 9278 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1487:
/* Line 1455 of yacc.c */
#line 9279 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 1488:
/* Line 1455 of yacc.c */
#line 9284 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1489:
/* Line 1455 of yacc.c */
#line 9286 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1490:
/* Line 1455 of yacc.c */
#line 9291 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1491:
/* Line 1455 of yacc.c */
#line 9293 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1492:
/* Line 1455 of yacc.c */
#line 9298 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1493:
/* Line 1455 of yacc.c */
#line 9300 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1494:
/* Line 1455 of yacc.c */
#line 9302 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1495:
/* Line 1455 of yacc.c */
#line 9307 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1496:
/* Line 1455 of yacc.c */
#line 9309 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1497:
/* Line 1455 of yacc.c */
#line 9314 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1498:
/* Line 1455 of yacc.c */
#line 9316 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(1) - (2)].node);//useless
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FROM_LIST, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1499:
/* Line 1455 of yacc.c */
#line 9324 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1500:
/* Line 1455 of yacc.c */
#line 9326 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIKE_CLAUSE, 2, (yyvsp[(2) - (2)].node), node);
;}
break;
case 1501:
/* Line 1455 of yacc.c */
#line 9334 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if (OB_UNLIKELY(1 != (yyvsp[(4) - (4)].node)->str_len_)) {
yyerror(&(yylsp[(1) - (4)]), result, "Incorrect arguments to ESCAPE\n");
YYABORT_PARSE_SQL_ERROR;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIKE_CLAUSE, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1502:
/* Line 1455 of yacc.c */
#line 9342 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_WHERE_CLAUSE, 1, (yyvsp[(2) - (2)].node)); ;}
break;
case 1503:
/* Line 1455 of yacc.c */
#line 9347 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1504:
/* Line 1455 of yacc.c */
#line 9349 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_VARCHAR);
node->str_value_ = "\\";
node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIKE_CLAUSE, 2, (yyvsp[(1) - (1)].node), node);
;}
break;
case 1505:
/* Line 1455 of yacc.c */
#line 9357 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *pattern_node = NULL;
malloc_terminal_node(pattern_node, result->malloc_pool_, T_VARCHAR);
dup_node_string((yyvsp[(1) - (1)].node), pattern_node, result->malloc_pool_);
ParseNode *escape_node = NULL;
malloc_terminal_node(escape_node, result->malloc_pool_, T_VARCHAR);
escape_node->str_value_ = "\\";
escape_node->str_len_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LIKE_CLAUSE, 2, pattern_node, escape_node);
;}
break;
case 1506:
/* Line 1455 of yacc.c */
#line 9376 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *users_node = NULL;
merge_nodes(users_node, result, T_USERS, (yyvsp[(4) - (5)].node));
ParseNode *res_opt_node = NULL;
merge_nodes(res_opt_node, result, T_USER_RESOURCE_OPTIONS, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_USER, 4, (yyvsp[(3) - (5)].node), users_node, NULL, res_opt_node);
;}
break;
case 1507:
/* Line 1455 of yacc.c */
#line 9384 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *users_node = NULL;
merge_nodes(users_node, result, T_USERS, (yyvsp[(4) - (6)].node));
ParseNode *require_node = NULL;
merge_nodes(require_node, result, T_TLS_OPTIONS, (yyvsp[(5) - (6)].node));
ParseNode *res_opt_node = NULL;
merge_nodes(res_opt_node, result, T_USER_RESOURCE_OPTIONS, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_USER, 4, (yyvsp[(3) - (6)].node), users_node, require_node, res_opt_node);
;}
break;
case 1508:
/* Line 1455 of yacc.c */
#line 9397 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1509:
/* Line 1455 of yacc.c */
#line 9401 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1510:
/* Line 1455 of yacc.c */
#line 9408 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_USER_SPEC, 4, (yyvsp[(1) - (2)].node), NULL, need_enc_node, (yyvsp[(2) - (2)].node));
;}
break;
case 1511:
/* Line 1455 of yacc.c */
#line 9415 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_USER_SPEC, 4, (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), need_enc_node, (yyvsp[(2) - (5)].node));
;}
break;
case 1512:
/* Line 1455 of yacc.c */
#line 9422 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_USER_SPEC, 4, (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), need_enc_node, (yyvsp[(2) - (6)].node));
;}
break;
case 1513:
/* Line 1455 of yacc.c */
#line 9432 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TLS_NONE);
;}
break;
case 1514:
/* Line 1455 of yacc.c */
#line 9436 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TLS_SSL);
;}
break;
case 1515:
/* Line 1455 of yacc.c */
#line 9440 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TLS_XFZN);
;}
break;
case 1516:
/* Line 1455 of yacc.c */
#line 9444 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *specified_node = NULL;
merge_nodes(specified_node, result, T_TLS_SPECIFIED, (yyvsp[(2) - (2)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TLS_SPECIFIED, 1, specified_node);
;}
break;
case 1517:
/* Line 1455 of yacc.c */
#line 9453 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (2)].node);
;}
break;
case 1518:
/* Line 1455 of yacc.c */
#line 9457 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1519:
/* Line 1455 of yacc.c */
#line 9464 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1520:
/* Line 1455 of yacc.c */
#line 9468 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1521:
/* Line 1455 of yacc.c */
#line 9474 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_MAX_CONNECTIONS_PER_HOUR);
(yyval.node)->value_ = (yyvsp[(2) - (2)].node)->value_;
;}
break;
case 1522:
/* Line 1455 of yacc.c */
#line 9479 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_MAX_USER_CONNECTIONS);
(yyval.node)->value_ = (yyvsp[(2) - (2)].node)->value_;
;}
break;
case 1523:
/* Line 1455 of yacc.c */
#line 9499 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1524:
/* Line 1455 of yacc.c */
#line 9503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1525:
/* Line 1455 of yacc.c */
#line 9507 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1526:
/* Line 1455 of yacc.c */
#line 9514 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TLS_CIPHER, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1527:
/* Line 1455 of yacc.c */
#line 9518 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TLS_ISSUER, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1528:
/* Line 1455 of yacc.c */
#line 9522 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TLS_SUBJECT, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1529:
/* Line 1455 of yacc.c */
#line 9530 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1530:
/* Line 1455 of yacc.c */
#line 9534 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1531:
/* Line 1455 of yacc.c */
#line 9538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 1532:
/* Line 1455 of yacc.c */
#line 9545 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1533:
/* Line 1455 of yacc.c */
#line 9549 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1534:
/* Line 1455 of yacc.c */
#line 9556 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USER_WITH_HOST_NAME, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1535:
/* Line 1455 of yacc.c */
#line 9563 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
(yyval.node)->stmt_loc_.first_column_ = (yylsp[(1) - (1)]).first_column - 1;
(yyval.node)->stmt_loc_.last_column_ = (yylsp[(1) - (1)]).last_column - 1;
;}
break;
case 1536:
/* Line 1455 of yacc.c */
#line 9577 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_DROP_USER, (yyvsp[(3) - (3)].node));
;}
break;
case 1537:
/* Line 1455 of yacc.c */
#line 9584 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1538:
/* Line 1455 of yacc.c */
#line 9588 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1539:
/* Line 1455 of yacc.c */
#line 9600 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_PASSWORD, 4, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node), need_enc_node, NULL);
;}
break;
case 1540:
/* Line 1455 of yacc.c */
#line 9607 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_PASSWORD, 4, (yyvsp[(3) - (8)].node), (yyvsp[(7) - (8)].node), need_enc_node, NULL);
;}
break;
case 1541:
/* Line 1455 of yacc.c */
#line 9614 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *need_enc_node = NULL;
malloc_terminal_node(need_enc_node, result->malloc_pool_, T_BOOL);
need_enc_node->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_PASSWORD, 4, (yyvsp[(3) - (6)].node), (yyvsp[(6) - (6)].node), need_enc_node, NULL);
;}
break;
case 1542:
/* Line 1455 of yacc.c */
#line 9621 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *require_node = NULL;
merge_nodes(require_node, result, T_TLS_OPTIONS, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_PASSWORD, 4, (yyvsp[(3) - (4)].node), NULL, NULL, require_node);
;}
break;
case 1543:
/* Line 1455 of yacc.c */
#line 9627 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *res_opt_node = NULL;
merge_nodes(res_opt_node, result, T_USER_RESOURCE_OPTIONS, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_PASSWORD, 4, (yyvsp[(3) - (5)].node), NULL, NULL, res_opt_node);
;}
break;
case 1544:
/* Line 1455 of yacc.c */
#line 9636 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_USER_WITH_HOST_NAME, 2, (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1545:
/* Line 1455 of yacc.c */
#line 9641 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1546:
/* Line 1455 of yacc.c */
#line 9652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_RENAME_USER, (yyvsp[(3) - (3)].node));
;}
break;
case 1547:
/* Line 1455 of yacc.c */
#line 9659 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RENAME_INFO, 4, (yyvsp[(1) - (5)].node), (yyvsp[(2) - (5)].node), (yyvsp[(4) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1548:
/* Line 1455 of yacc.c */
#line 9666 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1549:
/* Line 1455 of yacc.c */
#line 9670 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1550:
/* Line 1455 of yacc.c */
#line 9682 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *users_node = NULL;
merge_nodes(users_node, result, T_USERS, (yyvsp[(3) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOCK_USER, 2, users_node, (yyvsp[(5) - (5)].node));
;}
break;
case 1551:
/* Line 1455 of yacc.c */
#line 9691 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BOOL);
(yyval.node)->value_ = 1;
;}
break;
case 1552:
/* Line 1455 of yacc.c */
#line 9696 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BOOL);
(yyval.node)->value_ = 0;
;}
break;
case 1553:
/* Line 1455 of yacc.c */
#line 9711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (3)].node);
(void)(yyvsp[(3) - (3)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_EMPTY_QUERY);
;}
break;
case 1554:
/* Line 1455 of yacc.c */
#line 9720 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_EMPTY_QUERY);
;}
break;
case 1555:
/* Line 1455 of yacc.c */
#line 9727 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
(void)(yyvsp[(1) - (1)].node);
;}
break;
case 1556:
/* Line 1455 of yacc.c */
#line 9732 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
(void)(yyvsp[(1) - (3)].node);
(void)(yyvsp[(3) - (3)].node);
;}
break;
case 1557:
/* Line 1455 of yacc.c */
#line 9741 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
(void)(yyvsp[(1) - (2)].node);
(void)(yyvsp[(2) - (2)].node);
;}
break;
case 1558:
/* Line 1455 of yacc.c */
#line 9748 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
(void)(yyvsp[(1) - (4)].node);
(void)(yyvsp[(2) - (4)].node);
(void)(yyvsp[(3) - (4)].node);
(void)(yyvsp[(4) - (4)].node);
;}
break;
case 1559:
/* Line 1455 of yacc.c */
#line 9759 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
(void)(yyvsp[(2) - (2)].node);
;}
break;
case 1560:
/* Line 1455 of yacc.c */
#line 9765 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
;}
break;
case 1561:
/* Line 1455 of yacc.c */
#line 9770 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
;}
break;
case 1562:
/* Line 1455 of yacc.c */
#line 9776 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1563:
/* Line 1455 of yacc.c */
#line 9777 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1564:
/* Line 1455 of yacc.c */
#line 9788 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
;}
break;
case 1565:
/* Line 1455 of yacc.c */
#line 9792 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyval.node);
;}
break;
case 1566:
/* Line 1455 of yacc.c */
#line 9799 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = OB_WITH_CONSTISTENT_SNAPSHOT;
;}
break;
case 1567:
/* Line 1455 of yacc.c */
#line 9803 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = (yyvsp[(1) - (1)].node)->value_;
;}
break;
case 1568:
/* Line 1455 of yacc.c */
#line 9807 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = OB_WITH_CONSTISTENT_SNAPSHOT | (yyvsp[(5) - (5)].node)->value_;
;}
break;
case 1569:
/* Line 1455 of yacc.c */
#line 9811 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = OB_WITH_CONSTISTENT_SNAPSHOT | (yyvsp[(1) - (5)].node)->value_;
;}
break;
case 1570:
/* Line 1455 of yacc.c */
#line 9815 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.ival)[0] = 0;
;}
break;
case 1571:
/* Line 1455 of yacc.c */
#line 9822 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (2)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BEGIN, 1, (yyval.node));
;}
break;
case 1572:
/* Line 1455 of yacc.c */
#line 9829 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = (yyvsp[(3) - (3)].ival)[0];
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BEGIN, 1, (yyval.node));
;}
break;
case 1573:
/* Line 1455 of yacc.c */
#line 9844 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_START, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1574:
/* Line 1455 of yacc.c */
#line 9848 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_START, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1575:
/* Line 1455 of yacc.c */
#line 9855 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_END, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1576:
/* Line 1455 of yacc.c */
#line 9862 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_PREPARE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1577:
/* Line 1455 of yacc.c */
#line 9869 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_COMMIT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1578:
/* Line 1455 of yacc.c */
#line 9876 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_XA_ROLLBACK, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1579:
/* Line 1455 of yacc.c */
#line 9888 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (2)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COMMIT);
;}
break;
case 1580:
/* Line 1455 of yacc.c */
#line 9901 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (2)].node);
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ROLLBACK);
;}
break;
case 1581:
/* Line 1455 of yacc.c */
#line 9914 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *opt_node = NULL;
malloc_terminal_node(opt_node, result->malloc_pool_, T_BOOL);
opt_node->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KILL, 2, opt_node, (yyvsp[(2) - (2)].node));
;}
break;
case 1582:
/* Line 1455 of yacc.c */
#line 9922 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *opt_node = NULL;
malloc_terminal_node(opt_node, result->malloc_pool_, T_BOOL);
opt_node->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KILL, 2, opt_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1583:
/* Line 1455 of yacc.c */
#line 9930 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *opt_node = NULL;
malloc_terminal_node(opt_node, result->malloc_pool_, T_BOOL);
opt_node->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_KILL, 2, opt_node, (yyvsp[(3) - (3)].node));
;}
break;
case 1584:
/* Line 1455 of yacc.c */
#line 9945 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *privileges_list_node = NULL;
ParseNode *privileges_node = NULL;
ParseNode *users_node = NULL;
malloc_non_terminal_node(privileges_list_node, result->malloc_pool_,
T_LINK_NODE, 2, (yyvsp[(2) - (7)].node), (yyvsp[(7) - (7)].node));
merge_nodes(privileges_node, result, T_PRIVILEGES, privileges_list_node);
merge_nodes(users_node, result, T_USERS, (yyvsp[(6) - (7)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_GRANT,
3, privileges_node, (yyvsp[(4) - (7)].node), users_node);
;}
break;
case 1585:
/* Line 1455 of yacc.c */
#line 9960 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1586:
/* Line 1455 of yacc.c */
#line 9964 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(2) - (2)].node); /* useless */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_ALL;
;}
break;
case 1587:
/* Line 1455 of yacc.c */
#line 9973 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1588:
/* Line 1455 of yacc.c */
#line 9977 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1589:
/* Line 1455 of yacc.c */
#line 9984 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_ALTER;
;}
break;
case 1590:
/* Line 1455 of yacc.c */
#line 9989 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE;
;}
break;
case 1591:
/* Line 1455 of yacc.c */
#line 9994 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE_USER;
;}
break;
case 1592:
/* Line 1455 of yacc.c */
#line 9999 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_DELETE;
;}
break;
case 1593:
/* Line 1455 of yacc.c */
#line 10004 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_DROP;
;}
break;
case 1594:
/* Line 1455 of yacc.c */
#line 10009 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_GRANT;
;}
break;
case 1595:
/* Line 1455 of yacc.c */
#line 10014 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_INSERT;
;}
break;
case 1596:
/* Line 1455 of yacc.c */
#line 10019 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_UPDATE;
;}
break;
case 1597:
/* Line 1455 of yacc.c */
#line 10024 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_SELECT;
;}
break;
case 1598:
/* Line 1455 of yacc.c */
#line 10029 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_INDEX;
;}
break;
case 1599:
/* Line 1455 of yacc.c */
#line 10034 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE_VIEW;
;}
break;
case 1600:
/* Line 1455 of yacc.c */
#line 10039 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_SHOW_VIEW;
;}
break;
case 1601:
/* Line 1455 of yacc.c */
#line 10044 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_SHOW_DB;
;}
break;
case 1602:
/* Line 1455 of yacc.c */
#line 10049 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_SUPER;
;}
break;
case 1603:
/* Line 1455 of yacc.c */
#line 10054 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_PROCESS;
;}
break;
case 1604:
/* Line 1455 of yacc.c */
#line 10059 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = 0;
;}
break;
case 1605:
/* Line 1455 of yacc.c */
#line 10064 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE_SYNONYM;
;}
break;
case 1606:
/* Line 1455 of yacc.c */
#line 10069 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_FILE;
;}
break;
case 1607:
/* Line 1455 of yacc.c */
#line 10074 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_ALTER_TENANT;
;}
break;
case 1608:
/* Line 1455 of yacc.c */
#line 10079 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_ALTER_SYSTEM;
;}
break;
case 1609:
/* Line 1455 of yacc.c */
#line 10084 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE_RESOURCE_POOL;
;}
break;
case 1610:
/* Line 1455 of yacc.c */
#line 10089 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_CREATE_RESOURCE_UNIT;
;}
break;
case 1611:
/* Line 1455 of yacc.c */
#line 10099 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1612:
/* Line 1455 of yacc.c */
#line 10103 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1613:
/* Line 1455 of yacc.c */
#line 10110 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
/* means global priv_level */
malloc_terminal_node((yyval.node), result->malloc_pool_, T_STAR);
;}
break;
case 1614:
/* Line 1455 of yacc.c */
#line 10115 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *first_node = NULL;
ParseNode *snd_node = NULL;
malloc_terminal_node(first_node, result->malloc_pool_, T_STAR);
malloc_terminal_node(snd_node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_LEVEL, 2, first_node, snd_node);
;}
break;
case 1615:
/* Line 1455 of yacc.c */
#line 10123 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *node = NULL;
malloc_terminal_node(node, result->malloc_pool_, T_STAR);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_LEVEL, 2, (yyvsp[(1) - (3)].node), node);
;}
break;
case 1616:
/* Line 1455 of yacc.c */
#line 10129 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1617:
/* Line 1455 of yacc.c */
#line 10133 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_LEVEL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1618:
/* Line 1455 of yacc.c */
#line 10140 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PRIV_TYPE);
(yyval.node)->value_ = OB_PRIV_GRANT;
;}
break;
case 1619:
/* Line 1455 of yacc.c */
#line 10145 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1620:
/* Line 1455 of yacc.c */
#line 10157 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *privileges_node = NULL;
ParseNode *users_node = NULL;
merge_nodes(privileges_node, result, T_PRIVILEGES, (yyvsp[(2) - (6)].node));
merge_nodes(users_node, result, T_USERS, (yyvsp[(6) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REVOKE,
3, privileges_node, (yyvsp[(4) - (6)].node), users_node);
;}
break;
case 1621:
/* Line 1455 of yacc.c */
#line 10166 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(3) - (8)].node);//useless
ParseNode *users_node = NULL;
merge_nodes(users_node, result, T_USERS, (yyvsp[(8) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REVOKE_ALL,
1, users_node);
;}
break;
case 1622:
/* Line 1455 of yacc.c */
#line 10183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PREPARE, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
// dup_expr_string($4, result, @4.first_column, @4.last_column);
;}
break;
case 1623:
/* Line 1455 of yacc.c */
#line 10191 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1624:
/* Line 1455 of yacc.c */
#line 10196 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1625:
/* Line 1455 of yacc.c */
#line 10200 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GET_USER_VAR, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1626:
/* Line 1455 of yacc.c */
#line 10213 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_VARIABLE_SET, (yyvsp[(2) - (2)].node));
//$$->value_ = 2; //useless
;}
break;
case 1627:
/* Line 1455 of yacc.c */
#line 10221 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(1) - (1)].node)->value_ = 1;//set global
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1628:
/* Line 1455 of yacc.c */
#line 10226 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyvsp[(3) - (3)].node)->value_ = 1;//set global
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1629:
/* Line 1455 of yacc.c */
#line 10233 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1630:
/* Line 1455 of yacc.c */
#line 10237 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1631:
/* Line 1455 of yacc.c */
#line 10244 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
if ((yyvsp[(1) - (1)].node) != NULL && (yyvsp[(1) - (1)].node)->type_ == T_COLUMN_REF && (yyvsp[(1) - (1)].node)->num_child_ == 3 &&
(yyvsp[(1) - (1)].node)->children_[0] == NULL && (yyvsp[(1) - (1)].node)->children_[1] == NULL && (yyvsp[(1) - (1)].node)->children_[2] != NULL) {
ParseNode *obj_node = (yyvsp[(1) - (1)].node)->children_[2];
if (nodename_equal(obj_node, "OFF", 3)) {
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR);
(yyval.node)->str_value_ = "OFF";
(yyval.node)->str_len_ = 3;
} else {
(yyval.node) = (yyvsp[(1) - (1)].node);
}
} else {
(yyval.node) = (yyvsp[(1) - (1)].node);
}
;}
break;
case 1632:
/* Line 1455 of yacc.c */
#line 10260 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR);
(yyval.node)->str_value_ = "ON";
(yyval.node)->str_len_ = 2;
;}
break;
case 1633:
/* Line 1455 of yacc.c */
#line 10274 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VARCHAR);
(yyval.node)->str_value_ = "BINARY";
(yyval.node)->str_len_ = 6;
;}
break;
case 1634:
/* Line 1455 of yacc.c */
#line 10280 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//$$ = NULL;
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DEFAULT);
;}
break;
case 1635:
/* Line 1455 of yacc.c */
#line 10288 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 1636:
/* Line 1455 of yacc.c */
#line 10294 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 1637:
/* Line 1455 of yacc.c */
#line 10299 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1638:
/* Line 1455 of yacc.c */
#line 10303 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (4)].node));
(yyvsp[(2) - (4)].node)->type_ = T_SYSTEM_VARIABLE;
if (NULL != (yyvsp[(4) - (4)].node) && T_COLUMN_REF == (yyvsp[(4) - (4)].node)->type_ && NULL != (yyvsp[(4) - (4)].node)->children_ && NULL == (yyvsp[(4) - (4)].node)->children_[0] && NULL == (yyvsp[(4) - (4)].node)->children_[1] && NULL != (yyvsp[(4) - (4)].node)->children_[2]) {
(yyvsp[(4) - (4)].node)->type_ = T_VARCHAR;
(yyvsp[(4) - (4)].node)->str_value_ = (yyvsp[(4) - (4)].node)->children_[2]->str_value_;
(yyvsp[(4) - (4)].node)->str_len_ = (yyvsp[(4) - (4)].node)->children_[2]->str_len_;
(yyvsp[(4) - (4)].node)->num_child_ = 0;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(2) - (4)].node), (yyvsp[(4) - (4)].node));
(yyval.node)->value_ = (yyvsp[(1) - (4)].ival)[0];
;}
break;
case 1639:
/* Line 1455 of yacc.c */
#line 10316 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
if (NULL != (yyvsp[(3) - (3)].node) && T_COLUMN_REF == (yyvsp[(3) - (3)].node)->type_ && NULL != (yyvsp[(3) - (3)].node)->children_ && NULL == (yyvsp[(3) - (3)].node)->children_[0] && NULL == (yyvsp[(3) - (3)].node)->children_[1] && NULL != (yyvsp[(3) - (3)].node)->children_[2]) {
(yyvsp[(3) - (3)].node)->type_ = T_VARCHAR;
(yyvsp[(3) - (3)].node)->str_value_ = (yyvsp[(3) - (3)].node)->children_[2]->str_value_;
(yyvsp[(3) - (3)].node)->str_len_ = (yyvsp[(3) - (3)].node)->children_[2]->str_len_;
(yyvsp[(3) - (3)].node)->num_child_ = 0;
}
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 1640:
/* Line 1455 of yacc.c */
#line 10331 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 1641:
/* Line 1455 of yacc.c */
#line 10337 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_VAR_VAL, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
(yyval.node)->value_ = 2;
;}
break;
case 1642:
/* Line 1455 of yacc.c */
#line 10344 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 1643:
/* Line 1455 of yacc.c */
#line 10345 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1644:
/* Line 1455 of yacc.c */
#line 10346 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 1645:
/* Line 1455 of yacc.c */
#line 10347 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1646:
/* Line 1455 of yacc.c */
#line 10351 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1647:
/* Line 1455 of yacc.c */
#line 10352 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1648:
/* Line 1455 of yacc.c */
#line 10362 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_EXECUTE, 2, (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1649:
/* Line 1455 of yacc.c */
#line 10369 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_ARGUMENT_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 1650:
/* Line 1455 of yacc.c */
#line 10373 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1651:
/* Line 1455 of yacc.c */
#line 10380 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1652:
/* Line 1455 of yacc.c */
#line 10384 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1653:
/* Line 1455 of yacc.c */
#line 10391 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OP_GET_USER_VAR, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1654:
/* Line 1455 of yacc.c */
#line 10403 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(1) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DEALLOCATE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1655:
/* Line 1455 of yacc.c */
#line 10411 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1656:
/* Line 1455 of yacc.c */
#line 10413 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1657:
/* Line 1455 of yacc.c */
#line 10424 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRUNCATE_TABLE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1658:
/* Line 1455 of yacc.c */
#line 10438 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
//ParseNode *rename_table_actions = NULL;
merge_nodes((yyval.node), result, T_RENAME_TABLE, (yyvsp[(3) - (3)].node));
//malloc_non_terminal_node($$, result->malloc_pool_, T_RENAME_TABLE, 1, rename_table_actions);
;}
break;
case 1659:
/* Line 1455 of yacc.c */
#line 10447 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1660:
/* Line 1455 of yacc.c */
#line 10451 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1661:
/* Line 1455 of yacc.c */
#line 10458 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RENAME_TABLE_ACTION, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1662:
/* Line 1455 of yacc.c */
#line 10470 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *table_actions = NULL;
merge_nodes(table_actions, result, T_ALTER_TABLE_ACTION_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLE, 2, (yyvsp[(3) - (4)].node), table_actions);
(yyval.node)->value_ = 0;
;}
break;
case 1663:
/* Line 1455 of yacc.c */
#line 10480 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1664:
/* Line 1455 of yacc.c */
#line 10484 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1665:
/* Line 1455 of yacc.c */
#line 10488 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1666:
/* Line 1455 of yacc.c */
#line 10493 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(1) - (2)].node);
merge_nodes((yyval.node), result, T_TABLE_OPTION_LIST, (yyvsp[(2) - (2)].node));
;}
break;
case 1667:
/* Line 1455 of yacc.c */
#line 10498 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_COLUMN_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1668:
/* Line 1455 of yacc.c */
#line 10502 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLEGROUP_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1669:
/* Line 1455 of yacc.c */
#line 10506 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
ParseNode *rename_node = NULL;
malloc_non_terminal_node(rename_node, result->malloc_pool_, T_TABLE_RENAME, 1, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_TABLE_OPTION, 1, rename_node);
;}
break;
case 1670:
/* Line 1455 of yacc.c */
#line 10513 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_INDEX_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1671:
/* Line 1455 of yacc.c */
#line 10517 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1672:
/* Line 1455 of yacc.c */
#line 10521 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_CHECK_CONSTRAINT_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1673:
/* Line 1455 of yacc.c */
#line 10525 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_FOREIGN_KEY_OPTION, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1674:
/* Line 1455 of yacc.c */
#line 10538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(4) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHECK_CONSTRAINT, 1, (yyval.node));
(yyval.node)->value_ = 0;
;}
break;
case 1675:
/* Line 1455 of yacc.c */
#line 10545 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
dup_expr_string((yyvsp[(6) - (7)].node), result, (yylsp[(6) - (7)]).first_column, (yylsp[(6) - (7)]).last_column);
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHECK_CONSTRAINT, 2, (yyvsp[(3) - (7)].node), (yyvsp[(6) - (7)].node));
(yyval.node)->value_ = 1;
;}
break;
case 1676:
/* Line 1455 of yacc.c */
#line 10554 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_DROP, 2, (yyval.node), NULL);
;}
break;
case 1677:
/* Line 1455 of yacc.c */
#line 10560 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SUBPARTITION_DROP, 2, (yyval.node), NULL);
;}
break;
case 1678:
/* Line 1455 of yacc.c */
#line 10566 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_PARTITION_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_ADD, 1, (yyval.node));
dup_string((yyval.node), result, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
;}
break;
case 1679:
/* Line 1455 of yacc.c */
#line 10572 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_PARTITIONED, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1680:
/* Line 1455 of yacc.c */
#line 10576 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *partition_names = NULL;
merge_nodes(partition_names, result, T_NAME_LIST, (yyvsp[(3) - (5)].node));
ParseNode *partition_node = NULL;
merge_nodes(partition_node, result, T_PARTITION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_REORGANIZE, 2, partition_node, partition_names);
;}
break;
case 1681:
/* Line 1455 of yacc.c */
#line 10584 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_TRUNCATE, 2, (yyval.node), NULL);
;}
break;
case 1682:
/* Line 1455 of yacc.c */
#line 10589 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SUBPARTITION_TRUNCATE, 2, (yyval.node), NULL);
;}
break;
case 1683:
/* Line 1455 of yacc.c */
#line 10597 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1684:
/* Line 1455 of yacc.c */
#line 10602 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1685:
/* Line 1455 of yacc.c */
#line 10608 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_DROP, 1, (yyval.node));
;}
break;
case 1686:
/* Line 1455 of yacc.c */
#line 10614 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_PARTITION_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_ADD, 1, (yyval.node));
dup_string((yyval.node), result, (yylsp[(3) - (3)]).first_column, (yylsp[(3) - (3)]).last_column);
;}
break;
case 1687:
/* Line 1455 of yacc.c */
#line 10620 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_PARTITIONED, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1688:
/* Line 1455 of yacc.c */
#line 10624 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *partition_names = NULL;
merge_nodes(partition_names, result, T_NAME_LIST, (yyvsp[(3) - (5)].node));
ParseNode *partition_node = NULL;
merge_nodes(partition_node, result, T_PARTITION_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_REORGANIZE, 2, partition_node, partition_names);
;}
break;
case 1689:
/* Line 1455 of yacc.c */
#line 10632 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_NAME_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_PARTITION_TRUNCATE, 1, (yyval.node));
;}
break;
case 1690:
/* Line 1455 of yacc.c */
#line 10640 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1691:
/* Line 1455 of yacc.c */
#line 10645 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(2) - (3)].node);
;}
break;
case 1692:
/* Line 1455 of yacc.c */
#line 10652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1693:
/* Line 1455 of yacc.c */
#line 10656 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1694:
/* Line 1455 of yacc.c */
#line 10660 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1695:
/* Line 1455 of yacc.c */
#line 10664 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1696:
/* Line 1455 of yacc.c */
#line 10671 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1697:
/* Line 1455 of yacc.c */
#line 10675 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1698:
/* Line 1455 of yacc.c */
#line 10679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1699:
/* Line 1455 of yacc.c */
#line 10683 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1700:
/* Line 1455 of yacc.c */
#line 10691 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (8)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(6) - (8)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(8) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_ADD, 4, (yyvsp[(3) - (8)].node), col_list, index_option, (yyvsp[(4) - (8)].node));
(yyval.node)->value_ = 0;
;}
break;
case 1701:
/* Line 1455 of yacc.c */
#line 10701 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (9)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(7) - (9)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(9) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_ADD, 4, (yyvsp[(4) - (9)].node), col_list, index_option, (yyvsp[(5) - (9)].node));
(yyval.node)->value_ = 1;
;}
break;
case 1702:
/* Line 1455 of yacc.c */
#line 10711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(5) - (11)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_INDEX_COLUMN_LIST, (yyvsp[(9) - (11)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(11) - (11)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_ADD, 4, (yyvsp[(6) - (11)].node) ? (yyvsp[(6) - (11)].node) : (yyvsp[(3) - (11)].node), col_list, index_option, (yyvsp[(7) - (11)].node));
(yyval.node)->value_ = 1;
;}
break;
case 1703:
/* Line 1455 of yacc.c */
#line 10721 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_DROP, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1704:
/* Line 1455 of yacc.c */
#line 10726 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (8)].node));
ParseNode *col_list = NULL;
ParseNode *index_option = NULL;
merge_nodes(col_list, result, T_COLUMN_LIST, (yyvsp[(6) - (8)].node));
merge_nodes(index_option, result, T_TABLE_OPTION_LIST, (yyvsp[(8) - (8)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PRIMARY_KEY, 2, col_list, index_option);
;}
break;
case 1705:
/* Line 1455 of yacc.c */
#line 10735 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_ALTER, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1706:
/* Line 1455 of yacc.c */
#line 10739 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_RENAME, 2, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1707:
/* Line 1455 of yacc.c */
#line 10744 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_INDEX_ALTER_PARALLEL, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1708:
/* Line 1455 of yacc.c */
#line 10751 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FOREIGN_KEY_DROP, 1, (yyvsp[(4) - (4)].node));
;}
break;
case 1709:
/* Line 1455 of yacc.c */
#line 10755 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *child_col_list= NULL;
ParseNode *parent_col_list= NULL;
ParseNode *reference_option_list = NULL;
merge_nodes(child_col_list, result, T_COLUMN_LIST, (yyvsp[(7) - (15)].node));
merge_nodes(parent_col_list, result, T_COLUMN_LIST, (yyvsp[(12) - (15)].node));
merge_nodes(reference_option_list, result, T_REFERENCE_OPTION_LIST, (yyvsp[(15) - (15)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FOREIGN_KEY, 7, child_col_list, (yyvsp[(10) - (15)].node), parent_col_list, reference_option_list, (yyvsp[(2) - (15)].node), (yyvsp[(5) - (15)].node), (yyvsp[(14) - (15)].node));
;}
break;
case 1710:
/* Line 1455 of yacc.c */
#line 10768 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_VISIBLE);
;}
break;
case 1711:
/* Line 1455 of yacc.c */
#line 10772 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INVISIBLE);
;}
break;
case 1712:
/* Line 1455 of yacc.c */
#line 10779 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ADD, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1713:
/* Line 1455 of yacc.c */
#line 10784 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)); /* make bison mute */
merge_nodes((yyval.node), result, T_COLUMN_ADD, (yyvsp[(4) - (5)].node));
;}
break;
case 1714:
/* Line 1455 of yacc.c */
#line 10789 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_DROP, 1, (yyvsp[(2) - (3)].node));
(yyval.node)->value_ = (yyvsp[(3) - (3)].ival)[0];
;}
break;
case 1715:
/* Line 1455 of yacc.c */
#line 10794 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_DROP, 1, (yyvsp[(3) - (4)].node));
(yyval.node)->value_ = (yyvsp[(4) - (4)].ival)[0];
;}
break;
case 1716:
/* Line 1455 of yacc.c */
#line 10799 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ALTER, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1717:
/* Line 1455 of yacc.c */
#line 10804 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (4)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_CHANGE, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node) );
;}
break;
case 1718:
/* Line 1455 of yacc.c */
#line 10809 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)); /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_MODIFY, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1719:
/* Line 1455 of yacc.c */
#line 10817 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1720:
/* Line 1455 of yacc.c */
#line 10821 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ADD_FIRST);
;}
break;
case 1721:
/* Line 1455 of yacc.c */
#line 10825 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ADD_BEFORE, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1722:
/* Line 1455 of yacc.c */
#line 10829 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_COLUMN_ADD_AFTER, 1, (yyvsp[(2) - (2)].node));
;}
break;
case 1723:
/* Line 1455 of yacc.c */
#line 10836 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TABLEGROUP_DROP);
;}
break;
case 1724:
/* Line 1455 of yacc.c */
#line 10842 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1725:
/* Line 1455 of yacc.c */
#line 10843 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1726:
/* Line 1455 of yacc.c */
#line 10847 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1727:
/* Line 1455 of yacc.c */
#line 10848 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1728:
/* Line 1455 of yacc.c */
#line 10852 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1729:
/* Line 1455 of yacc.c */
#line 10853 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1730:
/* Line 1455 of yacc.c */
#line 10857 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1731:
/* Line 1455 of yacc.c */
#line 10858 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 1732:
/* Line 1455 of yacc.c */
#line 10859 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 1733:
/* Line 1455 of yacc.c */
#line 10875 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_DEFAULT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1734:
/* Line 1455 of yacc.c */
#line 10879 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CONSTR_NULL);
;}
break;
case 1735:
/* Line 1455 of yacc.c */
#line 10892 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PURGE_TABLE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1736:
/* Line 1455 of yacc.c */
#line 10897 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PURGE_INDEX, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1737:
/* Line 1455 of yacc.c */
#line 10902 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PURGE_DATABASE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1738:
/* Line 1455 of yacc.c */
#line 10908 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PURGE_TENANT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1739:
/* Line 1455 of yacc.c */
#line 10913 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_PURGE_RECYCLEBIN);
;}
break;
case 1740:
/* Line 1455 of yacc.c */
#line 10920 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tables = NULL;
merge_nodes(tables, result, T_TABLE_LIST, (yyvsp[(3) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OPTIMIZE_TABLE, 1, tables);
;}
break;
case 1741:
/* Line 1455 of yacc.c */
#line 10927 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OPTIMIZE_TENANT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1742:
/* Line 1455 of yacc.c */
#line 10932 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_OPTIMIZE_ALL);
;}
break;
case 1743:
/* Line 1455 of yacc.c */
#line 10938 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY);
(yyval.node)->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1744:
/* Line 1455 of yacc.c */
#line 10945 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY, 2, (yyvsp[(5) - (9)].node), (yyvsp[(9) - (9)].node));
(yyval.node)->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1745:
/* Line 1455 of yacc.c */
#line 10952 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY);
(yyval.node)->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1746:
/* Line 1455 of yacc.c */
#line 10959 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY, 2, (yyvsp[(5) - (9)].node), (yyvsp[(9) - (9)].node));
(yyval.node)->value_ = 3;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1747:
/* Line 1455 of yacc.c */
#line 10966 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY, 1, (yyvsp[(5) - (5)].node));
(yyval.node)->value_ = 4;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1748:
/* Line 1455 of yacc.c */
#line 10973 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY, 1, (yyvsp[(5) - (5)].node));
(yyval.node)->value_ = 5;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1749:
/* Line 1455 of yacc.c */
#line 10980 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TEMPORARY);
(yyval.node)->value_ = 7;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DUMP_MEMORY, 1, (yyval.node));
;}
break;
case 1750:
/* Line 1455 of yacc.c */
#line 10993 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *server_list = NULL;
merge_nodes(server_list, result, T_SERVER_INFO_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BOOTSTRAP, 3, server_list, NULL, NULL);
;}
break;
case 1751:
/* Line 1455 of yacc.c */
#line 11000 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FLUSH_CACHE, 3, (yyvsp[(4) - (7)].node), (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 1752:
/* Line 1455 of yacc.c */
#line 11005 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FLUSH_CACHE, 3, (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 1753:
/* Line 1455 of yacc.c */
#line 11010 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FLUSH_KVCACHE, 2, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1754:
/* Line 1455 of yacc.c */
#line 11015 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_FLUSH_DAG_WARNINGS);
;}
break;
case 1755:
/* Line 1455 of yacc.c */
#line 11020 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FLUSH_ILOGCACHE, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1756:
/* Line 1455 of yacc.c */
#line 11025 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_BASELINE, 4, (yyvsp[(6) - (10)].node), (yyvsp[(7) - (10)].node), (yyvsp[(8) - (10)].node), (yyvsp[(10) - (10)].node));
;}
break;
case 1757:
/* Line 1455 of yacc.c */
#line 11030 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOAD_BASELINE, 2, (yyvsp[(9) - (10)].node), (yyvsp[(10) - (10)].node));
;}
break;
case 1758:
/* Line 1455 of yacc.c */
#line 11035 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SWITCH_REPLICA_ROLE, 2, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1759:
/* Line 1455 of yacc.c */
#line 11040 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SWITCH_RS_ROLE, 2, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1760:
/* Line 1455 of yacc.c */
#line 11045 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (9)].node));
(void)((yyvsp[(7) - (9)].node));
ParseNode *change_actions = NULL;
merge_nodes(change_actions, result, T_CHANGE_LIST, (yyvsp[(8) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHANGE_REPLICA, 4, (yyvsp[(5) - (9)].node), (yyvsp[(6) - (9)].node), change_actions, (yyvsp[(9) - (9)].node));
;}
break;
case 1761:
/* Line 1455 of yacc.c */
#line 11054 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_DROP_REPLICA, 5, (yyvsp[(5) - (9)].node), (yyvsp[(6) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(8) - (9)].node), (yyvsp[(9) - (9)].node));
;}
break;
case 1762:
/* Line 1455 of yacc.c */
#line 11059 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(7) - (12)].node));
(void)((yyvsp[(10) - (12)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIGRATE_REPLICA, 5, (yyvsp[(3) - (12)].node), (yyvsp[(5) - (12)].node), (yyvsp[(8) - (12)].node), (yyvsp[(11) - (12)].node), (yyvsp[(12) - (12)].node));
;}
break;
case 1763:
/* Line 1455 of yacc.c */
#line 11065 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REPORT_REPLICA, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1764:
/* Line 1455 of yacc.c */
#line 11070 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RECYCLE_REPLICA, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1765:
/* Line 1455 of yacc.c */
#line 11075 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *start = NULL;
malloc_terminal_node(start, result->malloc_pool_, T_INT);
start->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MERGE_CONTROL, 2, start, (yyvsp[(5) - (5)].node));
;}
break;
case 1766:
/* Line 1455 of yacc.c */
#line 11083 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MERGE_CONTROL, 2, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1767:
/* Line 1455 of yacc.c */
#line 11088 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RECOVERY_CONTROL, 2, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1768:
/* Line 1455 of yacc.c */
#line 11093 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CLEAR_MERGE_ERROR);
;}
break;
case 1769:
/* Line 1455 of yacc.c */
#line 11098 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CANCEL_TASK, 2, (yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1770:
/* Line 1455 of yacc.c */
#line 11103 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FREEZE, 2, type, (yyvsp[(5) - (5)].node));
;}
break;
case 1771:
/* Line 1455 of yacc.c */
#line 11111 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FREEZE, 2, type, NULL);
;}
break;
case 1772:
/* Line 1455 of yacc.c */
#line 11119 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FREEZE, 4, type, (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 1773:
/* Line 1455 of yacc.c */
#line 11127 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CLEAR_ROOT_TABLE, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1774:
/* Line 1455 of yacc.c */
#line 11132 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *server_list = NULL;
merge_nodes(server_list, result, T_SERVER_LIST, (yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_SERVER, 3, (yyvsp[(3) - (6)].node), server_list, (yyvsp[(6) - (6)].node));
;}
break;
case 1775:
/* Line 1455 of yacc.c */
#line 11139 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *zone_action = NULL;
malloc_terminal_node(zone_action, result->malloc_pool_, T_INT);
ParseNode *zone_options = NULL;
merge_nodes(zone_options, result, T_LINK_NODE, (yyvsp[(6) - (6)].node));
zone_action->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_ZONE, 3, zone_action, (yyvsp[(5) - (6)].node), zone_options);
;}
break;
case 1776:
/* Line 1455 of yacc.c */
#line 11149 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_ZONE, 3, (yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node), NULL);
;}
break;
case 1777:
/* Line 1455 of yacc.c */
#line 11154 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(3) - (7)].node));
(void)((yyvsp[(6) - (7)].node));
ParseNode *zone_action = NULL;
malloc_terminal_node(zone_action, result->malloc_pool_, T_INT);
ParseNode *zone_options = NULL;
merge_nodes(zone_options, result, T_LINK_NODE, (yyvsp[(7) - (7)].node));
zone_action->value_ = 5; /* 1:add,2:delete,3:start,4:stop,5:modify,6:force stop */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_ZONE, 3, zone_action, (yyvsp[(5) - (7)].node), zone_options);
;}
break;
case 1778:
/* Line 1455 of yacc.c */
#line 11166 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REFRESH_SCHEMA, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1779:
/* Line 1455 of yacc.c */
#line 11171 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REFRESH_MEMORY_STAT, 1, (yyvsp[(6) - (6)].node));
;}
break;
case 1780:
/* Line 1455 of yacc.c */
#line 11176 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)(yyvsp[(3) - (4)].node);
merge_nodes((yyval.node), result, T_SYTEM_ACTION_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SYSTEM_SET_PARAMETER, 1, (yyval.node));
;}
break;
case 1781:
/* Line 1455 of yacc.c */
#line 11183 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_SYTEM_SETTP_LIST, (yyvsp[(4) - (4)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SYSTEM_SETTP, 1, (yyval.node));
;}
break;
case 1782:
/* Line 1455 of yacc.c */
#line 11189 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CLEAR_LOCATION_CACHE, 1, (yyvsp[(6) - (6)].node));
;}
break;
case 1783:
/* Line 1455 of yacc.c */
#line 11194 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CLEAR_BALANCE_TASK, 3, (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node));
;}
break;
case 1784:
/* Line 1455 of yacc.c */
#line 11199 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RELOAD_GTS);
;}
break;
case 1785:
/* Line 1455 of yacc.c */
#line 11204 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RELOAD_UNIT);
;}
break;
case 1786:
/* Line 1455 of yacc.c */
#line 11209 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RELOAD_SERVER);
;}
break;
case 1787:
/* Line 1455 of yacc.c */
#line 11214 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RELOAD_ZONE);
;}
break;
case 1788:
/* Line 1455 of yacc.c */
#line 11219 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(5) - (9)].node));
(void)((yyvsp[(8) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIGRATE_UNIT, 2, (yyvsp[(6) - (9)].node), (yyvsp[(9) - (9)].node));
;}
break;
case 1789:
/* Line 1455 of yacc.c */
#line 11226 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MIGRATE_UNIT, 2, (yyvsp[(6) - (6)].node), NULL);
;}
break;
case 1790:
/* Line 1455 of yacc.c */
#line 11231 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_UPGRADE_VIRTUAL_SCHEMA);
;}
break;
case 1791:
/* Line 1455 of yacc.c */
#line 11236 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RUN_JOB, 2, (yyvsp[(5) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1792:
/* Line 1455 of yacc.c */
#line 11241 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_UPGRADE_CMD, 1, (yyvsp[(3) - (4)].node));
;}
break;
case 1793:
/* Line 1455 of yacc.c */
#line 11246 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_RUN_UPGRADE_JOB, 1, (yyvsp[(6) - (6)].node));
;}
break;
case 1794:
/* Line 1455 of yacc.c */
#line 11251 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_STOP_UPGRADE_JOB);
;}
break;
case 1795:
/* Line 1455 of yacc.c */
#line 11256 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ADMIN_ROLLING_UPGRADE_CMD, 1, (yyvsp[(3) - (5)].node));
;}
break;
case 1796:
/* Line 1455 of yacc.c */
#line 11261 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_REFRESH_TIME_ZONE_INFO);
;}
break;
case 1797:
/* Line 1455 of yacc.c */
#line 11266 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ENABLE_SQL_THROTTLE, 2, (yyvsp[(6) - (7)].node), (yyvsp[(7) - (7)].node));
;}
break;
case 1798:
/* Line 1455 of yacc.c */
#line 11271 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_DISABLE_SQL_THROTTLE);
;}
break;
case 1799:
/* Line 1455 of yacc.c */
#line 11276 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_DISK_VALID, 1, (yyvsp[(6) - (6)].node));
;}
break;
case 1800:
/* Line 1455 of yacc.c */
#line 11281 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RESTORE_TENANT, 2, (yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1801:
/* Line 1455 of yacc.c */
#line 11286 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PHYSICAL_RESTORE_TENANT, 5, (yyvsp[(4) - (12)].node), (yyvsp[(6) - (12)].node), (yyvsp[(8) - (12)].node), (yyvsp[(10) - (12)].node), (yyvsp[(12) - (12)].node));
;}
break;
case 1802:
/* Line 1455 of yacc.c */
#line 11291 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CHANGE_TENANT, 1, (yyvsp[(5) - (5)].node));
;}
break;
case 1803:
/* Line 1455 of yacc.c */
#line 11296 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SYSTEM_DROP_TEMP_TABLE, 1, (yyvsp[(7) - (7)].node));
;}
break;
case 1804:
/* Line 1455 of yacc.c */
#line 11301 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_SYSTEM_REFRESH_TEMP_TABLE, 1, (yyvsp[(7) - (7)].node));
;}
break;
case 1805:
/* Line 1455 of yacc.c */
#line 11306 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_DISKGROUP_ADD_DISK, 5, (yyvsp[(3) - (9)].node), (yyvsp[(6) - (9)].node), (yyvsp[(7) - (9)].node), (yyvsp[(8) - (9)].node), (yyvsp[(9) - (9)].node));
;}
break;
case 1806:
/* Line 1455 of yacc.c */
#line 11311 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ALTER_DISKGROUP_DROP_DISK, 4, (yyvsp[(3) - (8)].node), (yyvsp[(6) - (8)].node), (yyvsp[(7) - (8)].node), (yyvsp[(8) - (8)].node));
;}
break;
case 1807:
/* Line 1455 of yacc.c */
#line 11316 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *enable = NULL;
malloc_terminal_node(enable, result->malloc_pool_, T_INT);
enable->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ARCHIVE_LOG, 1, enable);
;}
break;
case 1808:
/* Line 1455 of yacc.c */
#line 11324 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *enable = NULL;
malloc_terminal_node(enable, result->malloc_pool_, T_INT);
enable->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ARCHIVE_LOG, 1, enable);
;}
break;
case 1809:
/* Line 1455 of yacc.c */
#line 11332 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *incremental = NULL;
malloc_terminal_node(incremental, result->malloc_pool_, T_INT);
incremental->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_DATABASE, 1, incremental);
;}
break;
case 1810:
/* Line 1455 of yacc.c */
#line 11340 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *incremental = NULL;
malloc_terminal_node(incremental, result->malloc_pool_, T_INT);
incremental->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_DATABASE, 1, incremental);
;}
break;
case 1811:
/* Line 1455 of yacc.c */
#line 11348 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 0;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1812:
/* Line 1455 of yacc.c */
#line 11361 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 1;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1813:
/* Line 1455 of yacc.c */
#line 11374 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 2;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1814:
/* Line 1455 of yacc.c */
#line 11387 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 3;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1815:
/* Line 1455 of yacc.c */
#line 11400 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 4;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = (yyvsp[(5) - (5)].node)->value_;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1816:
/* Line 1455 of yacc.c */
#line 11413 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 5;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1817:
/* Line 1455 of yacc.c */
#line 11426 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 6;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = (yyvsp[(5) - (5)].node)->value_;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1818:
/* Line 1455 of yacc.c */
#line 11439 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 7;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = (yyvsp[(5) - (5)].node)->value_;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1819:
/* Line 1455 of yacc.c */
#line 11452 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 8;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1820:
/* Line 1455 of yacc.c */
#line 11463 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *type = NULL;
malloc_terminal_node(type, result->malloc_pool_, T_INT);
type->value_ = 10;
ParseNode *value = NULL;
malloc_terminal_node(value, result->malloc_pool_, T_INT);
value->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_MANAGE, 2, type, value);
;}
break;
case 1821:
/* Line 1455 of yacc.c */
#line 11475 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *mode = NULL;
malloc_terminal_node(mode, result->malloc_pool_, T_INT);
mode->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_SET_ENCRYPTION, 2, mode, (yyvsp[(6) - (7)].node));
;}
break;
case 1822:
/* Line 1455 of yacc.c */
#line 11483 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *string_list_node = NULL;
merge_nodes(string_list_node, result, T_STRING_LIST, (yyvsp[(5) - (5)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BACKUP_SET_DECRYPTION, 1, string_list_node);
;}
break;
case 1823:
/* Line 1455 of yacc.c */
#line 11492 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(4) - (4)].node);
;}
break;
case 1824:
/* Line 1455 of yacc.c */
#line 11496 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1825:
/* Line 1455 of yacc.c */
#line 11504 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_SQL_THROTTLE_METRICS, (yyvsp[(2) - (2)].node));
;}
break;
case 1826:
/* Line 1455 of yacc.c */
#line 11511 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1827:
/* Line 1455 of yacc.c */
#line 11515 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1828:
/* Line 1455 of yacc.c */
#line 11522 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_RT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1829:
/* Line 1455 of yacc.c */
#line 11526 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CPU, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1830:
/* Line 1455 of yacc.c */
#line 11530 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_IO, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1831:
/* Line 1455 of yacc.c */
#line 11534 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_NETWORK, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1832:
/* Line 1455 of yacc.c */
#line 11538 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LOGICAL_READS, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1833:
/* Line 1455 of yacc.c */
#line 11542 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_QUEUE_TIME, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1834:
/* Line 1455 of yacc.c */
#line 11549 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 1835:
/* Line 1455 of yacc.c */
#line 11553 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1836:
/* Line 1455 of yacc.c */
#line 11558 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TENANT_NAME);
(yyval.node)->str_value_ = (yyvsp[(1) - (1)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(1) - (1)].node)->str_len_;
;}
break;
case 1837:
/* Line 1455 of yacc.c */
#line 11564 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_terminal_node((yyval.node), result->malloc_pool_, T_TENANT_ID);
(yyval.node)->value_ = (yyvsp[(3) - (3)].node)->value_;
;}
break;
case 1838:
/* Line 1455 of yacc.c */
#line 11573 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_ALL;
;}
break;
case 1839:
/* Line 1455 of yacc.c */
#line 11578 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_LOCATION;
;}
break;
case 1840:
/* Line 1455 of yacc.c */
#line 11583 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_CLOG;
;}
break;
case 1841:
/* Line 1455 of yacc.c */
#line 11588 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_ILOG;
;}
break;
case 1842:
/* Line 1455 of yacc.c */
#line 11593 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_COLUMN_STAT;
;}
break;
case 1843:
/* Line 1455 of yacc.c */
#line 11598 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_BLOCK_INDEX;
;}
break;
case 1844:
/* Line 1455 of yacc.c */
#line 11603 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_BLOCK;
;}
break;
case 1845:
/* Line 1455 of yacc.c */
#line 11608 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_ROW;
;}
break;
case 1846:
/* Line 1455 of yacc.c */
#line 11613 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_BLOOM_FILTER;
;}
break;
case 1847:
/* Line 1455 of yacc.c */
#line 11618 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_SCHEMA;
;}
break;
case 1848:
/* Line 1455 of yacc.c */
#line 11623 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_PLAN;
;}
break;
case 1849:
/* Line 1455 of yacc.c */
#line 11628 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_SQL_AUDIT;
;}
break;
case 1850:
/* Line 1455 of yacc.c */
#line 11633 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_PL_OBJ;
;}
break;
case 1851:
/* Line 1455 of yacc.c */
#line 11638 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = CACHE_TYPE_PS_OBJ;
;}
break;
case 1852:
/* Line 1455 of yacc.c */
#line 11646 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
;}
break;
case 1853:
/* Line 1455 of yacc.c */
#line 11652 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1854:
/* Line 1455 of yacc.c */
#line 11658 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1855:
/* Line 1455 of yacc.c */
#line 11666 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BALANCE_TASK_TYPE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1856:
/* Line 1455 of yacc.c */
#line 11670 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1857:
/* Line 1455 of yacc.c */
#line 11674 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_TENANT_LIST, (yyvsp[(3) - (3)].node));
;}
break;
case 1858:
/* Line 1455 of yacc.c */
#line 11677 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1859:
/* Line 1455 of yacc.c */
#line 11681 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
merge_nodes((yyval.node), result, T_TENANT_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 1860:
/* Line 1455 of yacc.c */
#line 11689 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1861:
/* Line 1455 of yacc.c */
#line 11693 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1862:
/* Line 1455 of yacc.c */
#line 11699 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BOOL);
(yyval.node)->value_ = 1;
;}
break;
case 1863:
/* Line 1455 of yacc.c */
#line 11704 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_BOOL);
(yyval.node)->value_ = 0;
;}
break;
case 1864:
/* Line 1455 of yacc.c */
#line 11711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
merge_nodes((yyval.node), result, T_ZONE_LIST, (yyvsp[(3) - (3)].node));
;}
break;
case 1865:
/* Line 1455 of yacc.c */
#line 11714 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.node) = NULL;;}
break;
case 1866:
/* Line 1455 of yacc.c */
#line 11718 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1867:
/* Line 1455 of yacc.c */
#line 11722 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1868:
/* Line 1455 of yacc.c */
#line 11729 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (9)].node));
(void)((yyvsp[(5) - (9)].node));
(void)((yyvsp[(8) - (9)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SERVER_INFO, 3, (yyvsp[(3) - (9)].node), (yyvsp[(6) - (9)].node), (yyvsp[(9) - (9)].node));
;}
break;
case 1869:
/* Line 1455 of yacc.c */
#line 11736 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (6)].node));
(void)((yyvsp[(5) - (6)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SERVER_INFO, 3, NULL, (yyvsp[(3) - (6)].node), (yyvsp[(6) - (6)].node));
;}
break;
case 1870:
/* Line 1455 of yacc.c */
#line 11745 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1871:
/* Line 1455 of yacc.c */
#line 11750 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1872:
/* Line 1455 of yacc.c */
#line 11755 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 1873:
/* Line 1455 of yacc.c */
#line 11760 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 4;
;}
break;
case 1874:
/* Line 1455 of yacc.c */
#line 11765 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 5;
;}
break;
case 1875:
/* Line 1455 of yacc.c */
#line 11770 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 6;
;}
break;
case 1876:
/* Line 1455 of yacc.c */
#line 11775 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 7;
;}
break;
case 1877:
/* Line 1455 of yacc.c */
#line 11783 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1878:
/* Line 1455 of yacc.c */
#line 11787 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1879:
/* Line 1455 of yacc.c */
#line 11794 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1880:
/* Line 1455 of yacc.c */
#line 11798 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (5)].node)) ; /* make bison mute */
merge_nodes((yyval.node), result, T_SERVER_LIST, (yyvsp[(4) - (5)].node));
;}
break;
case 1881:
/* Line 1455 of yacc.c */
#line 11806 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1882:
/* Line 1455 of yacc.c */
#line 11810 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *server_list = NULL;
merge_nodes(server_list, result, T_SERVER_LIST, (yyvsp[(2) - (2)].node));
(yyval.node) = server_list;
;}
break;
case 1883:
/* Line 1455 of yacc.c */
#line 11818 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1884:
/* Line 1455 of yacc.c */
#line 11823 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 1885:
/* Line 1455 of yacc.c */
#line 11828 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 4;
;}
break;
case 1886:
/* Line 1455 of yacc.c */
#line 11833 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 6;
;}
break;
case 1887:
/* Line 1455 of yacc.c */
#line 11838 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 7;
;}
break;
case 1888:
/* Line 1455 of yacc.c */
#line 11846 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_IP_PORT, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1889:
/* Line 1455 of yacc.c */
#line 11854 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ZONE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1890:
/* Line 1455 of yacc.c */
#line 11862 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1891:
/* Line 1455 of yacc.c */
#line 11866 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1892:
/* Line 1455 of yacc.c */
#line 11873 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_TIMESTAMP, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1893:
/* Line 1455 of yacc.c */
#line 11878 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1894:
/* Line 1455 of yacc.c */
#line 11885 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1895:
/* Line 1455 of yacc.c */
#line 11889 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1896:
/* Line 1455 of yacc.c */
#line 11896 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1897:
/* Line 1455 of yacc.c */
#line 11900 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1898:
/* Line 1455 of yacc.c */
#line 11907 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
(yyval.node)->type_ = T_REGION;
;}
break;
case 1899:
/* Line 1455 of yacc.c */
#line 11913 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
(yyval.node)->type_ = T_IDC;
;}
break;
case 1900:
/* Line 1455 of yacc.c */
#line 11919 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
(yyval.node)->type_ = T_ZONE_TYPE;
;}
break;
case 1901:
/* Line 1455 of yacc.c */
#line 11928 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1902:
/* Line 1455 of yacc.c */
#line 11932 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1903:
/* Line 1455 of yacc.c */
#line 11936 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1904:
/* Line 1455 of yacc.c */
#line 11943 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1905:
/* Line 1455 of yacc.c */
#line 11947 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1906:
/* Line 1455 of yacc.c */
#line 11951 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1907:
/* Line 1455 of yacc.c */
#line 11958 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ID_DESC, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1908:
/* Line 1455 of yacc.c */
#line 11966 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1909:
/* Line 1455 of yacc.c */
#line 11970 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1910:
/* Line 1455 of yacc.c */
#line 11974 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1911:
/* Line 1455 of yacc.c */
#line 11981 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_PARTITION_ID_SERVER, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1912:
/* Line 1455 of yacc.c */
#line 11985 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SERVER_TENANT, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1913:
/* Line 1455 of yacc.c */
#line 11989 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ZONE_TENANT, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1914:
/* Line 1455 of yacc.c */
#line 11996 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1915:
/* Line 1455 of yacc.c */
#line 12001 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1916:
/* Line 1455 of yacc.c */
#line 12009 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1917:
/* Line 1455 of yacc.c */
#line 12013 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
;}
break;
case 1918:
/* Line 1455 of yacc.c */
#line 12020 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_REPLICA_TYPE, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1919:
/* Line 1455 of yacc.c */
#line 12024 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_MEMSTORE_PERCENT, 1, (yyvsp[(1) - (1)].node));
;}
break;
case 1920:
/* Line 1455 of yacc.c */
#line 12031 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 1921:
/* Line 1455 of yacc.c */
#line 12039 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
(yyval.node) = (yyvsp[(3) - (3)].node);
;}
break;
case 1922:
/* Line 1455 of yacc.c */
#line 12047 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
// START is 1
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1923:
/* Line 1455 of yacc.c */
#line 12053 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 1924:
/* Line 1455 of yacc.c */
#line 12061 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_BASELINE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1925:
/* Line 1455 of yacc.c */
#line 12069 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1926:
/* Line 1455 of yacc.c */
#line 12073 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1927:
/* Line 1455 of yacc.c */
#line 12081 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SQL_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1928:
/* Line 1455 of yacc.c */
#line 12089 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1929:
/* Line 1455 of yacc.c */
#line 12093 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1930:
/* Line 1455 of yacc.c */
#line 12100 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ASSIGN_ITEM, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1931:
/* Line 1455 of yacc.c */
#line 12107 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TENANT_NAME, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1932:
/* Line 1455 of yacc.c */
#line 12115 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1933:
/* Line 1455 of yacc.c */
#line 12119 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1934:
/* Line 1455 of yacc.c */
#line 12126 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_CACHE_NAME, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1935:
/* Line 1455 of yacc.c */
#line 12134 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1936:
/* Line 1455 of yacc.c */
#line 12138 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1937:
/* Line 1455 of yacc.c */
#line 12145 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_FILE_ID, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1938:
/* Line 1455 of yacc.c */
#line 12153 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node)
;}
break;
case 1939:
/* Line 1455 of yacc.c */
#line 12157 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1940:
/* Line 1455 of yacc.c */
#line 12164 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1941:
/* Line 1455 of yacc.c */
#line 12169 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1942:
/* Line 1455 of yacc.c */
#line 12176 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1943:
/* Line 1455 of yacc.c */
#line 12180 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1944:
/* Line 1455 of yacc.c */
#line 12188 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SYSTEM_ACTION, 5,
(yyvsp[(1) - (7)].node), /* param_name */
(yyvsp[(3) - (7)].node), /* param_value */
(yyvsp[(4) - (7)].node), /* comment */
(yyvsp[(6) - (7)].node), /* zone or server */
(yyvsp[(7) - (7)].node) /* tenant */
);
(yyval.node)->value_ = (yyvsp[(5) - (7)].ival)[0]; /* scope */
;}
break;
case 1945:
/* Line 1455 of yacc.c */
#line 12201 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *tablet_size = NULL;
make_name_node(tablet_size, result->malloc_pool_, "tablet_size");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SYSTEM_ACTION, 5,
tablet_size, /* param_name */
(yyvsp[(3) - (7)].node), /* param_value */
(yyvsp[(4) - (7)].node), /* comment */
(yyvsp[(6) - (7)].node), /* zone or server */
(yyvsp[(7) - (7)].node) /* tenant */
);
(yyval.node)->value_ = (yyvsp[(5) - (7)].ival)[0]; /* scope */
;}
break;
case 1946:
/* Line 1455 of yacc.c */
#line 12216 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *cluster_id = NULL;
make_name_node(cluster_id, result->malloc_pool_, "cluster_id");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SYSTEM_ACTION, 5,
cluster_id, /* param_name */
(yyvsp[(3) - (7)].node), /* param_value */
(yyvsp[(4) - (7)].node), /* comment */
(yyvsp[(6) - (7)].node), /* zone or server */
(yyvsp[(7) - (7)].node) /* tenant */
);
(yyval.node)->value_ = (yyvsp[(5) - (7)].ival)[0]; /* scope */
;}
break;
case 1947:
/* Line 1455 of yacc.c */
#line 12231 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
ParseNode *rootservice_list = NULL;
make_name_node(rootservice_list, result->malloc_pool_, "rootservice_list");
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SYSTEM_ACTION, 5,
rootservice_list, /* param_name */
(yyvsp[(3) - (7)].node), /* param_value */
(yyvsp[(4) - (7)].node), /* comment */
(yyvsp[(6) - (7)].node), /* zone or server */
(yyvsp[(7) - (7)].node) /* tenant */
);
(yyval.node)->value_ = (yyvsp[(5) - (7)].ival)[0]; /* scope */
;}
break;
case 1948:
/* Line 1455 of yacc.c */
#line 12247 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(2) - (2)].node); ;}
break;
case 1949:
/* Line 1455 of yacc.c */
#line 12249 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = NULL; ;}
break;
case 1950:
/* Line 1455 of yacc.c */
#line 12254 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1951:
/* Line 1455 of yacc.c */
#line 12258 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_LINK_NODE, 2, (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node));
;}
break;
case 1952:
/* Line 1455 of yacc.c */
#line 12262 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = NULL;
;}
break;
case 1953:
/* Line 1455 of yacc.c */
#line 12269 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TP_NO, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1954:
/* Line 1455 of yacc.c */
#line 12274 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TP_NAME, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1955:
/* Line 1455 of yacc.c */
#line 12279 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_OCCUR, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1956:
/* Line 1455 of yacc.c */
#line 12284 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRIGGER_MODE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1957:
/* Line 1455 of yacc.c */
#line 12289 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node)) ; /* make bison mute */
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_ERROR_CODE, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1958:
/* Line 1455 of yacc.c */
#line 12297 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.ival)[0]=1;;}
break;
case 1959:
/* Line 1455 of yacc.c */
#line 12299 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{(yyval.ival)[0]=0;;}
break;
case 1960:
/* Line 1455 of yacc.c */
#line 12304 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 0; ;}
break;
case 1961:
/* Line 1455 of yacc.c */
#line 12306 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 1; ;}
break;
case 1962:
/* Line 1455 of yacc.c */
#line 12308 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1963:
/* Line 1455 of yacc.c */
#line 12310 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.ival)[0] = 2; ;}
break;
case 1964:
/* Line 1455 of yacc.c */
#line 12330 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
;}
break;
case 1965:
/* Line 1455 of yacc.c */
#line 12335 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1966:
/* Line 1455 of yacc.c */
#line 12343 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1967:
/* Line 1455 of yacc.c */
#line 12348 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1968:
/* Line 1455 of yacc.c */
#line 12358 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_NAMES, 2, (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
;}
break;
case 1969:
/* Line 1455 of yacc.c */
#line 12366 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(void)((yyvsp[(2) - (3)].node));
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_SET_CHARSET, 1, (yyvsp[(3) - (3)].node));
;}
break;
case 1970:
/* Line 1455 of yacc.c */
#line 12374 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION, 2, (yyval.node), (yyvsp[(3) - (3)].node));
;}
break;
case 1971:
/* Line 1455 of yacc.c */
#line 12380 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 1972:
/* Line 1455 of yacc.c */
#line 12386 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 1973:
/* Line 1455 of yacc.c */
#line 12392 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION, 2, (yyval.node), (yyvsp[(4) - (4)].node));
;}
break;
case 1974:
/* Line 1455 of yacc.c */
#line 12400 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION_CHARACTERISTICS, 2, (yyvsp[(1) - (1)].node), NULL);
;}
break;
case 1975:
/* Line 1455 of yacc.c */
#line 12404 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION_CHARACTERISTICS, 2, NULL, (yyvsp[(3) - (3)].node));
;}
break;
case 1976:
/* Line 1455 of yacc.c */
#line 12408 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION_CHARACTERISTICS, 2, (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node));
;}
break;
case 1977:
/* Line 1455 of yacc.c */
#line 12412 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_non_terminal_node((yyval.node), result->malloc_pool_, T_TRANSACTION_CHARACTERISTICS, 2, (yyvsp[(5) - (5)].node), (yyvsp[(3) - (5)].node));
;}
break;
case 1978:
/* Line 1455 of yacc.c */
#line 12418 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = OB_TRANS_READ_ONLY;
;}
break;
case 1979:
/* Line 1455 of yacc.c */
#line 12423 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = OB_TRANS_READ_WRITE;
;}
break;
case 1980:
/* Line 1455 of yacc.c */
#line 12430 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 0;
;}
break;
case 1981:
/* Line 1455 of yacc.c */
#line 12435 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 1;
;}
break;
case 1982:
/* Line 1455 of yacc.c */
#line 12440 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 2;
;}
break;
case 1983:
/* Line 1455 of yacc.c */
#line 12445 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = 3;
;}
break;
case 1984:
/* Line 1455 of yacc.c */
#line 12456 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_CREATE_SAVEPOINT);
(yyval.node)->str_value_ = (yyvsp[(2) - (2)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(2) - (2)].node)->str_len_;
;}
break;
case 1985:
/* Line 1455 of yacc.c */
#line 12464 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ROLLBACK_SAVEPOINT);
(yyval.node)->str_value_ = (yyvsp[(3) - (3)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(3) - (3)].node)->str_len_;
;}
break;
case 1986:
/* Line 1455 of yacc.c */
#line 12470 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ROLLBACK_SAVEPOINT);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
;}
break;
case 1987:
/* Line 1455 of yacc.c */
#line 12476 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_ROLLBACK_SAVEPOINT);
(yyval.node)->str_value_ = (yyvsp[(4) - (4)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(4) - (4)].node)->str_len_;
;}
break;
case 1988:
/* Line 1455 of yacc.c */
#line 12484 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_RELEASE_SAVEPOINT);
(yyval.node)->str_value_ = (yyvsp[(3) - (3)].node)->str_value_;
(yyval.node)->str_len_ = (yyvsp[(3) - (3)].node)->str_len_;
;}
break;
case 1989:
/* Line 1455 of yacc.c */
#line 12499 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1990:
/* Line 1455 of yacc.c */
#line 12503 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 1991:
/* Line 1455 of yacc.c */
#line 12510 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node);;}
break;
case 1992:
/* Line 1455 of yacc.c */
#line 12512 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 1993:
/* Line 1455 of yacc.c */
#line 12518 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 1994:
/* Line 1455 of yacc.c */
#line 12520 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 1995:
/* Line 1455 of yacc.c */
#line 12527 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
(yyval.node) = (yyvsp[(1) - (1)].node);
;}
break;
case 1996:
/* Line 1455 of yacc.c */
#line 12531 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "dump");
;}
break;
case 1997:
/* Line 1455 of yacc.c */
#line 12535 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "charset");
;}
break;
case 1998:
/* Line 1455 of yacc.c */
#line 12539 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "collation");
;}
break;
case 1999:
/* Line 1455 of yacc.c */
#line 12543 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "version");
;}
break;
case 2000:
/* Line 1455 of yacc.c */
#line 12547 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "user");
;}
break;
case 2001:
/* Line 1455 of yacc.c */
#line 12551 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "database");
;}
break;
case 2002:
/* Line 1455 of yacc.c */
#line 12555 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "database");
;}
break;
case 2003:
/* Line 1455 of yacc.c */
#line 12559 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "coalesce");
;}
break;
case 2004:
/* Line 1455 of yacc.c */
#line 12563 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "repeat");
;}
break;
case 2005:
/* Line 1455 of yacc.c */
#line 12567 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "row_count");
;}
break;
case 2006:
/* Line 1455 of yacc.c */
#line 12571 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "reverse");
;}
break;
case 2007:
/* Line 1455 of yacc.c */
#line 12575 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "right");
;}
break;
case 2008:
/* Line 1455 of yacc.c */
#line 12579 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "current_user");
;}
break;
case 2009:
/* Line 1455 of yacc.c */
#line 12583 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "user");
;}
break;
case 2010:
/* Line 1455 of yacc.c */
#line 12587 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "user");
;}
break;
case 2011:
/* Line 1455 of yacc.c */
#line 12591 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "replace");
;}
break;
case 2012:
/* Line 1455 of yacc.c */
#line 12595 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "truncate");
;}
break;
case 2013:
/* Line 1455 of yacc.c */
#line 12599 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
make_name_node((yyval.node), result->malloc_pool_, "format");
;}
break;
case 2014:
/* Line 1455 of yacc.c */
#line 12606 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.node) = (yyvsp[(1) - (1)].node); ;}
break;
case 2015:
/* Line 1455 of yacc.c */
#line 12608 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
get_non_reserved_node((yyval.node), result->malloc_pool_, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2016:
/* Line 1455 of yacc.c */
#line 12615 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_DAY;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2017:
/* Line 1455 of yacc.c */
#line 12623 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_DAY_HOUR;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2018:
/* Line 1455 of yacc.c */
#line 12631 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_DAY_MICROSECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2019:
/* Line 1455 of yacc.c */
#line 12639 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_DAY_MINUTE;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2020:
/* Line 1455 of yacc.c */
#line 12647 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_DAY_SECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2021:
/* Line 1455 of yacc.c */
#line 12655 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_HOUR;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2022:
/* Line 1455 of yacc.c */
#line 12663 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_HOUR_MICROSECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2023:
/* Line 1455 of yacc.c */
#line 12671 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_HOUR_MINUTE;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2024:
/* Line 1455 of yacc.c */
#line 12679 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_HOUR_SECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2025:
/* Line 1455 of yacc.c */
#line 12687 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_MICROSECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2026:
/* Line 1455 of yacc.c */
#line 12695 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_MINUTE;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2027:
/* Line 1455 of yacc.c */
#line 12703 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_MINUTE_MICROSECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2028:
/* Line 1455 of yacc.c */
#line 12711 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_MINUTE_SECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2029:
/* Line 1455 of yacc.c */
#line 12719 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_MONTH;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2030:
/* Line 1455 of yacc.c */
#line 12727 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_QUARTER;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2031:
/* Line 1455 of yacc.c */
#line 12735 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_SECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2032:
/* Line 1455 of yacc.c */
#line 12743 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_SECOND_MICROSECOND;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2033:
/* Line 1455 of yacc.c */
#line 12751 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_WEEK;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2034:
/* Line 1455 of yacc.c */
#line 12759 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_YEAR;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2035:
/* Line 1455 of yacc.c */
#line 12767 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{
malloc_terminal_node((yyval.node), result->malloc_pool_, T_INT);
(yyval.node)->value_ = DATE_UNIT_YEAR_MONTH;
(yyval.node)->is_hidden_const_ = 1;
(yyval.node)->is_date_unit_ = 1;
dup_expr_string((yyval.node), result, (yylsp[(1) - (1)]).first_column, (yylsp[(1) - (1)]).last_column);
;}
break;
case 2036:
/* Line 1455 of yacc.c */
#line 12777 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.non_reserved_keyword)=(yyvsp[(1) - (1)].non_reserved_keyword);;}
break;
case 2037:
/* Line 1455 of yacc.c */
#line 12778 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.non_reserved_keyword)=(yyvsp[(1) - (1)].non_reserved_keyword);;}
break;
case 2038:
/* Line 1455 of yacc.c */
#line 12779 "../../../src/sql/parser/sql_parser_mysql_mode.y"
{ (yyval.non_reserved_keyword)=(yyvsp[(1) - (1)].non_reserved_keyword);;}
break;
/* Line 1455 of yacc.c */
#line 53752 "../../../src/sql/parser/sql_parser_mysql_mode_tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
*++yyvsp = yyval;
*++yylsp = yyloc;
/* Now `shift' the result of the reduction. Determine what state
that goes to, based on the state we popped back to and the rule
number reduced by. */
yyn = yyr1[yyn];
yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
yystate = yytable[yystate];
else
yystate = yydefgoto[yyn - YYNTOKENS];
goto yynewstate;
/*------------------------------------.
| yyerrlab -- here on detecting error |
`------------------------------------*/
yyerrlab:
/* If not already recovering from an error, report this error. */
if (!yyerrstatus)
{
++yynerrs;
#if ! YYERROR_VERBOSE
yyerror (&yylloc, result, YY_("syntax error"));
#else
{
YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
{
YYSIZE_T yyalloc = 2 * yysize;
if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
yyalloc = YYSTACK_ALLOC_MAXIMUM;
if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
yymsg = (char *) YYSTACK_ALLOC (yyalloc);
if (yymsg)
yymsg_alloc = yyalloc;
else
{
yymsg = yymsgbuf;
yymsg_alloc = sizeof yymsgbuf;
}
}
if (0 < yysize && yysize <= yymsg_alloc)
{
(void) yysyntax_error (yymsg, yystate, yychar);
yyerror (&yylloc, result, yymsg);
}
else
{
yyerror (&yylloc, result, YY_("syntax error"));
if (yysize != 0)
goto yyexhaustedlab;
}
}
#endif
}
yyerror_range[0] = 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, result);
yychar = YYEMPTY;
}
}
/* Else will try to reuse lookahead token after shifting the error
token. */
goto yyerrlab1;
/*---------------------------------------------------.
| yyerrorlab -- error raised explicitly by YYERROR. |
`---------------------------------------------------*/
yyerrorlab:
/* Pacify compilers like GCC when the user code never invokes
YYERROR and the label yyerrorlab therefore never appears in user
code. */
if (/*CONSTCOND*/ 0)
goto yyerrorlab;
yyerror_range[0] = yylsp[1-yylen];
/* Do not reclaim the symbols of the rule which action triggered
this YYERROR. */
YYPOPSTACK (yylen);
yylen = 0;
YY_STACK_PRINT (yyss, yyssp);
yystate = *yyssp;
goto yyerrlab1;
/*-------------------------------------------------------------.
| yyerrlab1 -- common code for both syntax error and YYERROR. |
`-------------------------------------------------------------*/
yyerrlab1:
yyerrstatus = 3; /* Each real token shifted decrements this. */
for (;;)
{
yyn = yypact[yystate];
if (yyn != YYPACT_NINF)
{
yyn += YYTERROR;
if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
{
yyn = yytable[yyn];
if (0 < yyn)
break;
}
}
/* Pop the current state because it cannot handle the error token. */
if (yyssp == yyss)
YYABORT;
yyerror_range[0] = *yylsp;
yydestruct ("Error: popping",
yystos[yystate], yyvsp, yylsp, result);
YYPOPSTACK (1);
yystate = *yyssp;
YY_STACK_PRINT (yyss, yyssp);
}
*++yyvsp = yylval;
yyerror_range[1] = yylloc;
/* Using YYLLOC is tempting, but would change the location of
the lookahead. YYLOC is available though. */
YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2);
*++yylsp = yyloc;
/* Shift the error token. */
YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
yystate = yyn;
goto yynewstate;
/*-------------------------------------.
| yyacceptlab -- YYACCEPT comes here. |
`-------------------------------------*/
yyacceptlab:
yyresult = 0;
goto yyreturn;
/*-----------------------------------.
| yyabortlab -- YYABORT comes here. |
`-----------------------------------*/
yyabortlab:
yyresult = 1;
goto yyreturn;
#if !defined(yyoverflow) || YYERROR_VERBOSE
/*-------------------------------------------------.
| yyexhaustedlab -- memory exhaustion comes here. |
`-------------------------------------------------*/
yyexhaustedlab:
yyerror (&yylloc, result, YY_("memory exhausted"));
yyresult = 2;
/* Fall through. */
#endif
yyreturn:
if (yychar != YYEMPTY)
yydestruct ("Cleanup: discarding lookahead",
yytoken, &yylval, &yylloc, result);
/* Do not reclaim the symbols of the rule which action triggered
this YYABORT or YYACCEPT. */
YYPOPSTACK (yylen);
YY_STACK_PRINT (yyss, yyssp);
while (yyssp != yyss)
{
yydestruct ("Cleanup: popping",
yystos[*yyssp], yyvsp, yylsp, result);
YYPOPSTACK (1);
}
#ifndef yyoverflow
if (yyss != yyssa)
YYSTACK_FREE (yyss);
#endif
#if YYERROR_VERBOSE
if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
#endif
/* Make sure YYID is used. */
return YYID (yyresult);
}
/* Line 1675 of yacc.c */
#line 13666 "../../../src/sql/parser/sql_parser_mysql_mode.y"
////////////////////////////////////////////////////////////////
void yyerror(void *yylloc, ParseResult *p, char *s, ...)
{
if (OB_LIKELY(NULL != p)) {
p->result_tree_ = 0;
va_list ap;
va_start(ap, s);
vsnprintf(p->error_msg_, MAX_ERROR_MSG, s, ap);
if (OB_LIKELY(NULL != yylloc)) {
YYLTYPE *yylloc_pointer = (YYLTYPE *)yylloc;
if (OB_LIKELY(NULL != p->input_sql_) && p->input_sql_[yylloc_pointer->first_column - 1] != '\'') {
p->start_col_ = yylloc_pointer->first_column;
}
p->end_col_ = yylloc_pointer->last_column;
p->line_ = yylloc_pointer->first_line;
}
va_end(ap);
}
}
void obsql_mysql_parser_fatal_error(yyconst char *msg, yyscan_t yyscanner)
{
if (OB_LIKELY(NULL != msg)) {
(void)fprintf(stderr, "FATAL ERROR:%s\n", msg);
}
ParseResult *p = obsql_mysql_yyget_extra(yyscanner);
longjmp(p->jmp_buf_, 1);//the secord param must be non-zero value
}
int obsql_mysql_multi_fast_parse(ParseResult *p)
{
int ret = 0;
if (OB_UNLIKELY(NULL == p)) {
ret = -1;
} else {
/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Location data for the lookahead symbol. */
YYLTYPE yylloc;
int token = YYEMPTY;
bool has_more = true;
while (0 == ret && has_more) {
token = obsql_mysql_yylex(&yylval, &yylloc, p->yyscan_info_);
switch (token) {
case ERROR:
ret = -1;
break;
case PARSER_SYNTAX_ERROR:
ret = OB_PARSER_ERR_PARSE_SQL;
break;
case END_P:
case DELIMITER:
/* fall through */
has_more = false;
default:
break;
}
} /* end while */
p->end_col_ = yylloc.last_column;
}
return ret;
}
int obsql_mysql_fast_parse(ParseResult *p)
{
int ret = 0;
if (OB_UNLIKELY(NULL == p)) {
ret = -1;
} else {
/* The semantic value of the lookahead symbol. */
YYSTYPE yylval;
/* Location data for the lookahead symbol. */
YYLTYPE yylloc;
int token = YYEMPTY;
while ((0 == ret) && END_P != (token = obsql_mysql_yylex(&yylval, &yylloc, p->yyscan_info_))) {
switch (token) {
case ERROR:
case PARSER_SYNTAX_ERROR: {
ret = -1;
break;
}
default: {
if (p->is_ignore_token_) {
if (SELECT_HINT_BEGIN == token ||
UPDATE_HINT_BEGIN == token ||
DELETE_HINT_BEGIN == token ||
INSERT_HINT_BEGIN == token ||
REPLACE_HINT_BEGIN == token ||
LOAD_DATA_HINT_BEGIN == token
/* token == INSERT_HINT_BEGIN */) {
const char *hint_begin = obsql_mysql_yyget_text(p->yyscan_info_);
const char *slash = memchr(hint_begin,
'/',
obsql_mysql_yyget_leng(p->yyscan_info_));
int length = slash - hint_begin;
memmove(p->no_param_sql_ + p->no_param_sql_len_, hint_begin, slash - hint_begin);
p->no_param_sql_len_ += length;
p->token_num_++;
} else if (token == HINT_END) {
p->is_ignore_token_ = false;
} else {/*do nothing*/}
} else {
memmove(p->no_param_sql_ + p->no_param_sql_len_,
obsql_mysql_yyget_text(p->yyscan_info_),
obsql_mysql_yyget_leng(p->yyscan_info_));
p->no_param_sql_len_ += obsql_mysql_yyget_leng(p->yyscan_info_);
p->token_num_++;
}
break;
}
}
} /*while end*/
int len = p->no_param_sql_len_;
p->no_param_sql_[len] = '\0';
}
return ret;
}