1 /* A Bison parser, made by GNU Bison 3.0.4.  */
2 
3 /* Bison implementation for Yacc-like parsers in C
4 
5    Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
6 
7    This program is free software: you can redistribute it and/or modify
8    it under the terms of the GNU General Public License as published by
9    the Free Software Foundation, either version 3 of the License, or
10    (at your option) any later version.
11 
12    This program is distributed in the hope that it will be useful,
13    but WITHOUT ANY WARRANTY; without even the implied warranty of
14    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15    GNU General Public License for more details.
16 
17    You should have received a copy of the GNU General Public License
18    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
19 
20 /* As a special exception, you may create a larger work that contains
21    part or all of the Bison parser skeleton and distribute that work
22    under terms of your choice, so long as that work isn't itself a
23    parser generator using the skeleton or a modified version thereof
24    as a parser skeleton.  Alternatively, if you modify or redistribute
25    the parser skeleton itself, you may (at your option) remove this
26    special exception, which will cause the skeleton and the resulting
27    Bison output files to be licensed under the GNU General Public
28    License without this special exception.
29 
30    This special exception was added by the Free Software Foundation in
31    version 2.2 of Bison.  */
32 
33 /* C LALR(1) parser skeleton written by Richard Stallman, by
34    simplifying the original so-called "semantic" parser.  */
35 
36 /* All symbols defined below should begin with yy or YY, to avoid
37    infringing on user name space.  This should be done even for local
38    variables, as they might otherwise be expanded by user macros.
39    There are some unavoidable exceptions within include files to
40    define necessary library symbols; they are noted "INFRINGES ON
41    USER NAME SPACE" below.  */
42 
43 /* Identify Bison output.  */
44 #define YYBISON 1
45 
46 /* Bison version.  */
47 #define YYBISON_VERSION "3.0.4"
48 
49 /* Skeleton name.  */
50 #define YYSKELETON_NAME "yacc.c"
51 
52 /* Pure parsers.  */
53 #define YYPURE 1
54 
55 /* Push parsers.  */
56 #define YYPUSH 0
57 
58 /* Pull parsers.  */
59 #define YYPULL 1
60 
61 
62 /* Substitute the variable and function names.  */
63 #define yyparse         minimal_base_yyparse
64 #define yylex           minimal_base_yylex
65 #define yyerror         minimal_base_yyerror
66 #define yydebug         minimal_base_yydebug
67 #define yynerrs         minimal_base_yynerrs
68 
69 
70 /* Copy the first part of user declarations.  */
71 #line 1 "gram_minimal.y" /* yacc.c:339  */
72 
73 
74 /*#define YYDEBUG 1*/
75 /*-------------------------------------------------------------------------
76  *
77  * gram.y
78  *	  POSTGRESQL BISON rules/actions
79  *
80  * Portions Copyright (c) 2003-2020, PgPool Global Development Group
81  * Portions Copyright (c) 1996-2020, PostgreSQL Global Development Group
82  * Portions Copyright (c) 1994, Regents of the University of California
83  *
84  *
85  * IDENTIFICATION
86  *	  src/backend/parser/gram.y
87  *
88  * HISTORY
89  *	  AUTHOR			DATE			MAJOR EVENT
90  *	  Andrew Yu			Sept, 1994		POSTQUEL to SQL conversion
91  *	  Andrew Yu			Oct, 1994		lispy code conversion
92  *
93  * NOTES
94  *	  CAPITALS are used to represent terminal symbols.
95  *	  non-capitals are used to represent non-terminals.
96  *
97  *	  In general, nothing in this file should initiate database accesses
98  *	  nor depend on changeable state (such as SET variables).  If you do
99  *	  database accesses, your code will fail when we have aborted the
100  *	  current transaction and are just parsing commands to find the next
101  *	  ROLLBACK or COMMIT.  If you make use of SET variables, then you
102  *	  will do the wrong thing in multi-query strings like this:
103  *			SET constraint_exclusion TO off; SELECT * FROM foo;
104  *	  because the entire string is parsed by gram.y before the SET gets
105  *	  executed.  Anything that depends on the database or changeable state
106  *	  should be handled during parse analysis so that it happens at the
107  *	  right time not the wrong time.
108  *
109  * WARNINGS
110  *	  If you use a list, make sure the datum is a node so that the printing
111  *	  routines work.
112  *
113  *	  Sometimes we assign constants to makeStrings. Make sure we don't free
114  *	  those.
115  *
116  *-------------------------------------------------------------------------
117  */
118 
119 #include "pool_parser.h"
120 #include "utils/elog.h"
121 #include "utils/palloc.h"
122 #include <ctype.h>
123 #include <limits.h>
124 #include <stdio.h>
125 #include <stdlib.h>
126 #include <string.h>
127 
128 #include "nodes.h"
129 #include "keywords.h"
130 #include "gramparse.h"
131 #include "makefuncs.h"
132 #include "pool_string.h"
133 #include "parser.h"
134 #include "pg_class.h"
135 #include "pg_trigger.h"
136 
137 /* This is a configuration parameter since PostgreSQL 9.5.
138  * We set this false in pgpool-II. This is default in PostgreSQL.
139  */
140 static bool operator_precedence_warning = false;
141 
142 /*
143  * Definition taken from
144  * postgreSQL source code file: src/include/commands/trigger.h
145  */
146 #define TRIGGER_FIRES_ON_ORIGIN                         'O'
147 #define TRIGGER_FIRES_ALWAYS                            'A'
148 #define TRIGGER_FIRES_ON_REPLICA                        'R'
149 #define TRIGGER_DISABLED                                'D'
150 
151 /*
152  * Definition taken from
153  * postgreSQL source code file: src/include/catalog/pg_class.h
154  */
155 
156 #define           REPLICA_IDENTITY_DEFAULT      'd'
157 #define           REPLICA_IDENTITY_NOTHING      'n'
158 #define           REPLICA_IDENTITY_FULL         'f'
159 #define           REPLICA_IDENTITY_INDEX        'i'
160 
161 /*
162  * Definition taken from
163  * postgreSQL source code file: src/include/catalog/pg_attribute.h
164  */
165 #define		  ATTRIBUTE_IDENTITY_ALWAYS	'a'
166 #define		  ATTRIBUTE_IDENTITY_BY_DEFAULT 'd'
167 
168 /*
169  * Definition taken from
170  * postgreSQL source code file: src/include/utils/xml.h
171  */
172 typedef enum
173 {
174 	XML_STANDALONE_YES,
175 	XML_STANDALONE_NO,
176 	XML_STANDALONE_NO_VALUE,
177 	XML_STANDALONE_OMITTED
178 } XmlStandaloneType;
179 
180 /*
181  * Location tracking support --- simpler than bison's default, since we only
182  * want to track the start position not the end position of each nonterminal.
183  */
184 #define YYLLOC_DEFAULT(Current, Rhs, N) \
185 	do { \
186 		if ((N) > 0) \
187 			(Current) = (Rhs)[1]; \
188 		else \
189 			(Current) = (-1); \
190 	} while (0)
191 
192 /*
193  * The above macro assigns -1 (unknown) as the parse location of any
194  * nonterminal that was reduced from an empty rule, or whose leftmost
195  * component was reduced from an empty rule.  This is problematic
196  * for nonterminals defined like
197  *		OptFooList: / * EMPTY * / { ... } | OptFooList Foo { ... } ;
198  * because we'll set -1 as the location during the first reduction and then
199  * copy it during each subsequent reduction, leaving us with -1 for the
200  * location even when the list is not empty.  To fix that, do this in the
201  * action for the nonempty rule(s):
202  *		if (@$ < 0) @$ = @2;
203  * (Although we have many nonterminals that follow this pattern, we only
204  * bother with fixing @$ like this when the nonterminal's parse location
205  * is actually referenced in some rule.)
206  *
207  * A cleaner answer would be to make YYLLOC_DEFAULT scan all the Rhs
208  * locations until it's found one that's not -1.  Then we'd get a correct
209  * location for any nonterminal that isn't entirely empty.  But this way
210  * would add overhead to every rule reduction, and so far there's not been
211  * a compelling reason to pay that overhead.
212  */
213 
214 /*
215  * Bison doesn't allocate anything that needs to live across parser calls,
216  * so we can easily have it use palloc instead of malloc.  This prevents
217  * memory leaks if we error out during parsing.  Note this only works with
218  * bison >= 2.0.  However, in bison 1.875 the default is to use alloca()
219  * if possible, so there's not really much problem anyhow, at least if
220  * you're building with gcc.
221  */
222 #define YYMALLOC palloc
223 #define YYFREE   pfree
224 
225 /* Private struct for the result of privilege_target production */
226 typedef struct PrivTarget
227 {
228 	GrantTargetType targtype;
229 	ObjectType	objtype;
230 	List	   *objs;
231 } PrivTarget;
232 
233 /* Private struct for the result of import_qualification production */
234 typedef struct ImportQual
235 {
236 	ImportForeignSchemaType type;
237 	List	   *table_names;
238 } ImportQual;
239 
240 /* Private struct for the result of opt_select_limit production */
241 typedef struct SelectLimit
242 {
243 	Node *limitOffset;
244 	Node *limitCount;
245 	LimitOption limitOption;
246 } SelectLimit;
247 
248 /* ConstraintAttributeSpec yields an integer bitmask of these flags: */
249 #define CAS_NOT_DEFERRABLE			0x01
250 #define CAS_DEFERRABLE				0x02
251 #define CAS_INITIALLY_IMMEDIATE		0x04
252 #define CAS_INITIALLY_DEFERRED		0x08
253 #define CAS_NOT_VALID				0x10
254 #define CAS_NO_INHERIT				0x20
255 
256 
257 #define parser_yyerror(msg)  scanner_yyerror(msg, yyscanner)
258 #define parser_errposition(pos)  scanner_errposition(pos, yyscanner)
259 
260 static void minimal_base_yyerror(YYLTYPE *yylloc, core_yyscan_t yyscanner,
261 						 const char *msg);
262 static RawStmt *makeRawStmt(Node *stmt, int stmt_location);
263 static void updateRawStmtEnd(RawStmt *rs, int end_location);
264 static Node *makeColumnRef(char *colname, List *indirection,
265 						   int location, core_yyscan_t yyscanner);
266 static Node *makeStringConst(char *str, int location);
267 static Node *makeFloatConst(char *str, int location);
268 static Node *makeBitStringConst(char *str, int location);
269 static Node *makeNullAConst(int location);
270 static Node *makeAConst(Value *v, int location);
271 static Node *makeBoolAConst(bool state, int location);
272 static RoleSpec *makeRoleSpec(RoleSpecType type, int location);
273 static void check_qualified_name(List *names, core_yyscan_t yyscanner);
274 static List *check_func_name(List *names, core_yyscan_t yyscanner);
275 static List *check_indirection(List *indirection, core_yyscan_t yyscanner);
276 static List *extractArgTypes(List *parameters);
277 static List *extractAggrArgTypes(List *aggrargs);
278 static List *makeOrderedSetArgs(List *directargs, List *orderedargs,
279 								core_yyscan_t yyscanner);
280 static void insertSelectOptions(SelectStmt *stmt,
281 								List *sortClause, List *lockingClause,
282 								SelectLimit *limitClause,
283 								WithClause *withClause,
284 								core_yyscan_t yyscanner);
285 static Node *makeSetOp(SetOperation op, bool all, Node *larg, Node *rarg);
286 static Node *doNegate(Node *n, int location);
287 static void doNegateFloat(Value *v);
288 static Node *makeAndExpr(Node *lexpr, Node *rexpr, int location);
289 static Node *makeOrExpr(Node *lexpr, Node *rexpr, int location);
290 static Node *makeNotExpr(Node *expr, int location);
291 static Node *makeAArrayExpr(List *elements, int location);
292 static Node *makeSQLValueFunction(SQLValueFunctionOp op, int32 typmod,
293 								  int location);
294 static Node *makeXmlExpr(XmlExprOp op, char *name, List *named_args,
295 						 List *args, int location);
296 static List *mergeTableFuncParameters(List *func_args, List *columns);
297 static TypeName *TableFuncTypeName(List *columns);
298 static RangeVar *makeRangeVarFromAnyName(List *names, int position, core_yyscan_t yyscanner);
299 static void SplitColQualList(List *qualList,
300 							 List **constraintList, CollateClause **collClause,
301 							 core_yyscan_t yyscanner);
302 static void processCASbits(int cas_bits, int location, const char *constrType,
303 			   bool *deferrable, bool *initdeferred, bool *not_valid,
304 			   bool *no_inherit, core_yyscan_t yyscanner);
305 static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
306 
307 
308 #line 309 "gram_minimal.c" /* yacc.c:339  */
309 
310 # ifndef YY_NULLPTR
311 #  if defined __cplusplus && 201103L <= __cplusplus
312 #   define YY_NULLPTR nullptr
313 #  else
314 #   define YY_NULLPTR 0
315 #  endif
316 # endif
317 
318 /* Enabling verbose error messages.  */
319 #ifdef YYERROR_VERBOSE
320 # undef YYERROR_VERBOSE
321 # define YYERROR_VERBOSE 1
322 #else
323 # define YYERROR_VERBOSE 0
324 #endif
325 
326 /* In a future release of Bison, this section will be replaced
327    by #include "y.tab.h".  */
328 #ifndef YY_MINIMAL_BASE_YY_Y_TAB_H_INCLUDED
329 # define YY_MINIMAL_BASE_YY_Y_TAB_H_INCLUDED
330 /* Debug traces.  */
331 #ifndef YYDEBUG
332 # define YYDEBUG 0
333 #endif
334 #if YYDEBUG
335 extern int minimal_base_yydebug;
336 #endif
337 
338 /* Token type.  */
339 #ifndef YYTOKENTYPE
340 # define YYTOKENTYPE
341   enum yytokentype
342   {
343     IDENT = 258,
344     UIDENT = 259,
345     FCONST = 260,
346     SCONST = 261,
347     USCONST = 262,
348     BCONST = 263,
349     XCONST = 264,
350     Op = 265,
351     ICONST = 266,
352     PARAM = 267,
353     TYPECAST = 268,
354     DOT_DOT = 269,
355     COLON_EQUALS = 270,
356     EQUALS_GREATER = 271,
357     LESS_EQUALS = 272,
358     GREATER_EQUALS = 273,
359     NOT_EQUALS = 274,
360     ABORT_P = 275,
361     ABSOLUTE_P = 276,
362     ACCESS = 277,
363     ACTION = 278,
364     ADD_P = 279,
365     ADMIN = 280,
366     AFTER = 281,
367     AGGREGATE = 282,
368     ALL = 283,
369     ALSO = 284,
370     ALTER = 285,
371     ALWAYS = 286,
372     ANALYSE = 287,
373     ANALYZE = 288,
374     AND = 289,
375     ANY = 290,
376     ARRAY = 291,
377     AS = 292,
378     ASC = 293,
379     ASSERTION = 294,
380     ASSIGNMENT = 295,
381     ASYMMETRIC = 296,
382     AT = 297,
383     ATTACH = 298,
384     ATTRIBUTE = 299,
385     AUTHORIZATION = 300,
386     BACKWARD = 301,
387     BEFORE = 302,
388     BEGIN_P = 303,
389     BETWEEN = 304,
390     BIGINT = 305,
391     BINARY = 306,
392     BIT = 307,
393     BOOLEAN_P = 308,
394     BOTH = 309,
395     BY = 310,
396     CACHE = 311,
397     CALL = 312,
398     CALLED = 313,
399     CASCADE = 314,
400     CASCADED = 315,
401     CASE = 316,
402     CAST = 317,
403     CATALOG_P = 318,
404     CHAIN = 319,
405     CHAR_P = 320,
406     CHARACTER = 321,
407     CHARACTERISTICS = 322,
408     CHECK = 323,
409     CHECKPOINT = 324,
410     CLASS = 325,
411     CLOSE = 326,
412     CLUSTER = 327,
413     COALESCE = 328,
414     COLLATE = 329,
415     COLLATION = 330,
416     COLUMN = 331,
417     COLUMNS = 332,
418     COMMENT = 333,
419     COMMENTS = 334,
420     COMMIT = 335,
421     COMMITTED = 336,
422     CONCURRENTLY = 337,
423     CONFIGURATION = 338,
424     CONFLICT = 339,
425     CONNECTION = 340,
426     CONSTRAINT = 341,
427     CONSTRAINTS = 342,
428     CONTENT_P = 343,
429     CONTINUE_P = 344,
430     CONVERSION_P = 345,
431     COPY = 346,
432     COST = 347,
433     CREATE = 348,
434     CROSS = 349,
435     CSV = 350,
436     CUBE = 351,
437     CURRENT_P = 352,
438     CURRENT_CATALOG = 353,
439     CURRENT_DATE = 354,
440     CURRENT_ROLE = 355,
441     CURRENT_SCHEMA = 356,
442     CURRENT_TIME = 357,
443     CURRENT_TIMESTAMP = 358,
444     CURRENT_USER = 359,
445     CURSOR = 360,
446     CYCLE = 361,
447     DATA_P = 362,
448     DATABASE = 363,
449     DAY_P = 364,
450     DEALLOCATE = 365,
451     DEC = 366,
452     DECIMAL_P = 367,
453     DECLARE = 368,
454     DEFAULT = 369,
455     DEFAULTS = 370,
456     DEFERRABLE = 371,
457     DEFERRED = 372,
458     DEFINER = 373,
459     DELETE_P = 374,
460     DELIMITER = 375,
461     DELIMITERS = 376,
462     DEPENDS = 377,
463     DESC = 378,
464     DETACH = 379,
465     DICTIONARY = 380,
466     DISABLE_P = 381,
467     DISCARD = 382,
468     DISTINCT = 383,
469     DO = 384,
470     DOCUMENT_P = 385,
471     DOMAIN_P = 386,
472     DOUBLE_P = 387,
473     DROP = 388,
474     EACH = 389,
475     ELSE = 390,
476     ENABLE_P = 391,
477     ENCODING = 392,
478     ENCRYPTED = 393,
479     END_P = 394,
480     ENUM_P = 395,
481     ESCAPE = 396,
482     EVENT = 397,
483     EXCEPT = 398,
484     EXCLUDE = 399,
485     EXCLUDING = 400,
486     EXCLUSIVE = 401,
487     EXECUTE = 402,
488     EXISTS = 403,
489     EXPLAIN = 404,
490     EXPRESSION = 405,
491     EXTENSION = 406,
492     EXTERNAL = 407,
493     EXTRACT = 408,
494     FALSE_P = 409,
495     FAMILY = 410,
496     FETCH = 411,
497     FILTER = 412,
498     FIRST_P = 413,
499     FLOAT_P = 414,
500     FOLLOWING = 415,
501     FOR = 416,
502     FORCE = 417,
503     FOREIGN = 418,
504     FORWARD = 419,
505     FREEZE = 420,
506     FROM = 421,
507     FULL = 422,
508     FUNCTION = 423,
509     FUNCTIONS = 424,
510     GENERATED = 425,
511     GLOBAL = 426,
512     GRANT = 427,
513     GRANTED = 428,
514     GREATEST = 429,
515     GROUP_P = 430,
516     GROUPING = 431,
517     GROUPS = 432,
518     HANDLER = 433,
519     HAVING = 434,
520     HEADER_P = 435,
521     HOLD = 436,
522     HOUR_P = 437,
523     IDENTITY_P = 438,
524     IF_P = 439,
525     ILIKE = 440,
526     IMMEDIATE = 441,
527     IMMUTABLE = 442,
528     IMPLICIT_P = 443,
529     IMPORT_P = 444,
530     IN_P = 445,
531     INCLUDE = 446,
532     INCLUDING = 447,
533     INCREMENT = 448,
534     INDEX = 449,
535     INDEXES = 450,
536     INHERIT = 451,
537     INHERITS = 452,
538     INITIALLY = 453,
539     INLINE_P = 454,
540     INNER_P = 455,
541     INOUT = 456,
542     INPUT_P = 457,
543     INSENSITIVE = 458,
544     INSERT = 459,
545     INSTEAD = 460,
546     INT_P = 461,
547     INTEGER = 462,
548     INTERSECT = 463,
549     INTERVAL = 464,
550     INTO = 465,
551     INVOKER = 466,
552     IS = 467,
553     ISNULL = 468,
554     ISOLATION = 469,
555     JOIN = 470,
556     KEY = 471,
557     LABEL = 472,
558     LANGUAGE = 473,
559     LARGE_P = 474,
560     LAST_P = 475,
561     LATERAL_P = 476,
562     LEADING = 477,
563     LEAKPROOF = 478,
564     LEAST = 479,
565     LEFT = 480,
566     LEVEL = 481,
567     LIKE = 482,
568     LIMIT = 483,
569     LISTEN = 484,
570     LOAD = 485,
571     LOCAL = 486,
572     LOCALTIME = 487,
573     LOCALTIMESTAMP = 488,
574     LOCATION = 489,
575     LOCK_P = 490,
576     LOCKED = 491,
577     LOGGED = 492,
578     MAPPING = 493,
579     MATCH = 494,
580     MATERIALIZED = 495,
581     MAXVALUE = 496,
582     METHOD = 497,
583     MINUTE_P = 498,
584     MINVALUE = 499,
585     MODE = 500,
586     MONTH_P = 501,
587     MOVE = 502,
588     NAME_P = 503,
589     NAMES = 504,
590     NATIONAL = 505,
591     NATURAL = 506,
592     NCHAR = 507,
593     NEW = 508,
594     NEXT = 509,
595     NFC = 510,
596     NFD = 511,
597     NFKC = 512,
598     NFKD = 513,
599     NO = 514,
600     NONE = 515,
601     NORMALIZE = 516,
602     NORMALIZED = 517,
603     NOT = 518,
604     NOTHING = 519,
605     NOTIFY = 520,
606     NOTNULL = 521,
607     NOWAIT = 522,
608     NULL_P = 523,
609     NULLIF = 524,
610     NULLS_P = 525,
611     NUMERIC = 526,
612     OBJECT_P = 527,
613     OF = 528,
614     OFF = 529,
615     OFFSET = 530,
616     OIDS = 531,
617     OLD = 532,
618     ON = 533,
619     ONLY = 534,
620     OPERATOR = 535,
621     OPTION = 536,
622     OPTIONS = 537,
623     OR = 538,
624     ORDER = 539,
625     ORDINALITY = 540,
626     OTHERS = 541,
627     OUT_P = 542,
628     OUTER_P = 543,
629     OVER = 544,
630     OVERLAPS = 545,
631     OVERLAY = 546,
632     OVERRIDING = 547,
633     OWNED = 548,
634     OWNER = 549,
635     PARALLEL = 550,
636     PARSER = 551,
637     PARTIAL = 552,
638     PARTITION = 553,
639     PASSING = 554,
640     PASSWORD = 555,
641     PGPOOL = 556,
642     PLACING = 557,
643     PLANS = 558,
644     POLICY = 559,
645     POSITION = 560,
646     PRECEDING = 561,
647     PRECISION = 562,
648     PRESERVE = 563,
649     PREPARE = 564,
650     PREPARED = 565,
651     PRIMARY = 566,
652     PRIOR = 567,
653     PRIVILEGES = 568,
654     PROCEDURAL = 569,
655     PROCEDURE = 570,
656     PROCEDURES = 571,
657     PROGRAM = 572,
658     PUBLICATION = 573,
659     QUOTE = 574,
660     RANGE = 575,
661     READ = 576,
662     REAL = 577,
663     REASSIGN = 578,
664     RECHECK = 579,
665     RECURSIVE = 580,
666     REF = 581,
667     REFERENCES = 582,
668     REFERENCING = 583,
669     REFRESH = 584,
670     REINDEX = 585,
671     RELATIVE_P = 586,
672     RELEASE = 587,
673     RENAME = 588,
674     REPEATABLE = 589,
675     REPLACE = 590,
676     REPLICA = 591,
677     RESET = 592,
678     RESTART = 593,
679     RESTRICT = 594,
680     RETURNING = 595,
681     RETURNS = 596,
682     REVOKE = 597,
683     RIGHT = 598,
684     ROLE = 599,
685     ROLLBACK = 600,
686     ROLLUP = 601,
687     ROUTINE = 602,
688     ROUTINES = 603,
689     ROW = 604,
690     ROWS = 605,
691     RULE = 606,
692     SAVEPOINT = 607,
693     SCHEMA = 608,
694     SCHEMAS = 609,
695     SCROLL = 610,
696     SEARCH = 611,
697     SECOND_P = 612,
698     SECURITY = 613,
699     SELECT = 614,
700     SEQUENCE = 615,
701     SEQUENCES = 616,
702     SERIALIZABLE = 617,
703     SERVER = 618,
704     SESSION = 619,
705     SESSION_USER = 620,
706     SET = 621,
707     SETS = 622,
708     SETOF = 623,
709     SHARE = 624,
710     SHOW = 625,
711     SIMILAR = 626,
712     SIMPLE = 627,
713     SKIP = 628,
714     SMALLINT = 629,
715     SNAPSHOT = 630,
716     SOME = 631,
717     SQL_P = 632,
718     STABLE = 633,
719     STANDALONE_P = 634,
720     START = 635,
721     STATEMENT = 636,
722     STATISTICS = 637,
723     STDIN = 638,
724     STDOUT = 639,
725     STORAGE = 640,
726     STORED = 641,
727     STRICT_P = 642,
728     STRIP_P = 643,
729     SUBSCRIPTION = 644,
730     SUBSTRING = 645,
731     SUPPORT = 646,
732     SYMMETRIC = 647,
733     SYSID = 648,
734     SYSTEM_P = 649,
735     TABLE = 650,
736     TABLES = 651,
737     TABLESAMPLE = 652,
738     TABLESPACE = 653,
739     TEMP = 654,
740     TEMPLATE = 655,
741     TEMPORARY = 656,
742     TEXT_P = 657,
743     THEN = 658,
744     TIES = 659,
745     TIME = 660,
746     TIMESTAMP = 661,
747     TO = 662,
748     TRAILING = 663,
749     TRANSACTION = 664,
750     TRANSFORM = 665,
751     TREAT = 666,
752     TRIGGER = 667,
753     TRIM = 668,
754     TRUE_P = 669,
755     TRUNCATE = 670,
756     TRUSTED = 671,
757     TYPE_P = 672,
758     TYPES_P = 673,
759     UESCAPE = 674,
760     UNBOUNDED = 675,
761     UNCOMMITTED = 676,
762     UNENCRYPTED = 677,
763     UNION = 678,
764     UNIQUE = 679,
765     UNKNOWN = 680,
766     UNLISTEN = 681,
767     UNLOGGED = 682,
768     UNTIL = 683,
769     UPDATE = 684,
770     USER = 685,
771     USING = 686,
772     VACUUM = 687,
773     VALID = 688,
774     VALIDATE = 689,
775     VALIDATOR = 690,
776     VALUE_P = 691,
777     VALUES = 692,
778     VARCHAR = 693,
779     VARIADIC = 694,
780     VARYING = 695,
781     VERBOSE = 696,
782     VERSION_P = 697,
783     VIEW = 698,
784     VIEWS = 699,
785     VOLATILE = 700,
786     WHEN = 701,
787     WHERE = 702,
788     WHITESPACE_P = 703,
789     WINDOW = 704,
790     WITH = 705,
791     WITHIN = 706,
792     WITHOUT = 707,
793     WORK = 708,
794     WRAPPER = 709,
795     WRITE = 710,
796     XML_P = 711,
797     XMLATTRIBUTES = 712,
798     XMLCONCAT = 713,
799     XMLELEMENT = 714,
800     XMLEXISTS = 715,
801     XMLFOREST = 716,
802     XMLNAMESPACES = 717,
803     XMLPARSE = 718,
804     XMLPI = 719,
805     XMLROOT = 720,
806     XMLSERIALIZE = 721,
807     XMLTABLE = 722,
808     YEAR_P = 723,
809     YES_P = 724,
810     ZONE = 725,
811     NOT_LA = 726,
812     NULLS_LA = 727,
813     WITH_LA = 728,
814     POSTFIXOP = 729,
815     UMINUS = 730
816   };
817 #endif
818 /* Tokens.  */
819 #define IDENT 258
820 #define UIDENT 259
821 #define FCONST 260
822 #define SCONST 261
823 #define USCONST 262
824 #define BCONST 263
825 #define XCONST 264
826 #define Op 265
827 #define ICONST 266
828 #define PARAM 267
829 #define TYPECAST 268
830 #define DOT_DOT 269
831 #define COLON_EQUALS 270
832 #define EQUALS_GREATER 271
833 #define LESS_EQUALS 272
834 #define GREATER_EQUALS 273
835 #define NOT_EQUALS 274
836 #define ABORT_P 275
837 #define ABSOLUTE_P 276
838 #define ACCESS 277
839 #define ACTION 278
840 #define ADD_P 279
841 #define ADMIN 280
842 #define AFTER 281
843 #define AGGREGATE 282
844 #define ALL 283
845 #define ALSO 284
846 #define ALTER 285
847 #define ALWAYS 286
848 #define ANALYSE 287
849 #define ANALYZE 288
850 #define AND 289
851 #define ANY 290
852 #define ARRAY 291
853 #define AS 292
854 #define ASC 293
855 #define ASSERTION 294
856 #define ASSIGNMENT 295
857 #define ASYMMETRIC 296
858 #define AT 297
859 #define ATTACH 298
860 #define ATTRIBUTE 299
861 #define AUTHORIZATION 300
862 #define BACKWARD 301
863 #define BEFORE 302
864 #define BEGIN_P 303
865 #define BETWEEN 304
866 #define BIGINT 305
867 #define BINARY 306
868 #define BIT 307
869 #define BOOLEAN_P 308
870 #define BOTH 309
871 #define BY 310
872 #define CACHE 311
873 #define CALL 312
874 #define CALLED 313
875 #define CASCADE 314
876 #define CASCADED 315
877 #define CASE 316
878 #define CAST 317
879 #define CATALOG_P 318
880 #define CHAIN 319
881 #define CHAR_P 320
882 #define CHARACTER 321
883 #define CHARACTERISTICS 322
884 #define CHECK 323
885 #define CHECKPOINT 324
886 #define CLASS 325
887 #define CLOSE 326
888 #define CLUSTER 327
889 #define COALESCE 328
890 #define COLLATE 329
891 #define COLLATION 330
892 #define COLUMN 331
893 #define COLUMNS 332
894 #define COMMENT 333
895 #define COMMENTS 334
896 #define COMMIT 335
897 #define COMMITTED 336
898 #define CONCURRENTLY 337
899 #define CONFIGURATION 338
900 #define CONFLICT 339
901 #define CONNECTION 340
902 #define CONSTRAINT 341
903 #define CONSTRAINTS 342
904 #define CONTENT_P 343
905 #define CONTINUE_P 344
906 #define CONVERSION_P 345
907 #define COPY 346
908 #define COST 347
909 #define CREATE 348
910 #define CROSS 349
911 #define CSV 350
912 #define CUBE 351
913 #define CURRENT_P 352
914 #define CURRENT_CATALOG 353
915 #define CURRENT_DATE 354
916 #define CURRENT_ROLE 355
917 #define CURRENT_SCHEMA 356
918 #define CURRENT_TIME 357
919 #define CURRENT_TIMESTAMP 358
920 #define CURRENT_USER 359
921 #define CURSOR 360
922 #define CYCLE 361
923 #define DATA_P 362
924 #define DATABASE 363
925 #define DAY_P 364
926 #define DEALLOCATE 365
927 #define DEC 366
928 #define DECIMAL_P 367
929 #define DECLARE 368
930 #define DEFAULT 369
931 #define DEFAULTS 370
932 #define DEFERRABLE 371
933 #define DEFERRED 372
934 #define DEFINER 373
935 #define DELETE_P 374
936 #define DELIMITER 375
937 #define DELIMITERS 376
938 #define DEPENDS 377
939 #define DESC 378
940 #define DETACH 379
941 #define DICTIONARY 380
942 #define DISABLE_P 381
943 #define DISCARD 382
944 #define DISTINCT 383
945 #define DO 384
946 #define DOCUMENT_P 385
947 #define DOMAIN_P 386
948 #define DOUBLE_P 387
949 #define DROP 388
950 #define EACH 389
951 #define ELSE 390
952 #define ENABLE_P 391
953 #define ENCODING 392
954 #define ENCRYPTED 393
955 #define END_P 394
956 #define ENUM_P 395
957 #define ESCAPE 396
958 #define EVENT 397
959 #define EXCEPT 398
960 #define EXCLUDE 399
961 #define EXCLUDING 400
962 #define EXCLUSIVE 401
963 #define EXECUTE 402
964 #define EXISTS 403
965 #define EXPLAIN 404
966 #define EXPRESSION 405
967 #define EXTENSION 406
968 #define EXTERNAL 407
969 #define EXTRACT 408
970 #define FALSE_P 409
971 #define FAMILY 410
972 #define FETCH 411
973 #define FILTER 412
974 #define FIRST_P 413
975 #define FLOAT_P 414
976 #define FOLLOWING 415
977 #define FOR 416
978 #define FORCE 417
979 #define FOREIGN 418
980 #define FORWARD 419
981 #define FREEZE 420
982 #define FROM 421
983 #define FULL 422
984 #define FUNCTION 423
985 #define FUNCTIONS 424
986 #define GENERATED 425
987 #define GLOBAL 426
988 #define GRANT 427
989 #define GRANTED 428
990 #define GREATEST 429
991 #define GROUP_P 430
992 #define GROUPING 431
993 #define GROUPS 432
994 #define HANDLER 433
995 #define HAVING 434
996 #define HEADER_P 435
997 #define HOLD 436
998 #define HOUR_P 437
999 #define IDENTITY_P 438
1000 #define IF_P 439
1001 #define ILIKE 440
1002 #define IMMEDIATE 441
1003 #define IMMUTABLE 442
1004 #define IMPLICIT_P 443
1005 #define IMPORT_P 444
1006 #define IN_P 445
1007 #define INCLUDE 446
1008 #define INCLUDING 447
1009 #define INCREMENT 448
1010 #define INDEX 449
1011 #define INDEXES 450
1012 #define INHERIT 451
1013 #define INHERITS 452
1014 #define INITIALLY 453
1015 #define INLINE_P 454
1016 #define INNER_P 455
1017 #define INOUT 456
1018 #define INPUT_P 457
1019 #define INSENSITIVE 458
1020 #define INSERT 459
1021 #define INSTEAD 460
1022 #define INT_P 461
1023 #define INTEGER 462
1024 #define INTERSECT 463
1025 #define INTERVAL 464
1026 #define INTO 465
1027 #define INVOKER 466
1028 #define IS 467
1029 #define ISNULL 468
1030 #define ISOLATION 469
1031 #define JOIN 470
1032 #define KEY 471
1033 #define LABEL 472
1034 #define LANGUAGE 473
1035 #define LARGE_P 474
1036 #define LAST_P 475
1037 #define LATERAL_P 476
1038 #define LEADING 477
1039 #define LEAKPROOF 478
1040 #define LEAST 479
1041 #define LEFT 480
1042 #define LEVEL 481
1043 #define LIKE 482
1044 #define LIMIT 483
1045 #define LISTEN 484
1046 #define LOAD 485
1047 #define LOCAL 486
1048 #define LOCALTIME 487
1049 #define LOCALTIMESTAMP 488
1050 #define LOCATION 489
1051 #define LOCK_P 490
1052 #define LOCKED 491
1053 #define LOGGED 492
1054 #define MAPPING 493
1055 #define MATCH 494
1056 #define MATERIALIZED 495
1057 #define MAXVALUE 496
1058 #define METHOD 497
1059 #define MINUTE_P 498
1060 #define MINVALUE 499
1061 #define MODE 500
1062 #define MONTH_P 501
1063 #define MOVE 502
1064 #define NAME_P 503
1065 #define NAMES 504
1066 #define NATIONAL 505
1067 #define NATURAL 506
1068 #define NCHAR 507
1069 #define NEW 508
1070 #define NEXT 509
1071 #define NFC 510
1072 #define NFD 511
1073 #define NFKC 512
1074 #define NFKD 513
1075 #define NO 514
1076 #define NONE 515
1077 #define NORMALIZE 516
1078 #define NORMALIZED 517
1079 #define NOT 518
1080 #define NOTHING 519
1081 #define NOTIFY 520
1082 #define NOTNULL 521
1083 #define NOWAIT 522
1084 #define NULL_P 523
1085 #define NULLIF 524
1086 #define NULLS_P 525
1087 #define NUMERIC 526
1088 #define OBJECT_P 527
1089 #define OF 528
1090 #define OFF 529
1091 #define OFFSET 530
1092 #define OIDS 531
1093 #define OLD 532
1094 #define ON 533
1095 #define ONLY 534
1096 #define OPERATOR 535
1097 #define OPTION 536
1098 #define OPTIONS 537
1099 #define OR 538
1100 #define ORDER 539
1101 #define ORDINALITY 540
1102 #define OTHERS 541
1103 #define OUT_P 542
1104 #define OUTER_P 543
1105 #define OVER 544
1106 #define OVERLAPS 545
1107 #define OVERLAY 546
1108 #define OVERRIDING 547
1109 #define OWNED 548
1110 #define OWNER 549
1111 #define PARALLEL 550
1112 #define PARSER 551
1113 #define PARTIAL 552
1114 #define PARTITION 553
1115 #define PASSING 554
1116 #define PASSWORD 555
1117 #define PGPOOL 556
1118 #define PLACING 557
1119 #define PLANS 558
1120 #define POLICY 559
1121 #define POSITION 560
1122 #define PRECEDING 561
1123 #define PRECISION 562
1124 #define PRESERVE 563
1125 #define PREPARE 564
1126 #define PREPARED 565
1127 #define PRIMARY 566
1128 #define PRIOR 567
1129 #define PRIVILEGES 568
1130 #define PROCEDURAL 569
1131 #define PROCEDURE 570
1132 #define PROCEDURES 571
1133 #define PROGRAM 572
1134 #define PUBLICATION 573
1135 #define QUOTE 574
1136 #define RANGE 575
1137 #define READ 576
1138 #define REAL 577
1139 #define REASSIGN 578
1140 #define RECHECK 579
1141 #define RECURSIVE 580
1142 #define REF 581
1143 #define REFERENCES 582
1144 #define REFERENCING 583
1145 #define REFRESH 584
1146 #define REINDEX 585
1147 #define RELATIVE_P 586
1148 #define RELEASE 587
1149 #define RENAME 588
1150 #define REPEATABLE 589
1151 #define REPLACE 590
1152 #define REPLICA 591
1153 #define RESET 592
1154 #define RESTART 593
1155 #define RESTRICT 594
1156 #define RETURNING 595
1157 #define RETURNS 596
1158 #define REVOKE 597
1159 #define RIGHT 598
1160 #define ROLE 599
1161 #define ROLLBACK 600
1162 #define ROLLUP 601
1163 #define ROUTINE 602
1164 #define ROUTINES 603
1165 #define ROW 604
1166 #define ROWS 605
1167 #define RULE 606
1168 #define SAVEPOINT 607
1169 #define SCHEMA 608
1170 #define SCHEMAS 609
1171 #define SCROLL 610
1172 #define SEARCH 611
1173 #define SECOND_P 612
1174 #define SECURITY 613
1175 #define SELECT 614
1176 #define SEQUENCE 615
1177 #define SEQUENCES 616
1178 #define SERIALIZABLE 617
1179 #define SERVER 618
1180 #define SESSION 619
1181 #define SESSION_USER 620
1182 #define SET 621
1183 #define SETS 622
1184 #define SETOF 623
1185 #define SHARE 624
1186 #define SHOW 625
1187 #define SIMILAR 626
1188 #define SIMPLE 627
1189 #define SKIP 628
1190 #define SMALLINT 629
1191 #define SNAPSHOT 630
1192 #define SOME 631
1193 #define SQL_P 632
1194 #define STABLE 633
1195 #define STANDALONE_P 634
1196 #define START 635
1197 #define STATEMENT 636
1198 #define STATISTICS 637
1199 #define STDIN 638
1200 #define STDOUT 639
1201 #define STORAGE 640
1202 #define STORED 641
1203 #define STRICT_P 642
1204 #define STRIP_P 643
1205 #define SUBSCRIPTION 644
1206 #define SUBSTRING 645
1207 #define SUPPORT 646
1208 #define SYMMETRIC 647
1209 #define SYSID 648
1210 #define SYSTEM_P 649
1211 #define TABLE 650
1212 #define TABLES 651
1213 #define TABLESAMPLE 652
1214 #define TABLESPACE 653
1215 #define TEMP 654
1216 #define TEMPLATE 655
1217 #define TEMPORARY 656
1218 #define TEXT_P 657
1219 #define THEN 658
1220 #define TIES 659
1221 #define TIME 660
1222 #define TIMESTAMP 661
1223 #define TO 662
1224 #define TRAILING 663
1225 #define TRANSACTION 664
1226 #define TRANSFORM 665
1227 #define TREAT 666
1228 #define TRIGGER 667
1229 #define TRIM 668
1230 #define TRUE_P 669
1231 #define TRUNCATE 670
1232 #define TRUSTED 671
1233 #define TYPE_P 672
1234 #define TYPES_P 673
1235 #define UESCAPE 674
1236 #define UNBOUNDED 675
1237 #define UNCOMMITTED 676
1238 #define UNENCRYPTED 677
1239 #define UNION 678
1240 #define UNIQUE 679
1241 #define UNKNOWN 680
1242 #define UNLISTEN 681
1243 #define UNLOGGED 682
1244 #define UNTIL 683
1245 #define UPDATE 684
1246 #define USER 685
1247 #define USING 686
1248 #define VACUUM 687
1249 #define VALID 688
1250 #define VALIDATE 689
1251 #define VALIDATOR 690
1252 #define VALUE_P 691
1253 #define VALUES 692
1254 #define VARCHAR 693
1255 #define VARIADIC 694
1256 #define VARYING 695
1257 #define VERBOSE 696
1258 #define VERSION_P 697
1259 #define VIEW 698
1260 #define VIEWS 699
1261 #define VOLATILE 700
1262 #define WHEN 701
1263 #define WHERE 702
1264 #define WHITESPACE_P 703
1265 #define WINDOW 704
1266 #define WITH 705
1267 #define WITHIN 706
1268 #define WITHOUT 707
1269 #define WORK 708
1270 #define WRAPPER 709
1271 #define WRITE 710
1272 #define XML_P 711
1273 #define XMLATTRIBUTES 712
1274 #define XMLCONCAT 713
1275 #define XMLELEMENT 714
1276 #define XMLEXISTS 715
1277 #define XMLFOREST 716
1278 #define XMLNAMESPACES 717
1279 #define XMLPARSE 718
1280 #define XMLPI 719
1281 #define XMLROOT 720
1282 #define XMLSERIALIZE 721
1283 #define XMLTABLE 722
1284 #define YEAR_P 723
1285 #define YES_P 724
1286 #define ZONE 725
1287 #define NOT_LA 726
1288 #define NULLS_LA 727
1289 #define WITH_LA 728
1290 #define POSTFIXOP 729
1291 #define UMINUS 730
1292 
1293 /* Value type.  */
1294 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
1295 
1296 union YYSTYPE
1297 {
1298 #line 247 "gram_minimal.y" /* yacc.c:355  */
1299 
1300 	core_YYSTYPE		core_yystype;
1301 	/* these fields must match core_YYSTYPE: */
1302 	int					ival;
1303 	char				*str;
1304 	const char			*keyword;
1305 
1306 	char				chr;
1307 	bool				boolean;
1308 	JoinType			jtype;
1309 	DropBehavior		dbehavior;
1310 	OnCommitAction		oncommit;
1311 	List				*list;
1312 	Node				*node;
1313 	Value				*value;
1314 	ObjectType			objtype;
1315 	TypeName			*typnam;
1316 	FunctionParameter   *fun_param;
1317 	FunctionParameterMode fun_param_mode;
1318 	ObjectWithArgs		*objwithargs;
1319 	DefElem				*defelt;
1320 	SortBy				*sortby;
1321 	WindowDef			*windef;
1322 	JoinExpr			*jexpr;
1323 	IndexElem			*ielem;
1324 	Alias				*alias;
1325 	RangeVar			*range;
1326 	IntoClause			*into;
1327 	WithClause			*with;
1328 	InferClause			*infer;
1329 	OnConflictClause	*onconflict;
1330 	A_Indices			*aind;
1331 	ResTarget			*target;
1332 	struct PrivTarget	*privtarget;
1333 	AccessPriv			*accesspriv;
1334 	struct ImportQual	*importqual;
1335 	InsertStmt			*istmt;
1336 	VariableSetStmt		*vsetstmt;
1337 	PartitionElem		*partelem;
1338 	PartitionSpec		*partspec;
1339 	PartitionBoundSpec	*partboundspec;
1340 	RoleSpec			*rolespec;
1341 	struct SelectLimit	*selectlimit;
1342 
1343 #line 1344 "gram_minimal.c" /* yacc.c:355  */
1344 };
1345 
1346 typedef union YYSTYPE YYSTYPE;
1347 # define YYSTYPE_IS_TRIVIAL 1
1348 # define YYSTYPE_IS_DECLARED 1
1349 #endif
1350 
1351 /* Location type.  */
1352 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
1353 typedef struct YYLTYPE YYLTYPE;
1354 struct YYLTYPE
1355 {
1356   int first_line;
1357   int first_column;
1358   int last_line;
1359   int last_column;
1360 };
1361 # define YYLTYPE_IS_DECLARED 1
1362 # define YYLTYPE_IS_TRIVIAL 1
1363 #endif
1364 
1365 
1366 
1367 int minimal_base_yyparse (core_yyscan_t yyscanner);
1368 
1369 #endif /* !YY_MINIMAL_BASE_YY_Y_TAB_H_INCLUDED  */
1370 
1371 /* Copy the second part of user declarations.  */
1372 
1373 #line 1374 "gram_minimal.c" /* yacc.c:358  */
1374 
1375 #ifdef short
1376 # undef short
1377 #endif
1378 
1379 #ifdef YYTYPE_UINT8
1380 typedef YYTYPE_UINT8 yytype_uint8;
1381 #else
1382 typedef unsigned char yytype_uint8;
1383 #endif
1384 
1385 #ifdef YYTYPE_INT8
1386 typedef YYTYPE_INT8 yytype_int8;
1387 #else
1388 typedef signed char yytype_int8;
1389 #endif
1390 
1391 #ifdef YYTYPE_UINT16
1392 typedef YYTYPE_UINT16 yytype_uint16;
1393 #else
1394 typedef unsigned short int yytype_uint16;
1395 #endif
1396 
1397 #ifdef YYTYPE_INT16
1398 typedef YYTYPE_INT16 yytype_int16;
1399 #else
1400 typedef short int yytype_int16;
1401 #endif
1402 
1403 #ifndef YYSIZE_T
1404 # ifdef __SIZE_TYPE__
1405 #  define YYSIZE_T __SIZE_TYPE__
1406 # elif defined size_t
1407 #  define YYSIZE_T size_t
1408 # elif ! defined YYSIZE_T
1409 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1410 #  define YYSIZE_T size_t
1411 # else
1412 #  define YYSIZE_T unsigned int
1413 # endif
1414 #endif
1415 
1416 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1417 
1418 #ifndef YY_
1419 # if defined YYENABLE_NLS && YYENABLE_NLS
1420 #  if ENABLE_NLS
1421 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
1422 #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
1423 #  endif
1424 # endif
1425 # ifndef YY_
1426 #  define YY_(Msgid) Msgid
1427 # endif
1428 #endif
1429 
1430 #ifndef YY_ATTRIBUTE
1431 # if (defined __GNUC__                                               \
1432       && (2 < __GNUC__ || (__GNUC__ == 2 && 96 <= __GNUC_MINOR__)))  \
1433      || defined __SUNPRO_C && 0x5110 <= __SUNPRO_C
1434 #  define YY_ATTRIBUTE(Spec) __attribute__(Spec)
1435 # else
1436 #  define YY_ATTRIBUTE(Spec) /* empty */
1437 # endif
1438 #endif
1439 
1440 #ifndef YY_ATTRIBUTE_PURE
1441 # define YY_ATTRIBUTE_PURE   YY_ATTRIBUTE ((__pure__))
1442 #endif
1443 
1444 #ifndef YY_ATTRIBUTE_UNUSED
1445 # define YY_ATTRIBUTE_UNUSED YY_ATTRIBUTE ((__unused__))
1446 #endif
1447 
1448 #if !defined _Noreturn \
1449      && (!defined __STDC_VERSION__ || __STDC_VERSION__ < 201112)
1450 # if defined _MSC_VER && 1200 <= _MSC_VER
1451 #  define _Noreturn __declspec (noreturn)
1452 # else
1453 #  define _Noreturn YY_ATTRIBUTE ((__noreturn__))
1454 # endif
1455 #endif
1456 
1457 /* Suppress unused-variable warnings by "using" E.  */
1458 #if ! defined lint || defined __GNUC__
1459 # define YYUSE(E) ((void) (E))
1460 #else
1461 # define YYUSE(E) /* empty */
1462 #endif
1463 
1464 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
1465 /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
1466 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
1467     _Pragma ("GCC diagnostic push") \
1468     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
1469     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
1470 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
1471     _Pragma ("GCC diagnostic pop")
1472 #else
1473 # define YY_INITIAL_VALUE(Value) Value
1474 #endif
1475 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1476 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
1477 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
1478 #endif
1479 #ifndef YY_INITIAL_VALUE
1480 # define YY_INITIAL_VALUE(Value) /* Nothing. */
1481 #endif
1482 
1483 
1484 #if ! defined yyoverflow || YYERROR_VERBOSE
1485 
1486 /* The parser invokes alloca or malloc; define the necessary symbols.  */
1487 
1488 # ifdef YYSTACK_USE_ALLOCA
1489 #  if YYSTACK_USE_ALLOCA
1490 #   ifdef __GNUC__
1491 #    define YYSTACK_ALLOC __builtin_alloca
1492 #   elif defined __BUILTIN_VA_ARG_INCR
1493 #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
1494 #   elif defined _AIX
1495 #    define YYSTACK_ALLOC __alloca
1496 #   elif defined _MSC_VER
1497 #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
1498 #    define alloca _alloca
1499 #   else
1500 #    define YYSTACK_ALLOC alloca
1501 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS
1502 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1503       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
1504 #     ifndef EXIT_SUCCESS
1505 #      define EXIT_SUCCESS 0
1506 #     endif
1507 #    endif
1508 #   endif
1509 #  endif
1510 # endif
1511 
1512 # ifdef YYSTACK_ALLOC
1513    /* Pacify GCC's 'empty if-body' warning.  */
1514 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
1515 #  ifndef YYSTACK_ALLOC_MAXIMUM
1516     /* The OS might guarantee only one guard page at the bottom of the stack,
1517        and a page size can be as small as 4096 bytes.  So we cannot safely
1518        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
1519        to allow for a few compiler-allocated temporary stack slots.  */
1520 #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
1521 #  endif
1522 # else
1523 #  define YYSTACK_ALLOC YYMALLOC
1524 #  define YYSTACK_FREE YYFREE
1525 #  ifndef YYSTACK_ALLOC_MAXIMUM
1526 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1527 #  endif
1528 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
1529        && ! ((defined YYMALLOC || defined malloc) \
1530              && (defined YYFREE || defined free)))
1531 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1532 #   ifndef EXIT_SUCCESS
1533 #    define EXIT_SUCCESS 0
1534 #   endif
1535 #  endif
1536 #  ifndef YYMALLOC
1537 #   define YYMALLOC malloc
1538 #   if ! defined malloc && ! defined EXIT_SUCCESS
1539 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
1540 #   endif
1541 #  endif
1542 #  ifndef YYFREE
1543 #   define YYFREE free
1544 #   if ! defined free && ! defined EXIT_SUCCESS
1545 void free (void *); /* INFRINGES ON USER NAME SPACE */
1546 #   endif
1547 #  endif
1548 # endif
1549 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
1550 
1551 
1552 #if (! defined yyoverflow \
1553      && (! defined __cplusplus \
1554          || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
1555              && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1556 
1557 /* A type that is properly aligned for any stack member.  */
1558 union yyalloc
1559 {
1560   yytype_int16 yyss_alloc;
1561   YYSTYPE yyvs_alloc;
1562   YYLTYPE yyls_alloc;
1563 };
1564 
1565 /* The size of the maximum gap between one aligned stack and the next.  */
1566 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
1567 
1568 /* The size of an array large to enough to hold all stacks, each with
1569    N elements.  */
1570 # define YYSTACK_BYTES(N) \
1571      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
1572       + 2 * YYSTACK_GAP_MAXIMUM)
1573 
1574 # define YYCOPY_NEEDED 1
1575 
1576 /* Relocate STACK from its old location to the new one.  The
1577    local variables YYSIZE and YYSTACKSIZE give the old and new number of
1578    elements in the stack, and YYPTR gives the new location of the
1579    stack.  Advance YYPTR to a properly aligned location for the next
1580    stack.  */
1581 # define YYSTACK_RELOCATE(Stack_alloc, Stack)                           \
1582     do                                                                  \
1583       {                                                                 \
1584         YYSIZE_T yynewbytes;                                            \
1585         YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
1586         Stack = &yyptr->Stack_alloc;                                    \
1587         yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
1588         yyptr += yynewbytes / sizeof (*yyptr);                          \
1589       }                                                                 \
1590     while (0)
1591 
1592 #endif
1593 
1594 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1595 /* Copy COUNT objects from SRC to DST.  The source and destination do
1596    not overlap.  */
1597 # ifndef YYCOPY
1598 #  if defined __GNUC__ && 1 < __GNUC__
1599 #   define YYCOPY(Dst, Src, Count) \
1600       __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
1601 #  else
1602 #   define YYCOPY(Dst, Src, Count)              \
1603       do                                        \
1604         {                                       \
1605           YYSIZE_T yyi;                         \
1606           for (yyi = 0; yyi < (Count); yyi++)   \
1607             (Dst)[yyi] = (Src)[yyi];            \
1608         }                                       \
1609       while (0)
1610 #  endif
1611 # endif
1612 #endif /* !YYCOPY_NEEDED */
1613 
1614 /* YYFINAL -- State number of the termination state.  */
1615 #define YYFINAL  842
1616 /* YYLAST -- Last index in YYTABLE.  */
1617 #define YYLAST   104109
1618 
1619 /* YYNTOKENS -- Number of terminals.  */
1620 #define YYNTOKENS  493
1621 /* YYNNTS -- Number of nonterminals.  */
1622 #define YYNNTS  675
1623 /* YYNRULES -- Number of rules.  */
1624 #define YYNRULES  2766
1625 /* YYNSTATES -- Number of states.  */
1626 #define YYNSTATES  5573
1627 
1628 /* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
1629    by yylex, with out-of-bounds checking.  */
1630 #define YYUNDEFTOK  2
1631 #define YYMAXUTOK   730
1632 
1633 #define YYTRANSLATE(YYX)                                                \
1634   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
1635 
1636 /* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
1637    as returned by yylex, without out-of-bounds checking.  */
1638 static const yytype_uint16 yytranslate[] =
1639 {
1640        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1641        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1642        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1643        2,     2,     2,     2,     2,     2,     2,   482,     2,     2,
1644      487,   488,   480,   478,   491,   479,   489,   481,     2,     2,
1645        2,     2,     2,     2,     2,     2,     2,     2,   492,   490,
1646      474,   476,   475,     2,     2,     2,     2,     2,     2,     2,
1647        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1648        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1649        2,   485,     2,   486,   483,     2,     2,     2,     2,     2,
1650        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1651        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1652        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1653        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1654        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1655        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1656        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1657        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1658        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1659        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1660        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1661        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1662        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1663        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1664        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1665        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
1666        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1667       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1668       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1669       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1670       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1671       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1672       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1673       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1674       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1675       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1676      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1677      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1678      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1679      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1680      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1681      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1682      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1683      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1684      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1685      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1686      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1687      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1688      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1689      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1690      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1691      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1692      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1693      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
1694      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
1695      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
1696      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
1697      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
1698      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
1699      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
1700      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
1701      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
1702      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1703      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1704      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
1705      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
1706      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1707      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
1708      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1709      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
1710      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
1711      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
1712      465,   466,   467,   468,   469,   470,   471,   472,   473,   477,
1713      484
1714 };
1715 
1716 #if YYDEBUG
1717   /* YYRLINE[YYN] -- Source line where rule number YYN was defined.  */
1718 static const yytype_uint16 yyrline[] =
1719 {
1720        0,   843,   843,   859,   871,   881,   882,   883,   884,   885,
1721      886,   887,   888,   889,   890,   891,   892,   893,   894,   895,
1722      896,   897,   898,   899,   900,   901,   902,   903,   904,   905,
1723      906,   907,   908,   909,   910,   911,   912,   913,   914,   915,
1724      916,   917,   918,   919,   920,   921,   922,   923,   924,   925,
1725      926,   927,   928,   929,   930,   931,   932,   933,   934,   935,
1726      936,   937,   938,   939,   940,   941,   942,   943,   944,   945,
1727      946,   947,   948,   949,   950,   951,   952,   953,   954,   955,
1728      956,   957,   958,   959,   960,   961,   962,   963,   964,   965,
1729      966,   967,   968,   969,   970,   971,   972,   973,   974,   975,
1730      976,   977,   978,   979,   980,   981,   982,   983,   984,   985,
1731      986,   987,   988,   989,   990,   991,   992,   993,   994,   995,
1732      996,   997,   998,   999,  1000,  1001,  1002,  1003,  1004,  1005,
1733     1007,  1016,  1031,  1042,  1043,  1044,  1053,  1054,  1058,  1059,
1734     1063,  1068,  1072,  1082,  1090,  1094,  1098,  1103,  1107,  1155,
1735     1157,  1161,  1165,  1169,  1173,  1187,  1205,  1213,  1224,  1225,
1736     1229,  1237,  1245,  1253,  1274,  1281,  1288,  1295,  1302,  1309,
1737     1326,  1344,  1355,  1356,  1367,  1377,  1387,  1402,  1420,  1421,
1738     1425,  1432,  1440,  1441,  1442,  1443,  1444,  1445,  1459,  1466,
1739     1472,  1478,  1487,  1495,  1503,  1507,  1515,  1523,  1530,  1540,
1740     1541,  1549,  1560,  1568,  1576,  1587,  1595,  1603,  1610,  1619,
1741     1629,  1630,  1634,  1635,  1638,  1640,  1644,  1645,  1646,  1647,
1742     1651,  1652,  1653,  1659,  1671,  1675,  1679,  1694,  1701,  1702,
1743     1703,  1707,  1708,  1709,  1713,  1714,  1718,  1719,  1728,  1729,
1744     1736,  1743,  1753,  1760,  1770,  1771,  1776,  1777,  1783,  1789,
1745     1795,  1801,  1807,  1813,  1819,  1829,  1839,  1840,  1844,  1845,
1746     1853,  1868,  1874,  1880,  1886,  1892,  1911,  1920,  1929,  1938,
1747     1947,  1958,  1969,  1978,  1987,  1996,  2007,  2018,  2027,  2036,
1748     2045,  2054,  2063,  2072,  2083,  2097,  2098,  2103,  2116,  2132,
1749     2148,  2157,  2166,  2175,  2184,  2193,  2201,  2209,  2217,  2226,
1750     2235,  2251,  2260,  2269,  2278,  2295,  2304,  2313,  2322,  2332,
1751     2345,  2360,  2369,  2378,  2393,  2401,  2411,  2421,  2428,  2436,
1752     2444,  2451,  2458,  2466,  2474,  2482,  2489,  2496,  2504,  2511,
1753     2518,  2526,  2534,  2542,  2550,  2558,  2566,  2576,  2583,  2591,
1754     2599,  2607,  2615,  2623,  2630,  2637,  2644,  2650,  2660,  2661,
1755     2665,  2666,  2667,  2671,  2679,  2683,  2684,  2688,  2695,  2702,
1756     2709,  2719,  2722,  2723,  2727,  2728,  2733,  2737,  2741,  2746,
1757     2753,  2755,  2760,  2764,  2768,  2779,  2787,  2840,  2853,  2867,
1758     2879,  2886,  2890,  2904,  2917,  2918,  2923,  2932,  2942,  2952,
1759     2978,  2984,  3017,  3052,  3074,  3075,  3079,  3080,  3089,  3090,
1760     3091,  3094,  3095,  3100,  3101,  3105,  3109,  3113,  3117,  3121,
1761     3125,  3129,  3133,  3137,  3141,  3145,  3149,  3153,  3162,  3166,
1762     3170,  3174,  3178,  3179,  3184,  3188,  3195,  3202,  3203,  3204,
1763     3205,  3206,  3210,  3214,  3222,  3233,  3252,  3271,  3291,  3311,
1764     3331,  3364,  3365,  3366,  3367,  3368,  3375,  3382,  3383,  3387,
1765     3388,  3392,  3393,  3397,  3401,  3408,  3412,  3419,  3420,  3421,
1766     3425,  3426,  3429,  3450,  3468,  3489,  3490,  3494,  3501,  3502,
1767     3503,  3534,  3541,  3548,  3559,  3570,  3582,  3593,  3602,  3625,
1768     3643,  3644,  3663,  3670,  3677,  3684,  3695,  3705,  3706,  3707,
1769     3711,  3712,  3713,  3714,  3715,  3716,  3717,  3718,  3719,  3728,
1770     3735,  3739,  3752,  3768,  3783,  3799,  3814,  3833,  3854,  3855,
1771     3859,  3860,  3864,  3865,  3868,  3874,  3875,  3878,  3882,  3890,
1772     3895,  3901,  3902,  3906,  3911,  3918,  3919,  3929,  3931,  3933,
1773     3935,  3938,  3941,  3944,  3948,  3949,  3950,  3951,  3952,  3955,
1774     3956,  3960,  3961,  3964,  3976,  3977,  3980,  3991,  4002,  4016,
1775     4017,  4022,  4023,  4024,  4027,  4028,  4029,  4030,  4033,  4034,
1776     4037,  4038,  4041,  4059,  4071,  4095,  4103,  4124,  4137,  4153,
1777     4169,  4170,  4171,  4183,  4196,  4212,  4226,  4227,  4239,  4259,
1778     4269,  4282,  4290,  4301,  4302,  4305,  4306,  4309,  4310,  4313,
1779     4317,  4321,  4325,  4329,  4333,  4337,  4341,  4345,  4349,  4353,
1780     4358,  4362,  4366,  4372,  4373,  4377,  4378,  4379,  4384,  4387,
1781     4388,  4400,  4415,  4430,  4431,  4439,  4440,  4444,  4445,  4449,
1782     4450,  4454,  4455,  4459,  4469,  4482,  4483,  4493,  4504,  4505,
1783     4518,  4525,  4542,  4550,  4561,  4564,  4568,  4572,  4576,  4583,
1784     4595,  4605,  4608,  4612,  4625,  4634,  4643,  4652,  4661,  4670,
1785     4679,  4688,  4697,  4706,  4715,  4724,  4733,  4742,  4751,  4760,
1786     4769,  4778,  4787,  4796,  4805,  4814,  4823,  4832,  4841,  4850,
1787     4859,  4868,  4886,  4897,  4898,  4899,  4900,  4904,  4905,  4909,
1788     4910,  4920,  4928,  4940,  4941,  4945,  4949,  4957,  4961,  4965,
1789     4972,  4976,  4981,  4986,  4993,  5000,  5005,  5015,  5027,  5042,
1790     5043,  5048,  5049,  5053,  5054,  5064,  5073,  5081,  5098,  5118,
1791     5138,  5159,  5190,  5199,  5220,  5235,  5236,  5240,  5248,  5263,
1792     5272,  5284,  5285,  5297,  5305,  5322,  5346,  5363,  5377,  5378,
1793     5382,  5383,  5387,  5388,  5392,  5393,  5397,  5411,  5415,  5416,
1794     5420,  5421,  5422,  5423,  5424,  5434,  5445,  5446,  5457,  5478,
1795     5504,  5505,  5506,  5510,  5512,  5534,  5536,  5538,  5540,  5542,
1796     5547,  5548,  5552,  5553,  5557,  5568,  5569,  5573,  5582,  5586,
1797     5590,  5595,  5605,  5606,  5610,  5611,  5615,  5616,  5620,  5621,
1798     5625,  5626,  5627,  5631,  5635,  5636,  5637,  5641,  5642,  5647,
1799     5648,  5675,  5676,  5677,  5678,  5679,  5680,  5693,  5703,  5717,
1800     5719,  5724,  5729,  5731,  5736,  5746,  5747,  5748,  5749,  5760,
1801     5779,  5790,  5802,  5812,  5822,  5833,  5842,  5849,  5856,  5865,
1802     5874,  5883,  5892,  5901,  5911,  5920,  5932,  5935,  5936,  5939,
1803     5943,  5950,  5951,  5952,  5953,  5954,  5955,  5958,  5961,  5962,
1804     5970,  5977,  5978,  5981,  5983,  5994,  6005,  6016,  6027,  6040,
1805     6041,  6057,  6072,  6073,  6077,  6089,  6099,  6107,  6116,  6125,
1806     6126,  6129,  6130,  6133,  6134,  6135,  6138,  6152,  6157,  6167,
1807     6176,  6188,  6189,  6193,  6201,  6213,  6223,  6236,  6246,  6268,
1808     6278,  6296,  6306,  6316,  6326,  6336,  6346,  6356,  6366,  6376,
1809     6386,  6396,  6406,  6420,  6421,  6422,  6423,  6424,  6425,  6426,
1810     6427,  6428,  6429,  6430,  6431,  6432,  6437,  6438,  6439,  6440,
1811     6441,  6442,  6443,  6448,  6449,  6450,  6454,  6455,  6458,  6459,
1812     6462,  6464,  6469,  6470,  6481,  6492,  6493,  6494,  6528,  6536,
1813     6544,  6552,  6560,  6568,  6576,  6584,  6592,  6605,  6613,  6621,
1814     6629,  6637,  6645,  6653,  6661,  6669,  6677,  6689,  6690,  6691,
1815     6692,  6693,  6694,  6695,  6696,  6697,  6698,  6699,  6700,  6701,
1816     6702,  6707,  6708,  6709,  6710,  6711,  6712,  6713,  6714,  6715,
1817     6716,  6717,  6718,  6722,  6723,  6737,  6747,  6757,  6767,  6777,
1818     6787,  6797,  6807,  6817,  6829,  6830,  6835,  6836,  6837,  6838,
1819     6839,  6840,  6845,  6846,  6847,  6848,  6849,  6850,  6851,  6852,
1820     6855,  6856,  6866,  6872,  6880,  6888,  6896,  6904,  6912,  6920,
1821     6928,  6936,  6944,  6952,  6960,  6968,  6976,  6984,  6992,  7000,
1822     7010,  7011,  7014,  7015,  7025,  7041,  7055,  7081,  7083,  7085,
1823     7087,  7094,  7103,  7104,  7107,  7114,  7121,  7128,  7142,  7150,
1824     7158,  7166,  7174,  7182,  7190,  7198,  7206,  7214,  7222,  7230,
1825     7238,  7246,  7254,  7262,  7270,  7278,  7286,  7294,  7306,  7307,
1826     7311,  7312,  7317,  7318,  7328,  7341,  7351,  7363,  7364,  7367,
1827     7368,  7378,  7388,  7389,  7393,  7397,  7401,  7412,  7425,  7439,
1828     7456,  7457,  7458,  7459,  7460,  7461,  7473,  7503,  7536,  7537,
1829     7541,  7542,  7546,  7547,  7551,  7552,  7555,  7556,  7561,  7573,
1830     7592,  7597,  7602,  7609,  7610,  7613,  7614,  7617,  7618,  7621,
1831     7622,  7625,  7626,  7627,  7630,  7631,  7632,  7648,  7660,  7673,
1832     7685,  7700,  7701,  7704,  7705,  7709,  7710,  7714,  7715,  7720,
1833     7732,  7739,  7746,  7761,  7762,  7766,  7767,  7782,  7791,  7800,
1834     7809,  7818,  7830,  7831,  7832,  7833,  7834,  7840,  7844,  7859,
1835     7860,  7866,  7876,  7880,  7885,  7893,  7934,  7938,  7942,  7946,
1836     7954,  7955,  7959,  7969,  7970,  7976,  7977,  7984,  7988,  7992,
1837     7996,  8000,  8004,  8008,  8012,  8016,  8020,  8024,  8028,  8032,
1838     8036,  8040,  8044,  8049,  8056,  8060,  8064,  8068,  8072,  8078,
1839     8079,  8086,  8087,  8091,  8092,  8095,  8107,  8111,  8126,  8134,
1840     8142,  8154,  8155,  8160,  8161,  8178,  8188,  8198,  8208,  8218,
1841     8228,  8241,  8251,  8264,  8274,  8287,  8295,  8297,  8299,  8304,
1842     8306,  8311,  8312,  8317,  8335,  8344,  8345,  8349,  8353,  8365,
1843     8376,  8387,  8400,  8401,  8402,  8406,  8418,  8419,  8429,  8441,
1844     8445,  8449,  8453,  8460,  8480,  8490,  8500,  8510,  8522,  8523,
1845     8526,  8527,  8528,  8531,  8532,  8535,  8545,  8554,  8571,  8580,
1846     8589,  8598,  8607,  8616,  8625,  8634,  8643,  8652,  8661,  8670,
1847     8679,  8689,  8699,  8708,  8717,  8726,  8735,  8744,  8753,  8763,
1848     8773,  8783,  8793,  8803,  8813,  8823,  8833,  8843,  8853,  8863,
1849     8873,  8884,  8895,  8906,  8917,  8928,  8939,  8949,  8959,  8970,
1850     8981,  8991,  9001,  9009,  9018,  9027,  9036,  9045,  9054,  9063,
1851     9072,  9081,  9090,  9104,  9105,  9108,  9109,  9119,  9128,  9137,
1852     9146,  9156,  9165,  9176,  9177,  9187,  9196,  9205,  9214,  9223,
1853     9232,  9241,  9250,  9259,  9268,  9277,  9286,  9295,  9304,  9313,
1854     9322,  9331,  9340,  9349,  9358,  9367,  9376,  9385,  9394,  9403,
1855     9412,  9421,  9439,  9448,  9449,  9452,  9454,  9460,  9461,  9462,
1856     9463,  9464,  9476,  9491,  9499,  9507,  9515,  9523,  9531,  9539,
1857     9547,  9555,  9563,  9571,  9579,  9587,  9595,  9603,  9611,  9619,
1858     9627,  9635,  9643,  9651,  9659,  9667,  9675,  9693,  9712,  9713,
1859     9717,  9721,  9741,  9748,  9756,  9764,  9781,  9794,  9798,  9805,
1860     9814,  9823,  9832,  9841,  9851,  9861,  9879,  9887,  9903,  9920,
1861     9921,  9922,  9927,  9933,  9942,  9943,  9944,  9945,  9946,  9950,
1862     9951,  9954,  9955,  9956,  9957,  9961,  9962,  9963,  9975,  9985,
1863     9986,  9989,  9998, 10004, 10023, 10031, 10038, 10045, 10053, 10061,
1864    10069, 10076, 10083, 10090, 10097, 10104, 10111, 10118, 10127, 10128,
1865    10129, 10133, 10136, 10139, 10142, 10145, 10152, 10154, 10156, 10161,
1866    10163, 10167, 10168, 10169, 10181, 10194, 10207, 10225, 10246, 10247,
1867    10248, 10249, 10259, 10275, 10285, 10286, 10290, 10291, 10295, 10299,
1868    10303, 10321, 10322, 10323, 10324, 10325, 10326, 10327, 10334, 10335,
1869    10346, 10353, 10360, 10371, 10388, 10396, 10404, 10412, 10423, 10427,
1870    10438, 10450, 10467, 10473, 10489, 10502, 10511, 10519, 10527, 10536,
1871    10547, 10558, 10568, 10569, 10580, 10590, 10601, 10612, 10623, 10634,
1872    10643, 10655, 10656, 10670, 10693, 10703, 10714, 10727, 10728, 10740,
1873    10760, 10770, 10781, 10792, 10796, 10803, 10804, 10808, 10815, 10816,
1874    10820, 10821, 10822, 10826, 10827, 10831, 10832, 10835, 10836, 10839,
1875    10840, 10844, 10845, 10849, 10856, 10858, 10863, 10864, 10877, 10884,
1876    10894, 10901, 10911, 10912, 10913, 10914, 10915, 10916, 10917, 10918,
1877    10919, 10923, 10927, 10934, 10941, 10942, 10946, 10947, 10948, 10958,
1878    10968, 10969, 10973, 10974, 10975, 10976, 10986, 10993, 11010, 11029,
1879    11030, 11040, 11046, 11052, 11058, 11074, 11085, 11106, 11110, 11118,
1880    11124, 11131, 11137, 11144, 11153, 11154, 11158, 11160, 11165, 11176,
1881    11186, 11196, 11202, 11211, 11220, 11226, 11227, 11238, 11252, 11253,
1882    11264, 11275, 11276, 11279, 11280, 11281, 11282, 11283, 11284, 11285,
1883    11286, 11289, 11290, 11294, 11295, 11296, 11307, 11323, 11338, 11339,
1884    11343, 11348, 11372, 11383, 11384, 11394, 11405, 11408, 11409, 11410,
1885    11411, 11412, 11415, 11416, 11417, 11465, 11466, 11470, 11471, 11486,
1886    11487, 11494, 11502, 11510, 11518, 11526, 11534, 11545, 11546, 11573,
1887    11587, 11602, 11603, 11622, 11626, 11630, 11647, 11654, 11661, 11671,
1888    11672, 11675, 11688, 11689, 11690, 11694, 11695, 11699, 11711, 11719,
1889    11724, 11729, 11734, 11739, 11747, 11755, 11760, 11765, 11772, 11773,
1890    11777, 11778, 11779, 11786, 11787, 11791, 11792, 11796, 11797, 11801,
1891    11805, 11806, 11809, 11818, 11831, 11836, 11841, 11845, 11856, 11857,
1892    11861, 11869, 11885, 11893, 11901, 11909, 11920, 11923, 11928, 11929,
1893    11937, 11957, 11958, 11960, 11965, 11966, 11970, 11971, 11974, 11975,
1894    12000, 12001, 12005, 12006, 12010, 12011, 12012, 12013, 12014, 12018,
1895    12031, 12038, 12045, 12052, 12053, 12057, 12058, 12062, 12063, 12067,
1896    12068, 12072, 12083, 12084, 12085, 12086, 12090, 12091, 12101, 12107,
1897    12125, 12126, 12130, 12131, 12137, 12142, 12150, 12157, 12165, 12171,
1898    12178, 12213, 12238, 12242, 12268, 12272, 12284, 12297, 12311, 12322,
1899    12337, 12343, 12348, 12354, 12361, 12362, 12370, 12374, 12378, 12384,
1900    12391, 12396, 12397, 12398, 12399, 12403, 12404, 12416, 12417, 12422,
1901    12429, 12436, 12443, 12454, 12455, 12468, 12472, 12479, 12492, 12505,
1902    12506, 12521, 12531, 12543, 12548, 12549, 12552, 12553, 12556, 12557,
1903    12562, 12563, 12568, 12569, 12577, 12582, 12583, 12587, 12591, 12597,
1904    12621, 12631, 12644, 12645, 12649, 12663, 12720, 12734, 12736, 12741,
1905    12743, 12745, 12747, 12752, 12754, 12759, 12767, 12787, 12792, 12799,
1906    12804, 12810, 12815, 12824, 12826, 12829, 12833, 12834, 12835, 12836,
1907    12837, 12838, 12843, 12863, 12864, 12865, 12866, 12877, 12883, 12891,
1908    12892, 12898, 12903, 12908, 12913, 12918, 12923, 12928, 12933, 12939,
1909    12945, 12951, 12958, 12980, 12989, 12993, 13001, 13005, 13013, 13025,
1910    13046, 13050, 13056, 13060, 13073, 13081, 13091, 13093, 13095, 13097,
1911    13099, 13101, 13106, 13107, 13114, 13123, 13131, 13140, 13151, 13159,
1912    13160, 13161, 13165, 13167, 13169, 13171, 13173, 13175, 13177, 13182,
1913    13187, 13193, 13201, 13206, 13213, 13220, 13224, 13228, 13264, 13265,
1914    13267, 13275, 13290, 13292, 13294, 13296, 13298, 13300, 13302, 13304,
1915    13306, 13308, 13310, 13312, 13314, 13316, 13319, 13321, 13323, 13326,
1916    13328, 13330, 13332, 13335, 13340, 13348, 13353, 13361, 13366, 13374,
1917    13379, 13388, 13396, 13404, 13412, 13430, 13438, 13446, 13454, 13462,
1918    13478, 13486, 13494, 13502, 13510, 13518, 13526, 13530, 13534, 13538,
1919    13542, 13550, 13558, 13566, 13574, 13594, 13616, 13627, 13634, 13650,
1920    13655, 13661, 13665, 13669, 13673, 13677, 13702, 13704, 13706, 13708,
1921    13710, 13712, 13714, 13716, 13718, 13720, 13722, 13724, 13726, 13728,
1922    13730, 13732, 13734, 13736, 13738, 13740, 13744, 13748, 13752, 13756,
1923    13761, 13777, 13778, 13779, 13794, 13828, 13830, 13832, 13843, 13867,
1924    13878, 13889, 13896, 13906, 13916, 13925, 13929, 13935, 13942, 13949,
1925    13959, 13966, 13994, 14029, 14040, 14041, 14048, 14054, 14058, 14062,
1926    14066, 14070, 14074, 14078, 14082, 14086, 14090, 14094, 14098, 14102,
1927    14106, 14110, 14114, 14116, 14120, 14124, 14128, 14137, 14142, 14149,
1928    14164, 14171, 14175, 14179, 14183, 14187, 14194, 14202, 14210, 14214,
1929    14218, 14222, 14226, 14230, 14236, 14240, 14249, 14253, 14257, 14262,
1930    14276, 14278, 14282, 14284, 14286, 14289, 14292, 14295, 14296, 14299,
1931    14307, 14317, 14318, 14321, 14322, 14323, 14328, 14332, 14336, 14340,
1932    14347, 14348, 14356, 14357, 14361, 14362, 14370, 14371, 14375, 14376,
1933    14381, 14389, 14391, 14405, 14408, 14435, 14436, 14439, 14440, 14448,
1934    14455, 14462, 14470, 14479, 14496, 14541, 14549, 14557, 14565, 14573,
1935    14584, 14585, 14586, 14587, 14588, 14602, 14603, 14604, 14607, 14608,
1936    14611, 14614, 14615, 14616, 14619, 14620, 14623, 14624, 14625, 14626,
1937    14627, 14628, 14629, 14630, 14631, 14632, 14633, 14634, 14637, 14639,
1938    14644, 14646, 14651, 14653, 14655, 14657, 14659, 14661, 14673, 14677,
1939    14684, 14688, 14694, 14698, 14707, 14718, 14719, 14722, 14726, 14730,
1940    14736, 14737, 14742, 14746, 14753, 14754, 14755, 14756, 14757, 14758,
1941    14759, 14760, 14764, 14765, 14766, 14767, 14777, 14781, 14788, 14795,
1942    14796, 14812, 14816, 14821, 14825, 14840, 14845, 14849, 14852, 14855,
1943    14856, 14857, 14860, 14867, 14877, 14891, 14892, 14896, 14907, 14908,
1944    14911, 14912, 14915, 14919, 14926, 14930, 14934, 14942, 14953, 14954,
1945    14958, 14959, 14963, 14964, 14967, 14968, 14978, 14979, 14983, 14984,
1946    14987, 15003, 15011, 15019, 15041, 15042, 15053, 15057, 15084, 15086,
1947    15091, 15094, 15097, 15099, 15101, 15103, 15113, 15115, 15126, 15130,
1948    15134, 15138, 15142, 15151, 15158, 15190, 15194, 15200, 15207, 15211,
1949    15215, 15221, 15222, 15224, 15225, 15226, 15230, 15263, 15290, 15294,
1950    15300, 15302, 15319, 15320, 15321, 15326, 15327, 15328, 15333, 15334,
1951    15335, 15336, 15342, 15343, 15344, 15345, 15346, 15366, 15367, 15368,
1952    15369, 15370, 15371, 15372, 15373, 15374, 15375, 15376, 15377, 15378,
1953    15379, 15380, 15381, 15382, 15383, 15384, 15385, 15386, 15387, 15388,
1954    15389, 15390, 15391, 15392, 15393, 15394, 15395, 15396, 15397, 15398,
1955    15399, 15400, 15401, 15402, 15403, 15404, 15405, 15406, 15407, 15408,
1956    15409, 15410, 15411, 15412, 15413, 15414, 15415, 15416, 15417, 15418,
1957    15419, 15420, 15421, 15422, 15423, 15424, 15425, 15426, 15427, 15428,
1958    15429, 15430, 15431, 15432, 15433, 15434, 15435, 15436, 15437, 15438,
1959    15439, 15440, 15441, 15442, 15443, 15444, 15445, 15446, 15447, 15448,
1960    15449, 15450, 15451, 15452, 15453, 15454, 15455, 15456, 15457, 15458,
1961    15459, 15460, 15461, 15462, 15463, 15464, 15465, 15466, 15467, 15468,
1962    15469, 15470, 15471, 15472, 15473, 15474, 15475, 15476, 15477, 15478,
1963    15479, 15480, 15481, 15482, 15483, 15484, 15485, 15486, 15487, 15488,
1964    15489, 15490, 15491, 15492, 15493, 15494, 15495, 15496, 15497, 15498,
1965    15499, 15500, 15501, 15502, 15503, 15504, 15505, 15506, 15507, 15508,
1966    15509, 15510, 15511, 15512, 15513, 15514, 15515, 15516, 15517, 15518,
1967    15519, 15520, 15521, 15522, 15523, 15524, 15525, 15526, 15527, 15528,
1968    15529, 15530, 15531, 15532, 15533, 15534, 15535, 15536, 15537, 15538,
1969    15539, 15540, 15541, 15542, 15543, 15544, 15545, 15546, 15547, 15548,
1970    15549, 15550, 15551, 15552, 15553, 15554, 15555, 15556, 15557, 15558,
1971    15559, 15560, 15561, 15562, 15563, 15564, 15565, 15566, 15567, 15568,
1972    15569, 15570, 15571, 15572, 15573, 15574, 15575, 15576, 15577, 15578,
1973    15579, 15580, 15581, 15582, 15583, 15584, 15585, 15586, 15587, 15588,
1974    15589, 15590, 15591, 15592, 15593, 15594, 15595, 15596, 15597, 15598,
1975    15599, 15600, 15601, 15602, 15603, 15604, 15605, 15606, 15607, 15608,
1976    15609, 15610, 15611, 15612, 15613, 15614, 15615, 15616, 15617, 15618,
1977    15619, 15620, 15621, 15622, 15623, 15624, 15625, 15626, 15627, 15628,
1978    15629, 15630, 15631, 15632, 15633, 15634, 15635, 15636, 15637, 15638,
1979    15639, 15640, 15641, 15642, 15643, 15644, 15645, 15646, 15647, 15648,
1980    15649, 15650, 15651, 15652, 15653, 15654, 15655, 15656, 15657, 15658,
1981    15659, 15660, 15661, 15662, 15663, 15664, 15678, 15679, 15680, 15681,
1982    15682, 15683, 15684, 15685, 15686, 15687, 15688, 15689, 15690, 15691,
1983    15692, 15693, 15694, 15695, 15696, 15697, 15698, 15699, 15700, 15701,
1984    15702, 15703, 15704, 15705, 15706, 15707, 15708, 15709, 15710, 15711,
1985    15712, 15713, 15714, 15715, 15716, 15717, 15718, 15719, 15720, 15721,
1986    15722, 15723, 15724, 15725, 15726, 15727, 15728, 15742, 15743, 15744,
1987    15745, 15746, 15747, 15748, 15749, 15750, 15751, 15752, 15753, 15754,
1988    15755, 15756, 15757, 15758, 15759, 15760, 15761, 15762, 15763, 15764,
1989    15774, 15775, 15776, 15777, 15778, 15779, 15780, 15781, 15782, 15783,
1990    15784, 15785, 15786, 15787, 15788, 15789, 15790, 15791, 15792, 15793,
1991    15794, 15795, 15796, 15797, 15798, 15799, 15800, 15801, 15802, 15803,
1992    15804, 15805, 15806, 15807, 15808, 15809, 15810, 15811, 15812, 15813,
1993    15814, 15815, 15816, 15817, 15818, 15819, 15820, 15821, 15822, 15823,
1994    15824, 15825, 15826, 15827, 15828, 15829, 15830, 15831, 15832, 15833,
1995    15834, 15835, 15836, 15837, 15838, 15839, 15840, 15841, 15842, 15843,
1996    15844, 15845, 15846, 15847, 15848, 15849, 15850
1997 };
1998 #endif
1999 
2000 #if YYDEBUG || YYERROR_VERBOSE || 0
2001 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
2002    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
2003 static const char *const yytname[] =
2004 {
2005   "$end", "error", "$undefined", "IDENT", "UIDENT", "FCONST", "SCONST",
2006   "USCONST", "BCONST", "XCONST", "Op", "ICONST", "PARAM", "TYPECAST",
2007   "DOT_DOT", "COLON_EQUALS", "EQUALS_GREATER", "LESS_EQUALS",
2008   "GREATER_EQUALS", "NOT_EQUALS", "ABORT_P", "ABSOLUTE_P", "ACCESS",
2009   "ACTION", "ADD_P", "ADMIN", "AFTER", "AGGREGATE", "ALL", "ALSO", "ALTER",
2010   "ALWAYS", "ANALYSE", "ANALYZE", "AND", "ANY", "ARRAY", "AS", "ASC",
2011   "ASSERTION", "ASSIGNMENT", "ASYMMETRIC", "AT", "ATTACH", "ATTRIBUTE",
2012   "AUTHORIZATION", "BACKWARD", "BEFORE", "BEGIN_P", "BETWEEN", "BIGINT",
2013   "BINARY", "BIT", "BOOLEAN_P", "BOTH", "BY", "CACHE", "CALL", "CALLED",
2014   "CASCADE", "CASCADED", "CASE", "CAST", "CATALOG_P", "CHAIN", "CHAR_P",
2015   "CHARACTER", "CHARACTERISTICS", "CHECK", "CHECKPOINT", "CLASS", "CLOSE",
2016   "CLUSTER", "COALESCE", "COLLATE", "COLLATION", "COLUMN", "COLUMNS",
2017   "COMMENT", "COMMENTS", "COMMIT", "COMMITTED", "CONCURRENTLY",
2018   "CONFIGURATION", "CONFLICT", "CONNECTION", "CONSTRAINT", "CONSTRAINTS",
2019   "CONTENT_P", "CONTINUE_P", "CONVERSION_P", "COPY", "COST", "CREATE",
2020   "CROSS", "CSV", "CUBE", "CURRENT_P", "CURRENT_CATALOG", "CURRENT_DATE",
2021   "CURRENT_ROLE", "CURRENT_SCHEMA", "CURRENT_TIME", "CURRENT_TIMESTAMP",
2022   "CURRENT_USER", "CURSOR", "CYCLE", "DATA_P", "DATABASE", "DAY_P",
2023   "DEALLOCATE", "DEC", "DECIMAL_P", "DECLARE", "DEFAULT", "DEFAULTS",
2024   "DEFERRABLE", "DEFERRED", "DEFINER", "DELETE_P", "DELIMITER",
2025   "DELIMITERS", "DEPENDS", "DESC", "DETACH", "DICTIONARY", "DISABLE_P",
2026   "DISCARD", "DISTINCT", "DO", "DOCUMENT_P", "DOMAIN_P", "DOUBLE_P",
2027   "DROP", "EACH", "ELSE", "ENABLE_P", "ENCODING", "ENCRYPTED", "END_P",
2028   "ENUM_P", "ESCAPE", "EVENT", "EXCEPT", "EXCLUDE", "EXCLUDING",
2029   "EXCLUSIVE", "EXECUTE", "EXISTS", "EXPLAIN", "EXPRESSION", "EXTENSION",
2030   "EXTERNAL", "EXTRACT", "FALSE_P", "FAMILY", "FETCH", "FILTER", "FIRST_P",
2031   "FLOAT_P", "FOLLOWING", "FOR", "FORCE", "FOREIGN", "FORWARD", "FREEZE",
2032   "FROM", "FULL", "FUNCTION", "FUNCTIONS", "GENERATED", "GLOBAL", "GRANT",
2033   "GRANTED", "GREATEST", "GROUP_P", "GROUPING", "GROUPS", "HANDLER",
2034   "HAVING", "HEADER_P", "HOLD", "HOUR_P", "IDENTITY_P", "IF_P", "ILIKE",
2035   "IMMEDIATE", "IMMUTABLE", "IMPLICIT_P", "IMPORT_P", "IN_P", "INCLUDE",
2036   "INCLUDING", "INCREMENT", "INDEX", "INDEXES", "INHERIT", "INHERITS",
2037   "INITIALLY", "INLINE_P", "INNER_P", "INOUT", "INPUT_P", "INSENSITIVE",
2038   "INSERT", "INSTEAD", "INT_P", "INTEGER", "INTERSECT", "INTERVAL", "INTO",
2039   "INVOKER", "IS", "ISNULL", "ISOLATION", "JOIN", "KEY", "LABEL",
2040   "LANGUAGE", "LARGE_P", "LAST_P", "LATERAL_P", "LEADING", "LEAKPROOF",
2041   "LEAST", "LEFT", "LEVEL", "LIKE", "LIMIT", "LISTEN", "LOAD", "LOCAL",
2042   "LOCALTIME", "LOCALTIMESTAMP", "LOCATION", "LOCK_P", "LOCKED", "LOGGED",
2043   "MAPPING", "MATCH", "MATERIALIZED", "MAXVALUE", "METHOD", "MINUTE_P",
2044   "MINVALUE", "MODE", "MONTH_P", "MOVE", "NAME_P", "NAMES", "NATIONAL",
2045   "NATURAL", "NCHAR", "NEW", "NEXT", "NFC", "NFD", "NFKC", "NFKD", "NO",
2046   "NONE", "NORMALIZE", "NORMALIZED", "NOT", "NOTHING", "NOTIFY", "NOTNULL",
2047   "NOWAIT", "NULL_P", "NULLIF", "NULLS_P", "NUMERIC", "OBJECT_P", "OF",
2048   "OFF", "OFFSET", "OIDS", "OLD", "ON", "ONLY", "OPERATOR", "OPTION",
2049   "OPTIONS", "OR", "ORDER", "ORDINALITY", "OTHERS", "OUT_P", "OUTER_P",
2050   "OVER", "OVERLAPS", "OVERLAY", "OVERRIDING", "OWNED", "OWNER",
2051   "PARALLEL", "PARSER", "PARTIAL", "PARTITION", "PASSING", "PASSWORD",
2052   "PGPOOL", "PLACING", "PLANS", "POLICY", "POSITION", "PRECEDING",
2053   "PRECISION", "PRESERVE", "PREPARE", "PREPARED", "PRIMARY", "PRIOR",
2054   "PRIVILEGES", "PROCEDURAL", "PROCEDURE", "PROCEDURES", "PROGRAM",
2055   "PUBLICATION", "QUOTE", "RANGE", "READ", "REAL", "REASSIGN", "RECHECK",
2056   "RECURSIVE", "REF", "REFERENCES", "REFERENCING", "REFRESH", "REINDEX",
2057   "RELATIVE_P", "RELEASE", "RENAME", "REPEATABLE", "REPLACE", "REPLICA",
2058   "RESET", "RESTART", "RESTRICT", "RETURNING", "RETURNS", "REVOKE",
2059   "RIGHT", "ROLE", "ROLLBACK", "ROLLUP", "ROUTINE", "ROUTINES", "ROW",
2060   "ROWS", "RULE", "SAVEPOINT", "SCHEMA", "SCHEMAS", "SCROLL", "SEARCH",
2061   "SECOND_P", "SECURITY", "SELECT", "SEQUENCE", "SEQUENCES",
2062   "SERIALIZABLE", "SERVER", "SESSION", "SESSION_USER", "SET", "SETS",
2063   "SETOF", "SHARE", "SHOW", "SIMILAR", "SIMPLE", "SKIP", "SMALLINT",
2064   "SNAPSHOT", "SOME", "SQL_P", "STABLE", "STANDALONE_P", "START",
2065   "STATEMENT", "STATISTICS", "STDIN", "STDOUT", "STORAGE", "STORED",
2066   "STRICT_P", "STRIP_P", "SUBSCRIPTION", "SUBSTRING", "SUPPORT",
2067   "SYMMETRIC", "SYSID", "SYSTEM_P", "TABLE", "TABLES", "TABLESAMPLE",
2068   "TABLESPACE", "TEMP", "TEMPLATE", "TEMPORARY", "TEXT_P", "THEN", "TIES",
2069   "TIME", "TIMESTAMP", "TO", "TRAILING", "TRANSACTION", "TRANSFORM",
2070   "TREAT", "TRIGGER", "TRIM", "TRUE_P", "TRUNCATE", "TRUSTED", "TYPE_P",
2071   "TYPES_P", "UESCAPE", "UNBOUNDED", "UNCOMMITTED", "UNENCRYPTED", "UNION",
2072   "UNIQUE", "UNKNOWN", "UNLISTEN", "UNLOGGED", "UNTIL", "UPDATE", "USER",
2073   "USING", "VACUUM", "VALID", "VALIDATE", "VALIDATOR", "VALUE_P", "VALUES",
2074   "VARCHAR", "VARIADIC", "VARYING", "VERBOSE", "VERSION_P", "VIEW",
2075   "VIEWS", "VOLATILE", "WHEN", "WHERE", "WHITESPACE_P", "WINDOW", "WITH",
2076   "WITHIN", "WITHOUT", "WORK", "WRAPPER", "WRITE", "XML_P",
2077   "XMLATTRIBUTES", "XMLCONCAT", "XMLELEMENT", "XMLEXISTS", "XMLFOREST",
2078   "XMLNAMESPACES", "XMLPARSE", "XMLPI", "XMLROOT", "XMLSERIALIZE",
2079   "XMLTABLE", "YEAR_P", "YES_P", "ZONE", "NOT_LA", "NULLS_LA", "WITH_LA",
2080   "'<'", "'>'", "'='", "POSTFIXOP", "'+'", "'-'", "'*'", "'/'", "'%'",
2081   "'^'", "UMINUS", "'['", "']'", "'('", "')'", "'.'", "';'", "','", "':'",
2082   "$accept", "stmtblock", "stmtmulti", "stmt", "CallStmt",
2083   "CreateRoleStmt", "opt_with", "OptRoleList", "AlterOptRoleList",
2084   "AlterOptRoleElem", "CreateOptRoleElem", "CreateUserStmt",
2085   "AlterRoleStmt", "opt_in_database", "AlterRoleSetStmt", "DropRoleStmt",
2086   "CreateGroupStmt", "AlterGroupStmt", "add_drop", "CreateSchemaStmt",
2087   "OptSchemaName", "OptSchemaEltList", "schema_stmt", "VariableSetStmt",
2088   "set_rest", "generic_set", "set_rest_more", "var_name", "var_list",
2089   "var_value", "iso_level", "opt_boolean_or_string", "zone_value",
2090   "opt_encoding", "NonReservedWord_or_Sconst", "VariableResetStmt",
2091   "reset_rest", "generic_reset", "SetResetClause",
2092   "FunctionSetResetClause", "VariableShowStmt", "ConstraintsSetStmt",
2093   "constraints_set_list", "constraints_set_mode", "CheckPointStmt",
2094   "DiscardStmt", "AlterTableStmt", "alter_table_cmds", "partition_cmd",
2095   "index_partition_cmd", "alter_table_cmd", "alter_column_default",
2096   "opt_drop_behavior", "opt_collate_clause", "alter_using",
2097   "replica_identity", "reloptions", "opt_reloptions", "reloption_list",
2098   "reloption_elem", "alter_identity_column_option_list",
2099   "alter_identity_column_option", "PartitionBoundSpec",
2100   "hash_partbound_elem", "hash_partbound", "AlterCompositeTypeStmt",
2101   "alter_type_cmds", "alter_type_cmd", "ClosePortalStmt", "CopyStmt",
2102   "copy_from", "opt_program", "copy_file_name", "copy_options",
2103   "copy_opt_list", "copy_opt_item", "opt_binary", "copy_delimiter",
2104   "opt_using", "copy_generic_opt_list", "copy_generic_opt_elem",
2105   "copy_generic_opt_arg", "copy_generic_opt_arg_list",
2106   "copy_generic_opt_arg_list_item", "CreateStmt", "OptTemp",
2107   "OptTableElementList", "OptTypedTableElementList", "TableElementList",
2108   "TypedTableElementList", "TableElement", "TypedTableElement",
2109   "columnDef", "columnOptions", "ColQualList", "ColConstraint",
2110   "ColConstraintElem", "generated_when", "ConstraintAttr",
2111   "TableLikeClause", "TableLikeOptionList", "TableLikeOption",
2112   "TableConstraint", "ConstraintElem", "opt_no_inherit", "opt_column_list",
2113   "columnList", "columnElem", "opt_c_include", "key_match",
2114   "ExclusionConstraintList", "ExclusionConstraintElem",
2115   "ExclusionWhereClause", "key_actions", "key_update", "key_delete",
2116   "key_action", "OptInherit", "OptPartitionSpec", "PartitionSpec",
2117   "part_params", "part_elem", "table_access_method_clause", "OptWith",
2118   "OnCommitOption", "OptTableSpace", "OptConsTableSpace", "ExistingIndex",
2119   "CreateStatsStmt", "AlterStatsStmt", "CreateAsStmt", "create_as_target",
2120   "opt_with_data", "CreateMatViewStmt", "create_mv_target", "OptNoLog",
2121   "RefreshMatViewStmt", "CreateSeqStmt", "AlterSeqStmt", "OptSeqOptList",
2122   "OptParenthesizedSeqOptList", "SeqOptList", "SeqOptElem", "opt_by",
2123   "NumericOnly", "NumericOnly_list", "CreatePLangStmt", "opt_trusted",
2124   "handler_name", "opt_inline_handler", "validator_clause",
2125   "opt_validator", "DropPLangStmt", "opt_procedural",
2126   "CreateTableSpaceStmt", "OptTableSpaceOwner", "DropTableSpaceStmt",
2127   "CreateExtensionStmt", "create_extension_opt_list",
2128   "create_extension_opt_item", "AlterExtensionStmt",
2129   "alter_extension_opt_list", "alter_extension_opt_item",
2130   "AlterExtensionContentsStmt", "CreateFdwStmt", "fdw_option",
2131   "fdw_options", "opt_fdw_options", "AlterFdwStmt",
2132   "create_generic_options", "generic_option_list", "alter_generic_options",
2133   "alter_generic_option_list", "alter_generic_option_elem",
2134   "generic_option_elem", "generic_option_name", "generic_option_arg",
2135   "CreateForeignServerStmt", "opt_type", "foreign_server_version",
2136   "opt_foreign_server_version", "AlterForeignServerStmt",
2137   "CreateForeignTableStmt", "AlterForeignTableStmt",
2138   "ImportForeignSchemaStmt", "import_qualification_type",
2139   "import_qualification", "CreateUserMappingStmt", "auth_ident",
2140   "DropUserMappingStmt", "AlterUserMappingStmt", "CreatePolicyStmt",
2141   "AlterPolicyStmt", "RowSecurityOptionalExpr",
2142   "RowSecurityOptionalWithCheck", "RowSecurityDefaultToRole",
2143   "RowSecurityOptionalToRole", "RowSecurityDefaultPermissive",
2144   "RowSecurityDefaultForCmd", "row_security_cmd", "CreateAmStmt",
2145   "am_type", "CreateTrigStmt", "TriggerActionTime", "TriggerEvents",
2146   "TriggerOneEvent", "TriggerReferencing", "TriggerTransitions",
2147   "TriggerTransition", "TransitionOldOrNew", "TransitionRowOrTable",
2148   "TransitionRelName", "TriggerForSpec", "TriggerForOptEach",
2149   "TriggerForType", "TriggerWhen", "FUNCTION_or_PROCEDURE",
2150   "TriggerFuncArgs", "TriggerFuncArg", "OptConstrFromTable",
2151   "ConstraintAttributeSpec", "ConstraintAttributeElem",
2152   "CreateEventTrigStmt", "event_trigger_when_list",
2153   "event_trigger_when_item", "event_trigger_value_list",
2154   "AlterEventTrigStmt", "enable_trigger", "CreateAssertionStmt",
2155   "DefineStmt", "definition", "def_list", "def_elem", "def_arg",
2156   "old_aggr_definition", "old_aggr_list", "old_aggr_elem",
2157   "opt_enum_val_list", "enum_val_list", "AlterEnumStmt",
2158   "opt_if_not_exists", "CreateOpClassStmt", "opclass_item_list",
2159   "opclass_item", "opt_default", "opt_opfamily", "opclass_purpose",
2160   "opt_recheck", "CreateOpFamilyStmt", "AlterOpFamilyStmt",
2161   "opclass_drop_list", "opclass_drop", "DropOpClassStmt",
2162   "DropOpFamilyStmt", "DropOwnedStmt", "ReassignOwnedStmt", "DropStmt",
2163   "drop_type_any_name", "drop_type_name", "drop_type_name_on_any_name",
2164   "any_name_list", "any_name", "attrs", "type_name_list", "TruncateStmt",
2165   "opt_restart_seqs", "CommentStmt", "comment_type_any_name",
2166   "comment_type_name", "comment_text", "SecLabelStmt", "opt_provider",
2167   "security_label_type_any_name", "security_label_type_name",
2168   "security_label", "FetchStmt", "fetch_args", "from_in", "opt_from_in",
2169   "GrantStmt", "RevokeStmt", "privileges", "privilege_list", "privilege",
2170   "privilege_target", "grantee_list", "grantee", "opt_grant_grant_option",
2171   "GrantRoleStmt", "RevokeRoleStmt", "opt_grant_admin_option",
2172   "opt_granted_by", "AlterDefaultPrivilegesStmt", "DefACLOptionList",
2173   "DefACLOption", "DefACLAction", "defacl_privilege_target", "IndexStmt",
2174   "opt_unique", "opt_concurrently", "opt_index_name",
2175   "access_method_clause", "index_params", "index_elem_options",
2176   "index_elem", "opt_include", "index_including_params", "opt_collate",
2177   "opt_class", "opt_asc_desc", "opt_nulls_order", "CreateFunctionStmt",
2178   "opt_or_replace", "func_args", "func_args_list",
2179   "function_with_argtypes_list", "function_with_argtypes",
2180   "func_args_with_defaults", "func_args_with_defaults_list", "func_arg",
2181   "arg_class", "param_name", "func_return", "func_type",
2182   "func_arg_with_default", "aggr_arg", "aggr_args", "aggr_args_list",
2183   "aggregate_with_argtypes", "aggregate_with_argtypes_list",
2184   "createfunc_opt_list", "common_func_opt_item", "createfunc_opt_item",
2185   "func_as", "transform_type_list", "opt_definition", "table_func_column",
2186   "table_func_column_list", "AlterFunctionStmt", "alterfunc_opt_list",
2187   "opt_restrict", "RemoveFuncStmt", "RemoveAggrStmt", "RemoveOperStmt",
2188   "oper_argtypes", "any_operator", "operator_with_argtypes_list",
2189   "operator_with_argtypes", "DoStmt", "dostmt_opt_list", "dostmt_opt_item",
2190   "CreateCastStmt", "cast_context", "DropCastStmt", "opt_if_exists",
2191   "CreateTransformStmt", "transform_element_list", "DropTransformStmt",
2192   "ReindexStmt", "reindex_target_type", "reindex_target_multitable",
2193   "reindex_option_list", "reindex_option_elem", "AlterTblSpcStmt",
2194   "RenameStmt", "opt_column", "opt_set_data", "AlterObjectDependsStmt",
2195   "opt_no", "AlterObjectSchemaStmt", "AlterOperatorStmt",
2196   "operator_def_list", "operator_def_elem", "operator_def_arg",
2197   "AlterTypeStmt", "AlterOwnerStmt", "CreatePublicationStmt",
2198   "opt_publication_for_tables", "publication_for_tables",
2199   "AlterPublicationStmt", "CreateSubscriptionStmt",
2200   "publication_name_list", "publication_name_item",
2201   "AlterSubscriptionStmt", "DropSubscriptionStmt", "RuleStmt",
2202   "RuleActionList", "RuleActionMulti", "RuleActionStmt",
2203   "RuleActionStmtOrEmpty", "event", "opt_instead", "NotifyStmt",
2204   "notify_payload", "ListenStmt", "UnlistenStmt", "TransactionStmt",
2205   "opt_transaction", "transaction_mode_item", "transaction_mode_list",
2206   "transaction_mode_list_or_empty", "opt_transaction_chain", "ViewStmt",
2207   "opt_check_option", "LoadStmt", "CreatedbStmt", "createdb_opt_list",
2208   "createdb_opt_items", "createdb_opt_item", "createdb_opt_name",
2209   "opt_equal", "AlterDatabaseStmt", "AlterDatabaseSetStmt", "DropdbStmt",
2210   "drop_option_list", "drop_option", "AlterCollationStmt",
2211   "AlterSystemStmt", "CreateDomainStmt", "AlterDomainStmt", "opt_as",
2212   "AlterTSDictionaryStmt", "AlterTSConfigurationStmt", "any_with",
2213   "CreateConversionStmt", "ClusterStmt", "cluster_index_specification",
2214   "VacuumStmt", "AnalyzeStmt", "vac_analyze_option_list",
2215   "analyze_keyword", "vac_analyze_option_elem", "vac_analyze_option_name",
2216   "vac_analyze_option_arg", "opt_analyze", "opt_verbose", "opt_full",
2217   "opt_freeze", "opt_name_list", "vacuum_relation", "vacuum_relation_list",
2218   "opt_vacuum_relation_list", "ExplainStmt", "ExplainableStmt",
2219   "explain_option_list", "explain_option_elem", "explain_option_name",
2220   "explain_option_arg", "PrepareStmt", "prep_type_clause",
2221   "PreparableStmt", "ExecuteStmt", "execute_param_clause",
2222   "DeallocateStmt", "InsertStmt", "InsertStmtShort", "insert_target",
2223   "insert_rest", "override_kind", "insert_column_list",
2224   "insert_column_item", "opt_on_conflict", "opt_conf_expr",
2225   "returning_clause", "DeleteStmt", "using_clause", "LockStmt", "opt_lock",
2226   "lock_type", "opt_nowait", "opt_nowait_or_skip", "UpdateStmt",
2227   "UpdateStmtShort", "set_clause_list", "set_clause", "set_target",
2228   "set_target_list", "DeclareCursorStmt", "cursor_name", "cursor_options",
2229   "opt_hold", "SelectStmt", "select_with_parens", "select_no_parens",
2230   "select_clause", "simple_select", "with_clause", "cte_list",
2231   "common_table_expr", "opt_materialized", "opt_with_clause",
2232   "into_clause", "OptTempTableName", "opt_table", "all_or_distinct",
2233   "distinct_clause", "opt_all_clause", "opt_sort_clause", "sort_clause",
2234   "sortby_list", "sortby", "select_limit", "opt_select_limit",
2235   "limit_clause", "offset_clause", "select_limit_value",
2236   "select_offset_value", "select_fetch_first_value", "I_or_F_const",
2237   "row_or_rows", "first_or_next", "group_clause", "group_by_list",
2238   "group_by_item", "empty_grouping_set", "rollup_clause", "cube_clause",
2239   "grouping_sets_clause", "having_clause", "for_locking_clause",
2240   "opt_for_locking_clause", "for_locking_items", "for_locking_item",
2241   "for_locking_strength", "locked_rels_list", "values_clause",
2242   "from_clause", "from_list", "table_ref", "joined_table", "alias_clause",
2243   "opt_alias_clause", "func_alias_clause", "join_type", "join_outer",
2244   "join_qual", "relation_expr", "relation_expr_list",
2245   "relation_expr_opt_alias", "tablesample_clause", "opt_repeatable_clause",
2246   "func_table", "rowsfrom_item", "rowsfrom_list", "opt_col_def_list",
2247   "opt_ordinality", "where_clause", "where_or_current_clause",
2248   "OptTableFuncElementList", "TableFuncElementList", "TableFuncElement",
2249   "xmltable", "xmltable_column_list", "xmltable_column_el",
2250   "xmltable_column_option_list", "xmltable_column_option_el",
2251   "xml_namespace_list", "xml_namespace_el", "Typename", "opt_array_bounds",
2252   "SimpleTypename", "ConstTypename", "GenericType", "opt_type_modifiers",
2253   "Numeric", "opt_float", "Bit", "ConstBit", "BitWithLength",
2254   "BitWithoutLength", "Character", "ConstCharacter", "CharacterWithLength",
2255   "CharacterWithoutLength", "character", "opt_varying", "ConstDatetime",
2256   "ConstInterval", "opt_timezone", "opt_interval", "interval_second",
2257   "a_expr", "b_expr", "c_expr", "func_application", "func_expr",
2258   "func_expr_windowless", "func_expr_common_subexpr", "xml_root_version",
2259   "opt_xml_root_standalone", "xml_attributes", "xml_attribute_list",
2260   "xml_attribute_el", "document_or_content", "xml_whitespace_option",
2261   "xmlexists_argument", "xml_passing_mech", "within_group_clause",
2262   "filter_clause", "window_clause", "window_definition_list",
2263   "window_definition", "over_clause", "window_specification",
2264   "opt_existing_window_name", "opt_partition_clause", "opt_frame_clause",
2265   "frame_extent", "frame_bound", "opt_window_exclusion_clause", "row",
2266   "explicit_row", "implicit_row", "sub_type", "all_Op", "MathOp",
2267   "qual_Op", "qual_all_Op", "subquery_Op", "expr_list", "func_arg_list",
2268   "func_arg_expr", "type_list", "array_expr", "array_expr_list",
2269   "extract_list", "extract_arg", "unicode_normal_form", "overlay_list",
2270   "overlay_placing", "position_list", "substr_list", "substr_from",
2271   "substr_for", "trim_list", "in_expr", "case_expr", "when_clause_list",
2272   "when_clause", "case_default", "case_arg", "columnref", "indirection_el",
2273   "opt_slice_bound", "indirection", "opt_indirection", "opt_asymmetric",
2274   "opt_target_list", "target_list", "target_el", "qualified_name_list",
2275   "qualified_name", "name_list", "name", "database_name", "access_method",
2276   "attr_name", "index_name", "file_name", "func_name", "AexprConst",
2277   "Iconst", "Sconst", "SignedIconst", "RoleId", "RoleSpec", "role_list",
2278   "ColId", "type_function_name", "NonReservedWord", "ColLabel",
2279   "unreserved_keyword", "col_name_keyword", "type_func_name_keyword",
2280   "reserved_keyword", YY_NULLPTR
2281 };
2282 #endif
2283 
2284 # ifdef YYPRINT
2285 /* YYTOKNUM[NUM] -- (External) token number corresponding to the
2286    (internal) symbol number NUM (which must be that of a token).  */
2287 static const yytype_uint16 yytoknum[] =
2288 {
2289        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
2290      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
2291      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
2292      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
2293      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
2294      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
2295      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
2296      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
2297      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
2298      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
2299      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
2300      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
2301      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
2302      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
2303      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
2304      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
2305      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
2306      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
2307      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
2308      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
2309      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
2310      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
2311      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
2312      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
2313      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
2314      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
2315      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
2316      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
2317      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
2318      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
2319      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
2320      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
2321      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
2322      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
2323      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
2324      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
2325      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
2326      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
2327      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
2328      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
2329      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
2330      665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
2331      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
2332      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
2333      695,   696,   697,   698,   699,   700,   701,   702,   703,   704,
2334      705,   706,   707,   708,   709,   710,   711,   712,   713,   714,
2335      715,   716,   717,   718,   719,   720,   721,   722,   723,   724,
2336      725,   726,   727,   728,    60,    62,    61,   729,    43,    45,
2337       42,    47,    37,    94,   730,    91,    93,    40,    41,    46,
2338       59,    44,    58
2339 };
2340 # endif
2341 
2342 #define YYPACT_NINF -4944
2343 
2344 #define yypact_value_is_default(Yystate) \
2345   (!!((Yystate) == (-4944)))
2346 
2347 #define YYTABLE_NINF -2673
2348 
2349 #define yytable_value_is_error(Yytable_value) \
2350   (!!((Yytable_value) == (-2673)))
2351 
2352   /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
2353      STATE-NUM.  */
2354 static const int yypact[] =
2355 {
2356    10182,   678, 18667, -4944, -4944,   678, 61659, -4944, 69615,    14,
2357      188,  1120,   170, 18321, 70083, 78039,   710,   352,  9722,   678,
2358    78039,  1066, 52766, 66807,   984, 78039,  1126,  1062, 52766, 78039,
2359     1765, 78507,  1190,  1285,   791, 78975, 70551, 65403,  1220, 78039,
2360     1417,  1415, 79443, 71019,  1214, 71487,  1062, 49032,   139,  1210,
2361    79911, 78039,  1528,  1767,  1394, -4944, -4944, -4944, -4944, -4944,
2362    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2363    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2364    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2365    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2366    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2367    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2368    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2369    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2370    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2371    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2372    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2373    -4944,     1, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2374    -4944, -4944,  1984, -4944,   894,  2020,  1419,   933,  1452, -4944,
2375    -4944,  1927, 61659, 78039, 78039, 78039,  1703, 78039,  1650, 78039,
2376      235, 61659, 57447, 71955,  1887,  1745, 45252, 80379, -4944, 61659,
2377    78039, 55575, 61659, 78039, 78039, 80847, 78039, 81315, 78039,   758,
2378    68211, 78039,  1919, 78039, 78039, 56043, 81783,  2075,  1375,   256,
2379    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2380    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2381    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2382    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2383    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2384    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2385    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2386    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2387    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2388    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2389    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2390    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2391    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2392    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2393    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2394    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2395    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2396    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2397    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2398    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2399    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2400    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2401    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2402    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2403    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2404    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2405    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2406    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2407    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2408    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2409    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2410    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2411    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2412    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2413    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2414    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2415    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2416    -4944, -4944, -4944, -4944,  1812,  1757, -4944,   262, -4944, -4944,
2417    -4944, -4944, -4944, -4944, -4944, -4944, -4944, 78039, 17624,  1126,
2418     1927, -4944,  1528, 78039,  2063, 78039,  1833, 82251,  1915, 78039,
2419    -4944, 78039,  1918, 82719,   708,  1513, 57447,  1603, 45726,  2007,
2420    78039, 78039, 57447, 83187, 83655, 84123, 78039, 78039, -4944, -4944,
2421     1992, 78039, 78039, -4944,  2123, 57915,    75,  2143,  2301,  2222,
2422      814, -4944, 72423, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2423    -4944, 60723,   352, -4944, -4944,  2178, 62127,  2248, -4944, -4944,
2424    84591,101369,  2035, -4944,   863, 62595, 58383,  2373,  2026, 46200,
2425     2424, -4944, 63063, -4944, 58851, 63531, -4944, -4944, -4944, -4944,
2426    -4944, 85059, -4944, 85527,  2129,  2248, -4944,101823, 59319, -4944,
2427     2274, 85995, 86463, 86931,  1927,  2009,  1293,  2561, 41018, -4944,
2428    -4944, -4944,    14, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2429     1023, -4944,   341,  1951,   273,   223,   286, -4944, -4944,   230,
2430      241,   243,   341,  2489,  2489, -4944, 78039, -4944, -4944,  1951,
2431      815,  2048,  2048,  2048,  2270,   969, -4944,  2048,  2213, -4944,
2432    -4944, -4944, -4944, 71487, -4944,  2091, 72891, 78039, 73359,  1126,
2433     2097,  2536,  2154, -4944, -4944, -4944, -4944, -4944,  2164,  2539,
2434     2539, 78039, -4944, -4944,  2592,  2181,  2442,  2155, -4944, -4944,
2435    -4944,  2380,  2382,  2390,   382,  1126,   319, -4944,  2519, -4944,
2436     2407, 27704, 27704,  1126, 73827, 87399,   302, 60723,  1126, 74295,
2437     2219,  1226,  2433, -4944, -4944, -4944,   755, -4944,  2648,  2264,
2438     2491,  2155,  1375, 42422, -4944,  2238,  1757, 71487, -4944, -4944,
2439    -4944, 59787,  2583, 29624, 78039,  2289, -4944,  2297,  2289,  2316,
2440     2317,  1419, -4944, 10182, 59787, 78039,  1416,  1416,  2730,  1416,
2441     1614,  1801, -4944,  2080, -4944,  2640,  2605, 71487,  2334,  1018,
2442    -4944,  1749,  2336,  1542,  2349,  1771,  2412, -4944, -4944,   920,
2443    78039,   236,  2395, 74763,  6746,  2363,  1757,  2371, -4944, -4944,
2444    -4944,  2511,   391, -4944, -4944, -4944, -4944,  2669,  2713,  5133,
2445      330, 75231, -4944, -4944, -4944, -4944, 78039, 78039, -4944, -4944,
2446    -4944, -4944, -4944, -4944, -4944, -4944, -4944,  2384,   140, -4944,
2447    -4944,  2378,  2727,  2601,  7295,  1015,  2690,  2554,  1759, 10593,
2448     2619,  1516,  2750,  6734,  1284,  2755,  1785,  1531, 72891, 78039,
2449     2715,  2761,  6542,  1443,   874,  2633,  1347,  2690,  2756,  2590,
2450     1759,  2780,  7214, 78039, -4944,  2714,  2819,   123, -4944,   239,
2451    -4944, 22469, 29624, 48564, -4944,  1757,  2514,  2672,    82,  2720,
2452    61659,  2470, -4944, -4944, 78039, -4944, -4944,102277,  2559, -4944,
2453      866, 61659, -4944,  2694,  2524, 46674, 78039, 61659, -4944, -4944,
2454    61659, 78039, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  2616,
2455     2816, 78039,102277, -4944,  2760, 78039, 78039, -4944, -4944,  2506,
2456    -4944, -4944, -4944, -4944,  2048, 78039,  2927,102277,  2733,   128,
2457    78039,     4,  2963, 78039,  2738,     4,  2548, 87867, -4944, -4944,
2458        4, -4944, -4944, -4944, 78039, 78039,  2529,  1554,  2746,  2847,
2459        4,  2768,  2991,  2993,  2787,  2644,  2804,  2297,  2986,  2778,
2460      904,  1065,   189,  1930,     4,  2634, 88335, 88803, 78039,  2660,
2461    78039,  2539, 61659, 61659, 61659, 78039,  2922, -4944,  2783, -4944,
2462    -4944,  1213, -4944, -4944, -4944, -4944, -4944,  2959, -4944,   226,
2463     2964,  2630,  2970,  1639, -4944, -4944,  2698, -4944,  2698,  2698,
2464     2653,  2653,  2842,  2673,  3008, -4944, -4944, -4944,  2376,  2698,
2465     2653, -4944,103185, -4944,  1633,  1800, -4944,   306, -4944,  3126,
2466    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  2681, -4944,
2467      219,  1719, -4944, -4944,  2712, -4944,  3024,   313, -4944,  3025,
2468    -4944,  2683, 89271, -4944, 89739, 90207,  3031,   321, -4944, 57447,
2469     3038,   313,  3040,  2683,  3054,   313,  3055,   921,  3056, -4944,
2470      926,  3048,  3072,   306,  3073,  1978,  2683, 61191,  3074,   349,
2471    -4944,  3079,   414, -4944,  3080,  2951, -4944, 29624, -4944,  2836,
2472    -4944,  1210, -4944,  1776, -4944, 51828, -4944,  2561,  3022, 71487,
2473     1951, -4944, 78039,  1951, 78039,  1951, 78039,  1951, 78039,  1951,
2474    78039, 78039, 78039,  1951, -4944, -4944, -4944, 78039,  2747, 78039,
2475    78039, -4944, -4944, -4944, 67275, 57447, 67743, -4944, 78039, -4944,
2476      798,  1126, -4944, -4944, -4944,  1314, -4944,  2155, -4944,102277,
2477     3196, 57447,  2539, -4944,  1826, -4944, -4944, 78039, 78039, -4944,
2478    -4944, -4944,  3010, 78039,  3077,  3078, 67275, 57447, -4944, 90675,
2479    -4944, 60723,  2966,  2754, -4944, -4944, -4944, -4944, -4944,  1616,
2480     3239,   204,  3242, 29624,  2764,   204,   204,  2765,  3092, -4944,
2481    -4944, -4944,   283,  2769,  2770, -4944,   232,   232, -4944,  2772,
2482     2774, -4944,   238,  2775,  2781,  3249,  3259,   281,  2782,  2786,
2483     2788,  2376,   204,  2789, 29624, -4944,  2792,   232,  2795,  2796,
2484     2797,  3261,  2798, -4944,  3264,  2799,   314,   327,  2805,  2817,
2485    -4944,  2772, -4944,   287,  2818,  2820,  2821,  2823,  2824,  2826,
2486     2830,  2835, 29624, 29624, 29624, -4944, 26259,  1757,  1126, -4944,
2487    -4944, -4944, -4944, -4944, -4944, -4944, -4944,   296,  7247, -4944,
2488     2855, -4944, -4944,  2984, -4944, -4944, 29624, -4944, -4944,   144,
2489    -4944,   297, -4944, -4944, -4944,  1757,  3108,  2832, -4944, -4944,
2490      324,  2833, -4944,  2052, -4944, -4944, -4944, -4944, -4944, -4944,
2491    60255,  3289, -4944,   277,  1126,   239,   370,  3230, 50890, 51359,
2492    -4944, -4944,  3102, -4944, 78039, -4944, -4944,  1757,   175,  1852,
2493    -4944, -4944, 51828, -4944, -4944,    14, 17405,  1856,  2289, 78039,
2494    78039,  3293, -4944, -4944, -4944,  1883, -4944,  2841, -4944,  2297,
2495    -4944, -4944,  1419,  1419, 29624,  1419,   267,  1666, 28184, 30104,
2496     3172,  3060,  1577,  1506,  3175, -4944,  3082,  1614,  1801, 71487,
2497    78039, 91143, -4944, 29624, -4944,  3281,  2939,  2943,  2998, 49968,
2498    -4944,  2945,  2917,  2957,  3013, 53703,  2885,  2968,  2969,  3027,
2499    -4944,  3150, -4944, -4944,  2974,  3045,  2976, 91611, -4944, -4944,
2500      799, -4944, -4944, -4944,   799, -4944,  2908,  1398,   447,  1237,
2501     2978,   517,   880,  3300, -4944,  1116, -4944, -4944,  3034, -4944,
2502     5909, 78039,  3240,  7416,  3111,   330,  3032, -4944, -4944, -4944,
2503     3168,  2985, 78039,  2987,  3125,   330,   312, 92079, -4944, -4944,
2504    78039, -4944, -4944, -4944, -4944,  6904,  3275, 25351, -4944,  1643,
2505     2992,  2971,  3000, 78039, 64467,   395,  3105,  3127,  1499,  1823,
2506      269,  3062, 78039,  1732,  3131, 78039,  2931,  3012,  3014,  3243,
2507     2938,  1406,  3336,  2936, -4944, -4944, -4944,  3306, -4944,  2161,
2508     2186,  3135, -4944,  3245,  3282,  7545,  3001,  3002,100007, -4944,
2509     3033,   975, 47148, 78039, 78039,  3037,  3039, 92547,  6904,  3316,
2510     3050,  3052,  3041,  3042,   654,  3342,  1539,  3046, -4944, -4944,
2511    -4944,  1539,  3047,  3049, 93015,  6904,  3330, 78039,  3051,  3053,
2512    78039,103185,   330, -4944,  3400,   330,   330,   284,  3402,  3057,
2513      332,  3211,  1426,     4,  2936,  3806, -4944,  3059,  3063,   333,
2514    -4944,  3179, 78039,  3065,  3067,  1409,  1126, -4944, -4944,  3068,
2515     3144,  3069,   742, -4944, -4944,  3081, 71487,  3165,  3169,  1732,
2516      248,  1758,  2936, -4944,  3070,  3075,  2938,  2938, 78039, 78039,
2517    78039, 78039, 78039,   214,  3436,  3439,  3084,   180,  1007,  2994,
2518    -4944,  1539, 56511,  3085, -4944,  1539, 78039,   453,  1941,  2936,
2519     1651,  1540, -4944, -4944, -4944,  1375, -4944, 29624, 29624, 29624,
2520     2996, -4944,  1592, 17405,    65, -4944,   298, 13883,  2995, -4944,
2521    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2522    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2523    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2524    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2525    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2526    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2527    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2528    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2529    -4944, -4944, -4944, -4944, -4944, 78039, -4944, 78039, -4944,  3276,
2530   102277,  3215,  3277, -4944,  3043, -4944,  3286,   330, -4944, 78039,
2531    78039,  3287,  3222,  3290,  3292,  3223,   945,102277,  3227,  3294,
2532    -4944,  3295,  3298,  3104,   191,  3096,  3028,  3479,  3369, 78039,
2533    53703, -4944,  3492,   799, -4944,102277,  3241,  3373, -4944, 78039,
2534     3265,    63, -4944,  3413,  3098, -4944, -4944,  1058, 78039,   253,
2535     3097, -4944, -4944,  3386, 57447,  1537,  3387,  1126,  3106,  3398,
2536     3273,  1126, 57447,  3318, 78039, 78039, 78039, 78039, -4944, -4944,
2537     3280,   970,   358, -4944, 56511,  3291, -4944, 78039,  3299,  3806,
2538     3305,  3518,    90,  2048, 93483,  3396, 93951,  3083,  3086,  3086,
2539     3532,102277,  3354, -4944,  1909, -4944,  3219, -4944, 61659, -4944,
2540    -4944, 61659, -4944, -4944,102277, 78039,  3089, -4944,  3094, -4944,
2541    -4944, 29624, -4944, -4944, -4944,  2489, -4944,102277,  2698,  2698,
2542    -4944, -4944,  3546,  3180,  3181,  2489, -4944,  2489, -4944,102277,
2543    -4944,  3099,  3109,  2489,  3182,  3183,  3184, -4944,  3110,  3186,
2544     2489, -4944, -4944,  1728, -4944, -4944, 61659, 61659, -4944, 57447,
2545    57447,  3454,   349,  3455,  3173,  3458,  3178, 47148, 47148, -4944,
2546      490, 61659, -4944, 57447, 61659, -4944, 78039, -4944, 78039, -4944,
2547    -4944, -4944, -4944,102277,102277, -4944, 57447, 56511,  3462,  3463,
2548      921, 78039, 78039, -4944, 78039, 78039, -4944, 78039, 78039,  1891,
2549    94419,  2561, 59787, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2550    -4944, 78039,  3246, 78039, -4944, 78039, -4944, 78039, -4944, 78039,
2551    -4944, 78039, -4944, -4944, -4944, 78039, -4944, 78039,  1914, -4944,
2552    -4944,  1920,  1085, 78039, 78039,   231, 61659, 78039,  3346, 61659,
2553    61659, 78039, 78039, 78039, 78039, 78039,  3212,  2833,  1435, -4944,
2554      289,   886, 71487,  3355, -4944, -4944,  1921,  1528,  1041, 78039,
2555     1312,  2164, -4944, -4944, -4944, -4944, 67743, 66807,  3457,   436,
2556    78039, -4944, -4944,  4283, 29624,  1757, 27219, -4944, -4944, 17405,
2557     3191, 29624, 29624,  3141,  2489,  2489, -4944,   721, 29624, 29624,
2558    29624,  2489,  2489, 29624,  9713, 29624, 47148, 29624, 34904, 23441,
2559    29624, 29624, 26739, -4944, 29624,  3381, 36338, 29624,   370,  3382,
2560    29624,   370,  9713,  3625,  3625,  2935,  7389,  3148,  1757, -4944,
2561     2489,   823, -4944,   466,102277, 29624, 29624, 29624, 29624, 53703,
2562     3235,   250, 78039, 29624,  3154,  2579, -4944, 29624, -4944,  3155,
2563    29624,  3236,   930, 29624, 29624, 29624, 29624, 29624, 29624, 29624,
2564    29624, 29624, -4944, 37742,   477,  3469,  3488,  1035,   437, 75699,
2565    27704,  3480, 22469, -4944,   261,  3480, -4944, -4944, -4944, 78039,
2566     3289, -4944, -4944,  3238, -4944, -4944, -4944, -4944, -4944,   299,
2567    -4944, -4944, -4944, -4944, -4944, -4944, -4944,  3157, -4944, -4944,
2568    -4944, -4944,  3157, -4944,  3161,  3467,  3468,   921, 78039, 59787,
2569    -4944, -4944, -4944,  2321, -4944, 29624, -4944,  1926,  1924, 78039,
2570    78039, -4944,  3444, -4944,  3164, -4944, 14015,  3444, -4944, -4944,
2571    35381,  3296,  3445,  3393, -4944, -4944, -4944,  3185, 17405, 30584,
2572    30584, -4944,  2223, 17405,  2261, -4944, -4944, -4944, -4944, -4944,
2573    -4944,   168, -4944, 78039,   157,  3172,  1506,  3244, -4944,  3636,
2574    78039, -4944,  1933, -4944, 57447, 78039, 78039,  3395, -4944,  3619,
2575    -4944,103185, -4944,  3192, -4944,102731, 98631, -4944, -4944,    78,
2576    -4944,   950, 57447, -4944, 78039, 78039, -4944, 53703, 57447, 78039,
2577    78039, -4944, 57447, 78039, 78039, -4944, -4944, -4944, -4944, -4944,
2578    52297,   715, 66807,  3331, 65871, -4944, -4944,  3198, 78039,  3252,
2579     3470,  3471,  1296, -4944, -4944, 94887, -4944,  3420, 57447, 78039,
2580    78039, 29624,  3421, 78039, 78039, -4944,   305,  3283,  3284, -4944,
2581    78039,  3285,  3451, 61659,  3207, 78039, 78039,102277,  3297,   927,
2582    61659,  3253, 47622, 61659, 61659, 78039, 78039, 78039, 78039,  3339,
2583     3536,102277, 78039,  3484,  1568, 71487,   462,  2060,  2936,  3437,
2584    -4944,  1350, -4944, 57447, -4944, 78039,  3426, -4944, -4944, -4944,
2585    76167,  3661,  3332, -4944, -4944, -4944, 95355, -4944, -4944,  3432,
2586    -4944,  1966, -4944, 57447, 57447, 78039,  7900, 95823,  1385,  3448,
2587    -4944, -4944,102277, -4944, 78039, 76635, 78039, 78039,  3486, 78039,
2588    68679, 96291, 96759,  1043,  1410,  3489, 78039, 69147,  3490, -4944,
2589     3365, 78039, -4944, -4944, 54171, 57447, 78039,   816, 53703, -4944,
2590    -4944, 78039, -4944,   905, -4944, 78039,  6198,  3440, -4944, -4944,
2591     3310,  3321, 78039,   470,  2190,  2936,  3598, 78039, 78039,  3247,
2592     1971, 57447, 78039, 53703, -4944,  3443,   753, 57447, 78039, 76167,
2593    -4944,  3461, 71487, 71487, 57447, 78039, 71487, -4944, 78039, 87399,
2594    -4944, 57447,  1236, -4944, 57447, 78039, 76167, -4944,  3464,  3408,
2595    57447, 78039, 14275, -4944, -4944, -4944,   330, -4944, -4944, -4944,
2596    -4944, -4944, 78039, 78039,   330, 78039, 78039,   330,  1553, -4944,
2597    57447, 78039, -4944, -4944, -4944,  3360, 57447, 78039, 78039,   341,
2598    -4944, 57447,  3097, 78039, 53703, -4944, 78039,  7898, 78039, 78039,
2599    78039, 78039, 78039, 78039, 57447, 78039, -4944, -4944,  1493,    72,
2600      127,  1675,   833, 78039,  3563, 78039, 97227, 57447, 78039, 78039,
2601     1126, 78039, 53703,  1698, -4944, -4944,  3388, -4944, 57447,  1236,
2602    -4944,  9225, 78039, 78039, 78039,  3343,  3356,   228,  3428, -4944,
2603    -4944, -4944,    92,    92,  3478, -4944, 29624, 29624, 28664,  3279,
2604    -4944, -4944, 29624, -4944, -4944, -4944,   344,  3727, 97695,   344,
2605    -4944,   344,  3553,  3335,  3338,   344, 78039,   344,   344, 78039,
2606    -4944, -4944, -4944, -4944,  3552, 78039,   344,   344,   344,  3456,
2607    -4944, -4944,  3456,   769, 29624,102277, 78039, -4944,  1973, -4944,
2608     3301,   970, -4944, -4944, 53703, 78039,   220,   151,  3623,  3501,
2609    64935,  2145,  3614, 78039,  3333, 78039,  3741,  3385, 71487,  2529,
2610    -4944,  2145, 78039, -4944,  2370, 66807, -4944, -4944, -4944, -4944,
2611    -4944, -4944, -4944, 78039, -4944, -4944,  3620, 78039, 29624,  3466,
2612    -4944,  1126,  2529,  2529,  2529,  2529, -4944, -4944, -4944, -4944,
2613     3509,  1294, -4944,  3303,  2529, 78039,  3422,  3643,  2145,  3309,
2614     3645, -4944,  3806,  3649,  1187, 78039,  3525, 64935,  3368,  3350,
2615     3538,  3768,  2048,  1126,  3543,  3529, -4944, 50429, -4944,  2529,
2616    25805,  5712,  6209,  3531,  3592, 60723,  3634,  3640,  3656, -4944,
2617      226, -4944,  3791,  1639,  3667, 29624,  1975,  3345,   306, -4944,
2618    -4944,  3347,  3109,  3361,  3364,  3348,  3349, -4944,  2489,   206,
2619     3351,  1207,  1136,  3473,  2489,  3589,  3352, -4944,   313, -4944,
2620     2683, -4944, 78039, -4944, 78039, 78039, 78039, 78039,   321, -4944,
2621    -4944,   313,  2683,   313,   921, -4944,  3626,   306,  2683,  3475,
2622     3680, 60723, -4944,   349, -4944,   414, -4944,  3569,   921, -4944,
2623     3585,  2048, -4944, -4944,  1032, 42890, -4944, -4944, -4944, -4944,
2624    -4944, -4944,  1977, -4944, 78039, -4944,  3660,  3662,  3663,  3664,
2625     3665,  3366,  3370,  3397, 78039,  3374,  3366,   330,  3374,  3374,
2626     3366,  2833,  2833,  3366,  3370, 56979,  3831,  3686, -4944,  3453,
2627     3380,  3702,   199, -4944,   213,   725,  3624, -4944, -4944, -4944,
2628    -4944,102277, -4944, 57447,  3424,  2539,  2539, -4944,   406,  3594,
2629     3384, 56979,  3821,   921, -4944, 61659, -4944, -4944,102277,  3472,
2630     3485, 61659,  3607,  3446, 61659, -4944, -4944, 61659, -4944, -4944,
2631    -4944, -4944, -4944,102277, -4944,  3668, 78039, 78039,  1986, -4944,
2632    -4944,  1820, -4944,  1832, 29624,   192, -4944, 15777,  1993, 29624,
2633     3394,  3399, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  3403,
2634     3731, -4944,  1995,  2003,  2027,  3405,  3410,  5265,  6208,  3411,
2635    14806,  3412,  3409, 34904, 34904, 26259,  1117, -4944, 34904,  3415,
2636     3615,  2037, 15177,  3418,  3416, 15849, 29144, 29624, 29144, 29144,
2637    15931,  3418,  3425,  2043, 53703,  3617, 16259,  2062, -4944, 29624,
2638    53703,  6738, 29624, -4944, 29624,  3430, -4944, -4944,  4516,  4516,
2639     4516,  9713, -4944,  3449, -4944, 34904, 34904, -4944,  2642, 26259,
2640    -4944, -4944,  3740, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2641     2627, -4944,  3427, -4944, -4944,  3659,  2889, 47148,  8426, 29624,
2642      362, 29624,  3154, 29624,  3516,  4516,  4516,  4516,   430,   430,
2643      309,   309,   309,  2024,   437, -4944, -4944, -4944,  3438,  3441,
2644     3442,  3635,  3447, 29624, -4944,  1988,  2105, 78039,  2831,  4866,
2645     5717, -4944, -4944, -4944, 38678,  3491,    65,  3491, -4944,  1375,
2646     2489,   823, 51828, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2647    78039, 17405, -4944, -4944,  3691,  3450, -4944, -4944, 29624, -4944,
2648    -4944,  2606,  3476,   928,   102,  2267,  2267,  2223,   778, -4944,
2649    -4944,  3497, -4944, 29624,  2281, -4944,  2393, -4944, -4944, -4944,
2650    -4944,  2833, -4944,  3697, -4944, -4944, -4944, 38678,  3494, 78039,
2651    -4944, -4944, -4944, -4944, -4944, -4944, 98631,  1719, -4944,102731,
2652    -4944,102731, -4944,  1719,  3880, -4944, 98631,  1566, -4944, -4944,
2653    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2654    -4944, 57447, 57447,  3666, 78039,  3658,  3671, 29624,   795, 78039,
2655     3465,  3474,  1487,  3748, 78039, -4944,  3795,   921, -4944, -4944,
2656     3544, -4944, 17405, -4944, -4944, -4944, -4944, -4944, 57447, 78039,
2657    -4944, 60723, -4944, 78039, -4944,102277, -4944, -4944, -4944, 78039,
2658     3496, 78039, -4944, 78039, 78039, 78039, -4944, -4944, -4944, -4944,
2659    -4944, -4944, -4944,   952,102277, -4944, -4944, 78039, 78039,   860,
2660     3549,  3551, 78039, -4944,  1105,  3179, 10024, 78039, 78039, 78039,
2661     3751, -4944, -4944, -4944, -4944,  3692, -4944,  3808, -4944, 98631,
2662    -4944,  2683,  1143,  3555,  2936,  3703, -4944,  3819,  3696, -4944,
2663     3613,   993, -4944, -4944,  3610, -4944, -4944, -4944, -4944,  3832,
2664      921,  3833,   921, 78039, 78039, 78039, 78039,  3627, -4944, -4944,
2665    -4944, -4944,  3630,  3757, -4944, 53703, 53703, 53703,  2066, -4944,
2666    -4944,  1126, -4944, -4944, -4944, -4944, -4944, -4944,  3790, -4944,
2667     2068, -4944,   618, -4944, -4944, -4944, -4944, -4944,  3838, 57447,
2668    78039, 10368, 78039, 78039, 78039,  3712,  1816, -4944,  1076,102277,
2669    -4944,100461, -4944, -4944,  2074, -4944,  3515, 78039,  3588, 57447,
2670     3561, -4944, -4944, -4944,  3846,  3507,  3507, -4944, -4944,  3507,
2671    -4944, -4944, -4944,  3772,  3701, -4944,   978,  3704, 57447,  3574,
2672    -4944, -4944, -4944, -4944,  3854,  3599, -4944, -4944,  3605,  2230,
2673     2936,  3806, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2674    -4944,  3631, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  1438,
2675    -4944, -4944,  1215,   254,  2339,  2936, -4944,   326, -4944,  3611,
2676    -4944,  3612, -4944, -4944, -4944,  3779,  3784,  3785,  3618,  3622,
2677     3674,  3629,  3633,  3678, -4944,  3637,  3679,  3641,  3684,  3642,
2678     3902,   921,102277,  3770,  1126,  3675,  3894,   921, -4944,  3644,
2679    -4944,  3646, -4944,  2086,  4008, -4944, 78039, -4944,   479,  2503,
2680     2936, -4944,  3648, -4944, 57447, 78039, -4944, -4944, -4944, 29624,
2681     3568,  3570,  3571, 17405, 17405, 29624, -4944, -4944, 17405,  3576,
2682    -4944, -4944, -4944,102277, 78039,  3845, -4944, -4944,   344, 78039,
2683    78039, -4944,  3848, -4944, -4944,  3852, 78039,  3855, -4944, -4944,
2684    -4944, -4944,   463,   463, -4944, -4944,  3890,  7941,  3581,   441,
2685    -4944, 53703, 44297,  2046,  2332,   821,     4, -4944, 60723, 78039,
2686    60723, -4944,   151,  3696, 78039, 78039, 78039,  3582,  3580, -4944,
2687    -4944, -4944, -4944, 57447,   946, 57447,  2489, -4944, -4944,  3655,
2688    -4944, 78039,  2048,  4070,  3913, -4944,  3507, -4944,  4030,  2993,
2689     1537,  3742,  1505,  2644,  3969,  2297,   423, 53703,  3350, -4944,
2690    -4944, -4944, -4944, 78039, 78039,   970,  1126, -4944,  3591,  3590,
2691    -4944, 78039,  3921, 78039, 78039, 78039, 78039,  3424,  3597, 78039,
2692     3601,102277, 78039,  2023,  2938,  4048,  3939,  1528,  3368,  3685,
2693     3943, 71487,  3621,  2102, -4944, -4944, -4944,  2111,   193, -4944,
2694     1126, 60723, 99553,  3932, -4944,  6209, -4944, -4944,  6209,   957,
2695    78039,  3917, -4944, -4944,  1528, -4944,102277,  3609, -4944,  2116,
2696    -4944,  2127, -4944, -4944, -4944,  2489, -4944, -4944,  1361,  1361,
2697     3616, -4944,  3628, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2698     3647, -4944, -4944, -4944,   349,  3672,   921,  3676,   921, -4944,
2699    -4944, -4944, -4944, 78039, -4944, 78039, 56511,   921, -4944, -4944,
2700    78039, -4944,  3950,  3669,    53, 41954,  3835, -4944, 78039,   434,
2701    -4944,  3639, -4944, -4944, -4944,  3756,  3765,  3769,  3771,  3775,
2702    78039,  3366, -4944,  3632, 57447,  1482, -4944, -4944,  3829, -4944,
2703    -4944, 71487,  3758, -4944, -4944, -4944, -4944,  3983,  3984, -4944,
2704    -4944, -4944,   280, -4944, 78039, 78039, 57447, 67275,   499, 57447,
2705    -4944,  3922,  3924, -4944, -4944,  3926,   330, -4944,  3927,  3930,
2706     3931, -4944,  3935,  3936, -4944, -4944, -4944,  3673, 16324, 29624,
2707    -4944,  4010,102277, -4944,  8101, -4944, -4944, -4944, 29624, -4944,
2708    -4944, -4944, -4944, -4944, -4944,  2195, 29624, -4944, 29624,  3990,
2709    -4944, 23927,  4137,  4137,  3677,102277, 34904, 34904, 34904, 34904,
2710     1523,  2795, 34904, 34904, 34904, 34904, 34904, 34904, 34904, 34904,
2711    34904, 35861,   469, -4944,  3867, 29624, 29624,  4001,  3990, -4944,
2712   102277,  3681,  3418,  3682,  3689, 29624, -4944, -4944,  2131, 36806,
2713     3694, 53703, -4944, 29624, 15627,  2138,  3723, 17186,  1757,  8511,
2714     1126, 29624,  2221,  2654, 29624,  2144, 29624,  4006, -4944, -4944,
2715    -4944, -4944,  3693, -4944, -4944,  3911,102277, -4944, 29624,  3695,
2716     3730, 34904, 34904,  3853, -4944,  3898, 29624, 26259, -4944,  3478,
2717     3732, 43358, -4944, 24413,  3699,  1062,  1062,  1062,  1062, -4944,
2718    78039, 78039, 78039, 39146,  4018,  3700, 38210, 77103,  3706,  2875,
2719    -4944, 77103, 77571, 77103, -4944,  3715, -4944,  1757, 29624,  4016,
2720     3705,  4016,   239,  3710, -4944, -4944, -4944, -4944,  1528, -4944,
2721     3707, -4944,  3476,   279, -4944, -4944, -4944,  1026, -4944,  3788,
2722    -4944, -4944, -4944,  3706, 31064,  3859, -4944,  2157,  1839, -4944,
2723    -4944, 98631, -4944,  3783,  2683,  2683,  2008,  3366,  4041,  2008,
2724     8608, -4944, -4944, 39614, 78039, 78039, -4944, 78039,  2174,  1386,
2725    78039, -4944, 78039, -4944, -4944, -4944, -4944,  4166, -4944, 78039,
2726    -4944, -4944,  3773,  3786, 78039, 78039, 78039, 78039,  3988, -4944,
2727    -4944,  2349, -4944, -4944, 57447, 78039, -4944, -4944, -4944,   481,
2728     2562,  2936, -4944,  3807, -4944, -4944,  4013, 78039, -4944,  4161,
2729     3822, 78039,  4071, 78039,  3735, -4944,  1386,  3841,  4055,   278,
2730     2938,   332,  2949, -4944,  1109, -4944, -4944,  3809, -4944, 78039,
2731    -4944, 78039, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  3869,
2732    -4944, -4944, -4944, -4944, 54171, -4944, -4944, 78039, -4944, 53703,
2733    44297, 53703, 78039, -4944,  1259,   485,  2700,  2936, -4944,  3824,
2734    -4944,  4077,  3825,  3826,  3876,   205,   246,  3830,  3839,  3883,
2735     3750,  3755,  3759, -4944, 53703, 44778,  3906, 78039,  2683,  3753,
2736     3798, 78039,   341,  1126, -4944, -4944,  1126,  2683,  1126, 78039,
2737    78039, 78039, 78039,   341, 53703, -4944,  4190,  3851, 78039, 78039,
2738    78039, 78039, -4944,  3814, -4944, 78039, 78039,  4092,   977,  2018,
2739    57447, 78039, 78039, 57447, 78039, 78039, 78039, 78039, 78039, 78039,
2740    78039,  3976, -4944,  4181,  4108,  2149,  4150,  3842, 78039, -4944,
2741    78039,  1126, -4944,  3179, 78039, 78039, 78039, 78039, -4944, -4944,
2742    -4944, -4944, -4944,  3478, -4944,  3774,  4051,   344, -4944,  4052,
2743     4053,   344,   344,  4054,   344, -4944, -4944,     4, -4944,   512,
2744    78039, -4944,  2061, 78039, -4944, -4944, -4944,  3707,  2161,  2186,
2745    -4944, -4944, -4944, -4944, -4944, -4944, 78039,  3780, 78039, 78039,
2746    34904, -4944,  1786,  1401,  1042, -4944,  4056, 78039,  3097, -4944,
2747    -4944, -4944,   225, 78039, -4944, -4944, -4944, -4944, -4944,   819,
2748     3597, -4944,  4074, 64935,  2683, 57447, 57447,  2683, -4944,102277,
2749     3781,  3350, -4944,   879,  3866, 57447,  1537,   981, 98163,  3106,
2750     3820,  3998, 38678,  1438, -4944,  3793,  3949, -4944,  3794,  3797,
2751    -4944, -4944, 78039,  3696, 56511,  2188,  3806,  4242,   101,  2009,
2752    -4944, 66339,  3987,  3597,  4074, -4944,  2938,  4005,  4011, -4944,
2753     1528, 78039,  3424,  3350,  1126, 78039,  3252, 44297, -4944,  4287,
2754    -4944, 98631, 29624, 29624, -4944,  3800, -4944,  3799,  6209, -4944,
2755     3878,  3802, -4944, -4944, -4944, -4944, -4944,  3889,  3812, 78039,
2756    -4944,  3813,  3667, -4944,  3667, -4944,  3816, -4944, -4944, -4944,
2757    -4944, -4944, -4944, 78039, -4944, 78039, -4944,   921, -4944,  3937,
2758    -4944,   921, 78039, -4944, -4944, -4944,  3868,  2199, -4944, -4944,
2759     4221,  3859, -4944,  2235, 42890,  3494, 29624,  1757, 78039, 78039,
2760    78039, 78039, 78039,  3366,   330, -4944,  4134, 56979, -4944, -4944,
2761     2240, 78039, -4944, -4944, -4944,  4201, -4944, -4944,   436,  4143,
2762    -4944, -4944,   994,   994,   994,  4099,   994,   994,   994,   994,
2763      994, -4944, 29624, 17405, -4944,  3834, -4944, 17405,  3840,  9101,
2764    17405,  4001, -4944,  2256, 29624, -4944,  1275,  1275,  1275,  3278,
2765     4147, -4944,  1584,  3843,  1275,  1275,  1275,   354,   354,   257,
2766      257,   257,  4137,   469, 17405, 17405, -4944, -4944,  3849, -4944,
2767    -4944, -4944,  3418, -4944, 31544,  1208,  4266, 36338, -4944, -4944,
2768    -4944,  3875,  3879,  3850, -4944, 29624, 32024,  3856,103185,  4036,
2769    -4944,  1059, 29624, 29624,  3836, -4944, 11563, 29624,102277, -4944,
2770     2273,  3836,   492, 29624,  2702,  2934, 29624, 29624,  5203,  9163,
2771     3858, 29624, 99085, -4944, -4944, -4944,  2277, 29624, 78039, 78039,
2772    78039, 78039, -4944, -4944, -4944, 77103, 77571, 77103,  3857, 37274,
2773    24882,  2875,  3860, 78039, -4944, -4944,  3862, 38678,  4114,  4063,
2774    -4944, 38678,  4063,   211,  4063,  4124,  3946, 43826, -4944, -4944,
2775     3865, -4944,  4068, -4944,  1643, 17405,  4285,  4175,  1126,  4175,
2776     1126,  3870, 47148, -4944, -4944, -4944, -4944,  3952, -4944,  4084,
2777    17405, 27704, -4944, -4944,  3944,  2279, -4944, -4944, -4944, -4944,
2778    -4944, -4944, -4944,  3953, 66807,  4196, -4944, 29624,  2284, -4944,
2779     3914,  4289,   178,  2286,  2288,  1386, -4944,  4176, -4944,  1622,
2780     4170,   207, -4944,   921, -4944,102277, -4944, 78039, 78039, -4944,
2781    -4944, -4944, -4944, 78039,  2885, -4944, -4944, 78039, 78039, 78039,
2782    78039, -4944, -4944, 57447, 78039, -4944, 78039, -4944, 53703,  2332,
2783      341,  1786,  4184,  4186,  4103, -4944,   330, -4944,  1786,  4104,
2784      341, 78039, -4944, -4944,  3752, -4944,102277,   921,   921, -4944,
2785    -4944, -4944, -4944, -4944,  3897, -4944,  4319,  3977, 78039, 78039,
2786    78039, 78039, 78039, 57447, 78039, 78039,  2489,  2489,102277,  3891,
2787    -4944,  2489,  2489,  3892, -4944, 57447, 78039, 78039, -4944, -4944,
2788    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  3978,
2789    -4944, 29624,  4316, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2790    -4944, -4944, -4944, -4944, -4944, 57447, 78039,  3979, -4944,  3980,
2791    -4944,   918, -4944, -4944, 78039, 78039, 78039, 78039,  4240, -4944,
2792    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
2793     4238, 78039, -4944, -4944,  1126,  1126,102277,   921,   921, -4944,
2794    -4944, -4944,  3985, -4944, -4944,  3905,  4178,   344, -4944,   344,
2795      344, -4944, -4944,   344, -4944,  3908, -4944,     4,  4275, -4944,
2796     1386,  1843,  4229, -4944,  4234, 29624, -4944,  1247,  3278, -4944,
2797     4288,  4364, -4944, -4944, -4944, -4944,  3097,  2048,  3972, -4944,
2798    -4944, 61659,  1339, -4944,  4215,   220,  4135, 64935,   326,   303,
2799     3920,  4046, -4944,  2683,  2683,  3981, 78039,  4373, -4944, -4944,
2800    -4944, -4944, -4944, -4944, 57447,  3561, -4944,  4148,   106,  4250,
2801    78039, 29624,  3706, -4944,  1870,  4255, -4944,  1126, -4944, -4944,
2802     4057,  3350, -4944,  1365, 78039,  4145, 64935,  3424,  2302, -4944,
2803    -4944, -4944,  3973,  4367,  3368, -4944,   326,  3987, -4944, -4944,
2804     4339,  4028,  3982,  4390, -4944,  4028,  4263,  4153,  3947, -4944,
2805     3621, -4944, -4944, 17405, 17405,  1126,103639,  6209,102277,  4276,
2806    78039,   825,  4237,   921,  2307, -4944, -4944,   921,   921, -4944,
2807    78039, -4944,  1528,  2852, 78039,  1757,   749, -4944,  3963, 78039,
2808    -4944,  3859, 17405,  3366,  3366,  3366,  3366,  3366, -4944,  4159,
2809    -4944, -4944,  4231, -4944,   921, 56979, -4944, -4944, -4944, -4944,
2810    -4944,   994, -4944, -4944, -4944, -4944, -4944, 17405, -4944, -4944,
2811    -4944, -4944, -4944,  9463, 34904,  4278, -4944,  3955,102277, -4944,
2812     3962,  2323,  2329, -4944, -4944,  1208, -4944,  4266, -4944, -4944,
2813    -4944,  9525,  4014, 17405,  4073,  3965,  3967,  3836,  3836, 11563,
2814     2331, -4944,  3836, 29624, 29624,  3836,  3836, 29624, -4944, -4944,
2815    10359,  4163, -4944, -4944, 10397, -4944, -4944, -4944, -4944, -4944,
2816    -4944, -4944, 54639,  3986,  3617, 77103,  3991, 78039,  2875, 38678,
2817    -4944, -4944,  2355, -4944, 38678,  4244, -4944, 38678, 61659, -4944,
2818    78039,  3992, 78039, -4944, 32504, 29624,  4015, -4944,  4015, -4944,
2819    -4944,  3975, -4944, 78039,  2832, -4944, -4944, 56979,  4187, 56979,
2820     1386, 10723,  4176, 39614, 48096, 78039, -4944, 78039, -4944,  4139,
2821     4176,  3994,  3097, -4944, -4944, -4944, -4944, -4944, -4944,  3989,
2822    -4944, -4944, -4944, -4944,  4060, -4944, -4944,    28,  3355, -4944,
2823     2337, -4944, -4944,  4431,  4323,  4326, -4944, -4944, -4944, -4944,
2824    -4944, -4944,  4181, -4944, -4944, 44297, 57447, 78039, -4944,  4075,
2825    -4944, -4944, -4944, -4944, -4944, -4944, 41486, 47148, -4944,   205,
2826     3996,  3997,   246, -4944, -4944, -4944, 78039, 11116,  3999,    40,
2827     3355, 78039, 78039,  4000,  4003,  4004,  1446,  1413,  1740,  3366,
2828     4324, 78039, -4944, -4944, -4944,  4181, -4944, -4944, 78039, -4944,
2829      344, -4944, -4944, -4944, -4944, 53703, -4944,  1400,  3908,  1126,
2830    61659,  4451,  4451, 78039, -4944, 11418,  4224, -4944, -4944,   149,
2831     3972,  4257,  4303, -4944,  4017, 78039,   225,  4019, 78039,  4012,
2832     4138,  1535,  1535, 78039, 78039, 78039,  2352,  1528,  2683,  3798,
2833     1537,  4350, 64935,  4398,  3696,   438, -4944, -4944,  1870, -4944,
2834       96,  4375,  4061, -4944, 78039,  4473, 78039,  3424,  3597, 78039,
2835     4023, -4944, -4944, 66339,  4230,  2332, 78039,  2023,  3987,  3368,
2836      935, 78039, -4944,   361, -4944,  1528, -4944, 78039, 71487, 39614,
2837    -4944,102731, -4944,  2357, -4944, -4944,  4097,  3491,  4140,  4141,
2838     4031, 78039,   890, -4944, -4944, -4944, -4944, -4944, -4944,    53,
2839    -4944, -4944,  4434, 39614,  4392, 29624, -4944, -4944, -4944, 78039,
2840    -4944,   499, -4944, -4944,  3344, 34904,102277,  2372, 29624, -4944,
2841    29624, -4944, -4944, -4944, -4944,   116, -4944, -4944, -4944,  3836,
2842     3836,  3836, -4944,  4467,  3478, -4944, -4944,  2385,  4490, 33944,
2843     4453, -4944, 78039,  2403, -4944, 29624,  4044, -4944, -4944, 38678,
2844     2355,  4045,  2405, 78039,  2422,102277,  4049,   990,  4050, 22955,
2845     4037, -4944, -4944, -4944, -4944, -4944, 17405, 17405, 78039, -4944,
2846    -4944, -4944, -4944,  1482,  2008,   499,  4289,  3097, -4944,  4058,
2847    -4944, -4944,  2938,   413, 78039,  3097, 78039,  3972, -4944, 78039,
2848     4142, -4944, -4944, 53703,  4355, -4944, -4944,  4111, -4944,   999,
2849     3355, 78039,102277, -4944,   160,  4378, -4944,102277,102277, -4944,
2850    -4944, -4944, 29624,  4146, -4944, -4944, -4944, 29624, 29624, 63999,
2851    -4944, -4944, 78039, 78039, 78039, 78039, 78039, -4944,   921, -4944,
2852    -4944,  2428, -4944, 40550, -4944, -4944,  2963,  1126,  2963,  1717,
2853    -4944, -4944,  2963,  2963, -4944,  3491, -4944,  4451,  1003, -4944,
2854    -4944, -4944,  1668,  4284,  4059, 29624, -4944,  1132,  4269,  4151,
2855     4062, -4944, 61659,  4545,  3597,  4074, 78039, -4944, -4944, -4944,
2856    -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,  2430,  3696,
2857     4397,  3350,  3982, -4944, 78039,  4100, -4944, 38678, -4944, -4944,
2858    -4944,  2963, -4944,   741,  4066,  4408,  3696,  1528,  2009, -4944,
2859     3987,  3597,  4074, -4944, -4944,  4069,  4011,  3368,  2023,  4207,
2860    -4944,  4209, -4944,  4492,  4280,  4498,  3424, -4944,  3252,  2441,
2861    -4944, -4944,  6209,103639,102277,  4438,  4121,  4122, -4944, -4944,
2862     4149, 78039, -4944, -4944,  4144, 78039,  2445,   113, 17405,  3696,
2863    -4944,  3344,  2451, -4944,  2458,  2473,  4152, -4944, 29624,  1134,
2864     3715, 54639,  4087, -4944, 34904,  2521, -4944,  3188, 78039,  2532,
2865    -4944, 17405, 78039, -4944, -4944, 29624, -4944,  2537, -4944, 29624,
2866     4088, 29624, -4944, 32504,  4085, -4944,  4546, -4944,  4420, -4944,
2867    -4944,  3972, 47148,   413,  3476,  2048,  3972,  2538, -4944, -4944,
2868    78039, -4944,  4059, 29624, -4944,  4189, -4944, -4944,  2544,  1463,
2869     4265,  4265,  2555,  2556, 11504, 78039,  2563,  2569, -4944,  2574,
2870     2489,  3370,  1740,  3370, -4944,  3366, -4944, -4944, 53703, -4944,
2871    55107, -4944, -4944, -4944,  1126, -4944,  1126,  4332, 78039, 49500,
2872     1126,  1126, -4944, -4944, -4944, -4944,  4457,  4396, -4944,  3806,
2873    -4944, 12189, -4944, -4944, -4944,   837, -4944,  4327,  4329, 78039,
2874    -4944,  4107, -4944,  2578,   326,  4239,  3696, -4944, -4944, 78039,
2875     4567,  4572, -4944,   723, 78039,  3706, 78039, -4944, -4944, -4944,
2876    29624,   225, -4944,  3982,  3424,  3368,   326,  3987,  2332, 40082,
2877     4028,  2023,  4011, -4944, -4944,  4334, -4944,  4336, -4944,  4123,
2878     4422, 39614,  6209, -4944, -4944,  1258,  4452,  4454, -4944, -4944,
2879     1528, -4944,  3491, -4944,  4258, -4944, -4944, -4944, -4944, -4944,
2880     3418, 32984, 32984, 32984,  4133, -4944, -4944, 78039,  3278,  4132,
2881    33944, 53703,  2582, -4944,100915, -4944,  2604,  2611, -4944,  2613,
2882    32504,  2617, -4944, 78039,  4155, 56979,  4179,  4156,  3476, -4944,
2883     4257, -4944, -4944,  1386,  3355, -4944, 17405, 78039, 61659,  4570,
2884    -4944, -4944, -4944, -4944, -4944, -4944, -4944,  3355,  4222, -4944,
2885    -4944, 63999, -4944, 78039, -4944, -4944,  2623, -4944, -4944, -4944,
2886    78039,  3793, -4944,  3793, -4944, -4944,  4282, -4944,  1530,  4247,
2887      997,   997,  4515, -4944,  4206, -4944, -4944,  4157, -4944,  4640,
2888     4286, 78039, -4944, -4944,   205,  1528, 64935,  3696, -4944, -4944,
2889    12517, 61659, -4944, -4944,  2023,  3987,  3368, 29624,  2657, -4944,
2890     4289,   178, -4944,  4011,  4028, -4944, -4944, 39614,  4160,  3350,
2891    -4944, -4944, -4944,  2121, 61659, 61659, -4944, -4944, 42890, 34424,
2892     4299,  1159, 14878,  4506, -4944,  4506,  4506, -4944,  2659, 36338,
2893    -4944, -4944, -4944, 78039,  4366,   345, -4944,  4318, -4944,  2666,
2894    -4944, -4944, -4944,   499,  4171, -4944, -4944, -4944,  4269,  1386,
2895    -4944,  3355, -4944, 78039, -4944,  4172, -4944, -4944, -4944, 55107,
2896     3793,  4061, -4944, -4944, -4944,  4630, -4944,  1101, -4944, -4944,
2897    -4944, -4944, 78039,  3696,  3891,  3982, -4944, -4944,  4173,  4011,
2898     3368,  2023, 12537, -4944, 40082, 78039, 78039,  4028, -4944,  2670,
2899    39614,  4028, -4944,  3036, -4944, -4944, -4944, -4944, -4944, -4944,
2900    -4944,  4174,  4177,   649,  4623, -4944, -4944, -4944, -4944, -4944,
2901     1152, -4944, -4944, -4944, -4944,  3617, -4944, -4944, 34904, 34904,
2902     4393, -4944,   345, -4944,  4180, -4944, -4944, -4944, 29624,  1386,
2903    -4944, -4944, -4944, 29624, -4944,  4517, -4944, -4944, -4944,  3696,
2904    -4944, -4944, 53235,  4028,  2023,  4011,  4289, -4944, -4944, -4944,
2905    -4944, -4944,  4422, -4944,  2679,  3491,  2029, -4944, -4944,  2033,
2906     2317,  4256,  4496, -4944, 33464,  4317, -4944,  4383, -4944,  4593,
2907     3278,  3278, -4944, -4944, 29624, 12555,  1386,  2704,   225, -4944,
2908    -4944,  2708, -4944, -4944, -4944, -4944, -4944,  4011,  4028, 78039,
2909     3350, -4944, 39614, -4944, -4944,  3036,  4294,  4296, -4944, -4944,
2910    -4944, 78039, 12902, -4944, -4944, 61659, -4944, 53235,  4028, -4944,
2911    -4944,  4028, -4944, -4944,  4225,  4226,  2709, -4944,  4192, -4944,
2912    -4944,  3491,  4509,  4512, -4944, 53235, -4944, 61659, 61659,  2725,
2913    -4944, -4944, -4944
2914 };
2915 
2916   /* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
2917      Performed when YYTABLE does not specify something else to do.  Zero
2918      means the default is an error.  */
2919 static const yytype_uint16 yydefact[] =
2920 {
2921     1686,  1450,   626,  1536,  1535,  1450,     0,   260,     0,  1546,
2922        0,  1450,   419,  1122,     0,     0,     0,     0,   626,  1450,
2923        0,  1686,     0,     0,     0,     0,     0,  1699,     0,     0,
2924        0,     0,     0,     0,     0,     0,     0,     0,  1450,     0,
2925        0,  1706,     0,     0,     0,     0,  1699,     0,  1548,     0,
2926        0,     0,     0,     0,     2,     4,    39,    74,    75,    32,
2927       31,    93,    57,    18,    65,   127,   126,   128,    44,    40,
2928       82,    27,    29,    41,    45,    67,    69,    34,    47,    58,
2929      105,    66,    25,    64,    88,    70,    91,    52,    12,    13,
2930       53,    14,    54,    15,    55,    16,   101,    76,    94,    37,
2931       63,    24,    46,    72,    73,     5,    48,    80,    11,    59,
2932       60,    62,    85,    86,    87,   110,    89,   122,    43,   119,
2933       98,    99,   116,   100,   117,     9,   102,    56,    17,   113,
2934      112,   114,    83,    49,    84,    71,    92,   111,    28,   115,
2935       19,    20,    22,    23,    21,    61,    30,    68,    33,    90,
2936      118,   108,   104,   123,   121,   129,   106,    77,     7,     8,
2937       95,     6,    26,    51,    10,    36,    35,    50,    42,   125,
2938       38,  1546,    97,   109,    96,    78,   103,    81,   107,   124,
2939       79,   120,  1656,  1655,  1708,  1659,  1685,     0,  1671,  1449,
2940     1448,  1463,     0,     0,     0,     0,     0,     0,     0,     0,
2941        0,     0,     0,     0,     0,     0,     0,     0,   625,     0,
2942        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2943        0,     0,     0,     0,     0,     0,     0,     0,  1460,  2302,
2944     2317,  2318,  2319,  2320,  2321,  2322,  2323,  2324,  2325,  2326,
2945     2327,  2328,  2329,  2330,  2331,  2332,  2667,  2333,  2334,  2335,
2946     2616,  2617,  2668,  2618,  2619,  2336,  2337,  2338,  2339,  2340,
2947     2341,  2342,  2343,  2620,  2621,  2344,  2345,  2346,  2347,  2348,
2948     2622,  2669,  2349,  2350,  2351,  2352,  2353,  2670,  2354,  2355,
2949     2356,  2357,  2358,  2359,  2360,  2361,  2362,  2671,  2363,  2364,
2950     2365,  2672,  2366,  2367,  2368,  2369,  2370,  2371,  2623,  2624,
2951     2372,  2373,  2374,  2375,  2376,  2377,  2378,  2379,  2380,  2381,
2952     2382,  2383,  2384,  2385,  2386,  2387,  2388,  2389,  2390,  2391,
2953     2392,  2393,  2394,  2395,  2396,  2397,  2398,  2625,  2399,  2400,
2954     2401,  2402,  2626,  2403,  2404,  2405,  2627,  2406,  2407,  2408,
2955     2673,  2674,  2409,  2410,  2411,  2412,  2413,  2628,  2629,  2414,
2956     2415,  2416,  2417,  2418,  2419,  2420,  2675,  2421,  2422,  2423,
2957     2424,  2425,  2426,  2427,  2428,  2429,  2430,  2431,  2432,  2676,
2958     2630,  2433,  2434,  2435,  2436,  2631,  2632,  2633,  2437,  2677,
2959     2678,  2438,  2679,  2439,  2440,  2441,  2442,  2443,  2444,  2634,
2960     2680,  2445,  2681,  2446,  2447,  2448,  2449,  2450,  2451,  2452,
2961     2453,  2454,  2455,  2456,  2457,  2458,  2459,  2460,  2461,  2462,
2962     2463,  2464,  2635,  2682,  2636,  2465,  2466,  2467,  2468,  2469,
2963     2470,  2471,  2637,  2638,  2472,  2473,  2474,  2683,  2475,  2639,
2964     2476,  2640,  2477,  2478,  2479,  2480,  2481,  2482,  2483,  2484,
2965     2485,  2486,  2641,  2684,  2487,  2685,  2642,  2488,  2489,  2490,
2966     2491,  2492,  2493,  2494,  2495,  2496,  2497,  2498,  2643,  2499,
2967     2644,  2502,  2500,  2501,  2503,  2504,  2505,  2506,  2507,  2508,
2968     2509,  2510,  2511,  2512,  2645,  2513,  2514,  2515,  2516,  2517,
2969     2518,  2519,  2520,  2521,  2522,  2523,  2524,  2525,  2526,  2527,
2970     2528,  2529,  2530,  2686,  2531,  2532,  2533,  2534,  2535,  2646,
2971     2536,  2537,  2538,  2539,  2540,  2541,  2542,  2543,  2544,  2545,
2972     2546,  2547,  2548,  2549,  2550,  2551,  2647,  2552,  2553,  2687,
2973     2554,  2555,  2648,  2556,  2557,  2558,  2559,  2560,  2561,  2562,
2974     2563,  2564,  2565,  2566,  2567,  2568,  2569,  2649,  2570,  2571,
2975     2572,  2573,  2688,  2574,  2575,  2576,  2577,  2578,  2579,  2650,
2976     2651,  2580,  2581,  2652,  2582,  2653,  2583,  2584,  2585,  2586,
2977     2587,  2588,  2589,  2590,  2591,  2592,  2593,  2594,  2595,  2596,
2978     2597,  2598,  2599,  2600,  2654,  2655,  2601,  2689,  2602,  2603,
2979     2604,  2605,  2606,  2607,  2608,  2609,  2610,  2611,  2612,  2656,
2980     2657,  2658,  2659,  2660,  2661,  2662,  2663,  2664,  2665,  2666,
2981     2613,  2614,  2615,   131,     0,     0,  2276,  2303,  2304,  2307,
2982     2302,   391,   390,  1646,  2270,  2303,  1545,  1525,   626,     0,
2983     1463,   418,  1686,     0,     0,     0,     0,     0,     0,     0,
2984      859,     0,     0,     0,     0,     0,     0,     0,     0,     0,
2985        0,     0,     0,   179,     0,     0,     0,     0,   442,   441,
2986        0,     0,     0,  1088,   447,     0,     0,     0,     0,     0,
2987      614,  1593,  2500,  1591,  1647,   261,   264,   265,   262,   263,
2988     2292,     0,  1224,  1225,  1227,     0,     0,  1237,   899,   900,
2989        0,     0,     0,   908,     0,     0,     0,   897,     0,     0,
2990        0,   913,     0,   910,     0,     0,   914,   911,   894,   912,
2991      901,     0,   893,     0,     0,  1237,   915,     0,     0,   895,
2992        0,     0,     0,     0,  1463,  1590,   448,  1686,     0,  1567,
2993     1568,  1569,  1546,  1558,  1570,  1563,  1565,  1564,  1566,  1562,
2994        0,  2291,  2318,  1023,  1023,  1023,  1023,  1020,  1021,  1023,
2995     1023,  1023,  2520,     0,     0,  1002,     0,  1004,  2293,  1023,
2996     1028,   511,   511,   511,     0,  1027,  1032,   511,     0,  1431,
2997     1472,  2275,  1698,     0,  1003,  1430,     0,     0,     0,  2580,
2998     1581,     0,     0,  1252,  1248,  1250,  1251,  1249,     0,  1091,
2999     1091,  2538,  1442,   243,  2549,  2650,  2580,   242,   236,   238,
3000      210,  2322,     0,     0,  1027,     0,  1463,  1440,   985,  1705,
3001     1703,     0,  2257,  2342,  2357,  2448,   233,  2531,  2539,  2549,
3002     2650,  2580,  2612,   189,   199,   194,     0,   254,  2549,  2650,
3003     2580,   250,  1460,     0,  1672,  1809,  2266,     0,  1433,  1432,
3004     1547,     0,  1550,     0,  2515,  1676,  1679,  1552,  1677,  1668,
3005        0,     0,     1,  1686,     0,  1557,  1702,  1702,     0,  1702,
3006        0,  1660,  1668,  1663,  1667,     0,     0,     0,     0,     0,
3007     1434,     0,     0,     0,   918,     0,  1475,  2271,  1073,     0,
3008        0,     0,     0,     0,  1324,     0,  1131,  1130,  2308,  2298,
3009     2299,     0,  2296,  2297,  2309,  2310,  2311,     0,  2420,  1324,
3010        0,     0,  2164,  2175,  2176,  2177,  2346,  2403,  2172,  2173,
3011     2174,  2166,  2167,  2168,  2169,  2170,  2171,     0,     0,  1219,
3012     2165,     0,  2420,     0,  1324,     0,   158,     0,   135,  1324,
3013        0,     0,  2420,     0,     0,  2420,     0,     0,     0,     0,
3014        0,  2420,     0,     0,     0,     0,     0,   158,  2453,     0,
3015      135,  2420,     0,     0,  1454,     0,     0,     0,  1456,  1459,
3016     1435,     0,  2249,     0,  2250,  2277,  1528,     0,  2266,     0,
3017        0,     0,   954,   947,     0,   955,   962,     0,     0,   964,
3018        0,     0,   948,     0,     0,     0,     0,     0,   967,   968,
3019        0,     0,   969,   949,   970,   950,   971,   951,   972,     0,
3020        0,     0,     0,   952,     0,     0,     0,  1446,  1437,     0,
3021     1583,  1585,  1584,  1582,   511,     0,     0,     0,  2420,     0,
3022        0,   135,  1513,     0,  2420,   135,     0,     0,   446,   445,
3023      135,  2296,   444,   443,  2346,  2403,     0,  1121,     0,  1389,
3024      135,  2420,     0,   181,  2420,   700,  2420,  1552,     0,   629,
3025        0,     0,   814,  2453,   135,     0,     0,     0,     0,     0,
3026        0,  1091,     0,     0,     0,     0,     0,   613,   626,  1594,
3027     1592,     0,  1228,   235,   234,  1226,   906,  2420,  1163,   352,
3028        0,     0,  2420,  1494,  2305,  1884,  1913,  1891,  1913,  1913,
3029     1880,  1880,  2386,  1893,  2420,  1881,  1882,  1918,     0,  1913,
3030     1880,  1885,     0,  1883,  1921,  1921,  1908,   352,   922,  1865,
3031     1866,  1867,  1868,  1894,  1895,  1869,  1900,  1901,  1905,  1870,
3032     1935,  1880,  2306,   907,     0,   898,  2420,   352,  1127,  2420,
3033     2300,   168,     0,   896,  2346,  2403,  2420,   352,  1221,     0,
3034     2420,   352,  2420,   164,  2420,   352,  2420,   352,  2420,   630,
3035        0,     0,  2420,   352,  2420,  2453,   166,     0,  2420,   352,
3036      916,  2420,   352,  2268,  2420,     0,  1438,     0,  1586,     0,
3037     1560,  2654,  1575,     0,  1571,  1578,  1574,  1686,     0,     0,
3038     1023,  1022,     0,  1023,     0,  1023,     0,  1023,     0,  1023,
3039        0,     0,     0,  1023,  2294,  2295,  1005,     0,  1029,     0,
3040        0,  1036,  1035,  1034,     0,     0,     0,  1037,     0,  1813,
3041     1622,     0,  1428,   237,   188,     0,   249,   248,  1445,     0,
3042        0,     0,  1091,  1255,     0,  1253,  1090,     0,     0,  1441,
3043      241,   239,     0,     0,     0,     0,     0,     0,  1447,     0,
3044     1439,     0,     0,     0,  2279,  2281,  2282,  2178,  2252,     0,
3045     2617,  2618,  2619,  2241,     0,  2620,  2621,  2622,  2669,  2070,
3046     2057,  2066,  2071,  2058,  2060,  2067,  2623,  2624,  2005,  2625,
3047     2626,  2289,  2627,  2628,  2629,  2631,  2632,  2633,  2634,  2062,
3048     2064,  2635,  2636,  2638,     0,  2290,  2639,  2640,  2482,  2642,
3049     2643,  2645,  2646,  2068,  2648,  2649,  2650,  2651,  2652,  2653,
3050     2288,     0,  2069,  2655,  2657,  2658,  2659,  2660,  2662,  2663,
3051     2664,  2665,     0,     0,     0,  2263,     0,  2037,     0,  1873,
3052     1874,  1896,  1897,  1875,  1902,  1903,  1876,     0,  2262,  1938,
3053     2123,  2036,  2053,     0,  2042,  2043,     0,  2035,  2031,  1688,
3054     2258,     0,  2032,  2278,  2280,  2242,  1688,  2256,   202,   256,
3055        0,   257,  2264,  2549,   190,   232,   204,   231,   205,   203,
3056        0,  2344,   191,     0,     0,   192,     0,     0,     0,     0,
3057      253,   251,     0,  1436,     0,  1811,  1810,  2267,   927,     0,
3058     1539,  1533,  1542,  1538,  1549,  1546,  2188,     0,  1678,     0,
3059        0,     0,  1658,  1657,     3,     0,  1554,  1556,  1531,  1552,
3060     1700,  1701,     0,     0,     0,     0,     0,     0,     0,     0,
3061     1758,  1716,  1717,  1719,  1755,  1759,  1767,     0,  1664,     0,
3062        0,  1815,  1637,     0,  1461,     0,     0,     0,     0,     0,
3063     1162,     0,     0,     0,     0,     0,   919,     0,     0,     0,
3064     1481,     0,  1483,  1484,  1485,     0,     0,     0,  1486,  1487,
3065     1475,   245,  1493,  1491,  1474,  1476,  1489,     0,     0,     0,
3066        0,     0,     0,     0,  1505,     0,   172,   173,     0,   642,
3067      626,     0,  2420,     0,     0,     0,     0,  1170,  1177,  1323,
3068        0,     0,     0,     0,     0,     0,     0,     0,  1171,  1169,
3069        0,  1172,   247,  1182,  1201,  1204,     0,     0,  1129,  1132,
3070        0,     0,     0,     0,     0,  1314,     0,     0,     0,  1314,
3071        0,     0,     0,  1323,     0,     0,     0,     0,     0,     0,
3072        0,     0,     0,   272,   274,   285,   347,     0,   605,     0,
3073        0,     0,   608,     0,  2420,  1324,     0,     0,     0,  1223,
3074        0,     0,     0,     0,     0,     0,     0,     0,  1204,     0,
3075        0,     0,     0,     0,     0,     0,     0,     0,   133,   134,
3076      139,     0,     0,     0,     0,  1204,     0,     0,     0,     0,
3077        0,     0,     0,   591,   604,     0,     0,     0,     0,     0,
3078      601,     0,     0,   135,   277,   581,   587,     0,     0,     0,
3079      707,   706,     0,     0,     0,     0,     0,  1405,  1404,     0,
3080        0,     0,     0,  1503,  1502,     0,     0,     0,     0,     0,
3081     1314,     0,   266,   268,     0,     0,     0,     0,     0,     0,
3082        0,     0,     0,     0,     0,     0,     0,     0,     0,   383,
3083      384,     0,     0,     0,   139,     0,     0,  1314,     0,   279,
3084        0,     0,  1455,  1452,  1453,     0,  1458,     0,     0,     0,
3085        0,  2045,     0,  2192,  1708,  2190,  1147,  2248,     0,  2312,
3086     2690,  2691,  2692,  2693,  2694,  2695,  2696,  2697,  2698,  2699,
3087     2700,  2701,  2702,  2703,  2704,  2705,  2706,  2707,  2708,  2709,
3088     2710,  2711,  2712,  2713,  2714,  2715,  2716,  2717,  2718,  2719,
3089     2720,  2721,  2722,  2723,  2724,  2725,  2726,  2727,  2728,  2729,
3090     2730,  2731,  2732,  2733,  2734,  2735,  2736,  2737,  2738,  2739,
3091     2740,  2741,  2742,  2743,  2744,  2745,  2746,  2747,  2748,  2749,
3092     2750,  2751,  2752,  2753,  2754,  2755,  2756,  2757,  2758,  2759,
3093     2760,  2761,  2762,  2763,  2764,  2765,  2766,  2245,  2244,  2273,
3094     2313,  2314,  2315,  2316,  2251,     0,  1524,     0,   961,     0,
3095        0,     0,     0,   963,     0,   956,     0,     0,   953,  2346,
3096     2403,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3097      966,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3098        0,   822,     0,  1475,  1512,     0,     0,     0,   635,     0,
3099     2420,     0,   137,   860,     0,   812,   447,     0,     0,     0,
3100     1194,  1388,   137,     0,     0,   175,     0,     0,   704,     0,
3101        0,     0,     0,     0,     0,     0,     0,     0,   751,   750,
3102        0,     0,     0,   813,     0,     0,   137,     0,  2420,   584,
3103     2420,     0,   511,   511,     0,     0,  1093,     0,     0,     0,
3104        0,     0,     0,  1650,  1652,  1651,     0,  1649,     0,   350,
3105      351,     0,  1211,  1236,     0,     0,     0,  1912,  1899,  1907,
3106     1906,     0,  1889,  1888,  1887,     0,  1886,     0,  1913,  1913,
3107     1911,  1890,  1865,     0,     0,     0,  1917,     0,  1915,     0,
3108      889,  1861,  1857,     0,  1924,  1925,  1926,  1923,  1936,  1922,
3109        0,  1871,  1927,  1880,  1877,   909,     0,     0,  1205,     0,
3110        0,  2420,   352,  2420,     0,  2420,     0,     0,     0,  1213,
3111      352,     0,  1207,     0,     0,  1209,     0,  1406,     0,   905,
3112      903,   902,   904,     0,     0,   887,     0,     0,     0,  2420,
3113      352,     0,     0,   882,     0,     0,   884,     0,     0,     0,
3114        0,  1686,     0,   221,   222,   220,  1576,   223,  1577,  1573,
3115     1559,     0,     0,     0,  1013,     0,  1017,     0,  1008,     0,
3116     1014,     0,  1009,  1006,  1007,     0,  1012,     0,     0,   512,
3117      514,     0,     0,  2369,  2385,     0,  2409,  2441,  2442,  2506,
3118     2534,  2539,  2545,     0,  2574,  2585,     0,  1038,  1068,  1033,
3119      718,     0,     0,  1632,  1429,  2195,     0,  1686,     0,     0,
3120        0,     0,  1244,  1245,   240,   211,     0,     0,     0,  1070,
3121     2538,  1444,   984,   626,     0,  2033,     0,  2040,  2041,  2240,
3122        0,     0,     0,     0,     0,     0,  2039,  2203,     0,     0,
3123        0,     0,     0,     0,  1961,     0,     0,     0,  2220,     0,
3124     2226,     0,     0,  1998,     0,     0,     0,     0,     0,     0,
3125        0,     0,  1962,  1942,  1943,  2037,  2188,     0,  2038,  2285,
3126        0,  1935,  2261,  2178,     0,  2175,  2176,  2177,     0,     0,
3127        0,  2255,     0,  2186,     0,     0,  1976,  2184,  1978,     0,
3128        0,     0,     0,  2172,  2173,  2174,  2166,  2167,  2168,  2169,
3129     2170,  2171,  2182,  1958,     0,     0,  2125,     0,  1957,     0,
3130        0,  1771,     0,  2283,  2243,  1771,   258,   259,   255,     0,
3131        0,   207,   206,     0,   225,   229,   230,   201,   228,     0,
3132      224,   209,  2112,  2111,   208,   200,   197,   195,   212,   214,
3133      215,   198,   196,   252,     0,     0,     0,   352,  1557,     0,
3134     1540,  1541,  1537,  1544,  1768,     0,  1680,     0,  1684,  1557,
3135        0,  1553,  1675,  1674,  1709,  1710,  1113,  1673,  1738,  1739,
3136        0,     0,     0,     0,  1764,  1762,  1729,  1720,  1728,     0,
3137        0,  1726,     0,  1730,  1938,  1757,  1662,  1714,  1715,  1718,
3138     1661,     0,  1760,     0,  1635,  1758,  1719,  1619,  1596,  1597,
3139        0,  1816,     0,  1462,     0,     0,     0,  1142,  1144,     0,
3140     1143,     0,  1146,     0,  1155,     0,     0,  1141,  1160,     0,
3141     1149,  1147,     0,  1501,     0,     0,   920,     0,     0,     0,
3142        0,  1482,     0,     0,  2574,   244,  1485,  1490,  1477,  1488,
3143        0,     0,     0,     0,     0,  1072,  1071,     0,     0,  1095,
3144        0,     0,     0,  1508,   500,     0,   349,     0,     0,     0,
3145        0,     0,     0,     0,     0,   808,   805,     0,     0,   804,
3146        0,   640,     0,     0,     0,     0,     0,     0,     0,     0,
3147        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3148        0,     0,     0,     0,   680,     0,  1314,     0,   712,     0,
3149     1179,     0,  1178,     0,  1183,     0,     0,  1180,  1175,  1176,
3150     2539,  2549,  2580,   246,  1181,  1203,     0,  1202,  1198,     0,
3151     1124,     0,  1125,     0,     0,     0,     0,     0,  2395,  2420,
3152      290,   312,     0,  1313,     0,     0,     0,     0,     0,     0,
3153        0,     0,     0,     0,     0,     0,     0,     0,     0,   334,
3154        0,     0,   337,   336,     0,     0,     0,     0,     0,   341,
3155      320,     0,   321,     0,   340,     0,     0,     0,   606,   607,
3156        0,     0,     0,  1314,     0,   281,     0,     0,     0,     0,
3157        0,     0,     0,     0,  1220,     0,   735,     0,     0,  2539,
3158     1199,     0,     0,     0,     0,     0,     0,  1392,     0,     0,
3159      161,     0,   156,   160,     0,     0,  2539,  1200,     0,     0,
3160        0,     0,     0,   589,   590,   603,     0,   594,   595,   592,
3161      596,   597,     0,     0,     0,     0,     0,     0,     0,   588,
3162        0,     0,   702,   701,   705,     0,     0,     0,     0,     0,
3163     1401,     0,  1194,     0,     0,  1400,     0,     0,     0,     0,
3164        0,     0,     0,     0,     0,     0,  1257,  1256,     0,     0,
3165        0,     0,  1324,     0,   850,     0,     0,     0,     0,     0,
3166        0,     0,     0,     0,   163,   722,     0,   721,     0,   157,
3167      162,     0,     0,     0,     0,     0,     0,     0,     0,   219,
3168     1451,  1457,  1708,  1708,  1708,  2051,     0,     0,     0,     0,
3169     1707,  2246,  2249,  1527,  2274,  1526,     0,     0,     0,     0,
3170      965,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3171      957,   958,   959,   960,     0,     0,     0,     0,     0,   397,
3172      394,   395,   397,     0,     0,     0,     0,   824,     0,   827,
3173      830,     0,  1473,   466,     0,     0,   632,   680,     0,     0,
3174      450,   170,     0,     0,     0,     0,   737,     0,     0,     0,
3175     1387,   132,   179,   181,   448,     0,   180,   182,   184,   185,
3176      186,   183,   187,     0,   699,   703,     0,     0,     0,     0,
3177      628,     0,     0,     0,     0,     0,   752,   756,   755,   759,
3178      757,     0,   753,     0,     0,  1836,     0,     0,   155,     0,
3179        0,   579,   583,     0,     0,     0,     0,   450,   550,   363,
3180     2420,     0,   511,     0,  2420,     0,  1092,     0,   811,     0,
3181        0,     0,     0,     0,     0,     0,     0,     0,     0,  1648,
3182      352,  1164,     0,  1495,     0,     0,     0,     0,   352,  1910,
3183     1909,  1862,  1858,     0,     0,     0,     0,   923,     0,     0,
3184        0,     0,     0,     0,     0,     0,     0,  1878,   352,  1128,
3185      169,  2301,     0,   891,     0,     0,     0,     0,   352,  1222,
3186      879,   352,   165,   352,   352,   631,     0,   352,   167,     0,
3187        0,     0,   623,   352,   917,   352,  2269,     0,   352,  1589,
3188     2420,   511,  1561,  1572,     0,     0,  1010,  1019,  1018,  1016,
3189     1015,  1011,     0,  1030,     0,   510,     0,     0,     0,     0,
3190        0,  1046,  1047,     0,     0,  1043,  1048,     0,  1044,  1045,
3191     1050,  1040,  1039,  1051,  1052,     0,     0,  1070,   716,     0,
3192        0,     0,     0,  1629,     0,  1627,     0,  1814,  1631,  1620,
3193     1580,     0,  1579,     0,   572,  1091,  1091,  1254,     0,     0,
3194     1027,     0,     0,   352,  1443,     0,   986,   992,     0,     0,
3195        0,     0,     0,     0,     0,   995,   996,     0,   997,   988,
3196      998,   989,   999,     0,   990,     0,     0,     0,     0,  2253,
3197     2199,     0,  2200,     0,     0,  2239,  2235,     0,     0,     0,
3198        0,     0,  2204,  2207,  2208,  2209,  2206,  2210,  2205,     0,
3199        0,  2211,     0,     0,     0,     0,     0,     0,     0,     0,
3200        0,     0,  2646,     0,     0,     0,     0,  2006,     0,     0,
3201     2159,     0,  2188,  2225,     0,     0,     0,     0,     0,     0,
3202     2188,  2231,     0,     0,     0,     0,  2110,     0,  2107,     0,
3203        0,     0,     0,  2252,     0,     0,  2286,  1939,  1953,  1954,
3204     1955,  1959,  2260,     0,  2254,     0,     0,  1940,  1967,     0,
3205     2232,  1994,     0,  1999,  1982,  2212,  2213,  2214,  2215,  2001,
3206        0,  1975,     0,  1980,  1984,     0,  1963,     0,  1960,     0,
3207     2255,  2187,     0,  2185,     0,  1950,  1951,  1952,  1944,  1945,
3208     1946,  1947,  1948,  1949,  1956,  2163,  2161,  2162,     0,     0,
3209        0,  2133,     0,     0,  1979,  2412,  2448,     0,  1699,  1699,
3210     1699,  1687,  1697,  2259,     0,  1831,  1708,  1831,  2265,     0,
3211        0,  1935,     0,  1812,   925,   926,   924,  1530,  1534,  1543,
3212     1557,  2189,  1551,  1682,     0,     0,  1532,  1555,     0,  1111,
3213     1112,     0,  1116,  2646,  2536,     0,     0,     0,     0,  1731,
3214     1765,     0,  1756,     0,  2279,  1732,  2278,  1733,  1736,  1737,
3215     1727,  1766,  1633,     0,  1761,  1666,  1665,     0,  1834,     0,
3216     1817,  1769,  1363,  1258,  1325,  1145,     0,  1880,  1156,     0,
3217     1140,     0,  1139,  1880,     0,  1157,     0,  1880,  1364,  1259,
3218     1326,   921,  1365,  1260,  1327,  1366,  1261,  1492,  1480,  1479,
3219     1478,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3220        0,     0,     0,     0,     0,   789,  2420,   352,  1506,  1367,
3221        0,  1262,   348,  1507,  1328,  1511,   807,   806,     0,     0,
3222     1329,     0,   641,     0,   645,     0,   647,   648,   649,     0,
3223        0,     0,   650,     0,  2346,  2403,   652,   655,   656,   657,
3224      664,   669,   659,     0,     0,   671,   665,     0,     0,     0,
3225        0,     0,     0,   677,   682,     0,     0,     0,     0,     0,
3226        0,  1173,  1174,  1368,  1265,     0,  1330,     0,  1123,     0,
3227     1266,   171,     0,     0,   273,  2420,   292,     0,   684,   789,
3228        0,  1316,   289,   318,     0,   333,   328,   329,   327,  2420,
3229      352,  2420,   352,     0,     0,     0,     0,     0,   330,   325,
3230      326,   322,     0,     0,   335,  2321,  2387,  2550,     0,   688,
3231      690,     0,   695,   338,  1286,   359,   358,   357,     0,   342,
3232        0,   364,   367,   339,   319,   317,   314,   286,     0,     0,
3233        0,     0,     0,     0,     0,     0,     0,  2272,     0,     0,
3234     1215,     0,  1371,  1331,     0,  1353,     0,     0,     0,     0,
3235      729,  1374,  1272,  1334,     0,  1393,  1395,  1385,  1273,  1394,
3236      159,  1303,   148,     0,     0,   144,     0,     0,     0,     0,
3237      138,  1375,  1274,  1335,     0,     0,  1376,  1275,     0,     0,
3238      278,   582,   593,   598,  1280,   602,   599,  1343,   600,  1383,
3239     1276,     0,  1379,  1306,  1338,   565,  1386,  1402,  1277,  1194,
3240     1397,  1399,     0,  1314,     0,   267,   269,     0,   288,     0,
3241     1278,     0,  1336,  1378,  1305,     0,     0,     0,     0,     0,
3242        0,     0,     0,     0,  1514,     0,     0,     0,     0,     0,
3243        0,   352,     0,     0,     0,  1316,  2420,   352,  1377,     0,
3244     1311,     0,  1351,     0,     0,   385,     0,  1304,  1314,     0,
3245      280,  1282,     0,  1345,     0,     0,   217,   216,   218,     0,
3246        0,     0,     0,  2193,  2194,     0,  2191,  2046,  2248,     0,
3247      974,   932,   973,     0,  2385,     0,   931,   933,     0,     0,
3248        0,   934,     0,   938,   939,     0,     0,     0,   930,   928,
3249      929,   396,     0,     0,   746,   747,     0,     0,     0,     0,
3250      826,     0,     0,     0,  1504,     0,   135,   639,     0,     0,
3251        0,   634,   679,   684,     0,     0,     0,     0,   449,   453,
3252      457,   458,   459,     0,     0,     0,     0,   149,   136,     0,
3253      868,     0,   511,     0,   739,  1391,  1390,  1193,     0,   181,
3254      174,     0,     0,   700,     0,  1552,     0,     0,   363,   821,
3255      819,   818,   820,     0,     0,     0,   842,   817,     0,  1835,
3256     1837,     0,     0,     0,     0,     0,     0,   572,   452,     0,
3257        0,   514,     0,   553,     0,     0,     0,     0,   550,     0,
3258        0,     0,  2305,     0,   838,   810,  1134,     0,  1152,  1135,
3259        0,     0,     0,     0,  1187,  1119,  1188,  1165,  1120,     0,
3260        0,   611,  1653,  1654,     0,  1212,     0,     0,  1500,     0,
3261     1498,     0,  1879,  1892,   890,     0,  1920,  1919,  1921,  1921,
3262        0,  1863,     0,  1904,  1929,  1930,  1931,  1932,  1933,  1934,
3263        0,  1928,  1872,  1206,   352,     0,   352,     0,   352,  1214,
3264     1208,  1210,  1407,     0,   888,     0,     0,   352,   881,   883,
3265        0,   885,     0,     0,     0,     0,  1611,  1599,     0,  1771,
3266     1638,     0,  2252,  1031,   513,     0,     0,     0,     0,     0,
3267        0,  1042,   609,  1049,     0,  1063,  1058,  1060,     0,  1064,
3268      715,     0,     0,  1630,  1623,  1625,  1624,     0,     0,  1621,
3269     2196,   880,     0,   578,     0,     0,     0,     0,   352,     0,
3270     1065,     0,     0,   993,   987,     0,     0,   991,     0,     0,
3271        0,   994,     0,     0,  1704,  2197,  2198,     0,     0,     0,
3272     2236,     0,     0,  2085,     0,  2059,  2061,  2073,     0,  2086,
3273     2044,  2087,  2063,  2065,  2074,     0,     0,  2179,     0,     0,
3274     2076,     0,  2008,  2009,     0,     0,     0,     0,     0,     0,
3275        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3276        0,  2024,  2023,  2077,  2158,     0,     0,  2223,  2224,  2078,
3277        0,     0,  2230,     0,     0,     0,  2083,  2088,     0,     0,
3278        0,     0,  2094,     0,  2115,     0,     0,     0,  2034,  2189,
3279        0,     0,     0,     0,     0,     0,     0,     0,  2000,  1983,
3280     2003,  1977,     0,  1981,  1985,     0,     0,  2002,     0,     0,
3281     1971,     0,     0,  1969,  1995,  1965,     0,     0,  1996,     0,
3282        0,     0,  2052,     0,     0,  1699,  1699,  1699,  1699,  1696,
3283        0,     0,     0,     0,  2536,  2666,     0,  1795,  1770,  1772,
3284     1782,  1795,  1800,  1795,  2054,  1829,  2055,  2266,     0,  1741,
3285        0,  1741,   193,     0,   226,   213,  1529,  1683,  1686,  1711,
3286        0,  2180,  1116,     0,  1713,  1735,  1734,     0,  1724,     0,
3287     1763,  1721,  1634,  1618,     0,  1616,  1598,     0,  1880,  1137,
3288     1138,     0,  1161,     0,  1075,  1076,     0,  1074,     0,     0,
3289        0,   499,  1094,     0,     0,     0,   789,     0,     0,   503,
3290        0,  1509,     0,  1384,  1302,   643,   644,     0,   658,     0,
3291      667,   666,     0,     0,     0,     0,     0,     0,     0,   651,
3292      673,   615,   674,   676,     0,     0,   675,   678,   681,  1314,
3293        0,   713,  1288,     0,  1349,  1167,     0,     0,  1126,     0,
3294        0,     0,     0,     0,     0,   466,   313,     0,     0,     0,
3295        0,   372,     0,   294,   305,   370,   311,     0,   344,     0,
3296      316,     0,   309,   331,   323,   332,   324,   343,   345,     0,
3297      692,   693,   691,   687,     0,   694,   696,     0,   361,     0,
3298        0,     0,     0,  1370,     0,  1314,     0,   282,  1284,     0,
3299     1347,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3300        0,     0,     0,  1352,     0,     0,     0,     0,   734,     0,
3301      731,     0,     0,     0,   141,   140,     0,   147,     0,     0,
3302        0,     0,     0,     0,     0,  1403,     0,     0,     0,     0,
3303        0,     0,   379,     0,   287,     0,     0,     0,     0,     0,
3304        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3305        0,     0,   386,   354,     0,   845,     0,     0,     0,   388,
3306        0,     0,  1362,     0,     0,     0,     0,     0,  1369,  1267,
3307     2049,  2050,  2047,  1708,  2247,     0,     0,     0,   945,     0,
3308        0,     0,     0,     0,     0,   399,   400,   135,   398,   421,
3309        0,   789,     0,     0,   823,   828,   836,  2482,  2166,  2167,
3310      834,   829,   831,   833,   835,   832,     0,     0,     0,     0,
3311        0,   482,     0,     0,     0,   472,     0,     0,  1194,   465,
3312      468,   469,     0,     0,   635,   638,   636,   637,   672,     0,
3313      452,   489,   540,     0,   151,     0,     0,   152,   150,     0,
3314        0,   363,   736,     0,   733,     0,   177,   448,     0,   704,
3315        0,     0,     0,  1194,   627,   758,   761,   754,     0,   841,
3316      843,   815,     0,   684,     0,     0,   584,     0,   511,  1590,
3317      567,     0,   542,   452,   540,   549,     0,     0,   557,   362,
3318        0,     0,   572,   363,     0,     0,  1095,     0,   837,     0,
3319     1133,     0,     0,     0,  1184,  1189,  1185,     0,     0,  1148,
3320        0,  1186,  1166,  1423,  1424,  1421,  1422,     0,     0,     0,
3321     1645,     0,     0,  1496,     0,  1898,     0,  1916,  1914,  1859,
3322     1864,  1937,   892,     0,   875,     0,   877,   352,   723,     0,
3323      624,   352,     0,  1603,  1605,  1604,     0,     0,  1606,  2252,
3324        0,  1616,  1643,     0,     0,  1834,     0,  1642,     0,     0,
3325        0,     0,     0,  1041,     0,  1061,     0,     0,  1024,  1067,
3326        0,     0,  1628,  1626,   570,     0,  1246,  1247,  1070,     0,
3327     1025,  1069,     0,     0,     0,     0,     0,     0,     0,     0,
3328        0,  2201,     0,  2238,  2234,     0,  2056,  2202,     0,     0,
3329     2218,  2217,  2159,     0,     0,  2007,  2019,  2020,  2021,  2219,
3330        0,  2029,     0,     0,  2016,  2017,  2018,  2010,  2011,  2012,
3331     2013,  2014,  2015,  2022,  2228,  2227,  2221,  2222,     0,  2080,
3332     2081,  2082,  2229,  2089,     0,  2336,  2116,     0,  2093,  2109,
3333     2108,     0,     0,     0,  2096,     0,     0,  2105,     0,  2160,
3334     2287,  1941,     0,     0,  1968,  2233,  1986,     0,     0,  2004,
3335        0,  1964,  2179,     0,     0,     0,     0,     0,  1973,     0,
3336        0,     0,  2136,  2131,  2132,  2156,     0,     0,     0,     0,
3337        0,     0,  1690,  1689,  1695,  1795,  1800,  1795,     0,     0,
3338     1668,     0,  1782,     0,  1794,  1780,  1793,     0,     0,  1806,
3339     1804,     0,  1806,     0,  1806,     0,  1774,     0,  1796,  1776,
3340     1793,  1778,     0,  1821,  2267,  1830,     0,  1754,  2046,  1754,
3341        0,     0,     0,  1712,  1114,  1115,  1722,     0,  1725,  2365,
3342     1832,     0,  1617,  1158,     0,     0,  1150,  1081,  1082,  1085,
3343     1083,  1080,  1084,     0,     0,     0,   789,     0,     0,   521,
3344        0,  1108,  1108,     0,     0,   505,   562,   516,   792,     0,
3345        0,     0,   790,   352,  1263,     0,   668,     0,     0,   663,
3346      661,   660,   662,     0,   616,  1382,  1264,     0,     0,     0,
3347        0,  1168,  1317,     0,     0,  1287,     0,   291,     0,   462,
3348        0,     0,   297,   306,     0,   302,     0,  1315,     0,     0,
3349        0,     0,   301,   374,     0,   371,     0,   352,   352,   346,
3350      689,   360,   365,   366,   369,  1322,     0,     0,     0,     0,
3351        0,     0,     0,     0,     0,     0,     0,     0,     0,   869,
3352      852,     0,     0,   870,   871,     0,     0,     0,  1217,  1218,
3353     1216,  1354,  1355,  1360,  1357,  1356,  1359,  1361,  1358,     0,
3354     1270,     0,     0,   727,  1318,   145,   142,   143,   146,  1319,
3355     1300,  1281,  1344,   566,  1398,     0,     0,     0,  1279,     0,
3356     1337,     0,  1296,  1290,     0,     0,     0,     0,     0,  1381,
3357     1310,  1342,  1380,  1308,  1340,  1307,  1339,  1309,  1341,  1301,
3358        0,     0,  1839,   849,     0,     0,     0,   352,   352,   848,
3359      725,  1283,     0,  1346,  1292,     0,     0,     0,   935,     0,
3360        0,   937,   940,     0,   942,   404,   422,   135,     0,   745,
3361      809,     0,     0,   825,   788,     0,   470,     0,   476,   480,
3362        0,     0,   484,   485,   483,   471,  1194,   511,   561,   778,
3363      779,     0,     0,   799,     0,   633,     0,   450,     0,   486,
3364        0,     0,   454,   154,   153,     0,     0,     0,   740,   744,
3365      742,   741,   743,   738,     0,   729,   181,  2420,     0,     0,
3366        0,     0,   563,  1396,     0,   771,   816,     0,  1838,   719,
3367        0,   363,   580,     0,     0,     0,   450,   572,     0,   455,
3368      460,   461,   466,     0,   550,   541,     0,   542,   551,   552,
3369        0,   559,  1471,     0,   573,   559,     0,     0,     0,   840,
3370        0,   839,  1136,  1153,  1154,     0,     0,  1117,     0,     0,
3371        0,     0,   618,   352,     0,  1499,  1860,   352,   352,  1243,
3372        0,   886,     0,     0,     0,  1608,  1614,  1595,     0,     0,
3373     1639,  1616,  1640,  1055,  1056,  1057,  1054,  1053,   610,     0,
3374     1059,   717,     0,   571,   352,     0,  1001,   979,  1000,   978,
3375      980,     0,   982,   983,   977,   975,   976,  2237,  2072,  2075,
3376     2084,  2216,  2158,  2189,     0,     0,  2030,     0,     0,  2079,
3377     2656,     0,     0,  2120,  2121,     0,  2117,  2118,  2113,  2114,
3378     2095,     0,  2471,  2100,     0,     0,     0,  1992,  1990,  1987,
3379        0,  1988,  1972,     0,     0,  1970,  1966,     0,  1997,  2122,
3380        0,  2138,  2135,  2155,  2189,  1694,  1693,  1692,  1691,  1781,
3381     1777,  1779,     0,  2661,     0,  1784,  1791,     0,  1773,     0,
3382     1805,  1801,     0,  1802,     0,     0,  1803,     0,     0,  1775,
3383        0,  1791,     0,  1828,     0,     0,  2127,  2284,  2127,   227,
3384     1681,     0,  1723,     0,  1615,  1151,  1159,     0,     0,     0,
3385      501,     0,   516,     0,     0,     0,  1101,  1110,  1100,     0,
3386      516,     0,  1194,   794,   793,   796,   791,   795,  1510,     0,
3387      653,   654,   670,  1289,     0,  1350,  1298,     0,  1632,   293,
3388        0,   685,   300,     0,     0,     0,   295,   373,   375,   296,
3389      299,   303,   354,   315,   308,     0,     0,     0,  1285,     0,
3390     1348,  1294,  1321,  1372,  1268,  1332,     0,     0,   858,     0,
3391        0,     0,     0,  1373,  1269,  1333,     0,     0,     0,     0,
3392     1632,     0,     0,     0,     0,     0,     0,     0,     0,  1519,
3393        0,     0,   353,   847,   846,   354,   387,  1312,     0,  2048,
3394        0,   936,   943,   944,   941,     0,   393,   401,   404,     0,
3395        0,  1234,  1234,     0,   789,     0,     0,   467,   481,     0,
3396      561,   520,     0,   473,     0,     0,     0,     0,     0,     0,
3397        0,     0,     0,     0,     0,     0,     0,     0,   732,   731,
3398      176,     0,   450,     0,   684,     0,   765,   766,   760,   762,
3399        0,   773,   777,   844,     0,     0,     0,   572,   452,     0,
3400        0,  1587,   451,     0,     0,   463,     0,   553,   542,   550,
3401        0,     0,   569,     0,  1464,     0,   575,     0,     0,     0,
3402     1190,     0,  1196,     0,  1147,  1191,     0,  1831,     0,     0,
3403        0,     0,   622,  1235,  1497,   876,   878,   724,  1600,     0,
3404     1601,  1607,     0,     0,     0,     0,  1644,  1636,  1062,     0,
3405     1066,   352,   981,  2160,  2025,     0,     0,     0,     0,  2090,
3406        0,  2091,  2119,  2097,  2101,     0,  2098,  2099,  1989,  1993,
3407     1991,  1974,  2124,     0,  1708,  2157,  1824,     0,  1827,     0,
3408        0,  1783,     0,     0,  1785,     0,     0,  1787,  1789,     0,
3409        0,     0,     0,     0,     0,  2270,  2364,  2629,  2533,     0,
3410     1740,  1742,  1745,  1747,  1746,  1748,  1744,  1753,     0,  1670,
3411     1669,  2181,  1833,  1063,     0,   352,  1108,  1194,   522,  2482,
3412      523,  1107,  1109,  1113,     0,  1194,     0,   561,   646,     0,
3413        0,   275,   683,     0,     0,   298,   307,   356,   368,     0,
3414     1632,     0,     0,   856,   865,   865,   853,     0,     0,   872,
3415     1271,   728,     0,     0,   270,  1297,  1291,     0,     0,     0,
3416     1521,  1522,     0,     0,     0,     0,     0,  1320,   352,  1293,
3417      946,     0,   424,   431,   405,   409,  1513,     0,  1513,     0,
3418      406,   410,  1513,  1513,   403,  1831,   420,  1234,     0,  1231,
3419     1230,   787,     0,   509,   586,     0,   474,     0,   531,     0,
3420        0,   800,     0,     0,   452,   540,     0,   498,   490,   491,
3421      492,   494,   493,   495,   496,   497,   488,   487,     0,   684,
3422      862,   363,  1471,   726,     0,     0,   697,     0,   763,   768,
3423      767,  1513,   772,     0,     0,     0,   684,     0,  1590,   568,
3424      542,   452,   540,   456,   466,     0,   557,   550,   553,     0,
3425      554,     0,   558,     0,     0,     0,   572,  1523,  1095,     0,
3426     1096,  1195,     0,     0,     0,     0,     0,     0,  1238,   617,
3427        0,     0,   621,   612,     0,     0,     0,     0,  1641,   684,
3428     1026,  2026,     0,  2027,     0,     0,  2103,  2102,     0,  2142,
3429     1829,     0,     0,  1823,     0,     0,  1853,     0,     0,     0,
3430     1792,  1808,     0,  1788,  1786,     0,  1797,     0,  1799,     0,
3431        0,     0,  1749,     0,  2126,  2128,     0,  1077,     0,  1078,
3432     1102,   561,     0,  1113,  1116,   511,   561,     0,   789,  1299,
3433        0,   686,   586,     0,   310,     0,   283,  1295,     0,     0,
3434      867,   867,     0,     0,     0,     0,     0,     0,   381,     0,
3435        0,  1515,     0,  1516,  1517,  1520,   389,   402,     0,   429,
3436        0,   427,   426,   428,     0,   417,     0,     0,     0,     0,
3437        0,     0,   392,  1229,  1233,  1232,     0,     0,   475,     0,
3438      477,     0,   517,   518,   519,     0,   479,   527,   528,     0,
3439      797,     0,   802,     0,     0,     0,   684,   539,   708,     0,
3440        0,     0,  1465,     0,     0,   564,     0,   774,   775,   770,
3441        0,     0,   720,  1471,   572,   550,     0,   542,   464,     0,
3442      559,   553,   557,   555,   556,     0,  1468,     0,   574,     0,
3443     1104,     0,  1118,  1197,  1192,  1427,     0,     0,   620,   619,
3444        0,  1613,  1831,  1610,     0,   714,  2028,  2106,  2092,  2104,
3445     2137,     0,     0,     0,     0,  1822,  1825,     0,  1856,     0,
3446        0,     0,     0,  1842,     0,  1790,     0,     0,  1798,     0,
3447        0,     0,  1743,     0,     0,     0,   526,     0,  1116,  1098,
3448      520,   789,   515,   502,  1632,   304,   355,     0,     0,     0,
3449      863,   866,   854,   855,   874,   873,   730,  1632,     0,   377,
3450      376,     0,   380,     0,   425,   434,     0,   432,   407,   412,
3451        0,   416,   414,   413,   408,   411,     0,   508,     0,     0,
3452        0,     0,     0,   529,     0,   530,   560,     0,   801,     0,
3453        0,     0,   710,   861,     0,     0,   450,   684,   764,   769,
3454        0,     0,  1466,  1588,   553,   542,   550,     0,     0,   544,
3455     1108,  1108,   437,   557,   559,  1469,  1470,     0,     0,   363,
3456     1097,  1426,  1425,  1686,     0,     0,  1602,  1612,     0,  2616,
3457     2365,  2588,     0,  2154,  2143,  2154,  2154,  2134,     0,     0,
3458     1854,  1855,  1840,     0,     0,  1844,  1807,  1820,  1751,     0,
3459     1750,  2129,  2130,   352,     0,   789,   524,  1099,   531,   504,
3460      276,  1632,   857,     0,   271,     0,   382,  1518,   430,     0,
3461      415,   777,   585,   478,   536,     0,   535,     0,   533,   532,
3462      798,   803,     0,   684,   851,  1471,   698,   776,     0,   557,
3463      550,   553,     0,   543,     0,  1110,  1110,   559,   435,     0,
3464        0,   559,  1409,  1686,  1408,  1410,  1418,  1415,  1417,  1416,
3465     1414,  1241,  1242,  1831,     0,  2147,  2146,  2145,  2149,  2148,
3466        0,  2141,  2139,  2140,  1826,     0,  1843,  1846,     0,     0,
3467        0,  1852,  1845,  1847,     0,  1818,  1752,  1079,     0,   506,
3468      789,   284,   864,     0,   433,     0,   534,   538,   537,   684,
3469      709,  1467,   782,   559,   553,   557,  1108,   545,  1109,   547,
3470      546,   439,  1104,  1105,     0,  1831,     0,  1419,  1413,  1668,
3471     1655,     0,     0,  1609,     0,     0,  2151,     0,  2152,     0,
3472     1849,  1850,  1851,  1848,     0,     0,   507,     0,     0,   711,
3473      784,     0,   780,   783,   785,   786,   438,   557,   559,  1110,
3474      363,  1103,     0,  1086,  1411,  1686,     0,     0,  2144,  2150,
3475     2153,     0,     0,   525,   378,     0,   748,     0,   559,   436,
3476      548,   559,  1106,  1412,     0,     0,     0,  1819,     0,   781,
3477      440,  1831,     0,     0,  1841,   782,  1087,     0,     0,     0,
3478     1239,  1240,   749
3479 };
3480 
3481   /* YYPGOTO[NTERM-NUM].  */
3482 static const yytype_int16 yypgoto[] =
3483 {
3484    -4944, -4944, -4944,  3844, -4944, -4944,  -902,   368,  3058,  -980,
3485    -4944, -4944, -4944,  1345, -4944, -4944, -4944, -4944,  3792, -4944,
3486     2141, -2457, -4944, -4944,   150,  -385, -1318,   134,  3325,  1790,
3487    -4944, -1147, -4944, -4944,  -573,   222, -4944,  -381,   548, -4944,
3488    -4944, -4944, -4944, -4944, -4944, -4944, -4944,  -809,  2266, -4944,
3489     2342,  1623,  -273, -2918, -4944, -4944, -1461, -3259, -4944,   929,
3490    -4944,   951, -4244,  -595, -4944, -4944, -4944,  2244, -4944, -4944,
3491    -4944,  2187,  1420,   -36, -4944, -4944, -4944, -4944, -4944, -4944,
3492     -444, -4944, -4944,  -694,   152,    43, -2480, -3791, -4944, -4944,
3493      784,   -85, -1442, -4944, -3615, -4944,   304, -2224, -4944, -4944,
3494    -4944,   -53, -1416,  1722, -4944,  -709, -1124,  2028, -4175,  -554,
3495    -4944,    74, -4944,  -670,  -459,  -457,  -590, -3827, -4320, -4944,
3496    -4944,  -701, -3249, -4589, -4790, -4330, -4460,  1733, -4944, -4944,
3497      158, -3179, -3274,   161,   756, -4944,   163,   164, -4944,   768,
3498     -394,  -919, -1562, -4944,  -869, -4944, -4944, -4944, -2954, -4944,
3499    -4944, -4944, -4944,    97, -4944, -4944, -4944, -4944,   817, -4944,
3500    -4944, -4944, -4944, -4944, -4944, -2688,  2203,  2208, -4944, -3214,
3501    -4944,  -877, -4944,   972, -2989,  1645, -4944, -4944,  1411,  3823,
3502      806, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -1743, -4944,
3503    -4944, -4944, -4944,   308,   -19, -4944, -4944, -4944, -4944, -4944,
3504    -4944, -4944,   165, -4944,  2234,  1418, -4944, -4944,   -27, -4944,
3505    -4944, -4944, -4944, -4944, -4944,  -645, -4558,  -807,  -787, -4944,
3506    -2975, -4944, -4944, -4944,     7, -4944, -4944, -4944, -4944, -4944,
3507     -864, -4944,  1470, -3630, -4944, -4944,   785, -4944, -4944, -4944,
3508    -4944, -4944,  -559,    69,  2988, -4944,  -165,  -359, -4944, -4944,
3509    -4944,    71, -4944, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
3510    -1071,  9954,  -819,  -577, -4944, -4944, -4944, -4944, -4944, -2232,
3511    -4944, -4944, -4944, -4944, -3751, -4944,  4747,  2252,  1695,   167,
3512    -4944,   -29,    62,  3578, -1165, -2662,   729,  -126, -4944, -4944,
3513    -4944, -2591, -4944, -4944, -4944, -4944, -3555,   169, -4944,  -680,
3514    -4944, -3844, -4629, -4025, -3593,  -714, -4944, -4943, -3660, -4549,
3515    -3565, -4944, -4944, -4944, -4944,  -548,  -155,  2952, -4944, -1413,
3516     2584,  -936, -4944, -2100,   801,  1818,  2958, -2762,  -137,  2948,
3517    -2543,  -672, -3281, -4944, -4944, -2295,  -265, -4944, -4944,  1388,
3518      648, -4944, -4944, -4944, -4944,  -636,  2892,  -181, -4944, -4944,
3519     4120, -4944, -4396, -4944,  4089, -4944, -4944, -4944, -4944,  2803,
3520     2807, -4944,  2808, -4944, -4944, -1387,  1570, -4944,  -778, -4944,
3521    -4944,  2348,  1010, -4944, -4944, -4944, -4944, -4944, -4944, -4944,
3522    -4944,  1468,   992, -4944, -4944, -4944, -4944, -4944,  -546,  -727,
3523    -4944, -4944,   173, -4944, -4944, -4944, -4944,  2265,  -891,  -734,
3524     4002,   865,   179, -4784, -4944, -4944, -1109, -4944,  3367, -4944,
3525    -4944, -4944, -4944, -4944,   807,   809, -4944, -4944, -4944, -4944,
3526    -2768, -4944, -4944, -4407, -4944, -4944, -4944, -4944, -4944,  3993,
3527      110,  2691, -4944, -4944, -4944,   -28, -4944, -4944,  -977,  2682,
3528    -4944, -1938, -4944,  -592, -4944,  2887, -4944, -4944, -4944, -4944,
3529    -1903,   181, -3820, -4944,  -621, -4944,  2880, -4944,    -4, -4944,
3530      316, -4944, -4944, -3798,     6, -4944, -4944, -4944, -4944, -4456,
3531    -4944,  -615, -4944,  -535,   792, -3313, -4944,   182,    -5, -4944,
3532    -4944,    12,  4746,   -43,   -60,   -52,     5,   103,  3452, -4944,
3533      183,  3498, -4944,    18,  1693, -4944, -4944,  -818,  -168, -4944,
3534     1910,  -635,  2656,  3433,  3435, -4944,  1905,  2693, -1985, -1966,
3535    -4944,  1199,  -419,  -258, -4944, -4944, -4944, -4944,   651,  -634,
3536     2676, -4944,  3477, -4944, -4944, -4944, -1993, -2867, -3504,  1221,
3537    -3482, -3396,   686,   670, -1638,   -25,    25,  -761,  -825, -4944,
3538    -4944,  1234,  -223, -4944, -4944,  -221, -2829,   827, -4944, -4391,
3539    -2342,  1242,  -681,  -505, -4944,  -591, -4944,  -380,  5927,  3016,
3540    -1052, -4944, -4944, -1008, 13625, -4944, -4944, -4944, 14302, 14996,
3541    -4944, -4944, 15670, 15916, -4944,  -828, 16287, 13713, -1032, -1898,
3542     -406, 12947, -1860,   186,   247, -4944, -3288, -1644, -4944, -4944,
3543    -4944,    24,  1301,   251, -4944, -4453, -3877, -4944, -4944,   252,
3544    -4944,  -388, -4944,  -382, -4944, -4944, -4944, -2489, -4158, -2606,
3545     2801, -4944, -4944, -4944,  -182, -4944, 16946, -2772, -4944,  -606,
3546    -1312, -1547, -3479, -1913, -4944, -4944, -4944, -2651, -4944, -4944,
3547    -4944, -4944, -1737, -3352,  -475,  2014, -4944, -4944,  2114, -4944,
3548    -4944, -4944,  -944,  2402,  -773, -2685,  2025, -4944,  -768,  2806,
3549     -777, 11908,  -698,  9047,  -532, -2277, -1265, -1660, -4944,  3602,
3550    -4944,  5642,  5594,     0,  -120,   856,  -632,    -6, 12648,  -651,
3551     -300,  3762, 11283,  9952, -3171
3552 };
3553 
3554   /* YYDEFGOTO[NTERM-NUM].  */
3555 static const yytype_int16 yydefgoto[] =
3556 {
3557       -1,    53,    54,    55,    56,    57,  1550,  2531,  2382,  3317,
3558     3318,    58,    59,  1546,    60,    61,    62,    63,  1460,    64,
3559     1032,  1795,  2546,    65,  2215,   814,   815,   816,  2117,  2118,
3560     2470,  2119,  2107,  1346,  1937,  1482,   788,   789,  1442,  1483,
3561       67,    68,  1340,  2098,    69,    70,    71,  1513,  1603,  1514,
3562     1515,  1454,  1842,  4372,  5124,  3109,  2344,  3365,  3110,  3111,
3563     3744,  3745,  3824,  5138,  5139,    72,  1619,  1620,    73,    74,
3564     2512,  3282,  3877,  4736,  4737,  4974,   623,  4397,  4398,  4961,
3565     4962,  5152,  5296,  5297,  2547,  1787,  3360,  3962,  3308,  4468,
3566     3309,  4469,  3310,  4470,  3294,  3909,  3910,  4411,  3911,  3311,
3567     4429,  5006,  3312,  2234,  5168,  2588,  1961,  1959,  4652,  4988,
3568     4228,  4229,  5385,  5176,  5177,  5178,  5408,  4431,  4474,  4475,
3569     5338,  5339,  3363,  3968,  4481,  4802,  4753,  2995,    76,    77,
3570      719,  1821,  3483,   720,  2591,   657,   721,  2548,    82,  2581,
3571     5170,  2582,  1576,  2396,  3890,  3463,    83,  1058,  3710,  4822,
3572     5062,  5063,    84,   227,    85,  1803,    86,    87,  2526,  3301,
3573       88,  2251,  3012,    89,    90,  3043,  3044,  3045,    91,  3735,
3574     4670,  1516,  3098,  3099,  3100,  3101,  3765,    92,  1798,  2555,
3575     2556,    93,    94,    95,    96,  2710,  2711,    97,  2456,    98,
3576       99,   100,   101,  3800,  4333,  4445,  3140,  3324,  3934,  4443,
3577      102,  3286,  2549,  1811,  2571,  2572,  4455,  4778,  4779,  4780,
3578     5021,  5328,  4782,  5023,  5199,  5025,  4421,  5521,  5522,  4744,
3579     3689,  4242,   104,  4422,  4423,  5183,   105,  2249,   106,   107,
3580     1771,  2518,  2519,  3891,  2598,  3373,  3374,  3948,  3949,   108,
3581     3224,   109,  4309,  4310,   658,  5190,  5130,  5282,   110,   111,
3582     4313,  4314,   112,   113,   114,   115,   116,   711,   712,   713,
3583     1149,  1150,  2967,  1097,   117,  2127,   118,   995,   996,  3261,
3584      119,  1232,  2756,  2757,  4537,   120,   745,  1171,  1172,  2550,
3585      122,   754,  2730,   756,  1976,  3465,  3466,  4048,   123,   124,
3586     2707,  2733,   125,  1447,  2225,  2226,  4223,  2551,   659,  1217,
3587     2595,  2990,  5049,  4646,  5050,  5349,  5494,  4647,  4913,  2922,
3588     3654,   127,   660,  1488,  2301,  1117,  1118,  2601,  3377,  2194,
3589     2195,  2196,  3988,  2197,  3379,  2198,  1420,  2199,  1068,  1069,
3590     3385,  3386,  3387,  3984,  3991,  2540,  4812,  4813,   128,  1485,
3591     2298,   129,   130,   131,  1529,   907,  1127,  1128,   132,   672,
3592      673,   133,  4979,   134,  1071,   135,  4820,   136,   137,   779,
3593      780,  1214,  1215,   138,   139,  2315,  3747,   140,  1486,   141,
3594      142,  3134,  3135,  4325,   143,   144,   145,  1790,  1791,   146,
3595      147,  3189,  3190,   148,   149,   150,  5434,  5496,  5497,  5498,
3596     3997,  5353,  5436,  1202,   152,   153,   154,   191,   948,   949,
3597      950,   860,  2552,  4804,   156,   157,  1443,  1444,  1445,  1446,
3598     2220,   158,   159,   160,  3399,  3400,   161,   162,   163,   164,
3599     1775,   165,   166,  4952,   167,   168,  1736,   169,   170,  1369,
3600     1370,  1371,  1372,  2132,  2910,   617,   832,  1375,  1381,  1386,
3601     1387,  1388,   172,   723,  1163,  1164,  1165,  1939,   173,  1210,
3602      999,   724,  1158,   175,   725,   176,  2178,  3446,  4026,  4027,
3603     4028,  4031,  4834,  4212,   726,  2948,   178,  1983,  2716,  2719,
3604     2944,   727,   179,  3449,  3450,  3451,  4033,   728,   747,  1061,
3605     2608,   729,  1307,   183,   184,   185,   841,   835,   836,  2915,
3606      730,  2091,  2891,   763,  1392,   801,   802,   850,  2480,  2144,
3607     2145,  2169,  2170,  1401,  1402,  2157,  2161,  2162,  2935,  2928,
3608     2150,  4197,  4890,  4891,  4892,  4893,  4894,  4895,  4626,  2165,
3609     2166,  1404,  1405,  1406,  2174,   188,  2895,  3628,  3629,  3630,
3610     4174,  4175,  4189,  4185,  4611,  4877,  3631,  1200,  1412,  4619,
3611     5465,  3632,  4866,  4867,  5083,  4193,  3639,  3665,  3348,  3349,
3612     3350,  3633,  5252,  5253,  5462,  5463,  5085,  5086,  2200,  1872,
3613     1099,  1308,  1100,  1884,  1309,  1856,  1102,  1310,  1311,  1312,
3614     1105,  1313,  1314,  1315,  1108,  1848,  1316,  1317,  1866,  1881,
3615     1882,  1376,  5087,  1319,  1320,  1321,  3635,  1322,  4127,  4575,
3616     4561,  2817,  2818,  2114,  4123,  3570,  4117,  2086,  2881,  4899,
3617     5104,  5105,  3612,  4153,  4591,  4864,  5244,  5363,  5364,  5451,
3618     1323,  1324,  1325,  2878,  2082,   910,  1326,  3893,  2084,  2811,
3619     1644,  1645,  1986,  2008,  2763,  2779,  2780,  2855,  2791,  3529,
3620     2799,  2804,  3557,  3558,  2812,  2841,  1327,  2765,  2766,  3511,
3621     2010,  1328,   954,  1648,   955,  2005,  2836,  1336,  1329,  1330,
3622     1977,   825,  4873,  1153,   866,  3126,  1728,   957,   760,  1331,
3623     1332,  1333,  1334,  1522,   881,  1120,  1121,   614,   606,   883,
3624     3102,   615,   608,   609,  1733
3625 };
3626 
3627   /* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM.  If
3628      positive, shift that token.  If negative, reduce the rule whose
3629      number is the opposite.  If YYTABLE_NINF, syntax error.  */
3630 static const yytype_int16 yytable[] =
3631 {
3632      605,  1000,  1026,   612,  1575,   186,   177,  1002,   793,   840,
3633      664,  1734,   181,  2409,  1152,  1642,   851,   757,  1936,   759,
3634     1064,  1521,   749,   765,   909,   908,   186,  1341,   749,   782,
3635      790,   757,  2233,   797,  1337,  1407,   790,   790,  1624,   826,
3636     1862,   829,  1191,  1192,  1193,  1426,   874,  1580,  1197,  2339,
3637     3307,  1892,  2310,  1367,   914,   861,   656,   919,  1636,  3388,
3638     1800,  1998,  1133,  1868,   827,  1958,  1368,  1166,  3641,  3488,
3639      824,  2576,  1852,  1853,  2302,  2483,  1146,  1355,  2311,  3944,
3640     3663,  3128,  1861,  3960,  2722,   755,  3330,  4203,  3716,  3918,
3641     4230,   917,  2474,  2762,  3736,  2960,  2962,  1011,  1062,   794,
3642     1218,  3221,  2897,  1489,  3992,   939,  3760,  3992,  3762,  1773,
3643      171,  1517,  2322,  1778,  1574,   710,  3469,  4140,  1782,  3973,
3644     4269,  3895,  4171,  1602,  4225,  1160,   853,  3187,  1792,  4428,
3645     1143,   722,  4488,  1629,   854,  4032,  1539,  4477,  3578,  4467,
3646     4293,  1556,  1816,   845,  1131,  2436,  2437,  1135,  1073,  3652,
3647     4188,  4870,    75,  2826,   838,  4806,  1064,  4799,    78,  2293,
3648     2206,    79,  1785,    80,    81,   103,  2596,   121,  2796,   126,
3649      787,  1846,  4476,   151,  2659,  2937,  3957,   821,  1813,   155,
3650     1373,   174,   180,   187,  4760,  1367,   605,   864,   864,   867,
3651     2907,   864,   813,  1373,  3667,   876,  2940,   826,  4992,  3595,
3652      911,  2916,  1484,   876,  5066,  4106,   876,  4648,  5036,   826,
3653    -1913,   864,  4921,  2432,   826,  1400,  1403,   731,   864,  2293,
3654      826,   621,    66, -2405,  2448,  2130,  1812,  1377,  5192,  4882,
3655    -2443,  4884,  4798,  4517,  1348,  4186,  2293,  4191, -1880,  4566,
3656     2463, -2466,  1484, -2503, -1893,   932,  5210,  1484,  1852,  1853,
3657     1849,  1850,  4645,   603,  4944,  1868,  3320,  3266,  2443,  3267,
3658     1456,  1860, -2305,  3271,  2125,  3273,  3274, -2277, -2306,  1861,
3659     3535, -2305, -2305, -2333,  3278,  3279,  3280, -2306, -2306,  3297,
3660     2104,  2537,  1518,   670,   731,  1839, -2408, -1918,   731, -2672,
3661     4986,  2834,  1883, -1908,  1769,  1764,  1938,   731, -2672, -2672,
3662     2323,  1173,   670,   670, -2276,   670,   830,  3982,   670,  3246,
3663     4954,  4955,  4539,  4540,  1177,  4542,  4543,  4544,  4545,  4546,
3664    -1921,  5129,  2054,  4656,  2313,  2472,  2473,  3509,  1874,  3038,
3665     2313,  2217,  4984, -1921,  2430,  1518,  3006,  -135,  2693,   670,
3666     3818,   731,   872,  -135,  1942,  3473,  4980,  4489,  5458,   848,
3667      670,  2060,   731,   859,  2089,   944,  3717,  2510,   670,  3475,
3668    -2274,  2529,  2964,  2585,  5114,  1839,  3211,  3535,  3426,  1457,
3669     3428,  1826,  1839,  4306,  4464,  5076,   848,  5233,  4179,  2585,
3670     1839, -1737,  1204,  2062,  2151,  1203,  3298,  4054,  2586,   737,
3671     2399,  2105,  2236,  4419,  4920,  4231,   737,  5425,  5426,  4465,
3672     1045,  1875,  1633,  2834,  2586,  3212,  4943,   737,  1839,   737,
3673     3039,  4180,  2141,   738,  4311,  1456,  1345,  1849,  1850,  5332,
3674      738,  5043,  5344,  1734,  2942,  2148,  4614,  2152,  4272,  5044,
3675     2288,   738,  2708,   738,  1530,  1046,  4182,  4204,  3213,   737,
3676     3822,  2096,   616,  2054,  1860,  5019,  2330,  4024,  4761,  5212,
3677     2054,  2919,   737,   945,  1548,   616,   909,  5118,  2112,  5459,
3678     3215,  4273,  1876,   738,  1636,  1877,   618,  4907, -2464,   670,
3679     1047,  2313,  2060,  1839,  5126,  4915,   738,  1549,  5037,  2060,
3680     2331,  2314,  3535,  4025,  2108,  4307,  1087,  3823,   844,  2120,
3681     2120,  5020,  5097,  3216, -2164,  4762,  1064,  1900,  2573,  4205,
3682     2113, -2164,   946,  2131,  2062,  2875,  1531,   909,  2106,  2393,
3683     2097,  2062,  2876,  2126,  1064,  2227,  1020,  2709,  1048,  1890,
3684    -2183,  2149,  1030,  2289,  1457,  2400,  4312, -2183,  2401,  2313,
3685     2943,  1890,  1989,  2228,  2048,  1044,  2920,  2154,  2313,  4055,
3686     4420,  4274,  5234,  5529,  1594,  1734,  2313,  1593,  1227,  1839,
3687     2530,  1929, -1737,  5427,  4184,  2313,  2478,  2313,  1839,  1770,
3688      947,  2313,  2094,  1978,  5268,  1840,  2965,   952,  3474,  2966,
3689      671,   953,  3486,  3299,  1920,  1940,  1878,  2587,  1634,  1988,
3690     1064,  5163,  3476,  3249,  2177,  5077,  3042,  2449,  4466,  3942,
3691     4308,  2229,  5045,  4772,  2694,  1999,  2280,  2155,  2511,  3895,
3692     2894,  2412,  1458,  2239,  5017,  2324,  2287,  3883,  5460,  2732,
3693     2230,   958,  3260,  5461,  3717,  1770,  2450,   826,  2325,   864,
3694     2326,   864,  5343,   867,  4328,   864,   831,   186,  1001,  5483,
3695      873,  5481,   911,  -423,  1003,  2090,  4985,  1033,  2764,   864,
3696     4657,  3007,  2835,  5331,  1847,  1840,   864,  1528,  2538,  3247,
3697     2444,  5266,  1840,  1729,  2278,  2431,  5271,   622,  2002,  4580,
3698     1840,  3819,  3300,   952,  2522,  1459,  1982,   953,  2404,  3983,
3699      605,  2407,  4437,  4608,   867,   840,  1770,  4612,  2574,   876,
3700     2377,  2327,  2137,   911,  4188,  1408,   876,  1879,  1840,   876,
3701     4852, -1913,  3411,  2394,  1167,  5528,  2397,  2398,  4484,  1064,
3702     2047,  1642,  1642,  1642,  2414,   864,  1880,  1064,  1064, -2464,
3703     5205,  4235,  3682, -2405,  4485,   994,  2355,  1841,  5429,  1851,
3704    -2443,  1064,   186,  4837,  2772,  1855,  1229,   670,  2425,  4551,
3705     1635, -2466,  1170, -2503,  1175,  5293,  1179,  5548,   665,  4459,
3706     3550,  1186,  1183, -2305,  2471,  5419,   952,  2356, -2277, -2306,
3707      953,   743,   744,  1840,  3601,  1519,  1520,   826,  2231,  1159,
3708      790,   790,   790, -2333,   743,   744,  1863,  4037, -1918,  4599,
3709    -2672,  4601,  2175,  2176, -1908,  1219, -2408,  2102, -2464,  1863,
3710     2896,   853,  1548,  2050,  2092, -2276,  2900,  1864,  1199,   854,
3711     4842, -2464,  2081,   909,  1751,  1335,  1335,  1869,   826,   790,
3712     1864,  1865,  1430,   790,  1887,  1549,  3895,  2182,  1519,  1520,
3713     -135,  -135,  1898,  2297,  1867,  1016,  1746,   826,  5390,   743,
3714      744,   826,  1753,  1739,  1870,  1754,  2479,  1335,  1162,  1840,
3715     2773,  5394,  5485,  2682,  3547,  3548,  3549,  3550,  1840,   826,
3716     1922,  1052, -2164,  3957,  1888,  2575,  3875,  3876,   186,   177,
3717     2663,   826,  1199,  2877,  1899,   181,  5368,  4795,  1902,  3669,
3718     2462,  3670,  1905,  2227,  1907,  3066,  2297,   826, -2183,  3047,
3719     1915,  2232,  3936,  1196,  4078,  2637,  1923,  3122,  2492,  1926,
3720     5342,  5110,  1411,  2297,  1431,   826,  3854,  5336,  4257,  3048,
3721      864,   864,  4298,  2692,  3815,  5527,  2364,  1196,  1463,   773,
3722      787,  1205,  1207,  2774,  2704,  1925,  4400,  4438,  2712,  4215,
3723     2078,  2079,  2080,  2081,  2135,  2076,  2077,  2078,  2079,  2080,
3724     2081,  1357,   790,   790,  2240,  4034,  4399,  1890,  1770,  2135,
3725     3105,  3256,  1874,  3532,  3533,  5471,  1432,  1378,  3552,  2229,
3726     5320,  2937,  2971,  4396,  1448,  1335,  1335,  3545,  3546,  3547,
3727     3548,  3549,  3550,   171,   605,  1344,  5310,  1608,  2230,  1352,
3728     5545,  3657,  5335,  3284,  2775,   876,  3123,  2776,  3912,   911,
3729     1114,   876,  3646,  1744,   876,  3582,  3583,  3114,  2293,  2860,
3730     1839,  1890,  1053,  3106,   670,   774, -1880,  1804,  1981,   864,
3731     4047,  4818,  3869,  3870,  2241,    75,  4464,  5030,  4439,  1609,
3732      670,    78,  5509,  3644,    79,  1875,    80,    81,   103,  1909,
3733      121,   826,   126,   666,  5428,  5420,   151,  3738,   864,   864,
3734     2409,  4465,   155,  4326,   174,   180,   187,  4832,  2500,  1805,
3735     2619,  2620,  2713,  1433,  3020,  3704,  3868,   846,  3712,  1540,
3736      826,   826,   826,  5164,   864,  4502,   605,   605,   605,  2376,
3737     4230,  1910,   855,  1449,  5039,  4928,  5404,  3658,   882,  2981,
3738     2424,  2759,   787,  1205, -1880,    66,  1876,   918,  5040,  1877,
3739     2501,   667,  2054,  2979,  3477,  4452,  3993,  3705,  2777,  4847,
3740     3107,   940,  1414,  4440,  4713,  3965,  3138,   189,  1441,  2567,
3741     5197,  1808,  1469,  2216,  3770,   928,  3638,  5491,     3,     4,
3742     3785,  5495,   847,  1017,  1734,  4874,  2231,  3771,  4714,   668,
3743     4878,   669,  1809,  4880,  2589,  2861,   864,  4426,   864,   864,
3744     2862,  3925,  5198,  4871,   929,  1729,  3739,  1237,  1188,  1054,
3745     3535,   190,   670,  2062,  3536,  3537,  3538,   856,  4355,  1862,
3746     4034,  1770,   855,  2242,   775,  2982,  3443,   758,  1541,  5060,
3747     1734,  1335,   635,  5526,  3478,  1832,  1642,  2863,  4414,   716,
3748     3139,  3994,  1358,   826,  3285,  1055,  3219,  1944,  5185,  1946,
3749     1610,  1948,   186,  1950,  2568,  1952,  1953,  1954,   848,    15,
3750     1878,  3115,  1956,  1960,  1960,   776,   777,  3378,   826,  2778,
3751      757,  5165,  3892,  4791,  1411,  2701,  2702,  1438,  5549,  1439,
3752     1806,  5444,  4785,  5184,  5219,  5207,  4836, -1736,  5204,  3786,
3753     5326,   826,   637,    20,  1450,  5477,  3992,  1995,  5560,  2232,
3754      826,  5561,  1911,  2001,  1056,  4797,  2665,  1168,  3659,  1770,
3755     1057,  1359,  4819,  2243, -1880,  2714,  4833,  1335,  4441,  3152,
3756     5206,  2502,  2245,  5041,  1223,  2616,  3804,  3108,  3706,  5505,
3757     3636,  4640,  2246,  1451,  2686,  2715,  5405,  2640,  1115,  2959,
3758     1840,  1745,  4536,   840,  1833,  2691,  5311,  3913,  1335,  2696,
3759     1810,  2652,  2048,  2700,  1611,  1506,  2703,  1415,   778,  4671,
3760     2618,  1166,  3989,  3038,  2658,  1237,  1452,  5351,  3535,  1982,
3761     3926,  1879, -2673, -2673, -2673,  3713,  1335,  1335,  1335,  5172,
3762     1335,  2864,  1189,  3636,  1807,  4206,  4427,  3539,  4442,  1542,
3763     4415,  5241,  4356,  2613,  4868,  3897,  3995,   849,  1834,  5446,
3764     1335,  3153,  3021,  2235,  3444,  5061,  1912,  5506,  2362,  3540,
3765     3740,  3741,  2142,  2143,  3356,  2147,  5406,  2657,  2638,  2672,
3766      854,   854,   944,   854,  4515,  2503,  5538,  2133,  1543,  5108,
3767      909,  2236,  3707,  2651,  1453,  4231,  2653,  5100,   826,  3742,
3768     2451,  3900,   857,  5407,  3039,  5125,  1000,  5072,  4715,  5478,
3769     3787,  1613,  1002,  4755,  3154,  5093,  1195,  1614, -1736,  3417,
3770      648,  1544,   649,  2534,  2882,  2569,  3996,  -679,  1335,  3414,
3771     2789,    41,  1335,  1335,  3083,    33,  2941,  3541,  2758,  2570,
3772     2761,  2687,  3160,   826,   826,  2181,  2768,  1335,  1786,  3788,
3773     2247,  5507,  2782,  2783,  2784,  3531,  1835,  3902,  2695,  5208,
3774      773,  2698,  2699,  2801,  2803,    41, -1880,    45,  2813,  5173,
3775      619,   790,  3155,  2688,  1411, -1880,  3729,  1851, -1880,  1425,
3776      945, -1880,  3789,   799,  1390,  4497,  2689,  3741,  2723,  2248,
3777     3415,  4964,  1169,  5128,  5242,  3084,  4035,   762,  5132,  5133,
3778     1196,    45,  2363,  5352,   635,  5447,  2284,  4534,  3051,    49,
3779     2520,   790,  1836,  3171,   864,  4284,  4207,  2019,  1373,  3160,
3780     1615,  2690,    50,   771,  5243,   998,  4756,   826,  2312,   946,
3781     1890,   944,  1021,  1878,  2452,  4965,   826,  3064,  1021,   864,
3782     2237,  2535,  4238,    49,  5174,    51,   774,   717,  3816,  3730,
3783     4746,  1021,  4786,  5029,  3895,  3905,    50,  3205,  4412,  3445,
3784     4966,  4231,  2883,  3206,   637,   772,   911,  3172,   826,   189,
3785      795,   790,  1890,  -577,  4563,  3175,  3156,  4967,  3178,    51,
3786     3042,  4968,  1642,   800,  1391,  4231,    41,   947,   790,  5269,
3787     5038,   826,  4296,   718,   826,  3541,  5508,  2273,  3906,  2221,
3788     5016,  3052,  4969,  4997,  1878,  4970,  1506,  1561,  1837,  1064,
3789     2222,  3424,  3344,   190,  3907,  3214,   864,  3345,  1577,  1156,
3790     4971,  3817,    45,  3170,  4239,  2164,  1562,  4413,  2223,   945,
3791      826,  3542,  3543,  3544,  4071,  3545,  3546,  3547,  3548,  3549,
3792     3550,  1354,   864,   864,   864,   864,   826,  2476,  2477,  2409,
3793     4458,  3145,  3146,  4418,  4998,  3149,  1586,  1578,  3195,  2643,
3794      826,  2427,  4999,   822,    49,  4297,  3207,  2650,  5350,   189,
3795     2544,  1335,  1335,  1335,   798,  4388,  1563,    50,   946,  4391,
3796     4392,  1616,  4394,  2340,  4564,  4240,  3728,  2662,  4453,  4241,
3797     5000,  4090,  3240,  4091,  3250,  3251,  3252,  1587,  3157,  2399,
3798       51,  1230,  1396,  2340,  3220,   775,  3158,  1588,  4972,  3159,
3799     3892,  3908,  3061,   190,    52,  3327,  4086,  4087,  4088,  4089,
3800     1617,  2976,  4094,  4095,  4096,  4097,  4098,  4099,  4100,  4101,
3801     4102,  4103,   648,  4019,   649,  4324,   947,   833,  3339,  3340,
3802     3341,  3342,  3256,  5387,  2611,  5001,   776,   777,  3863,  2545,
3803     3347,  3397,  4555,  1618,  4556,   909,   909,  2649,  5002,  4973,
3804      654,  1358,  3234,  1564,    41,   635,  1579,  2993,  1614,  2484,
3805     5003,   826,  2639,  1396,  1398,  3375,  4507,  1604,  4508,  4653,
3806     2224,  4144,  4145,   864,   864,  4201,  3038,  5279,  4953, -2673,
3807    -2673, -2673,  5191,  3545,  3546,  3547,  3548,  3549,  3550,  2832,
3808       45,  3085,  2418,   864,  4927,  5489,  5490,   842,  1441,  4982,
3809     1396,  1565,  5218,  1441,  1566,  1397,  1605,  3326,    41,  2406,
3810     1606,  1399,   826,  2994,  4238,   637,  4092,  3208,  5211,  2408,
3811     1359,  2419,  4081,  4868,  2400,  5188,  4093,  2401,   864,   864,
3812      864,   864,    49,  1223,  2341,  1398,  3820,  4958,  4654,  1607,
3813     1558,   826,  5202,  1863,    45,    50,  2989,  4409,   826,  5280,
3814     2484,  4107,  3086,  1568,  2341,  1589,  3209,  3039,  3462,  5166,
3815     1045,  1615,   605,  2342,  1864,   605,  1421,  5493,    51,   867,
3816     1435,  4410,  1398,  1441,   909,  1335,  3150,  1441,  2318,  1559,
3817     2319,  3855,    52,  2342,  2906,  5235,    49,  4557,  2343,  3210,
3818     1590,  2467,  3040,  4950,  1591,  1046,  4239,  5059,  1570,  5550,
3819     3688,  1422, -1095,  4841,  2468,  1423,    36,  3892,  2343,  -448,
3820      876,   876,  2151,  3368,   843,  2706,  4951,    41,  2539,  1399,
3821     1571,   911,   911,  2338,  2330,   876,  4950,  1592,   876,  2313,
3822     3938,  3041,  2469,  3969,  1925,  2379,    52,  1729,  1424,  2321,
3823     1573,  2320,  1018,  2338,  1019,   864,   864,  5004,  2993,  4951,
3824     5005,  5340,   864,    45,   826,  2152,  1890,  4240,  2331,  3814,
3825     5333,  4241,  4046,  4231,  5121,   826,   186,  1925,  2676,  5552,
3826     2677,  3992,  2678,   858,  2679,  2465,  2680,  4759,  1048,  1545,
3827     2681,  1960,  3336,   648,  1064,   649,  5334, -1707,   864,  2637,
3828      876,   859, -1707,   876,   876,    49,   826,   826,  2729,   864,
3829     4660,  4661,  5322,  4047,  3685,  4903,   826,  4905,    50,  3636,
3830     5157,  1786,  3636,   826,  2466,  5158,  4790,  2153,  5055,  4770,
3831      757,   757,   186,  1001,  2734,  2340,  3461,  -448,  1335,  1003,
3832     1335,    51,  1022,  3042,  1023,  1335,  1335,  2717,  3217,  3401,
3833     1064,  4740,  1335,  1335,  1335,    52,   868,  1335,  5402,  1335,
3834      911,  1335,  1335,  1335,  1335,  1335,  1335,  4236,  1335, -1707,
3835     1335,  1335,  3391,  2120,  1335,  2154,  5159,  2054,  3112,  3636,
3836     4408,  3218,  1162,  1416,  4741,  3484,  3485,  4673,  3673,  1335,
3837     1335,  1335,  1335,  1851,  4678,  2207,   864,  1335,  2728,  4231,
3838     -158,  1335,   870,  3136,  1335,  1427,  2060,  1335,  1335,  1335,
3839     1335,  1335,  1335,  1335,  1335,  1335, -1707,  1335,  3640,  1583,
3840      909,  3026,  1417,   826,  1335,  1863,  1335,  5421,  3437,  1548,
3841     5431,  1814, -2296,   826,  2380,  2155,  -158,  1350,  2062,  2383,
3842     2755,  2006,   766,    52,  1428,  3022,  1864,  5229,  3027,  3028,
3843     3782,  2433,  1549,  5416,  1815,  1418,  3014,   737,  1584,  2100,
3844     1865,  4750,   826,  4776,  3191,  -158,  -135, -1668,   952,  1335,
3845    -2277,   767,   953,   826,   826,   768,  5340,  1429,  3668,  1917,
3846    -1668,   738,  4231,  5273,  1335, -1668,  5162,  4777,  3152,  3783,
3847     5195,  1585,  3136,  1335,  1335,  4731,  2341,  4732,  4733,   890,
3848     2541,  4734,  1918, -1667,  2913,  3642,  2348,   826,  3718,  2454,
3849     3313,  5484,   731,  2460,  2950,  4374, -1667,  4217,  2340,  4357,
3850     4283, -1667,  3784,  3060,  2578,  2342,  2370,  2914,   891,  3534,
3851     4950,  2349, -1668,  2983,  3746,  2986,  4375,   731,  5154,  5480,
3852     5156,  3562,  4358,  2387,  5160,  5161,  1851,   867,  1425,  1548,
3853     2343,  4460, -1668,  4951,  2797,  1851,   757,  2207,   757,  3945,
3854     2980,  3599,  2815,   846,  3295,  3416,  3418,  3419, -1667,  3955,
3855     3153,  1237,  1549,  3585,  3535,  1335, -1708,  3721,  3536,  3537,
3856     3538, -1708,   952,  2909,  4231,  2338,   953,   605, -1667,   864,
3857      864,  1064,  1863,  5196,   876,  4132,   911,   876,   876, -1668,
3858      864,  3151,   864,  1551,  1931,  5519,   864,  1932, -1668,   826,
3859      228,  5551,  3655,  1864,   746,   934,   620,  3614,   731,  4275,
3860      746,  4282,  1621,  3154,   714,  1625,  3677,  1867,   847,  2819,
3861      790,  4267,  2822,   943,  2464, -1667,  5389,  2340,  3636,   951,
3862     3046,  2312,  1538,   796, -1667,  1005,  3505,  1555, -1708,  3071,
3863      826,  2135,  3777,  1642,  1990,  4487,  3082,  1991,  3506,  1642,
3864     1007,  4214,  4059,  3507,  3896,   826,  1851,  1010,  2207,  3345,
3865     1013,  3561,  4258,  3563,  3564,  3314,  2929,  3395,  3237,  2341,
3866     2128,  3155,  1027,  2129,  2134,  3404,   826,  2135,  1040,  3674,
3867     3675,  3127,  3127,     3,     4, -1708,  4218,  4917,  3941,  2606,
3868     1064,  2607,  4219,  -576,   848,  3423,   826,   826,  2342,  4220,
3869      826,  2139,   867,   790,  2129,  3429,  4007,  4008,  3430,  2669,
3870     3431,  3432,  2135,  1049,  3434,  5432,    29,  3615,  4299,  3616,
3871     3438,  1050,  3439,  2343,  3914,  3441,   864,  1199,  1199,   864,
3872     3897,  1199,  2683,  5357,  4221,  2684,  3898, -1668,  2685,  2720,
3873     5469,  2684,  2721,  3049,  2912,  1430,  1051,  1925,  3899,  3185,
3874     1066,  2951,   826,   826,  2135,  3884,  4222,  2340,  2338,  1174,
3875     1176,  1178,  1070,  3540,  1180,  1181,  1182,  3222,  3695,  3225,
3876     3227,  1858,  1859, -1667,  1187,  3156,  3900,  1113,  3901,  4178,
3877     2845,  2846,  2847,  2848,  3058,  1122,   628,  3059,  2341,  3130,
3878     3490,  3290,  3131,  3402,  3291,  3453,  2135,  2340,  2684,  1123,
3879     1335,  1335,  1335,  3966,  3504,  3967,  1335,  2135,  2457,  1129,
3880       41,  3513,   864,  3519,  2135,  1140,  2135,  2342,  5010,  3315,
3881      864,  3520,  1147,   864,  2135,  5516,  1157,  1431,  4960,   864,
3882      731,  3541,  3902,   849,  3617,  4478,  3618,  3798,  1335,  5222,
3883      864,  4401,  2343,  4402,  3568,  3521,    45,  5534,  2135,  5535,
3884     3575,  1382,  4179, -1656,  2312,  3554,  3807,  3127,  2135,   826,
3885     3903,  3567,   826,  3636,  2135,  1190,  3329,  3636,  3316,   757,
3886     1393,   635,  1395,  3124,  4613,  4471,  4616,  2338,  1194,  1432,
3887     3572,   864,  1335,  3573,  3763,  4180,  3768,  3764,    49,  3769,
3888     4233,  4234,  3793,  1199, -1089,  3794,  1198,  3157,  3378,  3222,
3889     4181,    50,  2938,  2939,  3852,  3158,  2340,  3794,  3159,   864,
3890     4182,  3361,  1201,  3812,  1209,  3892,  3495,  3332,  2341,  3498,
3891     3978,  1211,  3499,  3979,    51,  3904,  3357,  1212,  3491,  3980,
3892     3905,   637,  3981,  5383,  4003,  1213,  4183,  4004,  5433,  1335,
3893    -1731, -1731,  5111,  3931,  5503,  4005,   892,  2342,  2135,  4113,
3894     5116,  1216,  4114,   893,   894,   895,  4124,  4065,  2341,  4125,
3895    -1735, -1735,  4135,  4875,  2759,  2135,   864,  1220,   864,  3127,
3896      864,  3127,  2343,  3906,  1223,  4213,  1433,  1064,  2966,  1064,
3897     2543,  1221,  2053,  3331,   716,  2054,  1222,  2342,  2560,  3907,
3898     2637,  1224,  4237,  1225,  1237,  2684,  5533,  3535,  1226,  3452,
3899     2457,  3536,  3537,  3538,    15,   909,  4461,  2338,  1960,  2684,
3900     1231,  3924,  2343,  3927,  2060,  1233,  3447,  4513,  4133,  1353,
3901     4514, -2673,  3821,  1360,  4844,  3542,  3543,  3544,  4184,  3545,
3902     3546,  3547,  3548,  3549,  3550,  1362,  1434,  2842,    20,  2843,
3903     4050,  5051,  1237,  1435,  1356,  3535,  2062,  2338,  1366,  3536,
3904     3537,  3538,  4283,  4518,  3691,  3915,  4519,  3917,  4531,   605,
3905     1064,  1982,  5566,  2844,  1361,   876,  4583,  2341,   876,  3651,
3906     2340,   876, -1734, -1734,  4552,  1436,  2641,  2135,  1374,    36,
3907      864,  1636,   840,  5365,  5366,  3587,  3908,  3588,  1335,  5452,
3908     5453,  4581,  4043,  1335,  2721,  4593,  2342,  4636,  2135,   648,
3909     2966,   649,  4642,  2457,  4649,  4643,  4650,  2684,  1437,  2684,
3910     1379,  3589,   651,  3584,  1380,  1394,  4876,  1335,  1335,  1335,
3911     4792,  2343,  1335,  4793,   653,  4824,   840,  1786,  4004,  2340,
3912     1335,  1335,  1335,  1335,  1382,  1383,  1409,  3750,  3986,  3752,
3913     1438,  4849,  1439,  1335,  4850,  1410,  1335,  4851,  1335,  4858,
3914     2135,  1413,  2721,  1419,  4669,  4922,  2338, -2673,  4923,  1335,
3915     1335, -2575, -2673,  1335,  2845,  2846,  2847,  2848,  1425,  4276,
3916     5011,  2849,  2850,  2684,  1490,  5052,  4790,  2851,  5053,  1461,
3917     1487,   911,  2852,  1335,  4058,  1335,  3856,  1335, -2307,  1492,
3918     5073,  1493,  1440,  2721,  4194,  1943,  3540,  1532,  1945, -2673,
3919     1947,  1528,  1949,  5080,  1951,  1533,  5081,  1335,  1955,  1534,
3920     1545,   826,  2845,  2846,  2847,  2848,  3650,  1547,  3637,  3590,
3921       33,  5090,  4254,  5096,  1925,  3591,  3952,  1557,  1560,  2053,
3922     3592,  2341,  2054,  1582,   826,  1595,  3620,  3621,  3622,  1596,
3923     5098,  1612,  1335,  3952,  3540,  4259,  5147,  1622,  5187,  5148,
3924       41,  2099,  2069,  1623, -2575,  4083,  4323,  1335,  1626,  5220,
3925     2342,  2060,  5221,  5232,  3541,  1632,  5221,  2340, -2673,  5236,
3926     1631,  3637,  2721,  3666,  1237,  1735,  5237,  3535,  3842,  3573,
3927     1737,  3536,  3537,  3538,  3849,  2343,    45,  1740,  3636,  4112,
3928     2341,  5238,  1738,  2062,  2135,  3636,  1747,  1748,  4584,  4178,
3929     3636,  1743,  1756,  3636, -2575,  4395,  4380,  1757,  1760,  2797,
3930     2797,  1335,  3541,  3127,  2797,  5071,  1561, -2575,  1960,  2342,
3931     2338,  2520, -2575,  2853,  1763,  1766,  1768, -2575,    49,  3636,
3932     1774,  1777,  1779, -2575,  2854,  1562, -2575,  4156,  1789,  5249,
3933    -2575,    50,  5250, -2673,  2343,   864,  1770,   864,   864,   864,
3934     5255,  2797,  2797,  1925,  1788,  5258,  5272,  1000,  3952,  2684,
3935     3598,  1793,  5278,  1002,    51,  2721,  1794,  3191,  -178, -2575,
3936     2952,  3593,  4179,  5284,  5285,  4385,  2721,  2721,    52,  2338,
3937     1796,  5288,  3594,  4300,  2135,  1563,  4277,  5289,  2968, -2575,
3938     2135,  1797,  5290,  2241,  2972,  5291,  5318,  1799,  2975,  5319,
3939     5372,  1801,  1802,  5373, -2673,  4180,  4576,  1817, -1668, -2673,
3940      898,   899,   900,  1831,   901,   902,   903,   904,   905,   906,
3941     4181, -1668,  5376,  2759,  2999,  1925, -1668,   208,  2341,  5377,
3942     4182,  5378,  2135,  1824,  2135,  5380, -2575,  1838,  2135, -2575,
3943     3651,  5398,  1843, -2673,  5399, -2575, -2673,  1844,  1845,  4278,
3944     2076,  2077,  2078,  2079,  2080,  2081,  4183,  2342,  3542,  3543,
3945     3544,   826,  3545,  3546,  3547,  3548,  3549,  3550,  1847,  3053,
3946     1851,  3634,  1564, -1668,  4829,  5423,  3540,  5454,  5424,  1854,
3947     3952,  4012,  2343,  4014,  5466,  4016,  1857,  5103,  5492,  1021,
3948     1855,  5221,  1871, -1668,  4020,  3636,  1885,  5531,  1873,  2069,
3949     5532, -2575,  1886,  1889,  1890,  4528,  3542,  3543,  3544,  1897,
3950     3545,  3546,  3547,  3548,  3549,  3550,  1901,  2338,  1903,  3636,
3951     1565,  3103,  5544,  1566,  3634,  2135,  5546,  5564,  1237,  5547,
3952     5373,  3535,  1904,  1906,  1908,  3536,  3537,  3538,  2408,  1913,
3953    -1668,    41,  4279,  5572,  3541,  4060,  5547,  3132,  4184, -1668,
3954     1914,  1916,  1921,  3141,  5248,  5251,   762,  1924,  1927,  1928,
3955     3147,  1930,  1941,  1987,  1957,  3636,  1994,  1021,  1996,  1997,
3956     3161,  2004,  1568,  1335,  2003, -1884,  3166,    45, -1891,  1335,
3957     1734,  2011,  2012,  2013, -2575, -1881,  2014,  2015,   864,    52,
3958    -2673,  2017,  2018,  3127,  3127, -1882,  3179, -1885,  2019,  2020,
3959    -1883,  4119,  3182,  2021,  2087,  2022,  2023,  3186, -2575,  2025,
3960    -2575, -2575,  2026,  2027,  2028,  2029,  2030,  1570,  1237,    49,
3961     3203,  3535,  2031,  4433,  4434,  3536,  3537,  3538,   826,   826,
3962      826,    29,    50,  3228,  2032,  2034,  2085,  2035,  2036,  1571,
3963     2037,  2038,  4766,  2039,  1021,   826, -2575,  2040,  2089, -2575,
3964    -2575, -2575,  2041,  2090,  2099,    51,  2103,  2115,  2123,  1573,
3965     2138,  4280,  2140,  1397,  4281,  1399,  2171,  1960,   826,    52,
3966     4523,  4524,  4525,  4526,  4527,  2183,  2184,  1960,   826,   826,
3967     2185,  2186,  2202,   826,  1237,  2173,  3127,  3535, -1668,  2203,
3968    -2673,  3536,  3537,  3538,  2204,   826,  2205,  2076,  2077,  2078,
3969     2079,  2080,  2081,  3636,  2207,  2208,  2209,  4471,  2211,  3972,
3970     2210,  2212,   766,  2213,  2219,  2238,  2244,  2250,  2275,  2279,
3971     2281,  2282,  2283,  2286,  2285,    41,  3976,  2299,  2305,  2303,
3972     3540,  2304,   840,  2316,  2332,  2317,  4000,  4677,  3542,  3543,
3973     3544,  2328,  3545,  3546,  3547,  3548,  3549,  3550,  2334,  2335,
3974      952,  2336,  2345,  1382,   953,  2338,  2337,  2346,  2347,  2350,
3975     2352,    45,  2357,  2358,   864,  2351,  2338,  3636,  2371,  4029,
3976     2361,  4150,  3452,  4634,  2367,  2372,  2368,  2373,  2374,  2375,
3977     2378,  5113,  2388,  2381,  2384,  2395,  2385,  2402,  2390,  2405,
3978     2391,  1506,  2422,  2428,  2403,   826,  2410,  2429,  3541,  3112,
3979     2411,  4294,  2416,    49,  2417,  2421,  2423,  2434,   826,  2426,
3980     2445,   826,  2435,  2446,  2475,  2453,    50,  2482,  2486,  2489,
3981     3540,  2447,  2458,  2488,  3136,  4738,  1199,  2490,  2491,  2495,
3982     2496,  2499,  2497,  1335,  2498,  2505,  2506,  2507,  4562,    51,
3983     2508,  2509,  1335,  2513,  3191,  2514,  2515,  2516,  2521,  2524,
3984     1335,  2525,  1335,    52, -1420,  1335, -1420,   630,  2528,  2533,
3985     1335,  1335,  1335,  1335,  2542,  2553,  1335,  1335,  1335,  1335,
3986     1335,  1335,  1335,  1335,  1335,  1335,  2557,  2539,  1579,  1335,
3987     1335,  2558,  2561,  2566,  2577,  2584, -2673,  2593,  3541,  1335,
3988     4811,  3467,  2580,  1335,   840,  3636,  4631,  1335,  2583,  2603,
3989     2597,  2759,  2605,  2600,  2609,  1335,  2614,  3636,  1335,  3481,
3990     1335,  2615,  2621,   840,  2628,  2623,  2624,  3467,  3651,  2631,
3991     2632,  2633,  1335,  2635,  2629,  1335,  1335,  2634,  5510,  5511,
3992     1335,  1335,  2642,  2644,  2645,  4154,  2646,  1335,   604,  2647,
3993     2660,  2661,  2675,  3651,   826,   826,   826,   605,  2697,  2705,
3994     3637,  4176,  2718,  2731,  3541,  4176,  4190,  4176,  2769,  2814,
3995     2820,  4667,  1335,  4158,  4159,  4160,  4161,  2764,  2054,  2824,
3996     2833,  2839,  2857,  2859,  2879,  2880,  2894,  2899,  2902,  2903,
3997     2904,  2905,   847,   186,  1001,  2918,  4716,  4717,  1335,  4719,
3998     1003,  2931,  3542,  3543,  3544,  2930,  3545,  3546,  3547,  3548,
3999     3549,  3550,  2932,  2949,  2956,  2947,  2933,  4232,  1960,  1960,
4000     2958,  2484,  2955,  2989,  2984,  2987,  2991,  2992,  2998,  3003,
4001     3008,  3009,  3011,  3013,  3015,  3033,  3023,  3034,   864,   864,
4002      864,   864,  3037,  3636,  3055,  3050,  1350,  1354,  4751,  3019,
4003     3057,  3067,  3074,  4709,  3093,  3087,  3092,  3119,  3118,  3120,
4004     3125,  3137,  2797,  2797,  2797,  2797,  3181,  2312,  2797,  2797,
4005     2797,  2797,  2797,  2797,  2797,  2797,  2797,  2797,  3129,  3144,
4006     2053,  3165,  3164,  2054,  4509,  4288,  2409,  3223,  4511,  3248,
4007     3244,  3236,  3542,  3543,  3544,  4116,  3545,  3546,  3547,  3548,
4008     3549,  3550,   848,  3245,  3263,  3268,  3269,  3257,   607,  3270,
4009     3276,  3304,  2060,  3281,  3305,  3319,  3321,  3292,  3323, -2673,
4010     3636,  3325,  3343,  3334,  3337,  3351,  3636,  2797,  2797,  1561,
4011     3346,  3352,  5117,  3354,   862,  3651,  3353,  3355,  3359,  3362,
4012     3364,  3366,  4335,   875,  2062,  3367,  3370,  3371,  1562,  3389,
4013     3390,   875,  4768,  4343,   875,  3392,  5151,  3394,  3542,  3543,
4014     3544,  3393,  3545,  3546,  3547,  3548,  3549,  3550,  3396,  3398,
4015     1878,  3406,  3405,  3403,  3407,  3421,  3408,  3409,  3435,  3413,
4016     3422,  3436,  4377,  1561,  3433,  4775,  2053,  3440,  3442,  2054,
4017     3455,  3460,  3456,  3457,  3458,  3459,  3468,  1925,  1563,  2732,
4018     3470,  1922,  1562,  2053,  3693,  1887,  2054,  3471,  3472,  3479,
4019     3634,  4143,  3487,  3634,  3482,  1196,  3489,   864,  2060,  3496,
4020     3494,  5141,  3515,  5143,  3493, -2673,  3501,  3516,  3636,  3497,
4021      826,  3517,   864,  3522,  1335,  2060,  3531,  3518,  3523,  3527,
4022     3530,   826, -2673,  3553,  3559, -2156,  3586,  4424,  2053,  2135,
4023     2062,  2054,  1563,  3566,  3596, -2673,  3569,  2312,  3580,  3581,
4024    -2673,  3597,  4278,  3606,  3611,  3607,  3660,  2062,  3609,  3610,
4025     3634,  3647,   826,  3662,  3613,  3671,  3637,  3648,  3638,  3678,
4026     2060,  3664,  3687,  3690,  3676,  1564,  3222, -2673,  3653,  3679,
4027     3699,  3692,  3683,  3725,   607,  4472,  3714, -2673,  3715,  3727,
4028     3726,  3684,  3731,   607,   884,   826,  3732,  3733,  3748,  2484,
4029     4658,   607,  2062,   884,   607,  3773,  1335,  1335,  3734,  3737,
4030     3749,  3751,  4482,  3759,  3767,  3757,  5008,   884,  3758,  3772,
4031     3781,  3795,  3799,  1565,  4146,  3797,  1566,  3801,  1982,  1564,
4032     3802,  3803,  3808,  5295,  3806,  3809,  3810,  3127,  4910,  3127,
4033     2069,  2408,  3811,  3813,  4683,  4684,   826,  3827,  3825,  3826,
4034      909, -2673,  3828,  3829,  3841,  3830, -2673,  3832,  3452,  3831,
4035     1335,  3835,  3837,  3844,  5301,  5303,  3833,  3839, -2673,  4147,
4036     3834,  3846,  3848, -2673,  3836,  1568,  5079,  1565,  3838,  3840,
4037     1566,  3850,  2443,  3851,  4929,  3857,  3860,  3867,  3861,  3862,
4038     3871,  4934,  3864, -2673,  3872,  2408,  1335,  3874,  3880,  3882,
4039     3922,  3923,  3929,  3932,  3933,  3935,  3940,  3937,  1335,  3951,
4040    -2673,  3952,  3954, -2673,  3961,  3970,  2797,  3971, -2673,  3964,
4041     1570,  3975,  3974,  3990,  5153,  3999,  4002,  3977,  4022,  1568,
4042     3858, -2673,  4009,  4013,  4726,  4727,  4023,  4015,  1335,  4038,
4043     4049,  1335,  1571,  4030,  4010,  4036,  2069,  4811,  4039,  1335,
4044     1335,  4051,  4040,  4044,  4041, -2673,  1335,  1335,  4042,  4052,
4045     4053,  1335,  1573,  2069,  4062,  4011,  4063,  1335,  4064,  4066,
4046     1335,  1335,  4067,  4068,  1570,  1335,  4592,  4069,  4070,  4074,
4047     3535,  1335,   826,   826,   826,   826,  3556, -2155,  2006,  4176,
4048     4190,  4176,  3555,  1335,  4176,  4126,  1571,  4606,  4084,  4109,
4049     4110,  3637,  4137,  4139,  5089,  3637,  5400,  4111,  2069,  4151,
4050     4138,  4621,  4118,  4142,  4168,  5089,  1573,  4169,  4192,  3634,
4051     4157,  4196,  4208,  4198,  4202,  4638,   911,  4177,  4200,  4211,
4052     4216, -2673,  4224,  4245,  4247,  1335,  4253, -2673,  2076,  2077,
4053     2078,  2079,  2080,  2081,  4260,  4261,  4263,  4248,   757,  4266,
4054     4264,  1335,  4268,  4270, -2673,  4271,  4286,  4289,  4302,  4305,
4055     4823,  4301,  4303,  4304,  4825,  4826,  4317,  4315,  4318,  4329,
4056     4331,  3127,  3127,  4319,  5075,  4345,  4316,  4320,  4332,  4346,
4057     5308,  4351,  5295,  4354,  4370,  4371,  4373,  4277,  5145,  4376,
4058     2312,  4840,  4386,  4387,  4389,  4390,  4393,  4405,  4436, -2673,
4059     4672,  4430,  4416,  4444,  4450,  4681,  4451,  4454,   862,  4463,
4060     4680,  4479,  4456,  2047,  2684,  4473,  4496,   875,  4457,  4480,
4061     4490,  4495,  2457,  4499,   875,  4498,  4500,   875,  5140,  4501,
4062     4510,  4503,  4506,  4567,  4512,  4516,  4529, -2673,  4533,  4535,
4063     2735,  4541,  1064,  4554,  2076,  2077,  2078,  2079,  2080,  2081,
4064     4045,  4565,  4548,  4568, -2673,  1335, -2157,  4569,  4549,  4609,
4065     4558,  2076,  2077,  2078,  2079,  2080,  2081,  4559,  4570,  4617,
4066     4624,  5136,  5137,  4618,  4602,  4061,  4589,  4574,  4605,  4607,
4067      864,  4610,  4622,  4623,  4625,  4604,  4632,  4633,  4630,  2736,
4068     4637,  4635,  4639,  4645,  4644,   864,  4655,  4651,  4674, -2673,
4069     4675,  4676,  4679,  4685,  4686,  4687,  2076,  2077,  2078,  2079,
4070     2080,  2081,  4699,  4702,  4708,  4706,  4711,  4712,  4720,  4721,
4071     4730,  2737,  4728,  4729,  5256,  4735,  4739,  4742,   884,  1335,
4072     4743,  4749,  4748,  4752,   884,  4757,  5270,  4763,  4758,  4764,
4073     4767,  4771,  4765,  4773,  2738,   605,  4781,   884,  4789,  4800,
4074     4784,  2312,  4796,  4794,  3634,  2739,  4801,  4805,  3634,  4807,
4075     1960,  4808,  4803,   884,  4809,  4963,  4821,  4816,   607,  4835,
4076     4838,  4839,  4846,  1112,  4845,  1335,  2740,   607,   884,  4848,
4077     4854,  2741,  4855,  4856,   607,  4857,   884,   607,   864,  4879,
4078     3361,  4863,   909,  4901,  4898,  4904,  4914,  4919,  4924,  1112,
4079      884,  4925,  5240,  4869,  4926,  4787,  5267,  4918,  4872,  4883,
4080      884,  4916,  4931,  4937,  4938,  4956,  4942,  4947,  4978,  5257,
4081     4948,  4949,  4415,  5259,   826,  5261,  4987,  4989,  5014,  1064,
4082     4995,  4996,  2742,  3651,  4990,  5015,  4993,  5024,  4029,  5022,
4083     5027,  5032,  5034,  3452,  5054,   909,  4935,  5056,  5057,  5058,
4084     5065,  5067,  5078,  2743,  4828,  4830,  2053,  5082,  5103,  2054,
4085     5088,  5092,  5095, -2673, -2673, -2673,  5099,  5101,  5122,  5129,
4086     5120,  4933,  5123,  5167,  5135,  5112,  5169,  5175,  1335,  5179,
4087     5180,  5182,  5189,  5200,  5194,  5201,  5209,  5213,  2060,  5214,
4088     5215,  5216,   862,   607,   607,  2061,  5217,  5225,  5070,   884,
4089     4255,  5226,  5227,   875,  5247,  5260,  5263,  1335,  1335,   875,
4090     5230,  1335,   875,  5264,  5228,  4977,  5265,  5277,  5239,  5281,
4091     2062,  5306,  5307,   884,  5317,   607,   605,   208,  2744,  4176,
4092     5300,  2745,  5321,  3637,  5324,  5312,   884,  5314,  3637,  5325,
4093     5347,  3637,   605,  5348,  3222,  5345,  4885,  5346,  1335,  1335,
4094     5354,  5367,  5355,  5369,  5358,  5393,  5384,  2746,  4902,  5395,
4095     2747,  5401,  5109,  5403,  5310,  5311,  2748,  4232,   911,   864,
4096     5140,   864,  4152,  2749,  5386,  5410,  5411,  5430,  5445,  5412,
4097     5450,  5457,  5464,  5476,  1827,  1828,  1829,  5504,  5468,  5473,
4098     5482,  5512,  5537,  5536,  5518,  5501,  5539,  5514,  5502,  5540,
4099     5541,  5554,  2750,  5555,  1491,  5562,  5563,  5567,  2751,  5565,
4100     5568,  2752,  2459,  3328,  2122,  5146,  4359,  1384,  3117,  4362,
4101      876,   911,  3645,  3196,  3743,  4285,  5396,  3235,  4292,  3283,
4102     2753,  2063,  4975,  3879,  5294,  5474,  2064,  4432,  5033,  5007,
4103     3681,  4747,  3454,   607,   607,  1730,  5388,  4908,  5470,  5315,
4104     5313,  5409,   607,  5487,  4462,  3686,  2754,  4483,  5275,  1112,
4105     3302,  4425,  5437,   607,   876,  3303,  4290,   826,  5439,   607,
4106     2797,  3761,   607,  2067,  3939,  4449,   182,  1581,  1064,  4424,
4107     5013,  5018,   826,  4769,  1112,  3293,  5475,   826,  5569,  3127,
4108     5559,  3885,  4991,  3947,  4491,  5414,  2312,   182,  4936,  1112,
4109     5131,  2532,  5283,  4939,  1979,   764,  4530,  5107,  5530,  5012,
4110     2961,  2602,  4492,   826,  3672,  2599,  2610,  4472,  5223,  2648,
4111     5035,  4446,  1065,  2725,  1141,  3847,  2069,  2726,   839,  2727,
4112     3233,   864,   826,  4232,  4321,  3943,  4344,  5435,  5553,  4504,
4113     2457,  2218,  5437,  4505,   607,   607,   607,  5046,  5439,  2673,
4114     2908,  2674,  2917,  5443,  1363,  5064,  4520,  4232,  3649,  1335,
4115     4831,  2136,  2946,  5048,  2095,  2168,  2167,  1385,  3661,  1335,
4116     4199,  5379,  1335,  2927,  1335,  5262,   840,  4172,  4963,  3634,
4117     4628,  2945,  4600,  4615,  1112,  5094,  3634,  4166,  5246,  5245,
4118     5556,  3634,  4521,  1335,  3634,  4167, -2577,  5517,  5456,  1335,
4119     5370,  5513,  5074,  3637,  4120,  5381,  3604,  4885,  2622,  3510,
4120     4900,  2172,  5382,  1335,  3259,  3602,     0,  2071,  2884,     0,
4121     3634,   884,  5106,     0,     0,     0,  2893,     0,     0,     0,
4122        0,     0,     0,  3467,     0,     0,     0,     0,   826,   884,
4123     1960,     0,     0,     0,  5437,     0,     0,     0,     0,   607,
4124     5439,     0,     0,     0,     0,     0,     0,   884,     0,     0,
4125      909,     0,   852,     0,     0,     0,  1335,     0,     0,     0,
4126        0,  1335,  1335,     0,     0,     0,   864,   864,   864,   864,
4127        0,  5371,     0,     0,     0,     0,     0,   884,     0, -2577,
4128        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4129        0,  1112,     0,   884,     0,     0,     0,     0,     0,  1335,
4130        0,     0,     0,     0,     0,     0,   605,  2072,     0,   884,
4131    -2673, -2673, -2673,   884,  2076,  2077,  2078,  2079,  2080,  2081,
4132        0,     0,     0,     0,     0,   607,     0,     0,   826, -2577,
4133        0,  3637,     0,     0,     0,     0,     0,     0,     0,     0,
4134        0,     0, -2577,     0,     0,     0,     0, -2577,     0,     0,
4135        0,  2797, -2577,     0,     0,     0,   607,     0, -2577,  5203,
4136        0, -2577,     0,     0,     0, -2577,     0,     0,     0,     0,
4137        0,     0,     0,     0,     0,  2797,  3634,     0,     0,     0,
4138        0,     0,     0,     0,   607,   607,   607,     0,   607,     0,
4139        0,     0,  1335,     0, -2577,   605,     0,     0,  1335,     0,
4140     3634,     0,  5254,     0,     0,     0,     0,     0,   607,  1335,
4141        0,     0,     0,  1335, -2577,  1335,     0,  1335,     0,     0,
4142        0,     0,     0,     0,     0,     0,   911,     0,     0,     0,
4143     5467,     0,   884,     0,     0,     0,     0,  1335,     0,     0,
4144      884,   884,     0,  5392,     0,     0,  3634,     0,     0,     0,
4145        0,     0,     0,     0,   884,     0,     0,     0,     0,     0,
4146        0, -2577,     0,     0, -2577,     0,     0,     0,     0,     0,
4147    -2577,     0,  1960,  1960,     0,     0,   607,  1494,     0,  4693,
4148      607,   607,     0,  1495,     0,     0,     0,     0,     0,     0,
4149        0,  4703,     0,     0,     0,   607,  1496,     0,     0,     0,
4150        0,  1112,  5525,   864,     0,     0,     0,  1730,     0,     0,
4151     5329,     0,     0,     0,  1335,     0,     0,     0,     0,  5441,
4152     5442,     0,     0,  5341,     0,  1497, -2577,     0,     0,     0,
4153        0,     0,     0,  2053,     0,  4232,  2054,     0,     0,     0,
4154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4155        0,     0,     0,     0,     0,  1335,  1335,  1335,     0,     0,
4156        0,  3222,  5356,     0,  1335,  2060,     0,  5525,     0,  1112,
4157        0,     0, -2673,     0,  1335,     0,     0,  5106,     0,  1498,
4158        0,   762,     0,     0,  3634,  5525,  1499,     0,     0,  1500,
4159     2797,     0,   876,     0,     0,  2053,     0,  2062,  2054,     0,
4160        0,     0,  2055,  2056,  2057,     0,     0,   864,     0, -2577,
4161     1112,     0,     0,     0,  1960,  1501,     0,     0,     0,  2058,
4162        0,     0,     0,     0,     0,     0,     0,  2060,     0,     0,
4163        0,     0,     0, -2577,  2061, -2577, -2577,     0,     0,     0,
4164     2312,     0,     0,  1112,     0,   605,     0,     0,  3634,  1502,
4165        0,  1335,     0,     0,     0,     0,     0,  5415,     0,  2062,
4166        0,  4232,     0,     0,  4587,     0,     0,     0,   876,   876,
4167        0, -2577,  3452,  1335, -2577, -2577, -2577,     0,   186,  5438,
4168        0,     0,     0,  1335,     0,  5440,     0,  5254,   182,     0,
4169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4170        0,     0,     0,     0,   884,     0,     0,   864, -2673,     0,
4171     5500,  3467,  1503, -2673,     0,     0,  1504,     0,     0,   607,
4172      607,   607,     0,     0,     0,     0,  1505,     0,     0,     0,
4173        0,     0,  5570,  5571,     0,  1506,     0,     0,  5341,   864,
4174      864,     0,     0,     0,  4232,     0,     0,  1507,     0,     0,
4175    -2673,     0,     0,     0,     0,     0,  2797,     0,   186,  5438,
4176      862,     0,     0,   862,     0,  5440,     0,     0,     0,     0,
4177     2063,     0,  1335,  1335,     0,  2064,  3634,     0,     0,     0,
4178        0,     0,  1335,   182,   839,     0,  1508,  1335,  3634,  1509,
4179     1510,     0,     0,     0,     0,     0,     0,  2065,  2066,     0,
4180        0,     0,     0,  2069,     0,     0,     0,     0,   875,   875,
4181        0,     0,  2067,  3467,     0,  3467,     0,     0,  1335,  1511,
4182        0,     0,  1112,   875,     0,     0,   875,     0,  1335,     0,
4183        0,     0,     0,     0,     0,     0,     0,     0,     0,  1112,
4184        0,     0,     0,   864,     0,     0,  4232,     0,     0,     0,
4185        0,  2068,  1730,     0,     0,  5254,     0,  1112,     0,   605,
4186      186,  5438,     0,     0,     0,  2069,     0,  5440,  2070,     0,
4187        0,     0,     0,     0,     0,  5455,   884,     0,     0,     0,
4188        0,   876,   876,     0,   884,     0,     0,  1512,   875,     0,
4189        0,   875,   875,     0, -2673,     0,   884,     0,     0,     0,
4190        0,     0,     0,     0,     0,     0,     0,   852,     0,   182,
4191        0,     0,     0,  1112,  3634,     0,     0,     0,     0,     0,
4192      607,     0,     0,   607,     0,     0,  1112,     0,     0,     0,
4193        0,   674,     0,   607,     0,     0,     0,     0,     0,  1112,
4194      761,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4195        0,  1112,     0,     0,     0,     0,  2071,     0,     0,     0,
4196        0,     0,     0,     0,  2797,  2797,     0,     0,   607,   607,
4197        0,   884,   884,     0,     0,     0,     0,     0,     0,     0,
4198        0,     0,     0,   607,   748,   884,   607,     0,     0,     0,
4199      748,  3634,     0,     0, -2673,  1112,  1112,  3634,   884,   884,
4200        0,  2076,  2077,  2078,  2079,  2080,  2081,     0,     0,     0,
4201        0,     0,     0,     0,   884,     0,     0,     0,     0,     0,
4202        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4203        0,     0,     0,     0,     0,     0,     0, -2593,     0,     0,
4204        0,     0,     0,     0,     0,     0,     0,     0,   607,     0,
4205        0,   607,   607,     0,     0,     0,  2072,     0,     0,  2073,
4206     2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,  3380,
4207        0,     0,     0,  3524,     0,     0,  3525,     0,     0,     0,
4208        0,     0,     0,     0,     0,     0,   607,     0,   607,     0,
4209     1464,     0,     0,   607,   607,     0,     0,     0,     0,  3634,
4210      607,   607,   607,     0,     0,   607,     0,   607,     0,   607,
4211      607,   607,   607,   607,   607,     0,   607,     0,   607,   607,
4212        0,     0,   607,     0,  1465,     0,     0,     0,     0,     0,
4213    -2593,     0,     0,     0,     0,     0,  1112,   607,   607,   607,
4214      607,  1730,     0,     0,     0,   607,     0,     0,     0,   607,
4215        0,     0,   607,     0,     0,   607,   607,   607,   607,   607,
4216      607,   607,   607,   607,     0,   607,     0,     0,     0,     0,
4217        0,     0,   607,     0,   607,   862,     0,     0,     0,     0,
4218    -2593,     0,   875,     0,  1466,   875,   875,     0,     0,     0,
4219        0,     0,     0, -2593,     0,     0,     0,     0, -2593,     0,
4220        0,     0,     0, -2593,     0,     0,     0,     0,     0, -2593,
4221        0,   884, -2593,     0,     0,     0, -2593,   607,     0,  1467,
4222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4223        0,     0,   607,   182,     0,     0,     0,     0,     0,     0,
4224        0,   607,   607,     0,     0, -2593,     0,     0,     0,     0,
4225     3381,  2252,     0,     0,     0,  1468,  2253,     0,     0,     0,
4226        0,     0,     0,     0,     0, -2593,   884,     0,     0,     0,
4227        0,     0,     0,  1112,     0,     0,     0,  1112,  1112,     0,
4228        0,     0,     0,     0,   884,     0,     0,     0,     0,  1730,
4229      884,  2254,     0,     0,   884,  1470,     0,     0,     0,     0,
4230        0,     0,   884,     0,  2255,  2007,     0,     0,     0,     0,
4231        0,     0, -2593,     0,     0, -2593,     0,     0,     0,  2256,
4232      884, -2593,     0,   607,     0,  2016,     0,  1472,     0,     0,
4233        0,     0,     0,  1435,     0,   607,     0,     0,     0,  1112,
4234        0,     0,   607,     0,     0,   607,   607,     0,     0,     0,
4235        0,     0,     0,  1112,     0,     0,     0,  2033,     0,     0,
4236     2257,     0,     0,     0,     0,   884,     0,     0,     0,    36,
4237        0,  2258,  2045,  3382,     0,     0,     0, -2593,     0,     0,
4238        0,     0,  1475,     0,     0,   884,   884,     0,     0,     0,
4239     1476,     0,  2259,     0,  1112,     0,     0,  2260,  2296,     0,
4240        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4241     1478,     0,     0,     0,     0,     0,  1730,   884,     0,  1479,
4242     1730,     0,     0,  1480,     0,     0,     0,     0,     0,     0,
4243        0,     0,   762,     0,     0,     0,     0,     0,     0,     0,
4244        0,  3467,  3383,   884,     0,  1730,     0,     0,     0,   884,
4245        0,     0,     0,     0,     0,     0,   884,     0,   852,   852,
4246    -2593,   852,     0,   884,     0,     0,   884,     0,     0,  2261,
4247        0,     0,   884,     0,     0,     0,     0,  1481,     0,     0,
4248        0,  3384,     0,     0, -2593,     0, -2593, -2593,     0,     0,
4249        0,     0,   884,     0,     0,     0,     0,     0,   884,     0,
4250        0,     0,     0,   884,     0,     0,  1730,     0,     0,  2262,
4251        0,     0,     0,     0,     0,     0,   884,     0,     0,     0,
4252        0,     0, -2593,     0,     0, -2593, -2593, -2593,     0,   884,
4253        0,     0,     0,   997,  1730,     0,     0,     0,  2053,     0,
4254      884,  2054,  1494,   208,  2263,  2055,  2056,  2057,  1495,     0,
4255        0,     0,     0,     0,     0,     0,     0,     0,   607,   607,
4256      607,     0,  2058,     0,   607,     0,  3380,     0,     0,     0,
4257     2060,     0,     0,     0,     0,     0,  2264,  2061,     0,     0,
4258        0,     0,  2265,     0,     0,  1063,   674,  1464,     0,  2266,
4259     1497,     0,  2267,     0,     0,     0,   607,  1112,     0,     0,
4260        0,     0,  2062,     0,     0,     0,  1730,     0,     0,     0,
4261        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4262        0,  1465,     0,     0,  2268,     0,     0,     0,     0,     0,
4263        0,  2269,     0,     0,     0,     0,     0,     0,     0,  2270,
4264      607,     0,     0,     0,  1498,     0,  2271,     0,     0,     0,
4265        0,  1499,     0,     0,  1500,     0,     0,   862,     0,     0,
4266        0,     0,     0,   875,     0,     0,   875,     0,     0,   875,
4267        0,     0,  2272,     0,     0,     0,     0,     0,     0,  1112,
4268     1501,  1466,  1112,  1208,     0,     0,     0,   884,     0,     0,
4269        0,     0,     0,     0,   748,     0,   748,   607,   748,     0,
4270        0,     0,     0,     0,   748,  1184,  1185,     0,     0,  1228,
4271        0,     0,     0,  2063,  1502,     0,  1467,  1338,  2064,     0,
4272     1347,  1063,  1349,     0,     0,     0,     0,     0,     0,     0,
4273        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4274     2065,  2066,     0,   884,     0,     0,     0,  3381,     0,     0,
4275        0,     0,  1468,     0,     0,  2067,     0,     0,     0,     0,
4276        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4277        0,     0,     0,     0,     0,     0,     0,  1599,     0,     0,
4278        0,  1504,     0,     0,     0,     0,     0,   884,     0,     0,
4279        0,  1505,  1470,     0,  2068,     0,     0,     0,     0,     0,
4280     1506,     0,     0,  1112,     0,   884,     0,     0,  2069,     0,
4281        0,  2070,  1507,   884,     0,     0,   604,   607,     0,     0,
4282     1112,     0,     0,   607,  1472,     0,   607,     0,     0,   607,
4283     1435,     0,     0,     0,     0,  1112,     0,     0,     0,     0,
4284        0,     0,     0,     0,     0,     0,   607,     0,     0,     0,
4285        0,   607,   748,     0,  1509,  1510,     0,     0,     0,     0,
4286        0,     0,     0,     0,     0,     0,    36,     0,     0,   604,
4287     1474,     0,     0,     0,     0,   607,   607,   607,     0,  1475,
4288      607,     0,     0,     0,  1511,     0,  1494,  1476,   607,   607,
4289      607,   607,  1495,     0,     0,  2296,  1730,     0,     0,  2071,
4290        0,   607,  1730,     0,   607,  1597,   607,  1478,     0,     0,
4291        0,     0,     0,     0,     0,     0,  1479,   607,   607,     0,
4292     1480,   607,     0,     0,     0,     0,     0,     0,  1098,     0,
4293        0,     0,     0,     0,  1497,     0,     0,     0,     0,  3383,
4294        0,   607,     0,   607,     0,   607,     0,     0,     0,     0,
4295        0,     0,  1512,     0,  1098,     0,     0,     0,     0,     0,
4296        0,     0,     0,     0,     0,   607,     0,     0,     0,     0,
4297        0,     0,     0,     0,  1481,     0,   607,     0,  3384,     0,
4298        0,     0,     0,     0,   884,     0,  1598,     0,  1498,     0,
4299        0,     0,     0,     0,     0,  1499,     0,   182,  1500,  2072,
4300      607,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,
4301     2080,  2081,     0,     0,     0,   607,     0,     0,     0,  3526,
4302        0,     0,     0,     0,  1501,     0,     0,     0,     0,   607,
4303        0,     0,     0,     0,     0,     0,     0,     0,  1112,     0,
4304        0,  1112,     0,  1112,     0,     0,     0,     0,  1112,     0,
4305        0,     0,     0,   182,     0,     0,     0,     0,  1502,     0,
4306        0,  1063,     0,   884,   884,     0,     0,     0,  2053,   607,
4307        0,  2054,     0,     0,     0,  2055,  2056,  2057,  1494,  1063,
4308        0,     0,     0,     0,  1495,     0,     0,     0,     0,     0,
4309      884,  1561,  2058,   884,     0,     0,     0,  1112,     0,     0,
4310     2060,     0,     0,     0,     0,     0,     0,  2061,     0,     0,
4311     1562,     0,     0,     0,     0,  1984,  1112,     0,     0,     0,
4312        0,  1599,     0,     0,  1464,  1504,  1497,   748,     0,     0,
4313     2840,     0,  2062,     0,     0,  1505,     0,     0,     0,     0,
4314        0,  1112,     0,     0,  1506,  1063,     0,     0,     0,     0,
4315        0,     0,     0,     0,     0,     0,  1507,     0,  1465,     0,
4316     1563,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4317        0,     0,     0,     0,     0,     0,     0,  1730,  1730,  1730,
4318     1498,     0,     0,     0,     0,     0,     0,  1499,     0,     0,
4319     1500,     0,     0,     0,     0,  1600,     0,     0,  1509,  1510,
4320        0,   884,     0,     0,     0,     0,     0,     0,     0,     0,
4321        0,  1112,     0,  1112,  1742,     0,  1501,     0,  1466,     0,
4322        0,   884,  2049,     0,     0,     0,     0,     0,  1601,     0,
4323        0,  2051,     0,     0,     0,     0,     0,     0,     0,  1759,
4324      884,     0,     0,  2063,     0,  2093,     0,  1564,  2064,     0,
4325     1502,     0,     0,  1467,  1767,     0,     0,     0,     0,     0,
4326        0,     0,     0,     0,  1063,     0,     0,  2110,  2111,     0,
4327     2065,  2066,  1063,  1063,     0,     0,     0,     0,     0,     0,
4328        0,     0,  1464,     0,     0,  2067,  1063,     0,     0,  1468,
4329        0,     0,     0,     0,     0,  1565,  1512,     0,  1566,     0,
4330        0,     0,     0,     0,  1112,     0,     0,     0,     0,     0,
4331        0,     0,     0,  1567,     0,   748,  1465,  1504,     0,     0,
4332      748,   748,     0,     0,  2068,  1469,   884,  1505,     0,  1470,
4333        0,   607,     0,     0,   748,     0,  1506,   607,  2069,     0,
4334        0,  2070,     0,     0,     0,  1112,     0,  1568,  1507,     0,
4335        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4336     1471,  1472,     0,     0,     0,     0,     0,  1435,     0,     0,
4337        0,     0,     0,  1730,  1112,     0,  1466,     0,     0,     0,
4338      884,     0,   884,     0,     0,     0,     0,  1569,     0,     0,
4339     1509,  1510,  1570,     0,     0,   884,     0,   884,     0,  1473,
4340        0,     0,     0,    36,     0,     0,     0,  1474,     0,     0,
4341        0,  1467,     0,     0,  1571,     0,  1475,     0,     0,  1730,
4342     1572,     0,     0,     0,  1476,     0,     0,   748,     0,  2071,
4343        0,     0,  1477,     0,  1573,     0,     0,   748,     0,     0,
4344        0,     0,     0,  1112,  1478,     0,     0,  1468,     0,     0,
4345        0,     0,     0,  1479,     0,     0,  1985,  1480,     0,     0,
4346        0,     0,     0,   884,  1112,     0,     0,     0,     0,     0,
4347        0,     0,     0,     0,     0,     0,     0,     0,  1112,     0,
4348        0,  1184,  1185,     0,     0,     0,     0,  1470,  1512,     0,
4349        0,     0,     0,  2413,     0,     0,     0,     0,     0,     0,
4350     2420,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4351        0,  1481,     0,     0,     0,     0,     0,     0,   884,  1472,
4352        0,     0,     0,     0,   748,  1435,     0,   748,   748,  2072,
4353        0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,
4354     2080,  2081,     0,     0,     0,   604,   884,     0,   604,  3576,
4355        0,     0,     0,     0,     0,     0,     0,     0,  1494,     0,
4356        0,    36,     0,  2295,  1495,  1474,     0,     0,   884,     0,
4357     2052,   884,     0,     0,  1475,     0,     0,  2053,     0,     0,
4358     2054,     0,  1476,     0,  2055,  2056,  2057,     0,     0,     0,
4359     2296,   607,     0,     0,  1112,     0,     0,     0,     0,     0,
4360      607,  2058,  1478,     0,  2059,   604,  1497,     0,   607,  2060,
4361      607,  1479,     0,   607,     0,  1480,  2061,  1112,   607,   607,
4362      607,   607,     0,     0,   607,   607,   607,   607,   607,   607,
4363      607,   607,   607,   607,     0,     0,     0,   607,   607,     0,
4364        0,  2062,  1112,     0,     0,     0,     0,   607,     0,     0,
4365      182,   607,     0,  1730,     0,   607,     0,     0,     0,     0,
4366     1498,     0,     0,   607,     0,     0,   607,  1499,   607,  1481,
4367     1500,     0,     0,  1464,     0,     0,     0,     0,  1112,     0,
4368      607,     0,     0,   607,   607,     0,     0,     0,   607,   607,
4369        0,     0,     0,     0,     0,   607,  1501,     0,     0,     0,
4370        0,     0,     0,     0,     0,   607,     0,  1465,   607,   748,
4371        0,  2554,     0,     0,     0,  2559,     0,     0,     0,  2053,
4372      607,     0,  2054,     0,     0,     0,  2055,  2056,  2057,     0,
4373     1502,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4374      182,     0,     0,  2058,     0,     0,   607,     0,     0,     0,
4375        0,  2060,  2063,  1112,     0,     0,     0,  2064,  2061,     0,
4376     1494,     0,     0,     0,     0,   607,  1495,  1466,     0,     0,
4377        0,     0,     0,     0,     0,  2360,     0,     0,     0,  2065,
4378     2066,     0,     0,  2062,     0,     0,     0,     0,     0,     0,
4379        0,     0,     0,  1599,  2067,     0,   884,  1504,     0,     0,
4380        0,     0,  1467,     0,     0,     0,     0,  1505,  1497,     0,
4381        0,     0,     0,     0,     0,     0,  1506,  2617,     0,     0,
4382        0,     0,     0,     0,     0,     0,     0,  2625,  1507,  2626,
4383        0,     0,     0,  2068,     0,  2630,     0,     0,  1468,     0,
4384        0,     0,  2636,     0,     0,     0,  1730,  2069,     0,     0,
4385     2070,  1730,  1112,  1730,     0,     0,     0,     0,     0,     0,
4386        0,  2045,  1498,     0,   604,     0,     0,  1627,     0,  1499,
4387     1509,  1510,  1500,     0,  1469,     0,  1730,  1112,  1470,     0,
4388        0,     0,     0,     0,     0,     0,     0,     0,     0,  1494,
4389        0,     0,     0,     0,  2063,  1495,  1730,     0,  1501,  2064,
4390     1628,     0,     0,     0,     0,  2045,     0,     0,     0,  1535,
4391     1472,     0,   884,     0,     0,   884,  1435,     0,     0,     0,
4392        0,  2065,  2066,     0,     0,     0,     0,     0,  2840,     0,
4393        0,  2781,  1502,     0,     0,     0,  2067,  1497,  2071,     0,
4394        0,     0,     0,     0,  3608,     0,     0,     0,  1536,     0,
4395        0,     0,    36,     0,     0,     0,  1474,     0,     0,     0,
4396     3627,     0,     0,     0,     0,  1475,     0,     0,  1512,     0,
4397        0,     0,     0,  1476,     0,  2068,  2770,  2771,     0,     0,
4398        0,  1537,   607,  2785,  2786,     0,     0,  2487,     0,  2069,
4399        0,  1498,  2070,  1478,     0,  1599,     0,     0,  1499,  1504,
4400        0,  1500,  1479,     0,  2504,     0,  1480,   884,   884,  1505,
4401        0,  1112,  2825,  3627,     0,     0,     0,   884,  1506,     0,
4402        0,     0,  2523,  2901,   607,     0,     0,  1501,     0,     0,
4403     1507,     0,     0,     0,     0,     0,   884,     0,  2072,     0,
4404        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
4405     2081,     0,     0,     0,     0,     0,     0,     0,     0,  1112,
4406     1481,  1502,     0,  1112,   607,   607,     0,     0,     0,  2276,
4407        0,     0,  1509,  1510,     0,     0,     0,     0,  2604,     0,
4408     2071,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4409        0,  2612,     0,     0,     0,     0,     0,     0,     0,   604,
4410        0,     0,  2277,   604,  1098,     0,     0,     0,     0,     0,
4411        0,     0,     0,     0,     0,     0,  2627,     0,   607,     0,
4412        0,  2936,  2936,     0,  1503,     0,     0,     0,  1504,   884,
4413        0,     0,     0,     0,  1063,     0,     0,     0,  1505,     0,
4414        0,     0,     0,     0,     0,     0,     0,  1506,     0,     0,
4415        0,     0,     0,     0,   607,     0,     0,     0,     0,  1507,
4416     2656,  1098,     0,     0,     0,     0,   607,     0,     0,     0,
4417     1512,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4418     2072,     0,   748,  2073,  2074,  2075,     0,  2076,  2077,  2078,
4419     2079,  2080,  2081,     0,     0,     0,   607,  2823,  2353,   607,
4420        0,  1509,  1510,     0,  1349,     0,     0,   607,   607,     0,
4421     1112,     0,     0,     0,   607,   607,     0,     0,     0,   607,
4422     1112,     0,     0,     0,     0,   607,     0,     0,   607,   607,
4423        0,  2354,     0,   607,     0,     0,     0,     0,     0,   607,
4424        0,     0,  1494,     0,  1494,     0,     0,     0,  1495,     0,
4425     1495,   607,     0,     0,     0,     0,     0,     0,     0,   607,
4426        0,  1597,     0,   607,     0,     0,     0,     0,     0,     0,
4427        0,  2053,     0,     0,  2054,     0,     0,  3070,  2055,  2056,
4428     2057,     0,     0,  1349,     0,     0,     0,     0,     0,     0,
4429     1497,     0,  1497,   607,     0,  2058,     0,     0,     0,  1512,
4430     1349,  2827,     0,  2060,     0,     0,     0,     0,     0,   607,
4431     2061,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4432        0,     0,     0,     0,     0,     0,     0,  1112,     0,     0,
4433        0,     0,     0,     0,     0,  2062,     0,     0,     0,     0,
4434        0,     0,  1598,  4754,  1498,   884,  1498,     0,     0,     0,
4435     1730,  1499,     0,  1499,  1500,     0,  1500,     0,   748,     0,
4436        0,     0,     0,     0,  3231,     0,   748,     0,  1112,   748,
4437        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4438     1501,   748,  1501,     0,     0,   884,     0,     0,     0,     0,
4439     1112,     0,     0,     0,     0,     0,     0,   884,     0,     0,
4440     3262,     0,     0,  3262,     0,  3262,     0,     0,     0,  3262,
4441        0,  3262,  3262,   607,  1502,     0,  1502,     0,     0,     0,
4442     3262,  3262,  3262,     0,     0,     0,     0,   884,     0,     0,
4443        0,  2053,     0,   182,  2054,     0,     0,     0,  2055,  2056,
4444     2057,     0,     0,     0,     0,     0,  2063,     0,     0,     0,
4445        0,  2064,     0,     0,     0,  2058,     0,     0,  1112,     0,
4446      182,     0,     0,  2060,     0,     0,     0,     0,     0,     0,
4447     2061,     0,     0,  2065,  2066,  3338,     0,  1599,     0,  1599,
4448        0,  1504,     0,  1504,     0,     0,     0,   607,  2067,     0,
4449        0,  1505,     0,  1505,     0,  2062,     0,     0,     0,     0,
4450     1506,     0,  1506,   607,  3018,     0,     0,  3369,     0,     0,
4451        0,   839,  1507,     0,  1507,     0,     0,     0,  3035,  1063,
4452        0,     0,     0,     0,   604,     0,   884,  2068,     0,     0,
4453        0,   604,     0,   607,     0,     0,   604,     0,     0,   604,
4454     4881,  2069,     0,     0,  2070,     0,     0,     0,     0,     0,
4455        0,  3193,     0,  3063,  1509,  1510,  1509,  1510,     0,  3068,
4456        0,     0,     0,     0,     0,   604,     0,     0,     0,     0,
4457        0,     0,     0,     0,     0,  1063,     0,     0,  1112,     0,
4458     1112,     0,     0,     0,  3194,     0,  1511,     0,     0,     0,
4459     3410,  3412,     0,     0,     0,     0,  3420,     0,     0,     0,
4460        0,     0,     0,     0,     0,     0,  2063,     0,     0,     0,
4461        0,  2064,     0,     0,     0,     0,     0,   884,   875,     0,
4462        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4463        0,     0,  2071,  2065,  2066,     0,   607,     0,     0,     0,
4464     1112,     0,     0,     0,     0,     0,     0,     0,  2067,     0,
4465        0,     0,  1512,     0,  1512,     0,     0,     0,     0,   748,
4466        0,     0,   875,     0,     0,   607,   607,     0,     0,   607,
4467        0,     0,     0,  2045,     0,     0,     0,     0,     0,     0,
4468        0,     0,     0,     0,   607,     0,     0,  2068,     0,  4165,
4469        0,   607,  4170,     0,     0,     0,   607,     0,     0,   607,
4470      607,  2069,     0,     0,  2070,     0,   607,   607,     0,     0,
4471        0,     0,     0,     0,   182,     0,     0,     0,     0,   884,
4472        0,   884,     0,     0,     0,   607,     0,     0,     0,     0,
4473        0,   604,  2072,     0,     0,  2073,  2074,  2075,     0,  2076,
4474     2077,  2078,  2079,  2080,  2081,     0,     0,     0,     0,  3881,
4475        0,     0,     0,     0,     0,   604,  2053,     0,     0,  2054,
4476        0,     0,  3288,  2055,  2056,  2057,     0,  1112,   884,     0,
4477        0,     0,     0,     0,     0,     0,     0,     0,   607,     0,
4478     2058,     0,     0,     0,     0,     0,     0,     0,  2060,     0,
4479        0,     0,  2071,     0,     0,  2061,     0,     0,     0,     0,
4480        0,   604,     0,     0,     0,     0,     0,     0,     0,     0,
4481        0,     0,     0,     0,     0,     0,  1063,  1730,     0,     0,
4482     2062,     0,   607,     0,     0,     0,     0,     0,     0,     0,
4483        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4484        0,  2053,     0,     0,  2054,     0,     0,     0,  2055,  2056,
4485     2057,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4486        0,     0,  3643,     0,   748,  2058,     0,     0,     0,     0,
4487        0,     0,     0,  2060,     0,     0,     0,     0,     0,     0,
4488     2061,     0,     0,     0,     0,     0,     0,  3656,  3656,     0,
4489        0,   607,  2072,  1112,     0,  2073,  2074,  2075,     0,  2076,
4490     2077,  2078,  2079,  2080,  2081,  2062,     0,     0,     0,  4076,
4491        0,     0,     0,     0,  5181,   607,     0,   607,     0,     0,
4492        0,     0,     0,     0,     0,  1063,     0,   607,  1112,     0,
4493      607,  2063,   607,     0,     0,     0,  2064,     0,  2053,   604,
4494        0,  2054,     0,     0,     0,  2055,  2056,  2057,     0,     0,
4495        0,   607,     0,     0,     0,     0,     0,   607,  2065,  2066,
4496        0,   607,  2058,     0,     0,     0,     0,  1112,  3480,     0,
4497     2060,   607,     0,  2067,     0,     0,     0,  2061,     0,     0,
4498        0,     0,     0,     0,     0,  3492,     0,     0,     0,     0,
4499        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4500     3500,     0,  2062,   604,     0,  1730,     0,     0,  3627,     0,
4501        0,     0,  2068,     0,  1112,  3766,  2063,     0,     0,  1112,
4502     1112,  2064,     0,     0,   607,     0,  2069,     0,     0,   607,
4503      607,   884,     0,     0,     0,     0,   182,     0,     0,     0,
4504        0,     0,     0,  2065,  2066,   884,     0,     0,     0,     0,
4505        0,     0,     0,     0,     0,     0,     0,     0,  2067,     0,
4506        0,     0,     0,     0,     0,     0,     0,   607,     0,     0,
4507     3805,     0,     0,     0,   607,     0,     0,     0,     0,     0,
4508        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4509        0,     0,     0,     0,     0,     0,     0,  2068,     0,   607,
4510        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4511        0,  2069,     0,  2063,  2070,     0,     0,  2071,  2064,     0,
4512        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4513        0,   604,     0,     0,     0,  1112,  1112,     0,  3845,     0,
4514     2065,  2066,     0,   604,     0,     0,     0,     0,     0,     0,
4515        0,     0,     0,     0,     0,  2067,     0,     0,     0,     0,
4516      607,     0,     0,   607,     0,     0,   607,     0,     0,     0,
4517        0,     0,     0,     0,     0,     0,     0,   607,     0,     0,
4518        0,   607,  3262,   607,     0,   607,     0,     0,     0,     0,
4519        0,     0,     0,     0,  2068,     0,  3878,  3878,     0,     0,
4520      875,     0,  2071,     0,     0,   607,  3894,     0,  2069,     0,
4521        0,  2070,  1063,     0,  1063,     0,     0,  2072,     0,     0,
4522     2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,
4523     1730,     0,   884,     0,     0,     0,     0,     0,     0,     0,
4524        0,     0,     0,  3627,     0,     0,     0,  3627,     0,     0,
4525        0,     0,     0,  5418,   748,     0,     0,     0,     0,     0,
4526     3950,     0,  3697,     0,     0,     0,     0,     0,     0,   604,
4527        0,     0,     0,     0,     0,     0,   875,   875,  3928,     0,
4528        0,  3708,   607,     0,     0,     0,     0,     0,     0,     0,
4529        0,   607,     0,     0,  3985,  1063,     0,     0,     0,  2071,
4530        0,     0,  2072,   607,     0,  2073,  2074,  2075,     0,  2076,
4531     2077,  2078,  2079,  2080,  2081,     0,     0,     0,     0,  4129,
4532        0,     0,     0,   607,   607,   607,     0,     0,     0,     0,
4533        0,     0,   607,  1730,     0,     0,  1112,     0,     0,     0,
4534        0,     0,   607,     0,     0,     0,   604,   884,     0,     0,
4535        0,     0,   604,     0,     0,     0,     0,     0,     0,     0,
4536      607,     0,     0,     0,     0,     0,     0,  4006,     0,     0,
4537        0,     0,     0,   884,     0,   613,  3790,     0,  3792,     0,
4538        0,   663,   613,     0,     0,     0,     0,   715,     0,   613,
4539        0,     0,     0,     0,     0,   613,     0,     0,   770,  2072,
4540        0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,
4541     2080,  2081,     0,   607,     0,     0,  4226,   837,   837,   607,
4542        0,     0,     0,     0,     0,     0,     0,     0,     0,   607,
4543        0,  2053,     0,     0,  2054,     0,   607,   607,  2055,  2056,
4544     2057,   607,     0,     0,     0,     0,     0,     0,     0,     0,
4545        0,   607,     0,     0,   604,  2058,     0,     0,   748,     0,
4546        0,     0,     0,  2060,     0,     0,     0,  5558,     0,  3843,
4547     2061,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4548        0,   884,     0,     0,     0,     0,     0,     0,     0,   875,
4549      875,     0,     0,  2053,  4130,  2062,  2054,     0,     0,     0,
4550     2055,  2056,  2057,     0,     0,     0,   607,     0,     0,     0,
4551     3865,     0,   607,     0,     0,     0,     0,  2058,     0,     0,
4552        0,     0,     0,     0,     0,  2060,     0,     0,     0,   182,
4553        0,     0,  2061,     0,     0,     0,     0,     0,     0,     0,
4554      607,   607,     0,     0,     0,     0,     0,     0,     0,     0,
4555      607,     0,     0,     0,     0,   607,     0,  2062,     0,     0,
4556        0,     0,     0,     0,  1730,     0,   871,     0,     0,  1494,
4557        0,     0,     0,     0,   913,  1495,     0,   915,   182,   182,
4558      920,   921,     0,   924,     0,   927,   607,     0,   933,     0,
4559      935,     0,     0,     0,     0,     0,   607,     0,     0,     0,
4560        0,     0,     0,     0,     0,     0,  2063,     0,  3068,     0,
4561        0,  2064,     0,     0,   607,     0,     0,  1497,     0,     0,
4562        0,     0,     0,     0,     0,     0,     0,   607,     0,  1730,
4563        0,     0,     0,  2065,  2066,     0,     0,     0,     0,     0,
4564        0,     0,     0,  4001,     0,     0,     0,  1730,  2067,   607,
4565      607,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4566        0,     0,     0,     0,     0,     0,     0,     0,  2063,     0,
4567        0,  1498,     0,  2064,     0,  3627,     0,     0,  1499,     0,
4568     3627,  1500,     0,  3627,  3894,     0,     0,  2068,     0,     0,
4569        0,     0,     0,     0,     0,  2065,  2066,     0,     0,     0,
4570        0,  2069,     0,     0,  2070,     0,     0,  1501,     0,  4327,
4571     2067,     0,     0,     0,     0,     0,     0,  4336,     0,     0,
4572     4337,     0,  4338,     0,     0,     0,     0,     0,     0,     0,
4573        0,     0,   748,     0,     0,     0,     0,     0,     0,     0,
4574        0,  1502,     0,     0,     0,     0,     0,     0,     0,  2068,
4575        0,     0,     0,     0,     0,     0,     0,   748,     0,  4075,
4576        0,     0,     0,  2069,   748,  4379,  2070,     0,     0,     0,
4577        0,     0,     0,     0,     0,   748,     0,     0,     0,     0,
4578        0,  3262,  4085,     0,     0,  3262,  3262,     0,  3262,     0,
4579        0,     0,  2071,  2053,     0,     0,  2054,     0,     0,     0,
4580     2055,  2056,  2057,     0,  1599,     0,     0,  4108,  1504,     0,
4581        0,     0,     0,     0,     0,     0,     0,  2058,  1505,     0,
4582        0,     0,     0,     0,     0,  2060,     0,  1506,     0,     0,
4583        0,     0,  2061,   182,     0,     0,     0,     0,     0,  1507,
4584        0,     0,     0,  1985,     0,     0,     0,     0,     0,     0,
4585     1184,  1185,     0,     0,  2071,  2053,     0,  2062,  2054,     0,
4586        0,     0,  2055,  2056,  2057,     0,     0,     0,     0,     0,
4587        0,   182,     0,     0,     0,     0,     0,     0,  3238,  2058,
4588        0,  1509,  1510,     0,     0,     0,     0,  2060,  4486,     0,
4589        0,  3894,  2072,     0,  2061,  2073,  2074,  2075,     0,  2076,
4590     2077,  2078,  2079,  2080,  2081,     0,     0,     0,     0,  4550,
4591        0,  3239,     0,     0,     0,     0,     0,     0,     0,  2062,
4592        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4593        0,     0,     0,     0,     0,     0,     0,     0,     0,   748,
4594        0,     0,     0,     0,     0,  3627,     0,     0,     0,     0,
4595        0,     0,     0,     0,  2072,  2045,     0,  2073,  2074,  2075,
4596        0,  2076,  2077,  2078,  2079,  2080,  2081,     0,  2063,     0,
4597        0,  4588,     0,  2064,     0,     0,  4538,  4538,  4538,  1512,
4598     4538,  4538,  4538,  4538,  4538,     0,     0,     0,     0,     0,
4599        0,     0,     0,     0,     0,  2065,  2066,     0,     0,     0,
4600     1015,     0,     0,     0,     0,     0,   748,  1028,  1029,     0,
4601     2067,  1035,     0,  1038,  1039,     0,     0,     0,  1041,     0,
4602        0,     0,     0,     0,     0,     0,     0,     0,     0,  1060,
4603     2063,     0,     0,     0,     0,  2064,     0,     0,     0,     0,
4604        0,     0,     0,  2053,     0,     0,  2054,     0,     0,  2068,
4605     2055,  2056,  2057,     0,     0,     0,     0,  2065,  2066,     0,
4606        0,     0,     0,  2069,   675,     0,  2070,     0,  1137,   676,
4607     1139,     0,  2067,     0,     0,  2060,     0,     0,     0,     0,
4608     1155,     0,  2061,  3627,     0,     0,     0,     0,     0,     0,
4609        0,     0,     0,   182,     0,     0,     0,     0,     0,     0,
4610        0,     0,     0,     0,   677,     0,     0,  2062,     0,     0,
4611        0,  2068,  4627,   613,  4629,     0,     0,   678,     0,     0,
4612        0,     0,     0,     0,     0,  2069,     0,     0,  2070,     0,
4613        0,     0,   679,     0,     0,     0,     0,     0,     0,     0,
4614        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4615      680,     0,     0,     0,  2071,     0,     0,     0,     0,     0,
4616        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4617        0,     0,     0,   681,     0,     0,  4435,     0,     0,     0,
4618        0,     0,     0,     0,   682,     0,     0,     0,     0,     0,
4619        0,     0,     0,   683,     0,     0,     0,     0,     0,     0,
4620        0,   837,     0,     0,     0,   684,     0,     0,     0,     0,
4621      685,     0,     0,     0,     0,     0,  2071,   686,  2063,     0,
4622        0,     0,     0,  2064,     0,     0,     0,     0,     0,     0,
4623        0,     0,   748,     0,     0,     0,   687,  1455,   748,     0,
4624        0,     0,   748,     0,     0,  2065,  2066,     0,     0,     0,
4625        0,     0,     0,     0,  2072,     0,     0,  2073,  2074,  2075,
4626     2067,  2076,  2077,  2078,  2079,  2080,  2081,     0,  4696,  4697,
4627        0,  4843,     0,  4700,  4701,     0,     0,     0,     0,     0,
4628        0,     0,   688,     0,     0,     0,     0,     0,  4723,  4724,
4629        0,     0,     0,     0,     0,     0,   182,     0,     0,  2068,
4630        0,  3262,     0,  3262,  3262,     0,     0,  3262,     0,     0,
4631     1630,     0,     0,  2069,     0,     0,  2072,     0,     0,  2073,
4632     2074,  2075,   689,  2076,  2077,  2078,  2079,  2080,  2081,     0,
4633        0,  1741,     0,  4853,     0,   690,     0,     0,     0,     0,
4634        0,     0,     0,  1752,     0,     0,   691,     0,  1755,     0,
4635        0,     0,     0,     0,     0,     0,   208,   692,  1758,     0,
4636      693,     0,     0,  1762,     0,     0,     0,     0,  1494,     0,
4637        0,  4783,  1765,     0,  1495,     0,     0,  1772,     0,     0,
4638     1776,     0,     0,     0,     0,  1985,   694,     0,     0,   695,
4639        0,   182,     0,   696,     0,   697,     0,     0,     0,     0,
4640        0,     0,   698,     0,  2071,   699,     0,     0,     0,  4810,
4641        0,     0,     0,     0,     0,     0,  1497,     0,     0,   182,
4642        0,     0,  1830,     0,   700,     0,     0,     0,     0,     0,
4643        0,   701,     0,     0,     0,     0,     0,   702,     0,     0,
4644      703,     0,     0,     0,   704,     0,     0,     0,     0,     0,
4645        0,     0,   705,     0,   706,  4538,     0,     0,     0,   707,
4646        0,     0,     0,     0,     0,     0,     0,   863,   865,     0,
4647     1498,   869,   708,   877,   886,     0,     0,  1499,     0,     0,
4648     1500,   877,     0,   886,   877,   709,     0,     0,     0,     0,
4649        0,   926,  4659,     0,     0,     0,     0,   886,   936,  5499,
4650        0,     0,  -130,     0,  2072,     0,  1501,  2073,  2074,  2075,
4651        0,  2076,  2077,  2078,  2079,  2080,  2081,     0,     0,     0,
4652        0,     0,     1,     0,     0,     0,     0,     0,     0,     0,
4653        0,     0,     2,  4682,     3,     4,     0,     0,     0,   613,
4654     1502,   613,     0,   613,     0,   613,     0,   613,   613,   613,
4655        5,     0,     0,     0,   613,  4698,     0,     0,     0,     6,
4656        0,     0,     0,     0,     0,  1980,     0,     0,     0,     0,
4657        0,     7,     0,     8,     9,     0,     0,     0,     0,     0,
4658       10,     0,    11,     0,     0,  1993,     0,     0,     0,     0,
4659        0,     0,     0,    12,     0,    13,     0,     0,     0,  3894,
4660        0,   182,     0,  1599,     0,     0,     0,  1504,     0,     0,
4661        0,     0,    14,     0,     0,    15,     0,  1505,     0,     0,
4662        0,     0,     0,  4725,     0,     0,  1506,     0,     0,    16,
4663        0,    17,     0,     0,     0,    18,     0,     0,  1507,     0,
4664        0,    19,     0,     0,  3262,     0,     0,   748,     0,    20,
4665        0,    21,     0,  4976,     0,     0,     0,     0,    22,     0,
4666        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4667        0,     0,     0,     0,    23,     0,     0,  3719,     0,     0,
4668     1509,  1510,     0,     0,     0,     0,     0,     0,     0,  2053,
4669        0,    24,  2054,     0,     0,     0,  2055,  2056,  2057,     0,
4670        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4671     3720,     0,  1494,  2058,     0,     0,     0,     0,  1495,     0,
4672        0,  2060,     0,     0,     0,     0,     0,  2053,  2061,     0,
4673     2054,    25,    26,     0,  2055,  2056,  2057,    27,     0,     0,
4674        0,     0,     0,     0,     0,  4815,   837,     0,     0,    28,
4675        0,  2058,     0,  2062,     0,     0,     0,     0,     0,  2060,
4676     1497,     0,     0,     0,     0,     0,  2061,    29,     0,     0,
4677        0,     0,     0,     0,     0,     0,     0,     0,  1512,     0,
4678        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4679        0,  2062,     0,     0,     0,     0,     0,     0,     0,     0,
4680        0,     0,     0,    30,     0,  1985,     0,     0,     0,     0,
4681        0,    31,     0,     0,  1498,     0,     0,     0,     0,     0,
4682        0,  1499,     0,     0,  1500,    32,     0,     0,  2274,     0,
4683        0,    33,    34,     0,    35,     0,     0,     0,     0,    36,
4684        0,     0,     0,     0,    37,     0,     0,    38,     0,     0,
4685     1501,     0,     0,     0,    39,     0,     0,     0,     0,     0,
4686       40,    41,     0,     0,  2063,     0,     0,     0,    42,  2064,
4687        0,     0,    43,     0,     0,     0,     0,  1063,     0,     0,
4688        0,  5155,    44,     0,  1502,     0,     0,     0,     0,     0,
4689        0,  2065,  2066,     0,     0,     0,     0,    45,     0,  1006,
4690     2365,  1009,  2063,     0,     0,  1012,  2067,  2064,   886,     0,
4691        0,     0,     0,     0,   886,     0,     0,    46,     0,  1037,
4692        0,     0,     0,     0,     0,   748,  1042,   886,    47,  2065,
4693     2066,     0,     0,     0,    48,     0,     0,     0,     0,    49,
4694        0,     0,     0,   886,  2067,  2068,     0,  1599,     0,     0,
4695        0,  1504,    50,     0,     0,     0,     0,   877,   886,  2069,
4696        0,  1505,  2070,     0,   877,     0,   886,   877,     0,     0,
4697     1506,  1464,     0,     0,     0,    51,     0,     0,     0,     0,
4698      886,     0,  1507,  2068,     0,     0,     0,     0,     0,    52,
4699      886,     0,  -130,     0,     0,     0,     0,  2069,     0,     0,
4700     2070,     0,     0,     0,     0,  1465,     0,     0,     0,     0,
4701        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4702        0,  3775,     0,     0,  1509,  1510,     0,     0,     0,     0,
4703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4704        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4705     2071,     0,     0,  2053,  3776,     0,  2054,     0,     0,     0,
4706     2055,  2056,  2057,     0,  1063,  1466,     0,     0,  5298,     0,
4707     5299,     0,     0,     0,  5304,  5305,     0,  2058,     0,   886,
4708        0,     0,     0,     0,     0,  2060,     0,     0,  2071,     0,
4709        0,     0,  2061,  1985,     0,     0,     0,     0,     0,     0,
4710     1467,     0,  5292,   886,     0,     0,     0,     0,     0,     0,
4711        0,     0,     0,     0,     0,     0,   886,  2062,     0,     0,
4712        0,     0,  1512,     0,     0,     0,     0,     0,     0,     0,
4713        0,     0,  3843,     0,     0,     0,  1468,     0,     0,     0,
4714        0,     0,     0,     0,     0,     0,  2527,     0,     0,     0,
4715     2072,     0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,
4716     2079,  2080,  2081,     0,     0,     0,     0,  4862,     0,     0,
4717     1526,  1527,  1469,     0,     0,     0,  1470,     0,     0,  1985,
4718        0,     0,     0,     0,  1985,  1985,     0,     0,  2072,     0,
4719        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
4720     2081,     0,     0,     0,     0,  4865,     0,  1552,  1472,     0,
4721        0,     0,     0,     0,  1435,     0,     0,     0,     0,     0,
4722        0,     0,     0,     0,     0,  1732,     0,     0,  2063,     0,
4723        0,     0,     0,  2064,     0,     0,     0,     0,     0,     0,
4724        0,     0,     0,   877,     0,     0,  1553,     0,     0,   877,
4725       36,     0,   877,     0,  1474,  2065,  2066,     0,     0,     0,
4726        0,     0,     0,  1475,     0,     0,     0,     0,     0,  1761,
4727     2067,  1476,     0,  2654,     0,  2655,     0,     0,     0,  1554,
4728        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4729        0,  1478,  2666,     0,  2667,     0,     0,     0,  1783,  1784,
4730     1479,  5224,     0,     0,  1480,     0,     0,     0,     0,  2068,
4731      613,     0,   613,  1063,   613,     0,   613,     0,   613,     0,
4732        0,     0,   613,  2069,  1825,     0,  2070,     0,     0,     0,
4733        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4734        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4735        0,     0,     0,     0,     0,     0,     0,     0,  1481,     0,
4736        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4737        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4738        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4739        0,     0,     0,     0,     0,     0,  5524,     0,  1894,  1896,
4740        0,   886,     0,     0,     0,     0,     0,     0,     0,     0,
4741        0,     0,     0,     0,  2071,     0,     0,     0,     0,   886,
4742        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4743        0,     0,     0,     0,     0,     0,     0,   886,     0,     0,
4744        0,     0,     0,     0,  5523,     0,  2053,     0,     0,  2054,
4745        0,     0,     0,  2055,  2056,  2057,     0,     0,     0,     0,
4746        0,  5524,     0,     0,     0,     0,     0,   886,     0,     0,
4747     2058,     0,     0,     0,     0,     0,     0,     0,  2060,  5524,
4748        0,     0,     0,   886,     0,  2061,     0,     0,     0,     0,
4749        0,     0,     0,     0,     0,     0,     0,     0,     0,   886,
4750        0,  5375,     0,   886,     0,     0,     0,     0,     0,  5523,
4751     2062,     0,     0,     0,  2072,     0,     0,  2073,  2074,  2075,
4752        0,  2076,  2077,  2078,  2079,  2080,  2081,  5523,     0,     0,
4753        0,  4906,     0,     0,     0,     0,     0,     0,     0,     0,
4754        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4755        0,     0,  2953,  2954,     0,     0,     0,     0,     0,     0,
4756        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4757        0,  2969,  2970,     0,     0,     0,  2973,  2974,     0,     0,
4758        0,  2977,     0,     0,     0,     0,     0,     0,     0,     0,
4759        0,     0,     0,     0,     0,  2988,     0,     0,     0,     0,
4760        0,     0,  2997,     0,     0,     0,  3000,  3001,     0,     0,
4761     3004,  3005,     0,     0,     0,     0,     0,  3010,     0,     0,
4762        0,  2063,   886,     0,     0,     0,  2064,     0,     0,     0,
4763      886,   886,  3029,     0,  3031,     0,     0,     0,     0,     0,
4764        0,     0,     0,     0,   886,     0,     0,     0,  2065,  2066,
4765        0,     0,  3054,     0,     0,     0,     0,  3056,     0,     0,
4766        0,     0,     0,  2067,     0,     0,     0,     0,     0,     0,
4767        0,     0,  3062,     0,     0,     0,     0,     0,     0,     0,
4768        0,  3069,     0,     0,  3073,     0,  3075,  3078,  3080,     0,
4769        0,     0,     0,  3088,  3091,     0,     0,  1732,     0,     0,
4770        0,     0,  2068,  3104,     0,     0,     0,     0,  3113,     0,
4771        0,     0,  3116,     0,     0,     0,  2069,     0,     0,  2070,
4772        0,     0,     0,     0,     0,     0,     0,     0,     0,  3133,
4773        0,     0,     0,     0,     0,  3142,  3143,     0,     0,     0,
4774        0,     0,  3148,     0,     0,     0,     0,     0,  2053,     0,
4775        0,  2054,  3162,  3163,  2294,  2055,  2056,  2057,  3167,     0,
4776        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4777     3174,     0,  2058,  3177,     0,     0,     0,     0,  3180,  2333,
4778     2060,     0,     0,     0,  3183,  3184,     0,  2061,     0,     0,
4779     3188,     0,     0,  3192,     0,     0,     0,  3199,  3200,  3201,
4780     3202,     0,  3204,     0,     0,   885,     0,  2071,     0,     0,
4781        0,     0,  2062,     0,   885,  3229,  3230,     0,  3232,     0,
4782        0,     0,     0,     0,     0,     0,     0,     0,   885,  3241,
4783     3242,  3243,     0,     0,  2053,     0,     0,  2054,     0,     0,
4784        0,  2055,  2056,  2057,     0,     0,     0,     0,     0,     0,
4785        0,     0,     0,     0,     0,     0,  2415,     0,  2058,     0,
4786        0,     0,     0,     0,     0,     0,  2060,     0,     0,     0,
4787        0,     0,     0,  2061,     0,     0,     0,     0,     0,     0,
4788        0,     0,  2438,  2439,  2440,  2441,     0,     0,     0,     0,
4789        0,     0,  3296,  2053,   886,     0,  2054,     0,  2062,     0,
4790     2055,  2056,  2057,     0,     0,     0,     0,  2072,     0,     0,
4791     2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,
4792     3333,     0,     0,  2063,  4941,  2060,     0,     0,  2064,     0,
4793        0,     0,  2061,     0,     0,     0,     0,     0,     0,     0,
4794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4795     2065,  2066,     0,     0,     0,     0,     0,  2062,     0,     0,
4796        0,     0,     0,     0,     0,  2067,     0,     0,     0,     0,
4797        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4798        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4799        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4800        0,     0,     0,     0,  2068,     0,     0,     0,     0,  2063,
4801        0,     0,     0,     0,  2064,     0,     0,     0,  2069,     0,
4802        0,  2070,     0,  2493,  2494,     0,     0,     0,     0,     0,
4803        0,     0,     0,     0,     0,     0,  2065,  2066,     0,     0,
4804        0,     0,  1732,  2517,     0,     0,     0,     0,     0,     0,
4805        0,  2067,     0,     0,     0,     0,     0,     0,     0,     0,
4806        0,     0,     0,     0,     0,     0,   886,     0,  2063,     0,
4807        0,     0,     0,  2064,   886,     0,     0,     0,  2562,  2563,
4808     2564,  2565,     0,     0,     0,     0,   886,     0,     0,     0,
4809     2068,     0,     0,     0,     0, -2673, -2673,     0,     0,     0,
4810        0,     0,     0,     0,  2069,     0,     0,  2070,     0,  2071,
4811     2067,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4812        0,     0,     0,     0,  3503,     0,     0,     0,     0,     0,
4813        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4814        0,     0,     0,     0,     0,     0,     0,     0,     0, -2673,
4815        0,     0,     0,     0,     0,     0,     0,     0,   877,   877,
4816        0,   886,   886,  2069,     0,     0,     0,     0,     0,     0,
4817        0,     0,     0,   877,     0,   886,   877,     0,     0,     0,
4818        0,     0,     0,     0,     0,     0,     0,     0,   886,   886,
4819        0,     0,     0,     0,     0,  2071,  2664,     0,     0,     0,
4820        0,     0,  2668,     0,   886,     0,     0,     0,     0,  2072,
4821        0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,
4822     2080,  2081,     0,     0,     0,     0,  4983,     0,     0,     0,
4823        0,     0,     0,     0,     0,     0,     0,     0,   877,   885,
4824        0,   877,   877,     0,     0,   885,     0,     0,     0,     0,
4825        0,     0,     0,     0,  2071,     0,     0,     0,   885,     0,
4826        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4827        0,     0,     0,     0,   885,     0,     0,     0,     0,     0,
4828        0,     0,     0,     0,     0,     0,     0,     0,     0,   885,
4829        0,     0,     0,     0,     0,  2072,     0,   885,  2073,  2074,
4830     2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,     0,     0,
4831        0,   885,  5286,     0,     0,     0,     0,     0,     0,     0,
4832        0,   885,     0,     0,     0,     0,     0,     0,     0,     0,
4833        0,  1732,     0,     0,     0,     0,  2837,     0,     0,     0,
4834        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4835        0,     0,     0,     0,  2072,     0,     0,  2073,  2074,  2075,
4836        0,  2076,  2077,  2078,  2079,  2080,  2081,     0,     0,     0,
4837        0,     0,     0,     0,     0,     0,  3694,     0,     0,     0,
4838     3696,     0,     0,     0,     0,     0,  3698,     0,     0,     0,
4839        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4840        0,   886,     0,     0,  3709,  3711,     0,     0,     0,  3711,
4841      885,     0,     0,     0,  3722,  3723,  3724,     0,     0,     0,
4842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4843        0,   889,     0,     0,   885,     0,     0,     0,     0,     0,
4844        0,     0,     0,   923,     0,     0,     0,   885,     0,     0,
4845     3753,  3754,  3755,  3756,   942,     0,   886,     0,     0,     0,
4846        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4847        0,     0,     0,     0,   886,     0,     0,     0,     0,  1732,
4848      886,     0,     0,     0,   886,     0,     0,  3774,     0,  3778,
4849     3779,  3780,   886,     0,     0,     0,     0,     0,     0,     0,
4850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4851      886,     0,     0,     0,     0,     0,     0,     0,     0,  2053,
4852        0,     0,  2054,     0,     0,     0,  2055,  2056,  2057,  3016,
4853     3017,     0,   877,     0,     0,   877,   877,     0,     0,     0,
4854     3030,     0,  3032,  2058,     0,     0,  3036,     0,     0,     0,
4855        0,  2060,     0,     0,     0,   886,  1731,     0,  2061,     0,
4856        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4857        0,     0,     0,     0,     0,   886,   886,     0,     0,     0,
4858        0,     0,     0,  2062,     0,     0,     0,     0,     0,     0,
4859        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4860        0,     0,     0,  3853,     0,     0,  1732,   886,     0,     0,
4861     1732,     0,  3859,     0,     0,     0,     0,     0,     0,     0,
4862        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4863        0,     0,     0,   886,     0,  1732,     0,     0,     0,   886,
4864        0,     0,     0,  3873,     0,     0,   886,     0,     0,     0,
4865        0,     0,     0,   886,     0,     0,   886,     0,     0,     0,
4866        0,     0,   886,     0,     0,     0,  3916,     0,     0,     0,
4867        0,     0,     0,     0,     0,     0,  3173,     0,     0,  3176,
4868        0,     0,   886,     0,     0,     0,     0,     0,   886,     0,
4869        0,     0,     0,   886,  2063,     0,  1732,     0,     0,  2064,
4870        0,     0,     0,     0,     0,     0,   886,     0,     0,     0,
4871        0,     0,     0,     0,     0,     0,     0,     0,  3953,   886,
4872        0,  2065,  2066,  3959,  1732,     0,     0,     0,     0,     0,
4873      886,     0,   885,     0,     0,     0,  2067,     0,     0,     0,
4874        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4875      885,     0,     0,     0,     0,     0,     0,  3998,     0,     0,
4876        0,     0,  3265,     0,     0,     0,     0,     0,   885,     0,
4877     3272,     0,     0,  3275,     0,  2068,     0,     0,     0,  3277,
4878        0,     0,     0,     0,     0,     0,     0,     0,     0,  2069,
4879     3289,     0,  2070,     0,     0,     0,  1732,     0,   885,     0,
4880     4017,     0,  4018,     0,     0,     0,     0,     0,     0,     0,
4881        0,     0,     0,     0,   885,     0,     0,     0,     0,     0,
4882        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4883      885,  3335,     0,     0,   885,     0,     0,     0,     0,     0,
4884        0,     0,     0,     0,     0,   956,     0,  2053,     0,     0,
4885     2054,  1004,  4057,     0,  2055,  2056,  2057,     0,     0,  3358,
4886        0,     0,     0,     0,     0,     0,     0,  2053,     0,     0,
4887     2054,  2058,     0,     0,  2055,  2056,  2057,   886,     0,  2060,
4888     2071,     0,     0,     0,     0,  2053,  2061,     0,  2054,     0,
4889        0,  2058,  2055,  2056,  2057,     0,     0,     0,     0,  2060,
4890        0,     0,     0,     0,     0,     0,  2061,     0,     0,  2058,
4891        0,  2062,     0,     0,     0,     0,     0,  2060,  3425,     0,
4892     3427,     0,     0,     0,  2061,     0,     0,     0,     0,     0,
4893        0,  2062,     0,   886,     0,     0,     0,     0,     0,     0,
4894        0,     0,     0,     0,     0,     0,     0,     0,     0,  2062,
4895        0,     0,     0,   885,     0,     0,     0,     0,     0,     0,
4896        0,   885,   885,     0,     0,     0,     0,     0,     0,     0,
4897        0,     0,     0,     0,     0,   885,     0,   886,     0,     0,
4898     2072,     0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,
4899     2079,  2080,  2081,     0,     0,   886,     0,  5309,     0,     0,
4900        0,     0,     0,   886,     0,     0,     0,     0,     0,     0,
4901        0,     0,     0,   877,     0,     0,   877,     0,     0,   877,
4902        0,     0,  2063,     0,     0,     0,     0,  2064,  1731,     0,
4903     3502,     0,  1342,     0,     0,     0,     0,     0,     0,     0,
4904        0,     0,  2063,     0,     0,     0,     0,  2064,     0,  2065,
4905     2066,  1365,     0,     0,     0,     0,     0,  4243,     0,  4244,
4906     2063,     0,     0,     0,  2067,  2064,  4246,     0,     0,  2065,
4907     2066,     0,     0,  1389,     0,     0,     0,     0,     0,     0,
4908        0,     0,  4256,     0,  2067,     0,  1732,  2065,  2066,     0,
4909        0,     0,  1732,     0,  4262,     0,     0,     0,  4265,     0,
4910        0,     0,  2067,  2068,     0,     0,     0,     0,     0,     0,
4911        0,     0,     0,     0,     0,     0,  4287,  2069,     0,  1525,
4912     2070,     0,     0,  2068,     0,     0,     0,     0,     0,     0,
4913        0,     0,     0,     0,  4291,     0,     0,  2069,     0,  4295,
4914     2070,  2068,     0,     0,     0,     0,     0,     0,     0,     0,
4915        0,     0,     0,     0,     0,  2069,     0,     0,  2070,     0,
4916        0,     0,     0,     0,  4330,     0,     0,     0,  4334,     0,
4917        0,     0,     0,     0,   886,     0,  4339,  4340,  4341,  4342,
4918        0,     0,     0,     0,     0,  4347,  4348,  4349,  4350,     0,
4919        0,     0,  4352,  4353,     0,     0,     0,     0,  4360,  4361,
4920        0,  4363,  4364,  4365,  4366,  4367,  4368,  4369,  2071,     0,
4921        0,     0,     0,     0,     0,     0,     0,  4378,     0,     0,
4922        0,  4381,  4382,  4383,  4384,   885,     0,     0,  2071,     0,
4923        0,     0,  2053,     0,     0,  2054,     0,     0,     0,  2055,
4924     2056,  2057,     0,     0,     0,  1781,  2071,  3711,     0,     0,
4925        0,     0,     0,   886,   886,     0,  2058,     0,     0,     0,
4926        0,     0,     0,     0,  2060,     0,  4407,     0,     0,     0,
4927        0,  2061,     0,     0,  1819,  1822,  1823,     0,     0,     0,
4928      886,     0,     0,   886,     0,     0,     0,     0,     0,     0,
4929        0,     0,     0,     0,     0,  3700,  2062,  3701,  3702,  3703,
4930        0,     0,     0,     0,     0,     0,     0,     0,  2072,     0,
4931        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
4932     2081,     0,     0,     0,     0,  5417,     0,     0,  2072,     0,
4933        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
4934     2081,     0,     0,     0,     0,  5486,  2072,     0,     0,  2073,
4935     2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,     0,
4936        0,     0,     0,  5543,     0,     0,  3711,  1732,  1732,  1732,
4937        0,     0,     0,  1731,     0,     0,     0,     0,     0,     0,
4938        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4939        0,   886,     0,     0,     0,     0,     0,   885,     0,     0,
4940        0,     0,     0,     0,     0,   885,     0,  2063,     0,     0,
4941        0,   886,  2064,     0,     0,     0,     0,   885,  4532,     0,
4942        0,     0,  1342,     0,     0,     0,     0,     0,     0,     0,
4943      886,     0,     0,     0,  2065,  2066,     0,     0,     0,     0,
4944        0,     0,     0,     0,     0,  1992,     0,     0,     0,  2067,
4945        0,     0,     0,     0,  1342,     0,     0,     0,     0,     0,
4946        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4947        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4948        0,     0,     0,     0,     0,     0,     0,     0,  2068,     0,
4949        0,     0,   885,   885,     0,     0,     0,     0,     0,     0,
4950        0,     0,  2069,     0,     0,  2070,   885,     0,     0,     0,
4951        0,     0,     0,     0,     0,     0,   886,     0,     0,   885,
4952      885,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4953        0,     0,     0,     0,     0,   885,     0,     0,  3866,     0,
4954        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4955        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4956        0,     0,     0,  1732,     0,     0,     0,     0,     0,     0,
4957      886,     0,   886,     0,     0,     0,     0,     0,     0,     0,
4958        0,     0,     0,     0,     0,   886,     0,   886,     0,     0,
4959        0,     0,  2124,  2071,     0,     0,     0,     0,     0,     0,
4960        0,     0,     0,     0,     0,     0,     0,     0,     0,  1732,
4961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4962     4662,     0,     0,     0,  4663,  4664,  4665,  4666,     0,     0,
4963        0,  4668,     0,     0,     0,     0,     0,     0,  2179,     0,
4964        0,     0,     0,     0,     0,     0,     0,     0,     0,  1111,
4965        0,     0,     0,   886,     0,     0,     0,     0,     0,     0,
4966        0,     0,  1731,     0,     0,  4688,  4689,  4690,  4691,  4692,
4967        0,  4694,  4695,     0,     0,  1111,     0,     0,     0,     0,
4968        0,     0,     0,  4704,  4705,     0,     0,     0,     0,     0,
4969        0,     0,     0,  2072,     0,     0,  2073,  2074,  2075,     0,
4970     2076,  2077,  2078,  2079,  2080,  2081,     0,     0,   886,     0,
4971     5557,     0,     0,  4710,  4021,     0,     0,     0,     0,     0,
4972        0,  2306,     0,     0,     0,     0,     0,     0,     0,     0,
4973     2329,     0,   885,     0,     0,     0,   886,     0,     0,     0,
4974        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4975        0,     0,     0,     0,     0,     0,     0,     0,   886,     0,
4976        0,   886,  2366,     0,     0,     0,     0,     0,     0,     0,
4977        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4978        0,     0,     0,     0,     0,  2389,     0,   885,  2392,     0,
4979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4980        0,     0,     0,     0,     0,   885,     0,     0,     0,     0,
4981     1731,   885,     0,     0,     0,   885,     0,  4774,     0,     0,
4982        0,     0,     0,   885,     0,     0,     0,     0,     0,     0,
4983        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4984     2442,   885,     0,  1732,     0,     0,     0,     0,     0,     0,
4985        0,     0,     0,     0,  2461,     0,     0,     0,     0,     0,
4986        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4987        0,     0,     0,     0,     0,     0,     0,  4827,     0,     0,
4988        0,     0,     0,     0,     0,     0,   885,     0,     0,     0,
4989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4990        0,     0,     0,     0,     0,     0,   885,   885,     0,     0,
4991        0,     0,     0,     0,     0,     0,     0,     0,     0,  1646,
4992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4993        0,     0,     0,     0,     0,  1111,     0,  1731,   885,     0,
4994        0,  1731,     0,     0,     0,     0,     0,     0,     0,     0,
4995        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4996     1111,     0,     0,     0,   885,  2485,  1731,     0,     0,     0,
4997      885,     0,     0,     0,     0,  1111,     0,   885,  4249,  4250,
4998     4251,  4252,     0,     0,   885,     0,   886,   885,     0,     0,
4999        0,     0,     0,   885,     0,     0,     0,     0,     0,     0,
5000      613,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5001        0,     0,     0,   885,     0,     0,  2536,     0,     0,   885,
5002        0,     0,     0,     0,   885,     0,     0,  1731,     0,     0,
5003        0,     0,     0,     0,     0,     0,  1732,   885,     0,     0,
5004        0,  1732,     0,  1732,     0,  2579,     0,     0,     0,     0,
5005      885,     0,  2592,     0,  4930,  1731,     0,     0,     0,     0,
5006     1111,   885,     0,     0,     0,     0,  1732,     0,  1318,  1318,
5007        0,     0,     0,  4940,     0,     0,     0,     0,  4945,  4946,
5008        0,     0,     0,     0,     0,     0,  1732,     0,  4957,     0,
5009        0,     0,     0,     0,     0,  4959,     0,     0,     0,     0,
5010        0,     0,   886,     0,     0,   886,     0,     0,     0,     0,
5011        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5012        0,     0,     0,     0,     0,     0,     0,  1731,     0,     0,
5013        0,  5009,     0,     0,     0,     0,     0,     0,     0,     0,
5014        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5015        0,  5026,     0,  5028,     0,     0,     0,  4403,  2671,     0,
5016        0,     0,     0,     0,     0,     0,     0,     0,  5042,  2179,
5017        0,     0,  4406,     0,     0,     0,     0,  1111,     0,     0,
5018        0,     0,     0,     0,     0,     0,     0,     0,  3711,     0,
5019        0,     0,     0,     0,     0,     0,     0,   886,   886,     0,
5020     1342,  1342,     0,     0,     0,     0,  5069,   886,   885,     0,
5021        0,     0,     0,  2053,     0,     0,  2054,  2724,  1643,  1647,
5022     2055,  2056,  2057,     0,     0,     0,   886,     0,     0,     0,
5023        0,     0,     0,     0,     0,     0,     0,  2058,     0,     0,
5024        0,     0,     0,     0,     0,  2060,     0,     0,     0,     0,
5025        0,     0,  2061,     0,     0,     0,     0,     0,     0,     0,
5026        0,     0,     0,     0,   885,     0,     0,     0,     0,     0,
5027        0,     0,     0,     0,     0,     0,     0,  2062,     0,     0,
5028        0,     0,     0,     0,     0,     0,  5119,     0,     0,     0,
5029        0,     0,     0,     0,     0,     0,     0,     0,  5127,     0,
5030        0,     0,     0,     0,     0,     0,     0,     0,   885,     0,
5031        0,     0,     0,     0,     0,     0,     0,  2892,     0,   886,
5032        0,     0,     0,     0,     0,     0,   885,  2898,     0,     0,
5033        0,     0,     0,     0,   885,     0,     0,     0,     0,     0,
5034        0,     0,     0,     0,     0,  2053,     0,     0,  2054,     0,
5035        0,     0,  2055,  2056,  2057,     0,  1389,     0,     0,     0,
5036        0,     0,     0,  5186,     0,     0,     0,  1389,  1389,  2058,
5037        0,     0,     0,  2919,     0,     0,     0,  2060,     0,     0,
5038        0,     0,     0,     0,  2061,     0,     0,  2201,  2063,     0,
5039        0,     0,     0,  2064,     0,     0,     0,     0,     0,     0,
5040        0,  1342,     0,     0,     0,     0,     0,     0,     0,  2062,
5041        0,     0,     0,     0,     0,  2065,  2066,  1731,     0,     0,
5042        0,     0,     0,  1731,     0,     0,     0,     0,  3711,     0,
5043     2067,     0,  5231,     0,     0,     0,     0,     0,     0,     0,
5044        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5045        0,     0,     0,     0,     0,  2201,     0,     0,  2920,     0,
5046        0,     0,     0,     0,     0,     0,     0,     0,     0,  2068,
5047        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5048        0,     0,     0,  2069,     0,     0,  2070,  5274,     0,     0,
5049        0,     0,     0,     0,     0,     0,  1111,     0,     0,     0,
5050        0,     0,  5287,     0,     0,   885,     0,     0,     0,     0,
5051     2009,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5052     2063,     0,     0,     0,     0,  2064,     0,     0,     0,  1111,
5053        0,     0,     0,     0,     0,   886,     0,     0,     0,     0,
5054     1732,  2024,     0,     0,  3072,     0,  5316,  2065,  2066,     0,
5055        0,     0,     0,     0,     0,     0,     0,     0,     0,  3094,
5056        0,  5327,  2067,     0,     0,     0,     0,     0,     0,  2042,
5057     2043,  2044,     0,  2046,  2071,   886,     0,     0,     0,     0,
5058     3121,     0,     0,     0,   885,   885,     0,   886,     0,     0,
5059        0,     0,     0,  2088,     0,     0,     0,     0,     0,     0,
5060        0,  2068,     0,     0,     0,  1646,  1646,  1646,     0,     0,
5061        0,   885,     0,     0,   885,  2069,     0,   886,  2070,  1494,
5062        0,     0,     0,     0,     0,  1495,  1101,     0,     0,     0,
5063     4718,     0,  1561,     0,     0,     0,     0,     0,     0,     0,
5064        0,     0,     0,     0,  5391,  4722,     0,     0,     0,     0,
5065        0,  1562,  1101,     0,     0,     0,  3197,  3198,     0,     0,
5066        0,  2146,     0,     0,     0,  2158,  2163,  1497,     0,     0,
5067        0,     0,     0,     0,  2072,     0,     0,  2073,  2074,  2075,
5068        0,  2076,  2077,  2078,  2079,  2080,  2081,     0,  5413,  2481,
5069        0,     0,     0,     0,     0,     0,     0,     0,  1731,  1731,
5070     1731,  1563,     0,     0,     0,     0,  2071,     0,  1111,     0,
5071        0,     0,     0,     0,  1110,     0,   886,     0,     0,     0,
5072        0,  1498,   885,     0,     0,  1111,     0,     0,  1499,     0,
5073        0,  1500,     0,     0,     0,     0,     0,     0,  4788,     0,
5074     1110,     0,   885,  1111,     0,     0,     0,     0,     0,     0,
5075        0,     0,     0,     0,     0,     0,     0,  1501,     0,     0,
5076        0,   885,     0,  3322,     0,     0,  2921,     0,     0,     0,
5077        0,     0,     0,     0,     0,     0,     0,     0,     0,  5479,
5078        0,     0,     0,     0,     0,     0,     0,     0,  1564,     0,
5079        0,  1502,     0,     0,     0,     0,     0,     0,     0,  1111,
5080        0,     0,     0,     0,     0,     0,  2072,   886,     0,  2073,
5081     2074,  2075,  1111,  2076,  2077,  2078,  2079,  2080,  2081,     0,
5082        0,     0,     0,     0,     0,  1111,     0,     0,     0,     0,
5083        0,     0,     0,     0,     0,     0,  1565,  1111,     0,  1566,
5084        0,     0,     0,     0,     0,     0,     0,   885,     0,     0,
5085        0,     0,     0,     0,  1567,     0,     0,     0,  1504,     0,
5086        0,     0,     0,     0,     0,     0,     0,     0,  1505,     0,
5087        0,     0,     0,     0,     0,     0,     0,  1506,     0,     0,
5088        0,  1111,  1111,     0,     0,     0,     0,     0,  1568,  1507,
5089        0,     0,     0,     0,  1731,     0,     0,     0,     0,     0,
5090        0,   885,     0,   885,  1643,  1643,  1643,     0,     0,   886,
5091        0,   886,  1101,     0,     0,     0,   885,     0,   885,  4911,
5092        0,  4912,     0,     0,     0,     0,     0,     0,  3168,     0,
5093        0,  1509,  1510,  1570,     0,     0,     0,  1101,     0,     0,
5094     1731,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5095        0,     0,  1101,     0,     0,  1571,     0,     0,   886,     0,
5096        0,  3169,     0,     0,     0,     0,     0,     0,   877,     0,
5097        0,     0,     0,     0,     0,  1573,     0,     0,     0,     0,
5098        0,     0,     0,     0,   885,     0,     0,     0,     0,     0,
5099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5100     1110,     0,     0,     0,     0,     0,     0,  1732,     0,     0,
5101        0,     0,   877,     0,     0,     0,     0,     0,     0,     0,
5102        0,     0,  1111,     0,     0,  1110,     0,     0,     0,  1512,
5103        0,     0,     0,     0,     0,     0,     0,  1101,     0,   885,
5104     1110,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5105        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5106     1646,     0,     0,     0,     0,     0,     0,   885,     0,     0,
5107        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5108        0,  5047,     0,     0,     0,     0,     0,     0,     0,   885,
5109        0,     0,   885,     0,     0,     0,     0,     0,     0,     0,
5110        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5111        0,     0,     0,     0,     0,  3619,     0,     0,     0,     0,
5112        0,     0,     0,     0,     0,  1110,     0,     0,     0,     0,
5113        0,     0,     0,     0,     0,     0,  2053,     0,  1389,  2054,
5114        0,     0,     0,  2055,  2056,  2057,     0,     0,     0,     0,
5115        0,     0,     0,     0,  1101,     0,     0,     0,     0,  2957,
5116     2058,     0,     0,  2201,  2963,     0,     0,     0,  2060,     0,
5117        0,     0,     0,     0,  1731,  2061,     0,     0,     0,     0,
5118        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5119        0,     0,     0,     0,     0,  1732,     0,     0,     0,     0,
5120     2062,     0,     0,     0,     0,     0,     0,     0,  2053,     0,
5121        0,  2054,     0,     0,     0,  2055,  2056,  2057,     0,     0,
5122        0,   886,     0,     0,     0,  1111,     0,  5142,     0,  5144,
5123        0,     0,  2058,     0,     0,   886,     0,     0,     0,  1111,
5124     2060,     0,  1110,     0,     0,     0,     0,  2061,     0,     0,
5125        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5126        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5127        0,     0,  2062,     0,     0,     0,     0,     0,  2767,     0,
5128     1111,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5129     2787,     0,  2788,     0,  2790,     0,     0,  2802,  2805,  2810,
5130        0,     0,     0,  1103,  2816,     0,     0,  2821,     0,     0,
5131        0,  2063,     0,     0,     0,     0,  2064,   885,     0,     0,
5132        0,     0,  2828,  2829,  2830,  2831,     0,     0,     0,  1103,
5133     2838,     0,     0,     0,  2856,     0,     0,  2858,  2065,  2066,
5134     2865,  2866,  2867,  2868,  2869,  2870,  2871,  2872,  2873,     0,
5135     2874,     0,     0,  2067,     0,     0,     0,  1318,  5448,  1643,
5136        0,     0,     0,     0,  1101,  3796,     0,  1731,     0,     0,
5137        0,     0,  1731,     0,  1731,     0,     0,     0,     0,     0,
5138        0,     0,     0,  2063,     0,     0,  2109,     0,  2064,     0,
5139        0,     0,  2068,     0,     0,     0,     0,  1731,     0,     0,
5140        0,     0,  2911,     0,     0,     0,  2069,     0,     0,  2070,
5141     2065,  2066,     0,     0,     0,     0,     0,  1731,     0,     0,
5142     1732,     0,   886,     0,     0,  2067,  2043,  2044,  3528,     0,
5143        0,     0,  1101,   885,     0,     0,   885,     0,     0,     0,
5144        0,     0,     0,     0,     0,     0,  1646,     0,     0,     0,
5145        0,     0,  1110,     0,     0,     0,     0,     0,     0,     0,
5146        0,     0,     0,  5323,  2068,     0,     0,     0,     0,     0,
5147        0,     0,     0,  1101,     0,     0,     0,     0,  2069,     0,
5148        0,  2070,     0,  1111,     0,     0,     0,     0,     0,     0,
5149        0,     0,     0,     0,     0,     0,     0,  2071,     0,     0,
5150        0,     0,     0,     0,  5449,     0,  1101,  2053,  3002,     0,
5151     2054,     0,     0,     0,  2055,  2056,  2057,     0,     0,     0,
5152     1110,     0,     0,  1732,     0,     0,     0,     0,   885,   885,
5153        0,  2058,  3919,  3920,  3921,     0,     0,   886,   885,  2060,
5154        0,     0,     0,     0,     0,     0,  2061,     0,     0,  3930,
5155      877,     0,     0,     0,     0,     0,     0,   885,     0,     0,
5156        0,  1110,     0,   886,     0,  2201,     0,  5397,  2201,  2071,
5157        0,  2062,  3946,     0,     0,     0,     0,     0,     0,     0,
5158        0,     0,  3956,  3958,     0,     0,     0,  3963,     0,  1103,
5159        0,     0,     0,     0,  1110,     0,     0,  2072,     0,     0,
5160     2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,
5161        0,     0,     0,     0,  1103,     0,     0,     0,     0,     0,
5162        0,     0,     0,     0,     0,     0,   877,   877,     0,  1103,
5163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5165      885,     0,     0,     0,     0,     0,     0,     0,  3555,     0,
5166        0,     0,     0,  3556,     0,     0,     0,  5472,     0,  2072,
5167        0,   886,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,
5168     2080,  2081,  2063,     0,     0,  1101,     0,  2064,     0,  1111,
5169        0,     0,     0,     0,     0,     0,     0,     0,     0,  5488,
5170     5488,     0,  1101,     0,     0,     0,  1111,     0,     0,  2065,
5171     2066,     0,  4056,     0,  1103,  1342,     0,     0,     0,     0,
5172     1101,  1111,     0,     0,  2067,     0,     0,     0,     0,     0,
5173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5174        0,     0,     0,  3253,  3254,  1643,     0,     0,     0,  3258,
5175        0,     0,     0,     0,  1732,     0,     0,     0,     0,     0,
5176        0,     0,     0,  2068,     0,     0,     0,     0,     0,     0,
5177        0,     0,     0,  1110,     0,     0,  1101,  2069,     0,     0,
5178     2070,  3287,     0,     0,     0,     0,     0,     0,     0,  1101,
5179     1110,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5180        0,     0,  1101,  5488,     0,     0,     0,     0,  1110,     0,
5181        0,     0,     0,     0,  1101,     0,     0,     0,     0,  1732,
5182        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5183        0,  1103,     0,     0,     0,     0,     0,  1732,     0,   877,
5184      877,     0,     0,     0,     0,     0,     0,     0,  4162,  4163,
5185     4164,     0,     0,     0,     0,     0,     0,     0,  1101,  1101,
5186        0,     0,     0,     0,  1110,     0,   885,     0,  2071,     0,
5187        0,  1731,     0,     0,     0,     0,     0,  1110,     0,     0,
5188        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5189     1110,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5190        0,     0,  1110,     0,     0,     0,   885,     0,     0,     0,
5191        0,     0,     0,     0,     0,     0,     0,     0,   885,     0,
5192        0,     0,     0,     0,  2201,     0,     0,  2963,     0,  2963,
5193        0,     0,     0,     0,  2201,     0,     0,     0,     0,     0,
5194        0,     0,     0,     0,     0,     0,  1110,  1110,   885,     0,
5195        0,     0,     0,     0,     0,     0,     0,  2053,     0,     0,
5196     2054,     0,     0,     0,  2055,  2056,  2057,     0,  2072,     0,
5197        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
5198     2081,  2058,     0,  1111,     0,     0,     0,     0,     0,  2060,
5199        0,     0,     0,     0,     0,     0,  2061,  1104,     0,  1101,
5200        0,     0,  1111,     0,     0,     0,     0,     0,     0,     0,
5201        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5202        0,  2062,     0,  1104,     0,     0,     0,  2201,     0,     0,
5203        0,  3508,     0,     0,     0,     0,  3514,     0,     0,     0,
5204        0,  1103,     0,     0,     0,     0,     0,   885,     0,     0,
5205        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5206        0,     0,  2046,     0,     0,     0,     0,     0,     0,     0,
5207        0,     0,     0,  2810,     0,  2810,  2810,     0,     0,     0,
5208        0,     0,     0,     0,     0,     0,  3574,  1110,     0,  3577,
5209        0,  3579,     0,     0,     0,     0,     0,  1111,     0,  1111,
5210        0,     0,     0,     0,     0,     0,     0,  2053,     0,  1103,
5211     2054,     0,     0,     0,  2055,  2056,  2057,     0,     0,     0,
5212        0,     0,     0,     0,  4404,     0,  3600,     0,  3603,     0,
5213     3605,  2058,  2063,     0,  3512,  4417,  1101,  2064,   885,  2060,
5214     1101,  1101,     0,     0,     0,     0,  2061,     0,     0,     0,
5215     1103,     0,     0,     0,     0,     0,     0,     0,     0,  2065,
5216     2066,     0,     0,     0,     0,     0,  4448,     0,     0,     0,
5217        0,  2062,     0,     0,  2067,     0,     0,     0,     0,  2053,
5218        0,     0,  2054,  1103,     0,  2146,  2055,  2056,  2057,     0,
5219     1111,     0,     0,     0,     0,     0,     0,     0,     0,  2592,
5220     2163,     0,  1101,  2058,     0,     0,  3560,     0,     0,     0,
5221        0,  2060,     0,  2068,     0,     0,  1101,  1646,  2061,     0,
5222        0,     0,     0,  1646,  1110,     0,     0,  2069,  1110,  1110,
5223     2070,  1111,     0,     0,     0,     0,     0,     0,     0,     0,
5224      885,     0,   885,  2062,     0,     0,     0,     0,     0,     0,
5225     2671,     0,     0,     0,  3680,  4121,     0,  1101,     0,     0,
5226     2963,  2053,     0,     0,  2054,     0,     0,     0,  2055,  2056,
5227     2057,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5228        0,     0,  2063,  1104,     0,  2058,     0,  2064,     0,   885,
5229     1110,     0,     0,  2060,     0,     0,     0,     0,     0,     0,
5230     2061,     0,     0,     0,  1110,     0,     0,     0,  1104,  2065,
5231     2066,     0,     0,     0,     0,     0,     0,     0,  2071,     0,
5232        0,     0,     0,  1104,  2067,  2062,     0,     0,     0,  1111,
5233        0,     0,     0,     0,     0,  4122,     0,     0,  1731,     0,
5234        0,     0,     0,     0,     0,  1110,     0,     0,     0,     0,
5235     2963,     0,     0,     0,  2063,     0,     0,     0,     0,  2064,
5236        0,     0,  1103,  2068,  1111,     0,     0,     0,     0,     0,
5237        0,     0,     0,     0,     0,     0,     0,  2069,     0,  1103,
5238     2070,  2065,  2066,     0,     0,     0,  4595,  4596,  4597,  4598,
5239        0,     0,     0,     0,     0,     0,  2067,  1103,     0,     0,
5240        0,     0,     0,     0,     0,     0,     0,     0,  1104,     0,
5241        0,     0,     0,     0,     0,     0,     0,  3565,  2072,     0,
5242        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
5243     2081,     0,     0,     0,     0,  2068,  2063,     0,     0,     0,
5244        0,  2064,     0,     0,     0,     0,     0,     0,     0,  2069,
5245        0,     0,  2070,  1103,     0,     0,     0,     0,     0,     0,
5246     1101,     0,     0,  2065,  2066,     0,  1103,     0,  2071,     0,
5247        0,     0,     0,     0,     0,     0,     0,     0,  2067,  1103,
5248     1111,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5249        0,  1103,     0,     0,     0,     0,     0,     0,     0,     0,
5250        0,     0,     0,  1111,     0,     0,     0,     0,     0,     0,
5251        0,     0,     0,     0,     0,     0,  1643,  2068,     0,     0,
5252        0,     0,  1643,     0,     0,  1104,  1731,     0,  1111,     0,
5253        0,  2069,     0,     0,  2070,  1103,  1103,     0,     0,     0,
5254     2071,     0,  1101,     0,     0,  1101,     0,     0,  1110,     0,
5255        0,     0,   885,     0,     0,     0,     0,     0,     0,     0,
5256        0,     0,     0,     0,  1111,     0,   885,     0,  2072,     0,
5257        0,  2073,  2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,
5258     2081,     0,     0,     0,     0,     0,     0,     0,     0,  2053,
5259        0,     0,  2054,     0,     0,     0,  2055,  2056,  2057,     0,
5260        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5261        0,     0,     0,  2058,     0,     0,  3571,     0,     0,     0,
5262        0,  2060,  2071,     0,     0,     0,     0,     0,  2061,     0,
5263     1110,     0,     0,  1110,     0,     0,     0,     0,     0,  2201,
5264     2072,     0,     0,  2073,  2074,  2075,     0,  2076,  2077,  2078,
5265     2079,  2080,  2081,  2062,  2053,     0,     0,  2054,     0,     0,
5266        0,  2055,  2056,  2057,     0,     0,  1101,     0,     0,     0,
5267        0,  1106,     0,     0,     0,     0,  1103,     0,  2058,     0,
5268        0,     0,     0,  1101,     0,     0,  2060,     0,     0,     0,
5269        0,     0,     0,  2061,     0,     0,     0,  1106,  1101,     0,
5270        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5271        0,     0,     0,     0,     0,     0,     0,     0,  2062,     0,
5272        0,     0,  2072,     0,     0,  2073,  2074,  2075,  4817,  2076,
5273     2077,  2078,  2079,  2080,  2081,  1104,     0,     0,  2963,     0,
5274        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5275        0,  1731,     0,   885,  1110,     0,     0,     0,     0,     0,
5276        0,     0,     0,  2963,  2063,     0,     0,     0,     0,  2064,
5277        0,  1110,     0,     0,     0,     0,  4073,     0,     0,     0,
5278        0,     0,     0,     0,     0,  4077,  1110,     0,     0,     0,
5279        0,  2065,  2066,  4079,     0,  4080,     0,     0,     0,     0,
5280        0,     0,     0,  1104,     0,     0,  2067,     0,     0,     0,
5281        0,     0,     0,  1103,     0,     0,     0,  1103,  1103,     0,
5282        0,     0,  4104,  4105,     0,     0,     0,     0,     0,  2063,
5283        0,     0,     0,     0,  2064,     0,     0,     0,     0,     0,
5284     2816,     0,     0,     0,  1104,  2068,     0,     0,  4131,     0,
5285        0,  4134,     0,  4136,  1731,     0,  2065,  2066,     0,  2069,
5286        0,     0,  2070,     0,     0,  4141,     0,     0,   885,     0,
5287        0,  2067,     0,  4148,  4149,     0,     0,  1104,     0,  1103,
5288        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5289        0,     0,     0,  1103,   885,     0,     0,  1111,     0,     0,
5290        0,  1101,     0,     0,  1101,  4195,  1101,     0,     0,     0,
5291     2068,  1101,     0,     0,     0,     0,     0,  1107,     0,     0,
5292        0,     0,     0,     0,  2069,     0,     0,  2070,     0,     0,
5293        0,  4210,     0,     0,  1103,     0,     0,     0,     0,     0,
5294        0,     0,     0,  1107,     0,  2963,     0,     0,     0,  2201,
5295     2071,     0,     0,     0,     0,     0,     0,  1106,     0,     0,
5296     1101,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5297        0,  4981,     0,     0,     0,     0,     0,     0,     0,  1101,
5298        0,     0,  1106,     0,     0,     0,  4994,     0,     0,  1110,
5299        0,  1342,  1110,     0,  1110,     0,     0,  1106,     0,  1110,
5300        0,     0,   885,     0,  1101,     0,     0,     0,     0,     0,
5301        0,     0,     0,     0,     0,  2071,     0,  5031,     0,     0,
5302        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5303        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5304        0,     0,     0,     0,     0,     0,     0,  4072,  1110,     0,
5305     2072,     0,     0,  2073,  2074,  2075,  1104,  2076,  2077,  2078,
5306     2079,  2080,  2081,     0,     0,     0,     0,  1110,     0,     0,
5307        0,     0,     0,  1104,  1101,     0,  1101,     0,     0,     0,
5308        0,     0,  1106,     0,     0,  1731,     0,     0,     0,     0,
5309        0,  1104,  1110,     0,     0,     0,  1111,     0,     0,     0,
5310        0,     0,     0,     0,     0,     0,  1111,     0,     0,     0,
5311        0,     0,     0,     0,     0,  2072,     0,     0,  2073,  2074,
5312     2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,     0,     0,
5313        0,     0,     0,     0,     0,     0,     0,  1103,     0,     0,
5314        0,     0,  5115,     0,     0,     0,     0,  1104,     0,     0,
5315     1731,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5316     1104,     0,  1110,     0,  1110,     0,     0,  1101,  1731,     0,
5317        0,     0,     0,  1104,     0,     0,     0,     0,     0,     0,
5318        0,     0,     0,     0,     0,  1104,     0,     0,     0,     0,
5319        0,     0,     0,     0,     0,     0,     0,     0,     0,  1106,
5320        0,     0,     0,  1107,     0,     0,     0,     0,  1101,     0,
5321        0,     0,     0,  1111,     0,     0,     0,     0,     0,  1103,
5322        0,     0,  1103,     0,     0,     0,     0,     0,  1107,  1104,
5323     1104,     0,     0,     0,     0,     0,     0,  1101,     0,     0,
5324        0,     0,  5193,  1107,     0,     0,     0,     0,     0,  4493,
5325     4494,     0,     0,     0,  1111,  1110,     0,     0,     0,     0,
5326        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5327        0,     0,     0,     0,     0,     0,  1111,     0,     0,     0,
5328        0,     0,     0,     0,     0,     0,     0,     0,  1109,     0,
5329        0,     0,     0,     0,     0,     0,  1110,     0,     0,     0,
5330        0,     0,     0,  4522,     0,     0,  1101,     0,     0,     0,
5331        0,     0,     0,     0,  1109,     0,     0,     0,     0,     0,
5332        0,     0,     0,     0,     0,  1110,     0,  1101,  1107,     0,
5333        0,     0,     0,     0,     0,     0,     0,     0,     0,  4547,
5334        0,  1101,     0,  1103,  1111,     0,     0,     0,     0,     0,
5335        0,  4553,     0,     0,     0,     0,     0,     0,     0,     0,
5336     1103,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5337     1104,     0,     0,     0,     0,  1103,     0,     0,     0,     0,
5338        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5339        0,     0,  4571,  4573,  1110,     0,     0,     0,     0,  4577,
5340     4578,     0,     0,     0,  4579,     0,     0,     0,     0,  1106,
5341     4582,     0,     0,  4585,  4586,  1110,     0,     0,  4590,     0,
5342        0,     0,     0,     0,  4594,     0,     0,     0,     0,  1110,
5343        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5344        0,     0,     0,     0,     0,  1107,     0,     0,     0,     0,
5345        0,     0,     0,     0,     0,     0,     0,  1101,     0,     0,
5346        0,     0,     0,     0,  4814,     0,  1111,     0,     0,     0,
5347        0,     0,     0,     0,     0,     0,     0,  1106,  1318,     0,
5348     1101,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5349        0,     0,     0,     0,  4641,     0,     0,     0,     0,     0,
5350        0,     0,     0,     0,     0,  1101,     0,  1104,     0,     0,
5351        0,  1104,  1104,     0,     0,     0,  2053,     0,  1106,  2054,
5352        0,     0,     0,  2055,  2056,  2057,  1111,     0,     0,     0,
5353        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5354     2058,  1101,     0,  4128,     0,  1110,     0,     0,  2060,     0,
5355        0,  1106,     0,     0,     0,  2061,     0,     0,     0,     0,
5356        0,     0,     0,     0,     0,     0,     0,     0,  1110,     0,
5357        0,     0,     0,  1104,  1109,     0,     0,     0,  1103,     0,
5358     2062,  1103,     0,  1103,     0,     0,     0,  1104,  1103,     0,
5359        0,     0,     0,  1110,     0,     0,     0,     0,  4707,  1109,
5360        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5361        0,     0,     0,     0,  1109,     0,  1101,     0,     0,     0,
5362        0,     0,     0,     0,     0,     0,     0,     0,  1104,  1110,
5363        0,     0,     0,     0,     0,     0,     0,  1103,     0,     0,
5364        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5365        0,     0,     0,  2963,     0,  1107,  1103,     0,     0,     0,
5366        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5367        0,     0,  4745,     0,     0,     0,     0,     0,     0,     0,
5368        0,  1103,     0,     0,     0,     0,     0,     0,     0,     0,
5369        0,  2063,     0,     0,     0,     0,  2064,     0,     0,  1109,
5370        0,     0,     0,     0,  1110,     0,     0,     0,     0,     0,
5371        0,     0,     0,     0,     0,  1101,     0,     0,  2065,  2066,
5372        0,     0,     0,  1107,     0,     0,     0,     0,     0,     0,
5373     1106,     0,     0,  2067,     0,  2053,     0,     0,  2054,     0,
5374     1101,     0,  2055,  2056,  2057,     0,     0,  1106,     0,     0,
5375        0,  1103,     0,  1103,     0,     0,     0,     0,     0,  2058,
5376        0,     0,     0,     0,  1107,  1106,     0,  2060,     0,     0,
5377        0,     0,  2068,     0,  2061,     0,     0,     0,     0,  2963,
5378        0,     0,     0,     0,     0,     0,  2069,     0,     0,  2070,
5379        0,     0,     0,     0,     0,     0,     0,  1107,     0,  2062,
5380        0,     0,     0,  1110,     0,     0,     0,     0,     0,     0,
5381        0,     0,     0,     0,  1111,     0,  1109,     0,     0,     0,
5382        0,  1106,     0,     0,     0,     0,     0,     0,  1110,     0,
5383        0,  1104,     0,     0,  1106,     0,     0,     0,     0,     0,
5384        0,     0,     0,     0,  1103,     0,     0,  1106,     0,     0,
5385     4859,  4860,     0,  1111,  4861,     0,     0,     0,     0,  1106,
5386        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5387        0,     0,     0,     0,  1101,     0,     0,  2071,     0,     0,
5388        0,     0,     0,     0,     0,  1103,     0,     0,     0,     0,
5389        0,  4896,  4897,     0,     0,     0,     0,     0,     0,     0,
5390     1111,     0,     0,  1106,  1106,  1111,  1111,     0,     0,     0,
5391     2063,     0,     0,  1104,  1103,  2064,  1104,     0,     0,     0,
5392        0,     0,  1101,     0,     0,     0,  1101,     0,     0,     0,
5393        0,     0,     0,     0,     0,     0,     0,  2065,  2066,     0,
5394        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5395        0,     0,  2067,     0,     0,     0,     0,     0,     0,     0,
5396        0,     0,  1110,     0,     0,     0,   959,     0,     0,     0,
5397        0,   960,     0,     0,     0,     0,  1107,  2072,     0,     0,
5398     2073,  2074,  2075,  1103,  2076,  2077,  2078,  2079,  2080,  2081,
5399        0,  2068,     0,  1107,     0,     0,     0,     0,     0,     0,
5400        0,     0,     0,     0,  1103,  2069,   961,     0,  2070,     0,
5401     1110,  1107,     0,     0,  1110,     0,     0,     0,  1103,   962,
5402      963,  4814,  1111,     0,     0,     0,  1109,     0,     0,     0,
5403      964,     0,     0,     0,   965,     0,     0,  1104,     0,     0,
5404        0,     0,     0,     0,  1106,     0,     0,     0,     0,     0,
5405        0,     0,   966,     0,  1104,     0,     0,     0,     0,     0,
5406        0,     0,     0,     0,     0,     0,     0,  1107,     0,  1104,
5407        0,     0,     0,  1101,     0,   967,     0,     0,     0,     0,
5408     1107,     0,     0,  1101,     0,     0,   968,     0,     0,     0,
5409        0,     0,     0,  1107,  1109,   969,  2071,     0,     0,     0,
5410        0,     0,  5068,     0,     0,  1107,     0,   970,     0,     0,
5411        0,     0,   971,     0,     0,  2816,     0,     0,     0,     0,
5412        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5413        0,     0,     0,     0,  1103,  1109,     0,     0,   972,     0,
5414        0,     0,  5091,     0,     0,     0,     0,     0,     0,  1107,
5415     1107,     0,     0,     0,     0,     0,  2046,  1103,     0,     0,
5416        0,  1110,     0,   973,     0,     0,     0,     0,  1109,     0,
5417        0,  1110,     0,     0,     0,     0,     0,     0,     0,     0,
5418        0,  1106,  1103,     0,   974,  1106,  1106,     0,     0,     0,
5419     1101,     0,     0,     0,     0,     0,  2072,     0,     0,  2073,
5420     2074,  2075,     0,  2076,  2077,  2078,  2079,  2080,  2081,  5134,
5421        0,     0,     0,     0,     0,     0,     0,     0,  1103,     0,
5422        0,     0,  1111,     0,   975,     0,     0,     0,     0,     0,
5423        0,  1101,     0,     0,     0,     0,     0,     0,     0,     0,
5424        0,     0,     0,     0,     0,     0,     0,  1106,   976,     0,
5425        0,     0,  5171,  1101,     0,     0,     0,     0,   208,   977,
5426        0,  1106,   978,     0,     0,     0,     0,     0,     0,     0,
5427        0,     0,  1104,     0,     0,  1104,     0,  1104,  1110,     0,
5428        0,     0,  1104,     0,     0,     0,     0,     0,   979,     0,
5429     1107,   980,     0,  1103,     0,   981,     0,   982,     0,     0,
5430        0,     0,  1106,     0,   983,     0,     0,   984,     0,     0,
5431        0,     0,     0,     0,     0,     0,     0,     0,     0,  1110,
5432        0,  1101,     0,     0,     0,     0,   985,     0,     0,     0,
5433        0,  1104,     0,   986,     0,     0,     0,     0,     0,   987,
5434        0,  1110,   988,     0,     0,     0,   989,  1109,     0,     0,
5435     1104,     0,     0,     0,   990,     0,   991,     0,     0,     0,
5436        0,   992,     0,     0,  1109,     0,     0,     0,     0,     0,
5437     4896,     0,     0,     0,     0,  1104,     0,     0,     0,     0,
5438        0,     0,  1109,     0,     0,     0,     0,   993,     0,     0,
5439     5276,     0,  1103,     0,     0,     0,     0,     0,     0,     0,
5440        0,     0,     0,     0,     0,     0,     0,     0,     0,  1110,
5441        0,     0,     0,     0,     0,     0,     0,  1103,     0,     0,
5442        0,     0,     0,     0,     0,     0,     0,  1107,     0,     0,
5443        0,  1107,  1107,     0,     0,     0,     0,     0,  1109,     0,
5444        0,     0,     0,  1101,     0,  1104,     0,  1104,     0,     0,
5445        0,  1109,     0,     0,     0,     0,     0,     0,     0,     0,
5446        0,     0,     0,     0,  1109,     0,     0,  5330,     0,     0,
5447        0,     0,     0,     0,     0,     0,  1109,     0,     0,     0,
5448        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5449        0,     0,     0,  1107,     0,     0,     0,     0,     0,     0,
5450        0,     0,     0,  1101,     0,  1106,     0,  1107,  5362,  5362,
5451     5362,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5452     1109,  1109,     0,     0,     0,     0,     0,  4896,     0,     0,
5453        0,  1110,     0,     0,     0,     0,     0,     0,  1104,     0,
5454        0,     0,     0,     0,     0,     0,     0,     0,  1107,     0,
5455        0,  1103,     0,     0,     0,     0,     0,     0,     0,     0,
5456        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5457        0,     0,     0,     0,     0,     0,     0,     0,     0,  1104,
5458        0,     0,     0,     0,  2083,     0,     0,  1106,     0,     0,
5459     1106,  1110,     0,     0,     0,     0,     0,     0,     0,  1103,
5460        0,     0,     0,  1103,  5422,     0,     0,     0,  1104,     0,
5461        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5462        0,     0,     0,     0,     0,     0,  5362,     0,     0,     0,
5463     1101,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5464        0,     0,  2083,     0,     0,     0,     0,     0,     0,     0,
5465        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5466        0,  1109,     0,   624,     0,     0,     0,     0,     0,     0,
5467        0,     0,     0,     0,     0,     0,     0,  1104,     0,     0,
5468      625,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5469        0,     0,     0,     0,     0,     0,     0,     0,  1104,     0,
5470        0,     0,     0,   626,     0,     0,     0,     0,     0,     0,
5471        0,  1106,  1104,     0,     0,     0,   627,     0,  1110,     0,
5472        0,     0,     0,     0,     0,     0,     0,   628,  1106,     0,
5473        0,  -860,     0,     0,     0,  5515,     0,     0,     0,     0,
5474        0,     0,     0,  1106,     0,     0,     0,     0,     0,   629,
5475     1103,  1107,     0,     0,     0,   630,  1101,     0,     0,     0,
5476     1103,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5477        0,  5362,   631,     0,     0,     0,     0,     0,     0,     0,
5478        0,  5542,     0,   632,     0,     0,     0,     0,     0,     0,
5479        0,  1101,   633,     0,     0,     0,     0,     0,  1109,     0,
5480        0,     0,  1109,  1109,   634,     0,     0,     0,     0,     0,
5481        0,     0,   635,     0,     0,     0,   636,     0,     0,     0,
5482        0,     0,     0,     0,     0,     0,     0,     0,  1104,     0,
5483     1101,     0,     0,  1107,     0, -1089,  1107,     0,     0,     0,
5484        0,     0,     0,     0,  1110,     0,     0,     0,     0,     0,
5485        0,  1104,     0,     0,     0,     0,     0,     0,     0,     0,
5486        0,     0,     0,     0,  1109,     0,     0,  1103,     0,     0,
5487        0,     0,   637,     0,     0,     0,  1104,  1101,  1109,  1110,
5488        0,  -577,  1101,  1101,     0,     0,     0,     0,     0,     0,
5489        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5490        0,     0,     0,     0,     0,     0,     0,     0,  1103,  2083,
5491        0,     0,  1104,  2083,     0,     0,     0,     0,  1110,  1109,
5492        0,   638,     0,     0,   639,     0,     0,     0,     0,     0,
5493     1103,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5494        0,     0,     0,     0,     0,   640,  1106,     0,     0,  1106,
5495        0,  1106,     0,     0,     0,     0,  1106,  1107,     0,   641,
5496        0,     0,     0,     0,     0,  1110,  -448,     0,     0,     0,
5497     1110,  1110,     0,     0,  1107,     0,     0,     0,     0,     0,
5498        0,     0,     0,     0,     0,   642,     0,  1104,     0,  1107,
5499        0,     0,     0,     0,   643,     0,     0,     0,  1103,  1101,
5500        0,  -448,     0,     0,   644,  1106,     0,     0,     0,     0,
5501        0,     0,     0,     0,   192,     0,     0,     0,     0,     0,
5502        0,     0,     0,   645,  1106,     0,     0,     0,     0,     0,
5503      646,     0,     0,     0,     0,     0,  -448,     0,     0,   647,
5504      648,     0,   649,   650,     0,     0,     0,     0,     0,  1106,
5505        0,     0,     0,   651,     0,     0,     0,     0,   652,     0,
5506        0,     0,   193,     0,     0,   653,     0,     0,   654,     0,
5507        0,   655,     0,     0,     0,     0,     0,   194,     0,     0,
5508        0,     0,     0,     0,  -448,     0,  1104,  1110,     0,     0,
5509        0,     0,     0,     0,     0,   195,     0,     0,     0,     0,
5510        0,   196,     0,     0,     0,     0,     0,     0,     0,     0,
5511        0,  1104,     0,     0,     0,     0,     0,     0,   197,  1106,
5512     1103,  1106,  1109,     0,     0,     0,     0,     0,     0,   198,
5513        0,     0,     0,     0,     0,     0,     0,     0,   199,     0,
5514        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5515      200,     0,     0,     0,     0,   201,     0,     0,     0,     0,
5516        0,     0,   202,     0,     0,     0,     0,     0,     0,     0,
5517        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5518     1103,   203,     0,     0,     0,     0,     0,     0,     0,     0,
5519        0,     0,  1107,     0,     0,  1107,     0,  1107,     0,  1101,
5520        0,     0,  1107,     0,  1109,     0,   204,  1109,     0,     0,
5521        0,     0,  1106,     0,     0,     0,     0,     0,     0,     0,
5522        0,     0,     0,     0,     0,     0,     0,   205,     0,     0,
5523        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5524        0,     0,     0,     0,     0,  1104,     0,     0,     0,     0,
5525        0,  1107,     0,  1106,     0,     0,     0,     0,     0,     0,
5526        0,     0,     0,     0,     0,     0,     0,   206,     0,     0,
5527     1107,     0,     0,     0,     0,  2083,     0,     0,     0,     0,
5528        0,     0,  1106,     0,     0,     0,     0,  1110,     0,     0,
5529     2083,   207,     0,  1104,  2798,  1107,     0,  1104,     0,     0,
5530        0,   208,   209,     0,     0,   210,     0,  1103,  2083,  2083,
5531     2083,     0,  2083,     0,     0,     0,     0,     0,     0,     0,
5532        0,     0,     0,     0,     0,     0,     0,     0,  1109,     0,
5533        0,   211,     0,     0,   212,     0,     0,     0,   213,     0,
5534      214,     0,     0,     0,     0,  1109,     0,   215,     0,     0,
5535      216,  1106,     0,     0,  2083,     0,     0,     0,     0,     0,
5536     1109,     0,     0,     0,     0,  1107,     0,  1107,     0,   217,
5537        0,     0,  1106,     0,     0,     0,   218,     0,     0,     0,
5538        0,   219,   220,     0,     0,   221,  1106,     0,     0,   222,
5539        0,     0,     0,     0,     0,     0,     0,     0,     0,   223,
5540        0,     0,     0,     0,   224,     0,     0,     0,     0,     0,
5541        0,     0,  2083,     0,     0,     0,     0,   225,     0,     0,
5542        0,     0,     0,     0,  2083,     0,     0,     0,     0,  2083,
5543      226,     0,     0,  1103,     0,     0,     0,     0,     0,     0,
5544        0,     0,     0,     0,  1104,     0,     0,     0,     0,     0,
5545        0,     0,     0,     0,  1104,     0,     0,     0,  1107,     0,
5546        0,     0,     0,     0,     0,     0,     0,     0,  1103,     0,
5547        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5548        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5549        0,     0,     0,     0,     0,     0,     0,     0,     0,  1107,
5550        0,     0,  1106,     0,     0,     0,     0,  1103,     0,     0,
5551        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5552        0,     0,     0,     0,     0,  1106,     0,     0,  1107,     0,
5553        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5554        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5555     1106,     0,     0,     0,  1103,     0,     0,     0,     0,  1103,
5556     1103,  1104,     0,  1109,     0,     0,  1109,     0,  1109,     0,
5557        0,     0,     0,  1109,     0,     0,     0,     0,     0,     0,
5558        0,     0,     0,     0,     0,     0,  1106,     0,     0,     0,
5559        0,     0,     0,     0,     0,     0,     0,  1107,     0,     0,
5560        0,     0,  1104,     0,     0,     0,     0,     0,     0,     0,
5561        0,     0,     0,     0,     0,     0,     0,     0,  1107,     0,
5562        0,     0,  1109,     0,  1104,     0,     0,     0,     0,     0,
5563        0,     0,  1107,     0,     0,     0,     0,     0,     0,     0,
5564        0,  1109,     0,     0,     0,     0,     0,     0,     0,     0,
5565        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5566        0,  1106,     0,     0,     0,     0,  1109,     0,     0,     0,
5567        0,     0,     0,     0,     0,     0,  1103,     0,     0,     0,
5568        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5569        0,     0,  1104,     0,     0,     0,     0,     0,     0,     0,
5570        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5571        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5572        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5573        0,     0,     0,     0,     0,     0,  1109,     0,  1109,     0,
5574        0,     0,     0,     0,     0,     0,     0,     0,  1107,     0,
5575        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5576     1106,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5577        0,  1107,     0,     0,     0,     0,     0,     0,     0,     0,
5578        0,     0,     0,     0,     0,  1106,     0,     0,     0,     0,
5579        0,     0,     0,     0,     0,     0,  1107,     0,     0,     0,
5580        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5581        0,     0,     0,     0,  1104,     0,     0,     0,     0,     0,
5582        0,     0,     0,     0,     0,     0,     0,     0,     0,  1109,
5583        0,     0,  1107,     0,     0,     0,     0,     0,     0,     0,
5584        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5585        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5586        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5587     1109,     0,     0,     0,  1104,     0,  1103,     0,     0,     0,
5588        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5589        0,     0,     0,     0,     0,     0,     0,     0,     0,  1109,
5590        0,     0,     0,     0,     0,     0,     0,  1107,     0,     0,
5591        0,     0,     0,     0,     0,     0,     0,     0,     0,  1106,
5592        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5593        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5594        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5595        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5596        0,     0,     0,     0,     0,     0,     0,  1106,  1109,     0,
5597        0,  1106,     0,     0,     0,     0,     0,     0,     0,     0,
5598        0,     0,     0,     0,     0,     0,     0,     0,     0,  1109,
5599        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5600        0,  1104,     0,  1109,     0,     0,  1107,     0,     0,     0,
5601        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5602        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5603        0,  1107,     0,  2083,     0,     0,     0,     0,     0,     0,
5604        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5605        0,     0,     0,  2083,  2083,     0,  2083,     0,     0,  2798,
5606     2798,     0,  3551,     0,  2798,     0,     0,     0,  2083,     0,
5607        0,  2083,     0,     0,     0,     0,  2083,     0,     0,     0,
5608        0,     0,  2083,     0,     0,     0,     0,  2083,     0,     0,
5609        0,     0,     0,     0,  2083,  2083,  2083,  2083,     0,     0,
5610        0,  2798,  2798,     0,  2083,     0,     0,     0,     0,     0,
5611        0,     0,     0,     0,     0,     0,     0,     0,  1106,  1109,
5612        0,     0,  2083,     0,  2083,     0,     0,  1104,  1106,     0,
5613        0,  2083,  2083,  2083,  2083,  2083,  2083,  2083,  2083,  2083,
5614     2083,     0,  1109,     0,     0,     0,     0,     0,     0,     0,
5615        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5616        0,     0,  1104,     0,     0,  1107,     0,  1109,     0,     0,
5617        0,     0,     0,     0,     0,     0,     0,  2083,     0,     0,
5618        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5619        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5620        0,  1104,     0,  1109,     0,     0,     0,     0,     0,     0,
5621        0,     0,     0,  1107,     0,     0,     0,  1107,     0,     0,
5622        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5623        0,     0,     0,     0,     0,  1106,     0,     0,     0,     0,
5624        0,     0,     0,     0,     0,     0,     0,     0,  1104,     0,
5625        0,     0,     0,  1104,  1104,     0,     0,     0,     0,     0,
5626        0,     0,     0,     0,     0,     0,     0,     0,  2083,     0,
5627        0,     0,     0,     0,     0,     0,  1106,     0,  1109,     0,
5628        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5629        0,     0,     0,     0,     0,     0,     0,     0,  1106,     0,
5630        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5631        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5632        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5633        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5634        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5635        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5636        0,     0,     0,     0,  1107,     0,  1106,     0,     0,     0,
5637     1104,     0,     0,     0,  1107,     0,     0,  1109,     0,     0,
5638        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5639        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5640        0,     0,  1109,     0,     0,     0,     0,     0,     0,     0,
5641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5642        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5643        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5644        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5645        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5646        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5647        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5648        0,  1107,     0,     0,     0,     0,     0,     0,  1106,     0,
5649        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5651        0,     0,     0,     0,     0,     0,     0,     0,     0,  2083,
5652     2083,     0,  1107,     0,  2083,     0,     0,     0,     0,     0,
5653        0,     0,     0,     0,     0,     0,  1109,     0,     0,     0,
5654        0,     0,     0,     0,  1107,     0,     0,     0,  1106,     0,
5655        0,     0,     0,  2083,     0,     0,     0,     0,     0,     0,
5656        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5657     1104,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5658        0,     0,     0,     0,  1109,     0,     0,     0,  1109,     0,
5659        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5660        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5661        0,     0,  1107,     0,     0,     0,     0,     0,     0,     0,
5662        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5663        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5664        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5665        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5666        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5667        0,     0,     0,     0,     0,  1106,     0,     0,     0,     0,
5668        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5669        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5670        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5671        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5672        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5673        0,     0,     0,     0,  1107,  1109,     0,     0,     0,     0,
5674        0,     0,     0,     0,     0,  1109,     0,     0,     0,     0,
5675        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5676        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5677        0,     0,     0,     0,  2083,     0,     0,     0,     0,     0,
5678     2083,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5679        0,     0,     0,     0,  1107,     0,     0,     0,  3551,  3551,
5680        0,  1106,  2798,  2798,  2798,  2798,     0,     0,  2798,  2798,
5681     2798,  2798,  2798,  2798,  2798,  2798,  2798,  2798,  3551,     0,
5682        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5683        0,     0,     0,     0,     0,     0,  1106,     0,     0,     0,
5684     2083,     0,     0,  2083,     0,  2083,     0,     0,  3551,  3551,
5685        0,     0,  1109,     0,     0,     0,     0,     0,     0,     0,
5686        0,     0,     0,     0,     0,     0,  2083,  2798,  2798,  2083,
5687        0,  2083,     0,     0,     0,  1106,     0,     0,     0,     0,
5688        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5689        0,     0,     0,  1109,     0,     0,     0,     0,     0,     0,
5690        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5691        0,     0,     0,     0,     0,  1109,     0,     0,     0,     0,
5692        0,  1107,  1106,     0,     0,     0,     0,  1106,  1106,     0,
5693        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5694        0,     0,     0,     0,     0,     0,  2083,     0,     0,     0,
5695        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5696        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5697        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5698        0,     0,     0,  1109,     0,     0,     0,     0,     0,     0,
5699        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5700        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5701        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5702        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5703        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5704        0,     0,     0,     0,  1106,     0,     0,  1107,     0,     0,
5705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5706        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5707        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5708        0,     0,  1107,     0,     0,     0,     0,     0,     0,     0,
5709        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5710        0,     0,     0,     0,     0,  1109,     0,     0,     0,     0,
5711        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5712        0,  1107,     0,     0,     0,     0,     0,     0,     0,     0,
5713        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5714        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5715        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5716        0,     0,     0,     0,     0,  1109,  2798,     0,  1107,     0,
5717        0,     0,     0,  1107,  1107,     0,     0,     0,     0,     0,
5718        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5720        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5721        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5722        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5723        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5724        0,     0,     0,     0,  1106,     0,     0,     0,     0,     0,
5725        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5726        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5727        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5728        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5729     1107,     0,  1109,     0,     0,     0,     0,     0,     0,     0,
5730        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5731        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5732        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5733        0,     0,     0,     0,     0,     0,     0,     0,     0,  2083,
5734        0,     0,     0,  2083,     0,  2083,  2083,     0,     0,     0,
5735        0,     0,  3551,  3551,  3551,  3551,     0,     0,     0,     0,
5736     3551,  3551,  3551,  3551,  3551,  3551,  3551,  3551,  3551,  3551,
5737     2083,  2083,     0,     0,     0,     0,     0,     0,     0,     0,
5738        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5739        0,     0,     0,     0,     0,     0,     0,  2083,     0,     0,
5740     2083,     0,  2083,     0,     0,     0,     0,  2083,     0,     0,
5741     3551,  3551,     0,     0,  2083,  2083,     0,     0,  1109,     0,
5742        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5743        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5744        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5745        0,     0,     0,  1109,     0,     0,     0,     0,     0,     0,
5746        0,  2083,     0,     0,     0,     0,     0,     0,     0,     0,
5747        0,     0,     0,     0,     0,     0,  2083,     0,     0,     0,
5748        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5749     1107,     0,  1109,     0,     0,     0,     0,     0,     0,     0,
5750        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5751        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5752        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5753        0,     0,     0,     0,     0,     0,     0,     0,     0,  1109,
5754        0,     0,     0,     0,  1109,  1109,     0,     0,     0,     0,
5755        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5756        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5757        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5758        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5759        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5760        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5761        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5762        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5763        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5764        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5765        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5766        0,  1109,     0,     0,     0,     0,     0,     0,     0,     0,
5767        0,     0,     0,     0,  3551,     0,     0,     0,     0,     0,
5768        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5769        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5770        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5771        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5772        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5773        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5774        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5775        0,     0,     0,     0,     0,     0,     0,     0,     0,  2083,
5776     2083,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5777        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5778        0,     0,     0,     0,     0,     0,     0,     0,  2083,     0,
5779        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5780        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5781        0,     0,     0,  2083,     0,     0,     0,     0,     0,  2083,
5782     2798,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5783        0,     0,     0,     0,     0,     0,     0,  2083,     0,  2083,
5784        0,     0,     0,  2083,  2083,  2083,     0,     0,  2083,     0,
5785        0,  2083,  2083,     0,     0,     0,  2083,     0,     0,     0,
5786     2083,  1109,     0,     0,     0,     0,     0,     0,     0,     0,
5787        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5788        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5789        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5790        0,     0,     0,     0,     0,     0,     0,  2083,     0,     0,
5791        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5792        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5793        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5795        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5796        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5797        0,     0,     0,  2083,     0,     0,     0,     0,     0,     0,
5798        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5799        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5800        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5801        0,  2083,     0,     0,     0,     0,     0,     0,     0,     0,
5802        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5803        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5804        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5805        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5806        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5807        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5808        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5809        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5810        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5811     3551,  2798,     0,     0,     0,     0,     0,     0,     0,     0,
5812        0,     0,     0,     0,     0,  2083,  2083,  2083,     0,     0,
5813        0,     0,     0,     0,     0,  2798,     0,     0,     0,     0,
5814        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5815        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5816        0,     0,  2083,  2083,     0,     0,     0,     0,     0,     0,
5817        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5818        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5819        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5820        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5821        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5822        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5823        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5824        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5825        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5826        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5827        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5829        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5830        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5831        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5832        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5833        0,     0,     0,     0,  2083,     0,     0,  3551,     0,     0,
5834        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5835     2798,     0,     0,  3551,     0,     0,     0,  2083,     0,     0,
5836        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5837        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5838        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5839        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5840     2083,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5841        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5843        0,     0,     0,     0,     0,     0,     0,  2083,     0,     0,
5844        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5845        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5846        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5847        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5848        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5849        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5851        0,     0,     0,     0,  3551,     0,  2798,     0,     0,     0,
5852        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5853        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5854        0,     0,  2083,     0,     0,     0,     0,     0,     0,     0,
5855        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5856        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5857        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5859        0,     0,     0,     0,     0,     0,  2083,     0,     0,     0,
5860        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5861        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5862        0,     0,     0,     0,     0,     0,     0,     0,  2083,     0,
5863        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5865        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5866        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5868        0,     0,     0,     0,     0,     0,     0,     0,  2083,     0,
5869        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5870        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5871        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5872        0,     0,     0,     0,  2798,  2798,     0,     0,     0,     0,
5873        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5874        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5875        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5876        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5877        0,     0,     0,     0,     0,     0,  3551,  3551,     0,     0,
5878        0,  2083,     0,     0,     0,     0,     0,     0,     0,     0,
5879        0,     0,   229,     0,  1234,   670,     0,  1235,  1236,  1237,
5880      731,  1238,     0,     0,     0,     0,     0,     0,  2083,   230,
5881      231,   232,   233,   234,   235,   236,   237,  1637,   238,   239,
5882      240,     0,     0,     0,     0,  1239,     0,     0,   241,   242,
5883        0,   243,   244,   245,   246,   247,   248,   249,   250,  1240,
5884      252,  1241,  1242,     0,   255,   256,   257,   258,   259,   260,
5885     1243,  1244,   261,   262,  1245,  1246,   265,     0,   266,   267,
5886      268,   269,  1247,     0,  1248,     0,   272,   273,   274,   275,
5887      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
5888      285,   286,     0,   287,   288,   289,   290,  1249,  1250,  1251,
5889     1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,   297,
5890     1256,  1257,   300,  1258,   301,     0,   302,   303,   304,   305,
5891      306,   307,     0,   308,   309,   310,   311,  1638,     0,   312,
5892      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
5893      321,   322,     0,   323,   324,   325,   326,  1259,   328,   329,
5894      330,   331,  1260,  1261,   333,     0,   334,   335,  1262,   337,
5895        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
5896      345,     0,   346,  1263,     0,  1264,   349,   350,     0,   351,
5897      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
5898      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
5899      370,   371,   372,   373,   374,  1265,  1266,     0,  1267,     0,
5900      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
5901        0,     0,   388,  1268,   390,   391,   392,     0,   393,   394,
5902      395,  1269,  1270,   396,   397,   398,   399,   400,   401,   402,
5903      403,   404,   405,   406,   407,   408,   409,   410,   411,  1271,
5904      413,  1272,   415,   416,   417,   418,   419,   420,   421,   422,
5905     1273,   424,  1274,   425,   426,   427,   428,  1275,  1276,   430,
5906     1277,   432,   433,   434,     0,   435,   436,     0,     0,  1278,
5907      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
5908     1279,   447,   448,   449,   450,   451,   452,   453,   454,   455,
5909        0,     0,   456,   457,  1280,   459,   460,   461,   462,   463,
5910        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
5911      473,  1281,   475,   476,   477,   478,     0,   479,   480,   481,
5912      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
5913      491,   492,   493,   494,   495,   496,   497,   498,  1282,   500,
5914      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
5915      510,   511,   512,   513,  1283,   514,   515,   516,   517,   518,
5916      519,   520,   521,  1284,   523,     0,   524,   525,   526,   527,
5917      528,   529,   530,   531,   532,   533,   534,   535,   536,  1285,
5918      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
5919      546,   547,     0,   548,  1286,  1287,     0,     0,   551,   552,
5920     1288,   554,  1289,  1290,   556,   557,   558,   559,   560,   561,
5921      562,   563,     0,  1291,   564,   565,   566,   567,   568,  1292,
5922        0,   569,   570,   571,   572,   573,   574,  1293,  1639,   576,
5923      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
5924      583,   584,   585,   586,   587,   588,   589,  1294,  1295,  1296,
5925     1297,   594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,
5926     1302,     0,     0,     0,     0,     0,     0,  1303,  1304,  1640,
5927        0,     0,     0,     0,     0,     0,  1306,  1641,   229,     0,
5928     1234,   670,     0,  1235,  1236,  1237,   731,  1238,     0,     0,
5929        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
5930      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
5931        0,  1239,     0,     0,   241,   242,     0,   243,   244,   245,
5932      246,   247,   248,   249,   250,  1240,   252,  1241,  1242,     0,
5933      255,   256,   257,   258,   259,   260,  1243,  1244,   261,   262,
5934     1245,  1246,   265,     0,   266,   267,   268,   269,  1247,     0,
5935     1248,     0,   272,   273,   274,   275,   276,   277,   278,   279,
5936      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
5937      288,   289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,
5938      292,   293,   294,   295,   296,   297,  1256,  1257,   300,  1258,
5939      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
5940      309,   310,   311,     0,     0,   312,   313,  1082,   315,   316,
5941        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
5942      324,   325,   326,  1259,   328,   329,   330,   331,  1260,  1261,
5943      333,     0,   334,   335,  1262,   337,     0,   338,     0,   339,
5944      340,     0,   341,   342,   343,   344,   345,     0,   346,  1263,
5945        0,  1264,   349,   350,     0,   351,   352,   353,   354,   355,
5946      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
5947      365,   366,   367,     0,   368,   369,   370,   371,   372,   373,
5948      374,  1265,  1266,     0,  1267,     0,   378,   379,   380,   381,
5949      382,   383,   384,   385,   386,   387,     0,     0,   388,  1268,
5950      390,   391,   392,     0,   393,   394,   395,  1269,  1270,   396,
5951      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
5952      407,   408,   409,   410,   411,  1271,   413,  1272,   415,   416,
5953      417,   418,   419,   420,   421,   422,  1273,   424,  1274,   425,
5954      426,   427,   428,  1275,  1276,   430,  1277,   432,   433,   434,
5955        0,   435,   436,     0,     0,  1278,   438,   439,     0,     0,
5956      440,   441,   442,   443,   444,   445,  1279,   447,   448,   449,
5957      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
5958     1280,   459,   460,   461,   462,   463,     0,   464,   465,   466,
5959      467,   468,   469,   470,   471,   472,   473,  1281,   475,   476,
5960      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
5961      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
5962      495,   496,   497,   498,  1282,   500,   501,   502,   503,   504,
5963      505,   506,   507,   508,    41,   509,   510,   511,   512,   513,
5964     1283,   514,   515,   516,   517,   518,   519,   520,   521,  1284,
5965      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
5966      532,   533,   534,   535,   536,  1285,   538,     0,   539,   540,
5967       45,   541,   542,   543,   544,   545,   546,   547,     0,   548,
5968     1286,  1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,
5969      556,   557,   558,   559,   560,   561,   562,   563,     0,  1291,
5970      564,   565,   566,   567,   568,  1292,     0,   569,   570,   571,
5971      572,   573,  1161,  1293,     0,   576,   577,   578,   579,   580,
5972      581,     0,     0,   582,     0,    50,   583,   584,   585,   586,
5973      587,   588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,
5974     1300,  1301,   599,   600,   601,   602,  1302,     0,    51,     0,
5975        0,     0,     0,  1303,  1304,     0,     0,     0,     0,     0,
5976        0,     0,  1306,  5102,   229,     0,  1234,   670,     0,  1235,
5977     1236,  1237,   731,  1238,     0,     0,     0,     0,     0,     0,
5978        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
5979      238,   239,   240,     0,     0,     0,     0,  1239,     0,     0,
5980      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
5981      250,  1240,   252,  1241,  1242,     0,   255,   256,   257,   258,
5982      259,   260,  1243,  1244,   261,   262,  1245,  1246,   265,     0,
5983      266,   267,   268,   269,  1247,     0,  1248,     0,   272,   273,
5984      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
5985      283,   284,   285,   286,     0,   287,   288,   289,   290,  1249,
5986     1250,  1251,  1252,  1253,  1254,  1255,   292,   293,   294,   295,
5987      296,   297,  1256,  1257,   300,  1258,   301,     0,   302,   303,
5988      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
5989        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
5990        0,   320,   321,   322,     0,   323,   324,   325,   326,  1259,
5991      328,   329,   330,   331,  1260,  1261,   333,     0,   334,   335,
5992     1262,   337,     0,   338,     0,   339,   340,     0,   341,   342,
5993      343,   344,   345,     0,   346,  1263,     0,  1264,   349,   350,
5994        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
5995      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
5996      368,   369,   370,   371,   372,   373,   374,  1265,  1266,     0,
5997     1267,     0,   378,   379,   380,   381,   382,   383,   384,   385,
5998      386,   387,     0,     0,   388,  1268,   390,   391,   392,     0,
5999      393,   394,   395,  1269,  1270,   396,   397,   398,   399,   400,
6000      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
6001      411,  1271,   413,  1272,   415,   416,   417,   418,   419,   420,
6002      421,   422,  1273,   424,  1274,   425,   426,   427,   428,  1275,
6003     1276,   430,  1277,   432,   433,   434,     0,   435,   436,     0,
6004        0,  1278,   438,   439,     0,     0,   440,   441,   442,   443,
6005      444,   445,  1279,   447,   448,   449,   450,   451,   452,   453,
6006      454,   455,     0,     0,   456,   457,  1280,   459,   460,   461,
6007      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
6008      471,   472,   473,  1281,   475,   476,   477,   478,     0,   479,
6009      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
6010      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
6011     1282,   500,   501,   502,   503,   504,   505,   506,   507,   508,
6012        0,   509,   510,   511,   512,   513,  1283,   514,   515,   516,
6013      517,   518,   519,   520,   521,  1284,   523,     0,   524,   525,
6014      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
6015      536,  1285,   538,     0,   539,   540,     0,   541,   542,   543,
6016      544,   545,   546,   547,     0,   548,  1286,  1287,     0,     0,
6017      551,   552,  1288,   554,  1289,  1290,   556,   557,   558,   559,
6018      560,   561,   562,   563,     0,  1291,   564,   565,   566,   567,
6019      568,  1292,     0,   569,   570,   571,   572,   573,   574,  1293,
6020        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
6021        0,     0,   583,   584,   585,   586,   587,   588,   589,  1294,
6022     1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,   599,   600,
6023      601,   602,  1302,     0,     0,     0,     0,     0,     0,  1303,
6024     1304,     0,     0,     0,     0,     0,     0,     0,  1306,  2800,
6025      229,     0,  1234,   670,     0,  1235,  1236,  1237,   731,  1238,
6026        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
6027      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
6028        0,     0,     0,  1239,     0,     0,   241,   242,     0,   243,
6029      244,   245,   246,   247,   248,   249,   250,  1240,   252,  1241,
6030     1242,     0,   255,   256,   257,   258,   259,   260,  1243,  1244,
6031      261,   262,  1245,  1246,   265,     0,   266,   267,   268,   269,
6032     1247,     0,  1248,     0,   272,   273,   274,   275,   276,   277,
6033      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
6034        0,   287,   288,   289,   290,  1249,  1250,  1251,  1252,  1253,
6035     1254,  1255,   292,   293,   294,   295,   296,   297,  1256,  1257,
6036      300,  1258,   301,     0,   302,   303,   304,   305,   306,   307,
6037        0,   308,   309,   310,   311,     0,     0,   312,   313,  1082,
6038      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
6039        0,   323,   324,   325,   326,  1259,   328,   329,   330,   331,
6040     1260,  1261,   333,     0,   334,   335,  1262,   337,     0,   338,
6041        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
6042      346,  1263,     0,  1264,   349,   350,     0,   351,   352,   353,
6043      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
6044      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
6045      372,   373,   374,  1265,  1266,     0,  1267,     0,   378,   379,
6046      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
6047      388,  1268,   390,   391,   392,     0,   393,   394,   395,  1269,
6048     1270,   396,   397,   398,   399,   400,   401,   402,   403,   404,
6049      405,   406,   407,   408,   409,   410,   411,  1271,   413,  1272,
6050      415,   416,   417,   418,   419,   420,   421,   422,  1273,   424,
6051     1274,   425,   426,   427,   428,  1275,  1276,   430,  1277,   432,
6052      433,   434,     0,   435,   436,     0,     0,  1278,   438,   439,
6053        0,     0,   440,   441,   442,   443,   444,   445,  1279,   447,
6054      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
6055      456,   457,  1280,   459,   460,   461,   462,   463,     0,   464,
6056      465,   466,   467,   468,   469,   470,   471,   472,   473,  1281,
6057      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
6058      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
6059      493,   494,   495,   496,   497,   498,  1282,   500,   501,   502,
6060      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
6061      512,   513,  1283,   514,   515,   516,   517,   518,   519,   520,
6062      521,  1284,   523,     0,   524,   525,   526,   527,   528,   529,
6063      530,   531,   532,   533,   534,   535,   536,  1285,   538,     0,
6064      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
6065        0,   548,  1286,  1287,     0,     0,   551,   552,  1288,   554,
6066     1289,  1290,   556,   557,   558,   559,   560,   561,   562,   563,
6067        0,  1291,   564,   565,   566,   567,   568,  1292,     0,   569,
6068      570,   571,   572,   573,   574,  1293,     0,   576,   577,   578,
6069      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
6070      585,   586,   587,   588,   589,  1294,  1295,  1296,  1297,   594,
6071     1298,  1299,  1300,  1301,   599,   600,   601,   602,  1302,     0,
6072        0,     0,     0,     0,     0,  1303,  1304,     0,     0,     0,
6073        0,     0,     0,     0,  1306,  4082,   229,     0,  1234,   670,
6074        0,  1235,  1236,  1237,   731,  1238,     0,     0,     0,     0,
6075        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
6076      237,     0,   238,   239,   240,     0,     0,     0,     0,  1239,
6077        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
6078      248,   249,   250,  1240,   252,  1241,  1242,     0,   255,   256,
6079      257,   258,   259,   260,  1243,  1244,   261,   262,  1245,  1246,
6080      265,     0,   266,   267,   268,   269,  1247,     0,  1248,     0,
6081      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
6082      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
6083      290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,   293,
6084      294,   295,   296,   297,  1256,  1257,   300,  1258,   301,     0,
6085      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
6086      311,     0,     0,   312,   313,  1082,   315,   316,     0,   317,
6087      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
6088      326,  1259,   328,   329,   330,   331,  1260,  1261,   333,     0,
6089      334,   335,  1262,   337,     0,   338,     0,   339,   340,     0,
6090      341,   342,   343,   344,   345,     0,   346,  1263,     0,  1264,
6091      349,   350,     0,   351,   352,   353,   354,   355,   356,   357,
6092      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
6093      367,     0,   368,   369,   370,   371,   372,   373,   374,  1265,
6094     1266,     0,  1267,     0,   378,   379,   380,   381,   382,   383,
6095      384,   385,   386,   387,     0,     0,   388,  1268,   390,   391,
6096      392,     0,   393,   394,   395,  1269,  1270,   396,   397,   398,
6097      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
6098      409,   410,   411,  1271,   413,  1272,   415,   416,   417,   418,
6099      419,   420,   421,   422,  1273,   424,  1274,   425,   426,   427,
6100      428,  1275,  1276,   430,  1277,   432,   433,   434,     0,   435,
6101      436,     0,     0,  1278,   438,   439,     0,     0,   440,   441,
6102      442,   443,   444,   445,  1279,   447,   448,   449,   450,   451,
6103      452,   453,   454,   455,     0,     0,   456,   457,  1280,   459,
6104      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
6105      469,   470,   471,   472,   473,  1281,   475,   476,   477,   478,
6106        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
6107      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
6108      497,   498,  1282,   500,   501,   502,   503,   504,   505,   506,
6109      507,   508,     0,   509,   510,   511,   512,   513,  1283,   514,
6110      515,   516,   517,   518,   519,   520,   521,  1284,   523,     0,
6111      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
6112      534,   535,   536,  1285,   538,     0,   539,   540,     0,   541,
6113      542,   543,   544,   545,   546,   547,     0,   548,  1286,  1287,
6114        0,     0,   551,   552,  1288,   554,  1289,  1290,   556,   557,
6115      558,   559,   560,   561,   562,   563,     0,  1291,   564,   565,
6116      566,   567,   568,  1292,     0,   569,   570,   571,   572,   573,
6117      574,  1293,     0,   576,   577,   578,   579,   580,   581,     0,
6118        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
6119      589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,
6120      599,   600,   601,   602,  1302,   610,     0,     0,     0,     0,
6121        0,  1303,  1304,     0,     0,     0,     0,     0,     0,     0,
6122     1306,  4155,   230,   231,   232,   233,   234,   235,   236,   237,
6123        0,   238,   239,   240,     0,     0,     0,     0,     0,  4173,
6124        0,   241,   242,     0,   243,   244,   245,     0,   247,   248,
6125      249,   250,   251,     0,   253,   254,     0,   255,   256,   257,
6126      258,   259,   260,     0,     0,   261,   262,   263,   264,   265,
6127        0,   266,   267,   268,   269,   270,     0,     0,     0,   272,
6128      273,   274,   275,   276,     0,   278,   279,   280,     0,   281,
6129      282,   283,   284,   285,   286,     0, -1795,   288,   289,   290,
6130        0,     0,     0,     0,     0,     0,     0,   292,   293,   294,
6131      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
6132      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
6133        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
6134      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
6135      327,   328,   329,   330,   331,   332,     0,   333,     0,   334,
6136      335,   336,   337,     0,   338,     0,   339,     0,     0, -1795,
6137      342,   343,   344,   345,     0,   346,   347,     0,   348,   349,
6138      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
6139      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
6140        0,   368, -1795,   370,   371,   372,   373,   374,   375,   376,
6141        0,   377,     0,   378,     0,     0,   381, -1795,   383,   384,
6142      385,   386,   387,     0,     0,   388,   389, -1795,   391,     0,
6143        0,   393,   394,   395,     0,     0,   396,   397,   398,   399,
6144      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
6145      410,   411,   412, -1795,   414,   415,   416,   417,   418,   419,
6146      420,   421,   422,   423,   424,     0,   425,   426,     0,   428,
6147        0,   429,   430,   431,   432,   433,   434,     0,   435,   436,
6148        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
6149        0,   444,     0,   446,   447,   448,   449,   450,   451,   452,
6150      453,   454,   455,     0,     0,   456,   457,   458,   459,   460,
6151      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
6152      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
6153      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
6154      489,   490,     0,   491,   492, -1795,   494,   495,   496,   497,
6155      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
6156      508,     0,   509,   510,   511,   512,   513,     0,   514,   515,
6157      516,   517,   518,     0,   520,   521,   522,   523,     0,   524,
6158      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
6159      535,   536,   537,   538,     0,   539,   540,     0,   541,     0,
6160      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
6161        0,   551,   552,   553,   554,   555,     0,   556,   557,   558,
6162      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
6163      567,   568,     0,     0,   569,   570,   571,   572,   573,   574,
6164      575,     0,   576,     0,   578,   579,   580,   581,     0,     0,
6165      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
6166      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
6167      600,   601,   602,     0,  1074,     0,     0,     0,     0,     0,
6168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6169     1382,   230,   231,   232,   233,   234,   235,   236,   237,     0,
6170      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
6171      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
6172        0,  1075,   252,  1076,  1077,     0,   255,   256,   257,   258,
6173      259,   260,     0,     0,   261,   262,  1078,  1079,   265,     0,
6174      266,   267,   268,   269,     0,     0,   271,     0,   272,   273,
6175      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
6176      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
6177        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
6178      296,   297,  1080,  1081,   300,     0,   301,     0,   302,   303,
6179      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
6180        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
6181        0,   320,   321,   322,     0,   323,   324,   325,   326,     0,
6182      328,   329,   330,   331,     0,     0,   333,     0,   334,   335,
6183     1083,   337,     0,   338,     0,   339,   340,     0,   341,   342,
6184      343,   344,   345,     0,   346,     0,     0,     0,   349,   350,
6185        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
6186      360,  2187,   361,   362,   363,   364,   365,   366,   367,     0,
6187      368,   369,  2188,   371,   372,   373,   374,  1085,  1086,     0,
6188     1087,     0,   378,   379,   380,   381,   382,   383,   384,   385,
6189      386,   387,     0,     0,   388,     0,   390,   391,   392,     0,
6190      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
6191      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
6192      411,  1088,   413,  1089,   415,   416,   417,   418,   419,   420,
6193      421,     0,     0,   424,     0,   425,   426,   427,   428,     0,
6194        0,   430,  1090,   432,   433,   434,     0,   435,   436,     0,
6195        0,   437,   438,   439,     0,     0,   440,   441,  2190,   443,
6196      444,   445,     0,   447,   448,   449,   450,   451,   452,   453,
6197      454,   455,     0,     0,   456,   457,     0,   459,     0,   461,
6198      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
6199      471,   472,   473,  1091,   475,   476,   477,   478,     0,   479,
6200      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
6201      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
6202        0,   500,   501,   502,   503,   504,   505,   506,   507,   508,
6203        0,   509,   510,   511,   512,   513,     0,   514,   515,  2191,
6204      517,   518,   519,   520,   521,  1093,   523,     0,   524,   525,
6205      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
6206      536,     0,   538,     0,   539,   540,     0,   541,   542,   543,
6207      544,   545,   546,   547,     0,   548,  1094,  1095,     0,     0,
6208      551,   552,     0,   554,     0,     0,   556,   557,   558,   559,
6209      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
6210      568,     0,     0,   569,   570,   571,   572,   573,     0,  1096,
6211     2192,   576,   577,   578,   579,   580,   581,     0,     0,   582,
6212        0,     0,   583,   584,   585,   586,   587,   588,  1074,     0,
6213        0,     0,     0,     0,     0,     0,     0,     0,     0,   600,
6214      601,   602,     0,     0,     0,   230,   231,   232,   233,   234,
6215      235,   236,   237,     0,   238,   239,   240,     0,     0,  2300,
6216        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
6217      246,   247,   248,   249,     0,  1075,   252,  1076,  1077,     0,
6218      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
6219     1078,  1079,   265,     0,   266,   267,   268,   269,     0,     0,
6220      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
6221      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
6222      288,   289,   290,     0,     0,     0,   291,     0,     0,     0,
6223      292,   293,   294,   295,   296,   297,  1080,  1081,   300,     0,
6224      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
6225      309,   310,   311,     0,     0,   312,   313,  1082,   315,   316,
6226        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
6227      324,   325,   326,     0,   328,   329,   330,   331,     0,     0,
6228      333,     0,   334,   335,  1083,   337,     0,   338,     0,   339,
6229      340,     0,   341,   342,   343,   344,   345,     0,   346,     0,
6230        0,     0,   349,   350,     0,   351,   352,   353,   354,   355,
6231      356,   357,   358,   359,   360,  2187,   361,   362,   363,   364,
6232      365,   366,   367,     0,   368,   369,  2188,   371,   372,   373,
6233      374,  1085,  1086,     0,  1087,     0,   378,   379,   380,   381,
6234      382,   383,   384,   385,   386,   387,     0,     0,   388,     0,
6235      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
6236      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
6237      407,   408,   409,   410,   411,  1088,   413,  1089,   415,   416,
6238      417,   418,   419,   420,   421,     0,     0,   424,     0,   425,
6239      426,   427,   428,     0,     0,   430,  1090,   432,   433,   434,
6240        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
6241      440,   441,  2190,   443,   444,   445,     0,   447,   448,   449,
6242      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
6243        0,   459,     0,   461,   462,   463,     0,   464,   465,   466,
6244      467,   468,   469,   470,   471,   472,   473,  1091,   475,   476,
6245      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
6246      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
6247      495,   496,   497,   498,     0,   500,   501,   502,   503,   504,
6248      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
6249        0,   514,   515,  2191,   517,   518,   519,   520,   521,  1093,
6250      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
6251      532,   533,   534,   535,   536,     0,   538,     0,   539,   540,
6252        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
6253     1094,  1095,     0,     0,   551,   552,     0,   554,     0,     0,
6254      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
6255      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
6256      572,   573,     0,  1096,  2192,   576,   577,   578,   579,   580,
6257      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
6258      587,   588,   229,     0,  1234,   670,     0,  1235,  1236,  1237,
6259      731,  1238,     0,   600,   601,   602,     0,     0,     0,   230,
6260      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
6261      240,     0,     0,  3376,     0,  1239,     0,     0,   241,   242,
6262        0,   243,   244,   245,   246,   247,   248,   249,   250,  1240,
6263      252,  1241,  1242,     0,   255,   256,   257,   258,   259,   260,
6264     1243,  1244,   261,   262,  1245,  1246,   265,     0,   266,   267,
6265      268,   269,  1247,     0,  1248,     0,   272,   273,   274,   275,
6266      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
6267      285,   286,     0,   287,   288,   289,   290,  1249,  1250,  1251,
6268     1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,   297,
6269     1256,  1257,   300,  1258,   301,     0,   302,   303,   304,   305,
6270      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
6271      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
6272      321,   322,     0,   323,   324,   325,   326,  1259,   328,   329,
6273      330,   331,  1260,  1261,   333,     0,   334,   335,  1262,   337,
6274        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
6275      345,     0,   346,  1263,     0,  1264,   349,   350,     0,   351,
6276      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
6277      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
6278      370,   371,   372,   373,   374,  1265,  1266,     0,  1267,     0,
6279      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
6280        0,     0,   388,  1268,   390,   391,   392,     0,   393,   394,
6281      395,  1269,  1270,   396,   397,   398,   399,   400,   401,   402,
6282      403,   404,   405,   406,   407,   408,   409,   410,   411,  1271,
6283      413,  1272,   415,   416,   417,   418,   419,   420,   421,   422,
6284     1273,   424,  1274,   425,   426,   427,   428,  1275,  1276,   430,
6285     1277,   432,   433,   434,     0,   435,   436,     0,     0,  1278,
6286      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
6287     1279,   447,   448,   449,   450,   451,   452,   453,   454,   455,
6288        0,     0,   456,   457,  1280,   459,   460,   461,   462,   463,
6289        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
6290      473,  1281,   475,   476,   477,   478,     0,   479,   480,   481,
6291      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
6292      491,   492,   493,   494,   495,   496,   497,   498,  1282,   500,
6293      501,   502,   503,   504,   505,   506,   507,   508,    41,   509,
6294      510,   511,   512,   513,  1283,   514,   515,   516,   517,   518,
6295      519,   520,   521,  1284,   523,     0,   524,   525,   526,   527,
6296      528,   529,   530,   531,   532,   533,   534,   535,   536,  1285,
6297      538,     0,   539,   540,    45,   541,   542,   543,   544,   545,
6298      546,   547,     0,   548,  1286,  1287,     0,     0,   551,   552,
6299     1288,   554,  1289,  1290,   556,   557,   558,   559,   560,   561,
6300      562,   563,     0,  1291,   564,   565,   566,   567,   568,  1292,
6301        0,   569,   570,   571,   572,   573,  1161,  1293,     0,   576,
6302      577,   578,   579,   580,   581,     0,     0,   582,     0,    50,
6303      583,   584,   585,   586,   587,   588,   589,  1294,  1295,  1296,
6304     1297,   594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,
6305     1302,     0,    51,     0,     0,     0,     0,  1303,  1304,     0,
6306        0,     0,   229,     0,  1234,   670,  1306,  1235,  1236,  1237,
6307      731,  1238,     0,     0,     0,     0,     0,     0,     0,   230,
6308      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
6309      240,     0,     0,     0,     0,  1239,     0,     0,   241,   242,
6310        0,   243,   244,   245,   246,   247,   248,   249,   250,  1240,
6311      252,  1241,  1242,  2806,   255,   256,   257,   258,   259,   260,
6312     1243,  1244,   261,   262,  1245,  1246,   265,     0,   266,   267,
6313      268,   269,  1247,     0,  1248,     0,   272,   273,   274,   275,
6314      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
6315      285,   286,     0,   287,   288,   289,   290,  1249,  1250,  1251,
6316     1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,   297,
6317     1256,  1257,   300,  1258,   301,     0,   302,   303,   304,   305,
6318      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
6319      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
6320      321,   322,     0,   323,   324,   325,   326,  1259,   328,   329,
6321      330,   331,  1260,  1261,   333,     0,   334,   335,  1262,   337,
6322        0,   338,     0,   339,   340,  2807,   341,   342,   343,   344,
6323      345,     0,   346,  1263,     0,  1264,   349,   350,     0,   351,
6324      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
6325      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
6326      370,   371,   372,   373,   374,  1265,  1266,     0,  1267,     0,
6327      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
6328        0,  2808,   388,  1268,   390,   391,   392,     0,   393,   394,
6329      395,  1269,  1270,   396,   397,   398,   399,   400,   401,   402,
6330      403,   404,   405,   406,   407,   408,   409,   410,   411,  1271,
6331      413,  1272,   415,   416,   417,   418,   419,   420,   421,   422,
6332     1273,   424,  1274,   425,   426,   427,   428,  1275,  1276,   430,
6333     1277,   432,   433,   434,     0,   435,   436,     0,     0,  1278,
6334      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
6335     1279,   447,   448,   449,   450,   451,   452,   453,   454,   455,
6336        0,     0,   456,   457,  1280,   459,   460,   461,   462,   463,
6337        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
6338      473,  1281,   475,   476,   477,   478,     0,   479,   480,   481,
6339      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
6340      491,   492,   493,   494,   495,   496,   497,   498,  1282,   500,
6341      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
6342      510,   511,   512,   513,  1283,   514,   515,   516,   517,   518,
6343      519,   520,   521,  1284,   523,     0,   524,   525,   526,   527,
6344      528,   529,   530,   531,   532,   533,   534,   535,   536,  1285,
6345      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
6346      546,   547,     0,   548,  1286,  1287,     0,  2809,   551,   552,
6347     1288,   554,  1289,  1290,   556,   557,   558,   559,   560,   561,
6348      562,   563,     0,  1291,   564,   565,   566,   567,   568,  1292,
6349        0,   569,   570,   571,   572,   573,   574,  1293,     0,   576,
6350      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
6351      583,   584,   585,   586,   587,   588,   589,  1294,  1295,  1296,
6352     1297,   594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,
6353     1302,     0,     0,     0,     0,     0,     0,  1303,  1304,     0,
6354        0,     0,   229,     0,  1234,   670,  1306,  1235,  1236,  1237,
6355      731,  1238,     0,     0,     0,     0,     0,     0,     0,   230,
6356      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
6357      240,     0,     0,     0,     0,  1239,     0,     0,   241,   242,
6358        0,   243,   244,   245,   246,   247,   248,   249,   250,  1240,
6359      252,  1241,  1242,     0,   255,   256,   257,   258,   259,   260,
6360     1243,  1244,   261,   262,  1245,  1246,   265,     0,   266,   267,
6361      268,   269,  1247,     0,  1248,     0,   272,   273,   274,   275,
6362      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
6363      285,   286,     0,   287,   288,   289,   290,  1249,  1250,  1251,
6364     1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,   297,
6365     1256,  1257,   300,  1258,   301,     0,   302,   303,   304,   305,
6366      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
6367      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
6368      321,   322,     0,   323,   324,   325,   326,  1259,   328,   329,
6369      330,   331,  1260,  1261,   333,     0,   334,   335,  1262,   337,
6370        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
6371      345,     0,   346,  1263,     0,  1264,   349,   350,     0,   351,
6372      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
6373      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
6374      370,   371,   372,   373,   374,  1265,  1266,     0,  1267,     0,
6375      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
6376        0,     0,   388,  1268,   390,   391,   392,     0,   393,   394,
6377      395,  1269,  1270,   396,   397,   398,   399,   400,   401,   402,
6378      403,   404,   405,   406,   407,   408,   409,   410,   411,  1271,
6379      413,  1272,   415,   416,   417,   418,   419,   420,   421,   422,
6380     1273,   424,  1274,   425,   426,   427,   428,  1275,  1276,   430,
6381     1277,   432,   433,   434,     0,   435,   436,     0,     0,  1278,
6382      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
6383     1279,   447,   448,   449,   450,   451,   452,   453,   454,   455,
6384        0,     0,   456,   457,  1280,   459,   460,   461,   462,   463,
6385        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
6386      473,  1281,   475,   476,   477,   478,     0,   479,   480,   481,
6387      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
6388      491,   492,   493,   494,   495,   496,   497,   498,  1282,   500,
6389      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
6390      510,   511,   512,   513,  1283,   514,   515,   516,   517,   518,
6391      519,   520,   521,  1284,   523,     0,   524,   525,   526,   527,
6392      528,   529,   530,   531,   532,   533,   534,   535,   536,  1285,
6393      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
6394      546,   547,     0,   548,  1286,  1287,     0,     0,   551,   552,
6395     1288,   554,  1289,  1290,   556,   557,   558,   559,   560,   561,
6396      562,   563,     0,  1291,   564,   565,   566,   567,   568,  1292,
6397        0,   569,   570,   571,   572,   573,   574,  1293,     0,   576,
6398      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
6399      583,   584,   585,   586,   587,   588,   589,  1294,  1295,  1296,
6400     1297,   594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,
6401     1302,     0,     0,     0,     0,     0,     0,  1303,  1304,     0,
6402        0,     0,     0,     0,  2006,  2760,  1306,   229,     0,  1234,
6403      670,     0,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6404        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6405      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6406     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6407      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6408      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6409     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6410        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6411        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6412      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6413      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6414        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6415      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6416      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6417      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6418        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6419        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6420     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6421      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6422      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6423     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6424      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6425      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6426      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6427      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6428      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6429      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6430      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6431      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6432      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6433      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6434      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6435      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6436      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6437      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6438      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6439      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6440        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6441      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6442      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6443     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6444      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6445      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6446      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6447        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6448      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6449     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6450        0,     0,  1303,  1304,  1305,     0,     0,   229,     0,  1234,
6451      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6452        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6453      236,   237,  2156,   238,   239,   240,     0,     0,     0,     0,
6454     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6455      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6456      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6457     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6458        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6459        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6460      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6461      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6462        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6463      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6464      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6465      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6466        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6467        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6468     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6469      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6470      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6471     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6472      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6473      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6474      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6475      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6476      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6477      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6478      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6479      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6480      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6481      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6482      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6483      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6484      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6485      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6486      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6487      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6488        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6489      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6490      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6491     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6492      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6493      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6494      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6495        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6496      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6497     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6498        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6499      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6500        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6501      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6502     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6503      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6504      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6505     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6506        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6507        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6508      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6509      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6510        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6511      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6512      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6513      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6514        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6515        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6516     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6517      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6518      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6519     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6520      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6521      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6522      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6523      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6524      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6525      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6526      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6527      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6528      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6529      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6530      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6531      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6532      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6533      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6534      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6535      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6536        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6537      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6538      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6539     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6540      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6541      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6542      573,   574,  1293,  3255,   576,   577,   578,   579,   580,   581,
6543        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6544      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6545     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6546        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6547      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6548        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6549      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6550     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6551      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6552      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6553     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6554        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6555        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6556      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6557      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6558        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6559      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6560      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6561      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6562        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6563     2807,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6564     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6565      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6566      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6567     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6568      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6569      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6570      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6571      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6572      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6573      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6574      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6575      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6576      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6577      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6578      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6579      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6580      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6581      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6582      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6583      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6584        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6585      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6586      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6587     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6588      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6589      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6590      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6591        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6592      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6593     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6594        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6595      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6596        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6597      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6598     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6599      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6600      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6601     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6602        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6603        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6604      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6605      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6606        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6607      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6608      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6609      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6610        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6611        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6612     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6613      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6614      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6615     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6616      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6617      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6618      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6619      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6620      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6621      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6622      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6623      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6624      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6625      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6626      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6627      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6628      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6629      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6630      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6631      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6632        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6633      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6634      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6635     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6636      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6637      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6638      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6639        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6640      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6641     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6642        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6643      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6644        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6645      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6646     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6647      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6648      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6649     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6650        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6651        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6652      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6653      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6654        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6655      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6656      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6657      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6658        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6659        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6660     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6661      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6662      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6663     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6664      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6665      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6666      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6667      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6668      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6669      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6670      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6671      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6672      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6673      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6674      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6675      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6676      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6677      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6678      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6679      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6680        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6681      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6682      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6683     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6684      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6685      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6686      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6687        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6688      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6689     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6690        0,     0,  2159,  2160,     0,     0,     0,   229,     0,  2934,
6691      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6692        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6693      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6694     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6695      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6696      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6697     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6698        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6699        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6700      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6701      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6702        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6703      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6704      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6705      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6706        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6707        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6708     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6709      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6710      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6711     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6712      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6713      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6714      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6715      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6716      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6717      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6718      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6719      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6720      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6721      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6722      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6723      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6724      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6725      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6726      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6727      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6728        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6729      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6730      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6731     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6732      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6733      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6734      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6735        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6736      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6737     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6738        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6739      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6740        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6741      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6742     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6743      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6744      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6745     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6746        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6747        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6748      289,  4209,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6749      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6750        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6751      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6752      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6753      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6754        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6755        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6756     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6757      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6758      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6759     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6760      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6761      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6762      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6763      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6764      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6765      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6766      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6767      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6768      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6769      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6770      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6771      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6772      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6773      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6774      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6775      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6776        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6777      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6778      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6779     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6780      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6781      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6782      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6783        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6784      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6785     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6786        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6787      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6788        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6789      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6790     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6791      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6792      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6793     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6794        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6795        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6796      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6797      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6798        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6799      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6800      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6801      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6802        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6803        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6804     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6805      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6806      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6807     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6808      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6809      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6810      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6811      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6812      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6813      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6814      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6815      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6816      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6817      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6818      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6819      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6820      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6821      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6822      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6823      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6824        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6825      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6826      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6827     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6828      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6829      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6830      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6831        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6832      588,  4560,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6833     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6834        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6835      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6836        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6837      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6838     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6839      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6840      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6841     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6842        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6843        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6844      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6845      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6846        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6847      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6848      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6849      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6850        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6851        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6852     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6853      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6854      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6855     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6856      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6857      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6858      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6859      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6860      418,   419,   420,  4572,   422,  1273,   424,  1274,   425,   426,
6861      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6862      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6863      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6864      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6865      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6866      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6867      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6868      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6869      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6870      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6871      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6872        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6873      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6874      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6875     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6876      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6877      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6878      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6879        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6880      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6881     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6882        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6883      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6884        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6885      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6886     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6887      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6888      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6889     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6890        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6891        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6892     4886,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6893      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6894        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6895      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6896      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6897      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6898        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6899        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6900     4887,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6901      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6902      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6903     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6904      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6905      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6906      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6907      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6908      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6909      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6910      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6911      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6912      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6913      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6914      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6915      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6916      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6917     4888,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6918      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6919      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6920        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6921      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6922      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6923     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6924      557,   558,   559,   560,   561,   562,   563,     0,  1291,   564,
6925      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6926      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6927        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6928      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6929     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6930        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6931      670,  4889,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6932        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6933      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6934     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6935      247,   248,   249,  5359,  1240,   252,  1241,  1242,     0,   255,
6936      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6937     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6938        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6939        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6940      289,  5360,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6941      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6942        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6943      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6944      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6945      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6946        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6947        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6948     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6949      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6950      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6951     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
6952      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
6953      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
6954      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
6955      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
6956      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
6957      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
6958      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
6959      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
6960      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
6961      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
6962      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
6963      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
6964      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
6965      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
6966      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
6967      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
6968        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
6969      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
6970      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
6971     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
6972      557,   558,   559,   560,  5361,   562,   563,     0,  1291,   564,
6973      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
6974      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
6975        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
6976      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
6977     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
6978        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
6979      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
6980        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
6981      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
6982     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
6983      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
6984      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
6985     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
6986        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
6987        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
6988      289,  5360,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
6989      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
6990        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
6991      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
6992      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
6993      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
6994        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
6995        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
6996     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
6997      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
6998      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
6999     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
7000      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7001      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
7002      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7003      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
7004      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
7005      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
7006      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
7007      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7008      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7009      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7010      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
7011      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7012      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7013      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
7014      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7015      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
7016        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7017      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7018      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
7019     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
7020      557,   558,   559,   560,  5361,   562,   563,     0,  1291,   564,
7021      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7022      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
7023        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7024      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
7025     1301,   599,   600,   601,   602,  1302,     0,     0,     0,     0,
7026        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
7027      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
7028        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
7029      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7030     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
7031      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
7032      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
7033     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
7034        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7035        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
7036      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
7037      293,   294,   295,   296,   297,  1256,  1257,   300,  5084,   301,
7038        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7039      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
7040      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7041      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
7042        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
7043        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
7044     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
7045      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7046      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
7047     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
7048      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7049      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
7050      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7051      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
7052      418,   419,   420,   421,   422,  1273,   424,     0,   425,   426,
7053      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
7054      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
7055      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7056      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7057      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7058      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
7059      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7060      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7061      496,   497,   498,  2792,   500,   501,   502,   503,   504,   505,
7062      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7063      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
7064        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7065      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7066      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
7067     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
7068      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
7069      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7070      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
7071        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7072      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
7073     1301,   599,   600,   601,   602,     0,     0,     0,     0,     0,
7074        0,     0,  2793,  2794,     0,     0,     0,   229,     0,  1234,
7075      670,  2795,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
7076        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
7077      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7078     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
7079      247,   248,   249, -2673,  1240,   252,  1241,  1242,     0,   255,
7080      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
7081     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
7082        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7083        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
7084      289,  5360,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
7085      293,   294,   295,   296,   297,  1256,  1257,   300,  1258,   301,
7086        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7087      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
7088      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7089      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
7090        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
7091        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
7092     1264,   349,   350,     0,   351,   352,   353,   354,   355, -2673,
7093      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7094      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
7095     1265,  1266,     0,  1267,     0,   378,     0,     0,   381,   382,
7096      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7097      391, -2673,     0,   393,   394,   395,  1269,  1270,   396,   397,
7098      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7099      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
7100      418,   419,   420,   421,   422,  1273,   424,  1274,   425,   426,
7101        0,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
7102      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
7103      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7104      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7105      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7106      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
7107      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7108      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7109      496,   497,   498,  1282,   500,   501,   502,   503,   504,   505,
7110      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7111      514,   515,   516,   517,   518, -2673,   520,   521,  1284,   523,
7112        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7113      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7114      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
7115     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
7116      557,   558,   559,   560,  5361,   562,   563,     0,  1291,   564,
7117      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7118      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
7119        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7120      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
7121     1301,   599,   600,   601,   602, -2673,     0,     0,     0,     0,
7122        0,     0,  1303,  1304,     0,     0,     0,   229,     0,  1234,
7123      670,  1306,  1235,  1236,  1237,   731,  1238,     0,     0,     0,
7124        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
7125      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7126     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
7127      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
7128      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
7129     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
7130        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7131        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
7132      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
7133      293,   294,   295,   296,   297,  1256,  1257,   300,     0,   301,
7134        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7135      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
7136      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7137      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
7138        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
7139        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
7140     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
7141      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7142      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
7143     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
7144      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7145      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
7146      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7147      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
7148      418,   419,   420,   421,   422,  1273,   424,     0,   425,   426,
7149      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
7150      435,   436,     0,     0,  1278,   438,   439,     0,     0,   440,
7151      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7152      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7153      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7154      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
7155      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7156      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7157      496,   497,   498,  2792,   500,   501,   502,   503,   504,   505,
7158      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7159      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
7160        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7161      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7162      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
7163     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
7164      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
7165      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7166      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
7167        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7168      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
7169     1301,   599,   600,   601,   602,     0,     0,     0,     0,     0,
7170        0,     0,  2793,  2794,   229,     0,  1234,   670,     0,  1235,
7171     1236,  2795,   731,  1238,     0,     0,     0,     0,     0,     0,
7172        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
7173      238,   239,   240,     0,     0,     0,     0,  1239,     0,     0,
7174      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
7175      250,  1240,   252,  1241,  1242,     0,   255,   256,   257,   258,
7176      259,   260,  1243,  1244,   261,   262,  1245,  1246,   265,     0,
7177      266,   267,   268,   269,  1247,     0,  1248,     0,   272,   273,
7178      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
7179      283,   284,   285,   286,     0,   287,   288,   289,   290,  1249,
7180     1250,  1251,  1252,  1253,  1254,  1255,   292,   293,   294,   295,
7181      296,   297,  1256,  1257,   300,     0,   301,     0,   302,   303,
7182      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
7183        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
7184        0,   320,   321,   322,     0,   323,   324,   325,   326,  1259,
7185      328,   329,   330,   331,  1260,  1261,   333,     0,   334,   335,
7186     1262,   337,     0,   338,     0,   339,   340,     0,   341,   342,
7187      343,   344,   345,     0,   346,  1263,     0,  1264,   349,   350,
7188        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
7189      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
7190      368,   369,   370,   371,   372,   373,   374,  1265,  1266,     0,
7191     1267,     0,   378,   379,   380,   381,   382,   383,   384,   385,
7192      386,   387,     0,     0,   388,  1268,   390,   391,   392,     0,
7193      393,   394,   395,  1269,  1270,   396,   397,   398,   399,   400,
7194      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
7195      411,  1271,   413,  1272,   415,   416,   417,   418,   419,   420,
7196      421,   422,  1273,   424,     0,   425,   426,   427,   428,  1275,
7197     1276,   430,  1277,   432,   433,   434,     0,   435,   436,     0,
7198        0,   437,   438,   439,     0,     0,   440,   441,   442,   443,
7199      444,   445,  1279,   447,   448,   449,   450,   451,   452,   453,
7200      454,   455,     0,     0,   456,   457,  1280,   459,   460,   461,
7201      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
7202      471,   472,   473,  1281,   475,   476,   477,   478,     0,   479,
7203      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
7204      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
7205     2923,  2924,   501,   502,   503,   504,   505,   506,   507,   508,
7206        0,   509,   510,   511,   512,   513,  1283,   514,   515,   516,
7207      517,   518,   519,   520,   521,  1284,   523,     0,   524,   525,
7208      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
7209      536,  1285,   538,     0,   539,   540,     0,   541,   542,   543,
7210      544,   545,   546,   547,     0,   548,  1286,  1287,     0,     0,
7211      551,   552,  1288,   554,  1289,  1290,   556,   557,   558,   559,
7212      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
7213      568,  1292,     0,   569,   570,   571,   572,   573,   574,  1293,
7214        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
7215        0,     0,   583,   584,   585,   586,   587,   588,   589,  1294,
7216     1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,   599,   600,
7217      601,   602,     0,     0,     0,     0,     0,     0,     0,  2925,
7218     2926,     0,     0,     0,   229,     0,  1234,   670,  2795,  1235,
7219     1236,  1237,   731,  1238,     0,     0,     0,     0,     0,     0,
7220        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
7221      238,   239,   240,     0,     0,     0,     0,  1239,     0,     0,
7222      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
7223      250,  1240,   252,  1241,  1242,     0,   255,   256,   257,   258,
7224      259,   260,  1243,  1244,   261,   262,  1245,  1246,   265,     0,
7225      266,   267,   268,   269,  1247,     0,  1248,     0,   272,   273,
7226      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
7227      283,   284,   285,   286,     0,   287,   288,   289,   290,  1249,
7228     1250,  1251,  1252,  1253,  1254,  1255,   292,   293,   294,   295,
7229      296,   297,  1256,  1257,   300,     0,   301,     0,   302,   303,
7230      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
7231        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
7232        0,   320,   321,   322,     0,   323,   324,   325,   326,  1259,
7233      328,   329,   330,   331,  1260,  1261,   333,     0,   334,   335,
7234     1262,   337,     0,   338,     0,   339,   340,     0,   341,   342,
7235      343,   344,   345,     0,   346,  1263,     0,  1264,   349,   350,
7236        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
7237      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
7238      368,   369,   370,   371,   372,   373,   374,  1265,  1266,     0,
7239     1267,     0,   378,     0,   380,   381,   382,   383,   384,   385,
7240      386,   387,     0,     0,   388,  1268,   390,   391,   392,     0,
7241      393,   394,   395,  1269,  1270,   396,   397,   398,   399,   400,
7242      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
7243      411,  1271,   413,  1272,   415,   416,   417,   418,   419,   420,
7244      421,   422,  1273,   424,     0,   425,   426,   427,   428,  1275,
7245     1276,   430,  1277,   432,   433,   434,     0,   435,   436,     0,
7246        0,  1278,   438,   439,     0,     0,   440,   441,   442,   443,
7247      444,   445,  1279,   447,   448,   449,   450,   451,   452,   453,
7248      454,   455,     0,     0,   456,   457,  1280,   459,   460,   461,
7249      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
7250      471,   472,   473,  1281,   475,   476,   477,   478,     0,   479,
7251      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
7252      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
7253     2792,   500,   501,   502,   503,   504,   505,   506,   507,   508,
7254        0,   509,   510,   511,   512,   513,  1283,   514,   515,   516,
7255      517,   518,   519,   520,   521,  1284,   523,     0,   524,   525,
7256      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
7257      536,  1285,   538,     0,   539,   540,     0,   541,   542,   543,
7258      544,   545,   546,   547,     0,   548,  1286,  1287,     0,     0,
7259      551,   552,  1288,   554,  1289,  1290,   556,   557,   558,   559,
7260      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
7261      568,  1292,     0,   569,   570,   571,   572,   573,   574,  1293,
7262        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
7263        0,     0,   583,   584,   585,   586,   587,   588,   589,  1294,
7264     1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,   599,   600,
7265      601,   602,     0,     0,     0,     0,     0,     0,     0,  2793,
7266     2794,   229,     0,  1234,   670,     0,  1235,  1236,  2795,   731,
7267     1238,     0,     0,     0,     0,     0,     0,     0,   230,   231,
7268      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
7269        0,     0,     0,     0,  1239,     0,     0,   241,   242,     0,
7270      243,   244,   245,   246,   247,   248,   249,   250,  1240,   252,
7271     1241,  1242,     0,   255,   256,   257,   258,   259,   260,  1243,
7272     1244,   261,   262,  1245,  1246,   265,     0,   266,   267,   268,
7273      269,  1247,     0,  1248,     0,   272,   273,   274,   275,   276,
7274      277,   278,   279,   280,     0,   281,   282,   283,   284,   285,
7275      286,     0,   287,   288,   289,   290,  1249,  1250,  1251,  1252,
7276     1253,  1254,  1255,   292,   293,   294,   295,   296,   297,  1256,
7277     1257,   300,     0,   301,     0,   302,   303,   304,   305,   306,
7278      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
7279     1082,   315,   316,     0,   317,   318,   319,     0,   320,   321,
7280      322,     0,   323,   324,   325,   326,  1259,   328,   329,   330,
7281      331,  1260,  1261,   333,     0,   334,   335,  1262,   337,     0,
7282      338,     0,   339,   340,     0,   341,   342,   343,   344,   345,
7283        0,   346,  1263,     0,  1264,   349,   350,     0,   351,   352,
7284      353,   354,   355,   356,   357,   358,   359,   360,     0,   361,
7285      362,   363,   364,   365,   366,   367,     0,   368,   369,   370,
7286      371,   372,   373,   374,  1265,  1266,     0,  1267,     0,   378,
7287      379,   380,   381,   382,   383,   384,   385,   386,   387,     0,
7288        0,   388,  1268,   390,   391,   392,     0,   393,   394,   395,
7289     1269,  1270,   396,   397,   398,   399,   400,   401,   402,   403,
7290      404,   405,   406,   407,   408,   409,   410,   411,  1271,   413,
7291     1272,   415,   416,   417,   418,   419,   420,   421,   422,  1273,
7292      424,     0,   425,   426,   427,   428,  1275,  1276,   430,  1277,
7293      432,   433,   434,     0,   435,   436,     0,     0,   437,   438,
7294      439,     0,     0,   440,   441,   442,   443,   444,   445,  1279,
7295      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
7296        0,   456,   457,  1280,   459,   460,   461,   462,   463,     0,
7297      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
7298     1281,   475,   476,   477,   478,     0,   479,   480,   481,   482,
7299      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
7300      492,   493,   494,   495,   496,   497,   498,  2792,   500,   501,
7301      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
7302      511,   512,   513,  1283,   514,   515,   516,   517,   518,   519,
7303      520,   521,  1284,   523,     0,   524,   525,   526,   527,   528,
7304      529,   530,   531,   532,   533,   534,   535,   536,  1285,   538,
7305        0,   539,   540,     0,   541,   542,   543,   544,   545,   546,
7306      547,     0,   548,  1286,  1287,     0,     0,   551,   552,  1288,
7307      554,  1289,  1290,   556,   557,   558,   559,   560,   561,   562,
7308      563,     0,     0,   564,   565,   566,   567,   568,  1292,     0,
7309      569,   570,   571,   572,   573,   574,  1293,     0,   576,   577,
7310      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
7311      584,   585,   586,   587,   588,   589,  1294,  1295,  1296,  1297,
7312      594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,   229,
7313        0,  1234,   670,     0,  1235,  1236,     0,   731,  1238,     0,
7314        0,     0,     0,     0,     0,  2795,   230,   231,   232,   233,
7315      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
7316        0,     0,  1239,     0,     0,   241,   242,     0,   243,   244,
7317      245,   246,   247,   248,   249,   250,  1240,   252,  1241,  1242,
7318        0,  4115,   256,   257,   258,   259,   260,  1243,  1244,   261,
7319      262,  1245,  1246,   265,     0,   266,   267,   268,   269,  1247,
7320        0,  1248,     0,   272,   273,   274,   275,   276,   277,   278,
7321      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
7322      287,   288,   289,   290,  1249,  1250,  1251,  1252,  1253,  1254,
7323     1255,   292,   293,   294,   295,   296,   297,  1256,  1257,   300,
7324        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
7325      308,   309,   310,   311,     0,     0,   312,   313,  1082,   315,
7326      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
7327      323,   324,   325,   326,  1259,   328,   329,   330,   331,  1260,
7328     1261,   333,     0,   334,   335,  1262,   337,     0,   338,     0,
7329      339,   340,     0,   341,   342,   343,   344,   345,     0,   346,
7330     1263,     0,  1264,   349,   350,     0,   351,   352,   353,   354,
7331      355,   356,   357,   358,   359,   360,     0,   361,   362,   363,
7332      364,   365,   366,   367,     0,   368,   369,   370,   371,   372,
7333      373,   374,  1265,  1266,     0,  1267,     0,   378,   379,   380,
7334      381,   382,   383,   384,   385,   386,   387,     0,     0,   388,
7335     1268,   390,   391,   392,     0,   393,   394,   395,  1269,  1270,
7336      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
7337      406,   407,   408,   409,   410,   411,  1271,   413,  1272,   415,
7338      416,   417,   418,   419,   420,   421,   422,  1273,   424,     0,
7339      425,   426,   427,   428,  1275,  1276,   430,  1277,   432,   433,
7340      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
7341        0,   440,   441,   442,   443,   444,   445,  1279,   447,   448,
7342      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
7343      457,  1280,   459,   460,   461,   462,   463,     0,   464,   465,
7344      466,   467,   468,   469,   470,   471,   472,   473,  1281,   475,
7345      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
7346      485,   486,   487,   488,   489,   490,     0,   491,   492,   493,
7347      494,   495,   496,   497,   498,  2792,   500,   501,   502,   503,
7348      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
7349      513,  1283,   514,   515,   516,   517,   518,   519,   520,   521,
7350     1284,   523,     0,   524,   525,   526,   527,   528,   529,   530,
7351      531,   532,   533,   534,   535,   536,  1285,   538,     0,   539,
7352      540,     0,   541,   542,   543,   544,   545,   546,   547,     0,
7353      548,  1286,  1287,     0,     0,   551,   552,  1288,   554,  1289,
7354     1290,   556,   557,   558,   559,   560,   561,   562,   563,     0,
7355        0,   564,   565,   566,   567,   568,  1292,     0,   569,   570,
7356      571,   572,   573,   574,  1293,     0,   576,   577,   578,   579,
7357      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
7358      586,   587,   588,   589,  1294,  1295,  1296,  1297,   594,  1298,
7359     1299,  1300,  1301,   599,   600,   601,   602,   229,     0,  1234,
7360      670,     0,  1235,  1236,     0,   731,  1238,     0,     0,     0,
7361        0,     0,     0,  2795,   230,   231,   232,   233,   234,   235,
7362      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7363     1239,     0,     0,   241,   242,     0,   243,   244,   245,   246,
7364      247,   248,   249,   250,  1240,   252,  1241,  1242,     0,   255,
7365      256,   257,   258,   259,   260,  1243,  1244,   261,   262,  1245,
7366     1246,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
7367        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7368        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
7369      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
7370      293,   294,   295,   296,   297,  1256,  1257,   300,     0,   301,
7371        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7372      310,   311,     0,     0,   312,   313,  1082,   315,   316,     0,
7373      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7374      325,   326,  1259,   328,   329,   330,   331,  1260,  1261,   333,
7375        0,   334,   335,  1262,   337,     0,   338,     0,   339,   340,
7376        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
7377     1264,   349,   350,     0,   351,   352,   353,   354,   355,   356,
7378      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7379      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
7380     1265,  1266,     0,  1267,     0,   378,   379,   380,   381,   382,
7381      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7382      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
7383      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7384      408,   409,   410,   411,  1271,   413,  1272,   415,   416,   417,
7385      418,   419,   420,   421,   422,  1273,   424,     0,   425,   426,
7386      427,   428,  1275,  1276,   430,  1277,   432,   433,   434,     0,
7387      435,   436,     0,     0,   437,   438,   439,     0,     0,   440,
7388      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7389      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7390      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7391      468,   469,   470,   471,   472,   473,  1281,   475,   476,   477,
7392      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7393      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7394      496,   497,   498,  2792,   500,   501,   502,   503,   504,   505,
7395      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7396      514,   515,   516,   517,   518,   519,   520,   521,  1284,   523,
7397        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7398      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7399      541,   542,   543,   544,   545,   546,   547,     0,   548,  1286,
7400     1287,     0,     0,   551,   552,  1288,   554,  1289,  1290,   556,
7401      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
7402      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7403      573,   574,  1293,     0,   576,   577,   578,   579,   580,   581,
7404        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7405      588,   589,  1294,  1295,  1296,  1297,  4603,  1298,  1299,  1300,
7406     1301,   599,   600,   601,   602,   229,     0,  1234,   670,     0,
7407     1235,  1236,  1237,   731,  1238,     0,     0,     0,     0,     0,
7408        0,  2795,   230,   231,   232,   233,   234,   235,   236,   237,
7409        0,   238,   239,   240,     0,     0,     0,     0,  1239,     0,
7410        0,   241,   242,     0,   243,   244,   245,   246,   247,   248,
7411      249,     0,  1240,   252,  1241,  1242,     0,   255,   256,   257,
7412      258,   259,   260,  1243,  1244,   261,   262,  1245,  1246,   265,
7413        0,   266,   267,   268,   269,  1247,     0,  1248,     0,   272,
7414      273,   274,   275,   276,   277,   278,   279,   280,     0,   281,
7415      282,   283,   284,   285,   286,     0,   287,   288,   289,   290,
7416     1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,   293,   294,
7417      295,   296,   297,  1256,  1257,   300,  1258,   301,     0,   302,
7418      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
7419        0,     0,   312,   313,  1082,   315,   316,     0,   317,   318,
7420      319,     0,   320,     0,   322,     0,   323,   324,   325,   326,
7421     1259,   328,   329,   330,   331,  1260,  1261,   333,     0,   334,
7422      335,  1262,   337,     0,   338,     0,   339,   340,     0,   341,
7423      342,   343,   344,   345,     0,   346,  1263,     0,  1264,   349,
7424      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
7425      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
7426        0,   368,   369,   370,   371,   372,   373,   374,  1265,  1266,
7427        0,  1267,     0,   378,     0,     0,   381,   382,   383,   384,
7428      385,   386,   387,     0,     0,   388,  1268,   390,   391,     0,
7429        0,   393,   394,   395,  1269,  1270,   396,   397,   398,   399,
7430      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
7431      410,   411,  1271,   413,  1272,   415,   416,   417,   418,   419,
7432      420,   421,   422,  1273,   424,  1274,   425,   426,     0,   428,
7433     1275,  1276,   430,  1277,   432,   433,   434,     0,   435,   436,
7434        0,     0,  1278,   438,   439,     0,     0,   440,   441,   442,
7435      443,   444,   445,  1279,   447,   448,   449,   450,   451,   452,
7436      453,   454,   455,     0,     0,   456,   457,  1280,   459,   460,
7437      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
7438      470,   471,   472,   473,  1281,   475,   476,   477,   478,     0,
7439      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
7440      489,   490,     0,   491,   492,   493,   494,   495,   496,   497,
7441      498,  1282,   500,   501,   502,   503,   504,   505,   506,   507,
7442      508,     0,   509,   510,   511,   512,   513,  1283,   514,   515,
7443      516,   517,   518,     0,   520,   521,  1284,   523,     0,   524,
7444      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
7445      535,   536,  1285,   538,     0,   539,   540,     0,   541,   542,
7446      543,   544,   545,   546,   547,     0,   548,  1286,  1287,     0,
7447        0,   551,   552,  1288,   554,  1289,  1290,   556,   557,   558,
7448      559,   560,   561,   562,   563,     0,  1291,   564,   565,   566,
7449      567,   568,  1292,     0,   569,   570,   571,   572,   573,   574,
7450     1293,     0,   576,   577,   578,   579,   580,   581,     0,     0,
7451      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
7452     1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,   599,
7453      600,   601,   602,   229,     0,     0,     0,     0,     0,     0,
7454     1303,  1304,     0,     0,     0,     0,     0,     0,     0,  1306,
7455      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
7456      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
7457      242,     0,   243,   244,   245,   246,   247,   248,   249,   250,
7458      251,   252,   253,   254,     0,   255,   256,   257,   258,   259,
7459      260,     0,  1244,   261,   262,   263,   264,   265,     0,   266,
7460      267,   268,   269,  1247,     0,  1248,     0,   272,   273,   274,
7461      275,   276,   277,   278,   279,   280,     0,   281,   282,   283,
7462      284,   285,   286,     0,   287,   288,   289,   290,  1249,  1250,
7463     1251,  1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,
7464      297,   298,   299,   300,     0,   301,     0,   302,   303,   304,
7465      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
7466      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
7467      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
7468      329,   330,   331,  1260,     0,   333,     0,   334,   335,   336,
7469      337,     0,   338,     0,   339,   340,     0,   341,   342,   343,
7470      344,   345,     0,   346,  1263,     0,   348,   349,   350,     0,
7471      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
7472        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
7473      369,   370,   371,   372,   373,   374,   375,   376,     0,   377,
7474        0,   378,   379,   380,   381,   382,   383,   384,   385,   386,
7475      387,  3623,     0,   388,  1268,   390,   391,   392,     0,   393,
7476      394,   395,  1269,  1270,   396,   397,   398,   399,   400,   401,
7477      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
7478      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
7479      422,  1273,   424,     0,   425,   426,   427,   428,     0,  1276,
7480      430,   431,   432,   433,   434,     0,   435,   436,     0,   823,
7481      437,   438,   439,     0,     0,   440,   441,   442,   443,   444,
7482      445,  1279,   447,   448,   449,   450,   451,   452,   453,   454,
7483      455,     0,     0,   456,   457,  1280,   459,   460,   461,   462,
7484      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
7485      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
7486      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
7487        0,   491,   492,   493,   494,   495,   496,   497,   498,   499,
7488     3624,   501,   502,   503,   504,   505,   506,   507,   508,    41,
7489      509,   510,   511,   512,   513,  1283,   514,   515,   516,   517,
7490      518,   519,   520,   521,   522,   523,     0,   524,   525,   526,
7491      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
7492     1285,   538,     0,   539,   540,    45,   541,   542,   543,   544,
7493      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
7494      552,  1288,   554,  1289,     0,   556,   557,   558,   559,   560,
7495      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
7496     1292,     0,   569,   570,   571,   572,   573,  1161,   575,     0,
7497      576,   577,   578,   579,   580,   581,     0,     0,   582,     0,
7498       50,   583,   584,   585,   586,   587,   588,   589,  1294,  1295,
7499     1296,  1297,   594,  1298,  1299,  1300,  1301,  3625,   600,   601,
7500      602,   229,     0,    51,     0,     0,     0,     0,     0,     0,
7501        0,     0,     0,     0,     0,     0,     0,  3626,   230,   231,
7502      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
7503        0,     0,     0,     0,     0,     0,     0,   241,   242,     0,
7504      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
7505      253,   254,     0,   255,   256,   257,   258,   259,   260,     0,
7506     1244,   261,   262,   263,   264,   265,     0,   266,   267,   268,
7507      269,  1247,     0,  1248,     0,   272,   273,   274,   275,   276,
7508      277,   278,   279,   280,     0,   281,   282,   283,   284,   285,
7509      286,     0,   287,   288,   289,   290,  1249,  1250,  1251,  1252,
7510     1253,  1254,  1255,   292,   293,   294,   295,   296,   297,   298,
7511      299,   300,     0,   301,     0,   302,   303,   304,   305,   306,
7512      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
7513      314,   315,   316,     0,   317,   318,   319,     0,   320,   321,
7514      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
7515      331,  1260,     0,   333,     0,   334,   335,   336,   337,     0,
7516      338,     0,   339,   340,     0,   341,   342,   343,   344,   345,
7517        0,   346,  1263,     0,   348,   349,   350,     0,   351,   352,
7518      353,   354,   355,   356,   357,   358,   359,   360,     0,   361,
7519      362,   363,   364,   365,   366,   367,     0,   368,   369,   370,
7520      371,   372,   373,   374,   375,   376,     0,   377,     0,   378,
7521      379,   380,   381,   382,   383,   384,   385,   386,   387,  3623,
7522        0,   388,  1268,   390,   391,   392,     0,   393,   394,   395,
7523     1269,  1270,   396,   397,   398,   399,   400,   401,   402,   403,
7524      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
7525      414,   415,   416,   417,   418,   419,   420,   421,   422,  1273,
7526      424,     0,   425,   426,   427,   428,     0,  1276,   430,   431,
7527      432,   433,   434,     0,   435,   436,     0,   823,   437,   438,
7528      439,     0,     0,   440,   441,   442,   443,   444,   445,  1279,
7529      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
7530        0,   456,   457,  1280,   459,   460,   461,   462,   463,     0,
7531      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
7532      474,   475,   476,   477,   478,     0,   479,   480,   481,   482,
7533      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
7534      492,   493,   494,   495,   496,   497,   498,   499,  3624,   501,
7535      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
7536      511,   512,   513,  1283,   514,   515,   516,   517,   518,   519,
7537      520,   521,   522,   523,     0,   524,   525,   526,   527,   528,
7538      529,   530,   531,   532,   533,   534,   535,   536,  1285,   538,
7539        0,   539,   540,     0,   541,   542,   543,   544,   545,   546,
7540      547,     0,   548,   549,   550,     0,     0,   551,   552,  1288,
7541      554,  1289,     0,   556,   557,   558,   559,   560,   561,   562,
7542      563,     0,     0,   564,   565,   566,   567,   568,  1292,     0,
7543      569,   570,   571,   572,   573,   574,   575,     0,   576,   577,
7544      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
7545      584,   585,   586,   587,   588,   589,  1294,  1295,  1296,  1297,
7546      594,  1298,  1299,  1300,  1301,  3625,   600,   601,   602,   229,
7547        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7548        0,     0,     0,     0,     0,  3626,   230,   231,   232,   233,
7549      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
7550        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
7551      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
7552        0,   255,   256,   257,   258,   259,   260,     0,  1244,   261,
7553      262,   263,   264,   265,     0,   266,   267,   268,   269,  1247,
7554        0,  1248,     0,   272,   273,   274,   275,   276,   277,   278,
7555      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
7556      287,   288,   289,   290,  1249,  1250,  1251,  1252,  1253,  1254,
7557     1255,   292,   293,   294,   295,   296,   297,   298,   299,   300,
7558        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
7559      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
7560      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
7561      323,   324,   325,   326,   327,   328,   329,   330,   331,  1260,
7562        0,   333,     0,   334,   335,   336,   337,     0,   338,     0,
7563      339,   340,     0,   341,   342,   343,   344,   345,     0,   346,
7564     1263,     0,   348,   349,   350,     0,   351,   352,   353,   354,
7565      355,   356,   357,   358,   359,   360,     0,   361,   362,   363,
7566      364,   365,   366,   367,     0,   368,   369,   370,   371,   372,
7567      373,   374,   375,   376,     0,   377,     0,   378,   379,   380,
7568      381,   382,   383,   384,   385,   386,   387,     0,     0,   388,
7569     1268,   390,   391,   392,     0,   393,   394,   395,  1269,  1270,
7570      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
7571      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
7572      416,   417,   418,   419,   420,   421,   422,  1273,   424,     0,
7573      425,   426,   427,   428,     0,  1276,   430,   431,   432,   433,
7574      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
7575        0,   440,   441,   442,   443,   444,   445,  1279,   447,   448,
7576      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
7577      457,  1280,   459,   460,   461,   462,   463,     0,   464,   465,
7578      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
7579      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
7580      485,   486,   487,   488,   489,   490,     0,   491,   492,   493,
7581      494,   495,   496,   497,   498,   499,  3624,   501,   502,   503,
7582      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
7583      513,  1283,   514,   515,   516,   517,   518,   519,   520,   521,
7584      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
7585      531,   532,   533,   534,   535,   536,  1285,   538,     0,   539,
7586      540,     0,   541,   542,   543,   544,   545,   546,   547,     0,
7587      548,   549,   550,     0,     0,   551,   552,  1288,   554,  1289,
7588        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
7589        0,   564,   565,   566,   567,   568,  1292,     0,   569,   570,
7590      571,   572,   573,   574,   575,     0,   576,   577,   578,   579,
7591      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
7592      586,   587,   588,   589,  1294,  1295,  1296,  1297,   594,  1298,
7593     1299,  1300,  1301,  3625,   600,   601,   602,   229,     0,     0,
7594        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7595        0,     0,     0,    52,   230,   231,   232,   233,   234,   235,
7596      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7597        0,     0,     0,   241,   242,     0,   243,   244,   245,   246,
7598      247,   248,   249,   250,   251,   252,   253,   254,     0,   255,
7599      256,   257,   258,   259,   260,     0,  1244,   261,   262,   263,
7600      264,   265,     0,   266,   267,   268,   269,  1247,     0,  1248,
7601        0,   272,   273,   274,   275,   276,   277,   278,   279,   280,
7602        0,   281,   282,   283,   284,   285,   286,     0,   287,   288,
7603      289,   290,  1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,
7604      293,   294,   295,   296,   297,   298,   299,   300,     0,   301,
7605        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7606      310,   311,     0,     0,   312,   313,   314,   315,   316,     0,
7607      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7608      325,   326,   327,   328,   329,   330,   331,  1260,     0,   333,
7609        0,   334,   335,   336,   337,     0,   338,     0,   339,   340,
7610        0,   341,   342,   343,   344,   345,     0,   346,  1263,     0,
7611      348,   349,   350,     0,   351,   352,   353,   354,   355,   356,
7612      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7613      366,   367,     0,   368,   369,   370,   371,   372,   373,   374,
7614      375,   376,     0,   377,     0,   378,   379,   380,   381,   382,
7615      383,   384,   385,   386,   387,     0,     0,   388,  1268,   390,
7616      391,   392,     0,   393,   394,   395,  1269,  1270,   396,   397,
7617      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7618      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
7619      418,   419,   420,   421,   422,  1273,   424,     0,   425,   426,
7620      427,   428,     0,  1276,   430,   431,   432,   433,   434,     0,
7621      435,   436,     0,     0,   437,   438,   439,     0,     0,   440,
7622      441,   442,   443,   444,   445,  1279,   447,   448,   449,   450,
7623      451,   452,   453,   454,   455,     0,     0,   456,   457,  1280,
7624      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7625      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
7626      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7627      487,   488,   489,   490,     0,   491,   492,   493,   494,   495,
7628      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
7629      506,   507,   508,     0,   509,   510,   511,   512,   513,  1283,
7630      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
7631        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7632      533,   534,   535,   536,  1285,   538,     0,   539,   540,     0,
7633      541,   542,   543,   544,   545,   546,   547,     0,   548,   549,
7634      550,     0,     0,   551,   552,  1288,   554,  1289,     0,   556,
7635      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
7636      565,   566,   567,   568,  1292,     0,   569,   570,   571,   572,
7637      573,   574,   575,     0,   576,   577,   578,   579,   580,   581,
7638        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
7639      588,   589,  1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,
7640     1301,   599,   600,   601,   602,   229,     0,     0,     0,     0,
7641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7642        0,  4227,   230,   231,   232,   233,   234,   235,   236,   237,
7643        0,   238,   239,   240,     0,     0,     0,     0,     0,     0,
7644        0,   241,   242,     0,   243,   244,   245,   246,   247,   248,
7645      249,   250,   251,   252,   253,   254,     0,   255,   256,   257,
7646      258,   259,   260,     0,  1244,   261,   262,   263,   264,   265,
7647        0,   266,   267,   268,   269,  1247,     0,  1248,     0,   272,
7648      273,   274,   275,   276,   277,   278,   279,   280,     0,   281,
7649      282,   283,   284,   285,   286,     0,   287,   288,   289,   290,
7650     1249,  1250,  1251,  1252,  1253,  1254,  1255,   292,   293,   294,
7651      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
7652      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
7653        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
7654      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
7655      327,   328,   329,   330,   331,  1260,     0,   333,     0,   334,
7656      335,   336,   337,     0,   338,     0,   339,   340,     0,   341,
7657      342,   343,   344,   345,     0,   346,  1263,     0,   348,   349,
7658      350,     0,   351,   352,   353,   354,   355,   356,   357,   358,
7659      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
7660        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
7661        0,   377,     0,   378,   379,   380,   381,   382,   383,   384,
7662      385,   386,   387,     0,     0,   388,  1268,   390,   391,   392,
7663        0,   393,   394,   395,  1269,  1270,   396,   397,   398,   399,
7664      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
7665      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
7666      420,   421,   422,  1273,   424,     0,   425,   426,   427,   428,
7667        0,  1276,   430,   431,   432,   433,   434,     0,   435,   436,
7668        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
7669      443,   444,   445,  1279,   447,   448,   449,   450,   451,   452,
7670      453,   454,   455,     0,     0,   456,   457,  1280,   459,   460,
7671      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
7672      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
7673      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
7674      489,   490,     0,   491,   492,   493,   494,   495,   496,   497,
7675      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
7676      508,     0,   509,   510,   511,   512,   513,  1283,   514,   515,
7677      516,   517,   518,   519,   520,   521,   522,   523,     0,   524,
7678      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
7679      535,   536,  1285,   538,     0,   539,   540,     0,   541,   542,
7680      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
7681        0,   551,   552,  1288,   554,  1289,     0,   556,   557,   558,
7682      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
7683      567,   568,  1292,     0,   569,   570,   571,   572,   573,   574,
7684      575,     0,   576,   577,   578,   579,   580,   581,     0,     0,
7685      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
7686     1294,  1295,  1296,  1297,   594,  1298,  1299,  1300,  1301,   599,
7687      600,   601,   602,   878,     0,  1518,   670,     0,     0,     0,
7688        0,   731,     0,     0,     0,     0,     0,     0,     0,  5337,
7689      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
7690      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
7691      242,     0,   243,   244,   245,   246,   247,   248,   249,   250,
7692      251,   252,   253,   254,     0,   255,   256,   257,   258,   259,
7693      260,     0,     0,   261,   262,   263,   264,   265,     0,   266,
7694      267,   268,   269,   270,     0,   271,     0,   272,   273,   274,
7695      275,   276,   277,   278,   279,   280,     0,   281,   282,   283,
7696      284,   285,   286,     0,   287,   288,   289,   290,     0,     0,
7697        0,   291,     0,     0,     0,   292,   293,   294,   295,   296,
7698      297,   298,   299,   300,     0,   301,     0,   302,   303,   304,
7699      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
7700      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
7701      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
7702      329,   330,   331,   332,  1933,   333,     0,   334,   335,   336,
7703      337,     0,   338,     0,   339,   340,     0,   341,   342,   343,
7704      344,   345,     0,   346,   347,     0,   348,   349,   350,     0,
7705      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
7706        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
7707      369,   370,   371,   372,   373,   374,   375,   376,     0,   377,
7708        0,   378,   379,   380,   381,   382,   383,   384,   385,   386,
7709      387,     0,     0,   388,   389,   390,   391,   392,     0,   393,
7710      394,   395,     0,     0,   396,   397,   398,   399,   400,   401,
7711      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
7712      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
7713      422,   423,   424,     0,   425,   426,   427,   428,     0,   429,
7714      430,   431,   432,   433,   434,     0,   435,   436,  1934,     0,
7715      437,   438,   439,     0,     0,   440,   441,   442,   443,   444,
7716      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
7717      455,     0,     0,   456,   457,   458,   459,   460,   461,   462,
7718      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
7719      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
7720      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
7721        0,   491,   492,   493,   494,   495,   496,   497,   498,   499,
7722      500,   501,   502,   503,   504,   505,   506,   507,   508,     0,
7723      509,   510,   511,   512,   513,     0,   514,   515,   516,   517,
7724      518,   519,   520,   521,   522,   523,     0,   524,   525,   526,
7725      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
7726      537,   538,     0,   539,   540,     0,   541,   542,   543,   544,
7727      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
7728      552,   553,   554,   555,  1935,   556,   557,   558,   559,   560,
7729      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
7730        0,     0,   569,   570,   571,   572,   573,   574,   575,     0,
7731      576,   577,   578,   579,   580,   581,     0,     0,   582,     0,
7732        0,   583,   584,   585,   586,   587,   588,   589,   590,   591,
7733      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
7734      602,   878,     0,     0,     0,     0,     0,     0,  1519,  1520,
7735     5149,     0,     0,     0,     0,     0,     0,  5150,   230,   231,
7736      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
7737        3,     4,     0,     0,     0,     0,     0,   241,   242,     0,
7738      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
7739      253,   254,     0,   255,   256,   257,   258,   259,   260,     0,
7740        0,   261,   262,   263,   264,   265,     0,   266,   267,   268,
7741      269,   270,     0,   271,     0,   272,   273,   274,   275,   276,
7742      277,   278,   279,   280,     0,   281,   282,   283,   284,   285,
7743      286,     0,   287,   288,   289,   290,     0,     0,     0,   291,
7744        0,     0,     0,   292,   293,   294,   295,   296,   297,   298,
7745      299,   300,     0,   301,     0,   302,   303,   304,   305,   306,
7746      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
7747      314,   315,   316,     0,   317,   318,   319,     0,   320,   321,
7748      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
7749      331,   332,     0,   333,     0,   334,   335,   336,   337,     0,
7750      338,     0,   339,   340,     0,   341,   342,   343,   344,   345,
7751        0,   346,   347,     0,   348,   349,   350,     0,   351,   352,
7752      353,   354,   355,   356,   357,   358,   359,   360,     0,   361,
7753      362,   363,   364,   365,   366,   367,     0,   368,   369,   370,
7754      371,   372,   373,   374,   375,   376,     0,   377,     0,   378,
7755      379,   380,   381,   382,   383,   384,   385,   386,   387,     0,
7756        0,   388,   389,   390,   391,   392,     0,   393,   394,   395,
7757        0,     0,   396,   397,   398,   399,   400,   401,   402,   403,
7758      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
7759      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
7760      424,     0,   425,   426,   427,   428,     0,   429,   430,   431,
7761      432,   433,   434,     0,   435,   436,     0,     0,   437,   438,
7762      439,     0,     0,   440,   441,   442,   443,   444,   445,   446,
7763      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
7764        0,   456,   457,   458,   459,   460,   461,   462,   463,     0,
7765      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
7766      474,   475,   476,   477,   478,     0,   479,   480,   481,   482,
7767      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
7768      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
7769      502,   503,   504,   505,   506,   507,   508,    41,   509,   510,
7770      511,   512,   513,     0,   514,   515,   516,   517,   518,   519,
7771      520,   521,   522,   523,     0,   524,   525,   526,   527,   528,
7772      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
7773        0,   539,   540,    45,   541,   542,   543,   544,   545,   546,
7774      547,     0,   548,   549,   550,     0,     0,   551,   552,   553,
7775      554,   555,     0,   556,   557,   558,   559,   560,   561,   562,
7776      563,     0,     0,   564,   565,   566,   567,   568,     0,     0,
7777      569,   570,   571,   572,   573,  1161,   575,     0,   576,   577,
7778      578,   579,   580,   581,     0,     0,   582,     0,    50,   583,
7779      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
7780      594,   595,   596,   597,   598,   599,   600,   601,   602,   229,
7781        0,    51,     0,     0,     0,     0,     0,     0,     0,     0,
7782        0,     0,     0,     0,     0,    52,   230,   231,   232,   233,
7783      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
7784        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
7785      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
7786        0,   255,   256,   257,   258,   259,   260,     0,     0,   261,
7787      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
7788        0,   271,     0,   272,   273,   274,   275,   276,   277,   278,
7789      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
7790      287,   288,   289,   290,     0,     0,     0,   291,     0,     0,
7791        0,   292,   293,   294,   295,   296,   297,   298,   299,   300,
7792        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
7793      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
7794      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
7795      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
7796        0,   333,     0,   334,   335,   336,   337,     0,   338,     0,
7797      339,   340,     0,   341,   342,   343,   344,   345,     0,   346,
7798      347,     0,   348,   349,   350,     0,   351,   352,   353,   354,
7799      355,   356,   357,   358,   359,   360,     0,   361,   362,   363,
7800      364,   365,   366,   367,     0,   368,   369,   370,   371,   372,
7801      373,   374,   375,   376,     0,   377,     0,   378,   379,   380,
7802      381,   382,   383,   384,   385,   386,   387,     0,     0,   388,
7803      389,   390,   391,   392,     0,   393,   394,   395,     0,     0,
7804      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
7805      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
7806      416,   417,   418,   419,   420,   421,   422,   423,   424,     0,
7807      425,   426,   427,   428,     0,   429,   430,   431,   432,   433,
7808      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
7809        0,   440,   441,   442,   443,   444,   445,   446,   447,   448,
7810      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
7811      457,   458,   459,   460,   461,   462,   463,     0,   464,   465,
7812      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
7813      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
7814      485,   486,   487,   488,   489,   490,     0,   491,   492,   493,
7815      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
7816      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
7817      513,     0,   514,   515,   516,   517,   518,   519,   520,   521,
7818      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
7819      531,   532,   533,   534,   535,   536,   537,   538,     0,   539,
7820      540,     0,   541,   542,   543,   544,   545,   546,   547,     0,
7821      548,   549,   550,     0,     0,   551,   552,   553,   554,   555,
7822        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
7823        0,   564,   565,   566,   567,   568,     0,     0,   569,   570,
7824      571,   572,   573,   574,   575,     0,   576,   577,   578,   579,
7825      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
7826      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
7827      596,   597,   598,   599,   600,   601,   602,   610,     0,     0,
7828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7829        0,     0,     0,  4932,   230,   231,   232,   233,   234,   235,
7830      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
7831        0,     0,     0,   241,   242,     0,   243,   244,   245,     0,
7832      247,   248,   249,   250,   251,     0,   253,   254,     0,   255,
7833      256,   257,   258,   259,   260,     0,     0,   261,   262,   263,
7834      264,   265,     0,   266,   267,   268,   269,   270,     0,     0,
7835        0,   272,   273,   274,   275,   276,     0,   278,   279,   280,
7836        0,   281,   282,   283,   284,   285,   286,     0,     0,   288,
7837      289,   290,     0,     0,     0,     0,     0,     0,     0,   292,
7838      293,   294,   295,   296,   297,   298,   299,   300,     0,   301,
7839        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
7840      310,   311,     0,     0,   312,   313,   314,   315,   316,     0,
7841      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
7842      325,   326,   327,   328,   329,   330,   331,   332,     0,   333,
7843        0,   334,   335,   336,   337,     0,   338,     0,   339,     0,
7844        0,     0,   342,   343,   344,   345,     0,   346,   347,     0,
7845      348,   349,   350,     0,   351,   352,   353,   354,   355,     0,
7846      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
7847      366,   367,     0,   368,     0,   370,   371,   372,   373,   374,
7848      375,   376,     0,   377,     0,   378,     0,     0,   381,     0,
7849      383,   384,   385,   386,   387,     0,     0,   388,   389,     0,
7850      391,     0,     0,   393,   394,   395,     0,     0,   396,   397,
7851      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
7852      408,   409,   410,   411,   412,     0,   414,   415,   416,   417,
7853      418,   419,   420,   421,   422,   423,   424,     0,   425,   426,
7854        0,   428,     0,   429,   430,   431,   432,   433,   434,     0,
7855      435,   436,     0,     0,   437,   438,   439,     0,     0,   440,
7856      441,   442,     0,   444,     0,   446,   447,   448,   449,   450,
7857      451,   452,   453,   454,   455,     0,     0,   456,   457,   458,
7858      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
7859      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
7860      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
7861      487,   488,   489,   490,     0,   491,   492,     0,   494,   495,
7862      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
7863      506,   507,   508,    41,   509,   510,   511,   512,   513,     0,
7864      514,   515,   516,   517,   518,     0,   520,   521,   522,   523,
7865        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
7866      533,   534,   535,   536,   537,   538,     0,   539,   540,    45,
7867      541,     0,   543,   544,   545,   546,   547,     0,   548,   549,
7868      550,     0,     0,   551,   552,   553,   554,   555,     0,   556,
7869      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
7870      565,   566,   567,   568,     0,     0,   569,   570,   571,   572,
7871      573,  1161,   575,     0,   576,     0,   578,   579,   580,   581,
7872        0,     0,   582,     0,    50,   583,   584,   585,   586,   587,
7873      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
7874      598,   599,   600,   601,   602,   610,     0,    51,     0,     0,
7875        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7876        0,    52,   230,   231,   232,   233,   234,   235,   236,   237,
7877        0,   238,   239,   240,     0,     0,     0,     0,     0,     0,
7878        0,   241,   242,     0,   243,   244,   245,     0,   247,   248,
7879      249,   250,   251,     0,   253,   254,     0,   255,   256,   257,
7880      258,   259,   260,     0,     0,   261,   262,   263,   264,   265,
7881        0,   266,   267,   268,   269,   270,     0,     0,     0,   272,
7882      273,   274,   275,   276,     0,   278,   279,   280,     0,   281,
7883      282,   283,   284,   285,   286,     0,     0,   288,   289,   290,
7884        0,     0,     0,     0,     0,     0,     0,   292,   293,   294,
7885      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
7886      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
7887        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
7888      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
7889      327,   328,   329,   330,   331,   332,     0,   333,     0,   334,
7890      335,   336,   337,     0,   338,     0,   339,     0,     0,     0,
7891      342,   343,   344,   345,     0,   346,   347,     0,   348,   349,
7892      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
7893      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
7894        0,   368,     0,   370,   371,   372,   373,   374,   375,   376,
7895        0,   377,     0,   378,     0,     0,   381,     0,   383,   384,
7896      385,   386,   387,     0,     0,   388,   389,     0,   391,     0,
7897        0,   393,   394,   395,     0,     0,   396,   397,   398,   399,
7898      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
7899      410,   411,   412,     0,   414,   415,   416,   417,   418,   419,
7900      420,   421,   422,   423,   424,     0,   425,   426,     0,   428,
7901        0,   429,   430,   431,   432,   433,   434,     0,   435,   436,
7902        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
7903        0,   444,     0,   446,   447,   448,   449,   450,   451,   452,
7904      453,   454,   455,     0,     0,   456,   457,   458,   459,   460,
7905      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
7906      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
7907      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
7908      489,   490,     0,   491,   492,     0,   494,   495,   496,   497,
7909      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
7910      508,     0,   509,   510,   511,   512,   513,     0,   514,   515,
7911      516,   517,   518,     0,   520,   521,   522,   523,     0,   524,
7912      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
7913      535,   536,   537,   538,     0,   539,   540,     0,   541,     0,
7914      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
7915        0,   551,   552,   553,   554,   555,     0,   556,   557,   558,
7916      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
7917      567,   568,     0,     0,   569,   570,   571,   572,   573,   574,
7918      575,     0,   576,     0,   578,   579,   580,   581,     0,     0,
7919      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
7920      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
7921      600,   601,   602,   610,     0,     0,     0,     0,     0,     0,
7922        0,     0,     0,     0,     0,     0,     0,     0,     0,  1364,
7923      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
7924      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
7925      242,     0,   243,   244,   245,     0,   247,   248,   249,   250,
7926      251,     0,   253,   254,     0,   255,   256,   257,   258,   259,
7927      260,     0,     0,   261,   262,   263,   264,   265,     0,   266,
7928      267,   268,   269,   270,     0,     0,     0,   272,   273,   274,
7929      275,   276,     0,   278,   279,   280,     0,   281,   282,   283,
7930      284,   285,   286,     0,     0,   288,   289,   290,     0,     0,
7931        0,     0,     0,     0,     0,   292,   293,   294,   295,   296,
7932      297,   298,   299,   300,     0,   301,     0,   302,   303,   304,
7933      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
7934      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
7935      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
7936      329,   330,   331,   332,     0,   333,     0,   334,   335,   336,
7937      337,     0,   338,     0,   339,     0,     0,     0,   342,   343,
7938      344,   345,     0,   346,   347,     0,   348,   349,   350,     0,
7939      351,   352,   353,   354,   355,     0,   357,   358,   359,   360,
7940        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
7941        0,   370,   371,   372,   373,   374,   375,   376,     0,   377,
7942        0,   378,     0,     0,   381,     0,   383,   384,   385,   386,
7943      387,     0,     0,   388,   389,     0,   391,     0,     0,   393,
7944      394,   395,     0,     0,   396,   397,   398,   399,   400,   401,
7945      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
7946      412,     0,   414,   415,   416,   417,   418,   419,   420,   421,
7947      422,   423,   424,     0,   425,   426,     0,   428,     0,   429,
7948      430,   431,   432,   433,   434,     0,   435,   436,     0,     0,
7949      437,   438,   439,     0,     0,   440,   441,   442,     0,   444,
7950        0,   446,   447,   448,   449,   450,   451,   452,   453,   454,
7951      455,     0,     0,   456,   457,   458,   459,   460,   461,   462,
7952      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
7953      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
7954      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
7955        0,   491,   492,     0,   494,   495,   496,   497,   498,   499,
7956      500,   501,   502,   503,   504,   505,   506,   507,   508,     0,
7957      509,   510,   511,   512,   513,     0,   514,   515,   516,   517,
7958      518,     0,   520,   521,   522,   523,     0,   524,   525,   526,
7959      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
7960      537,   538,     0,   539,   540,     0,   541,     0,   543,   544,
7961      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
7962      552,   553,   554,   555,     0,   556,   557,   558,   559,   560,
7963      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
7964        0,     0,   569,   570,   571,   572,   573,   574,   575,     0,
7965      576,     0,   578,   579,   580,   581,     0,     0,   582,     0,
7966        0,   583,   584,   585,   586,   587,   588,   589,   590,   591,
7967      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
7968      602,   610,     0,     0,     0,     0,     0,     0,     0,     0,
7969        0,     0,     0,     0,     0,     0,     0,  3448,   230,   231,
7970      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
7971        0,     0,     0,     0,     0,     0,     0,   241,   242,     0,
7972      243,   244,   245,     0,   247,   248,   249,   250,   251,     0,
7973      253,   254,     0,   255,   256,   257,   258,   259,   260,     0,
7974        0,   261,   262,   263,   264,   265,     0,   266,   267,   268,
7975      269,   270,     0,     0,     0,   272,   273,   274,   275,   276,
7976        0,   278,   279,   280,     0,   281,   282,   283,   284,   285,
7977      286,     0,     0,   288,   289,   290,     0,     0,     0,     0,
7978        0,     0,     0,   292,   293,   294,   295,   296,   297,   298,
7979      299,   300,     0,   301,     0,   302,   303,   304,   305,   306,
7980      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
7981      314,   315,   316,     0,   317,   318,   319,     0,   320,   321,
7982      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
7983      331,   332,     0,   333,     0,   334,   335,   336,   337,     0,
7984      338,     0,   339,     0,     0,     0,   342,   343,   344,   345,
7985        0,   346,   347,     0,   348,   349,   350,     0,   351,   352,
7986      353,   354,   355,     0,   357,   358,   359,   360,     0,   361,
7987      362,   363,   364,   365,   366,   367,     0,   368,     0,   370,
7988      371,   372,   373,   374,   375,   376,     0,   377,     0,   378,
7989        0,     0,   381,     0,   383,   384,   385,   386,   387,     0,
7990        0,   388,   389,     0,   391,     0,     0,   393,   394,   395,
7991        0,     0,   396,   397,   398,   399,   400,   401,   402,   403,
7992      404,   405,   406,   407,   408,   409,   410,   411,   412,     0,
7993      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
7994      424,     0,   425,   426,     0,   428,     0,   429,   430,   431,
7995      432,   433,   434,     0,   435,   436,     0,     0,   437,   438,
7996      439,     0,     0,   440,   441,   442,     0,   444,     0,   446,
7997      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
7998        0,   456,   457,   458,   459,   460,   461,   462,   463,     0,
7999      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8000      474,   475,   476,   477,   478,     0,   479,   480,   481,   482,
8001      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
8002      492,     0,   494,   495,   496,   497,   498,   499,   500,   501,
8003      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
8004      511,   512,   513,     0,   514,   515,   516,   517,   518,     0,
8005      520,   521,   522,   523,     0,   524,   525,   526,   527,   528,
8006      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
8007        0,   539,   540,     0,   541,     0,   543,   544,   545,   546,
8008      547,     0,   548,   549,   550,     0,     0,   551,   552,   553,
8009      554,   555,     0,   556,   557,   558,   559,   560,   561,   562,
8010      563,     0,     0,   564,   565,   566,   567,   568,     0,     0,
8011      569,   570,   571,   572,   573,   574,   575,     0,   576,     0,
8012      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
8013      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
8014      594,   595,   596,   597,   598,   599,   600,   601,   602,   610,
8015        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8016        0,     0,     0,     0,     0,  4152,   230,   231,   232,   233,
8017      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
8018        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
8019      245,     0,   247,   248,   249,   250,   251,     0,   253,   254,
8020        0,   255,   256,   257,   258,   259,   260,     0,     0,   261,
8021      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
8022        0,     0,     0,   272,   273,   274,   275,   276,     0,   278,
8023      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
8024        0,   288,   289,   290,     0,     0,     0,     0,     0,     0,
8025        0,   292,   293,   294,   295,   296,   297,   298,   299,   300,
8026        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
8027      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
8028      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
8029      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
8030        0,   333,     0,   334,   335,   336,   337,     0,   338,     0,
8031      339,     0,     0,     0,   342,   343,   344,   345,     0,   346,
8032      347,     0,   348,   349,   350,     0,   351,   352,   353,   354,
8033      355,     0,   357,   358,   359,   360,     0,   361,   362,   363,
8034      364,   365,   366,   367,     0,   368,     0,   370,   371,   372,
8035      373,   374,   375,   376,     0,   377,     0,   378,     0,     0,
8036      381,     0,   383,   384,   385,   386,   387,     0,     0,   388,
8037      389,     0,   391,     0,     0,   393,   394,   395,     0,     0,
8038      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8039      406,   407,   408,   409,   410,   411,   412,     0,   414,   415,
8040      416,   417,   418,   419,   420,   421,   422,   423,   424,     0,
8041      425,   426,     0,   428,     0,   429,   430,   431,   432,   433,
8042      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
8043        0,   440,   441,   442,     0,   444,     0,   446,   447,   448,
8044      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
8045      457,   458,   459,   460,   461,   462,   463,     0,   464,   465,
8046      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8047      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
8048      485,   486,   487,   488,   489,   490,     0,   491,   492,     0,
8049      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
8050      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
8051      513,     0,   514,   515,   516,   517,   518,     0,   520,   521,
8052      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
8053      531,   532,   533,   534,   535,   536,   537,   538,     0,   539,
8054      540,     0,   541,     0,   543,   544,   545,   546,   547,     0,
8055      548,   549,   550,     0,     0,   551,   552,   553,   554,   555,
8056        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
8057        0,   564,   565,   566,   567,   568,     0,     0,   569,   570,
8058      571,   572,   573,   574,   575,     0,   576,     0,   578,   579,
8059      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
8060      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
8061      596,   597,   598,   599,   600,   601,   602,     0,     0,     0,
8062     1074,     0,  1518,   670,     0,     0,     0,   892,   731,     0,
8063        0,     0,     0,  4620,   893,   894,   895,   230,   231,   232,
8064      233,   234,   235,   236,   237,  1650,   238,   239,   240,  1651,
8065     1652,  1653,  1654,  1655,  1656,  1657,   241,   242,  1658,   243,
8066      244,   245,   246,   247,   248,   249,     0,  1075,   252,  1076,
8067     1077,  1659,   255,   256,   257,   258,   259,   260,  1660,  1661,
8068      261,   262,  1078,  1079,   265,  1662,   266,   267,   268,   269,
8069        0,  1663,   271,  1664,   272,   273,   274,   275,   276,   277,
8070      278,   279,   280,  1665,   281,   282,   283,   284,   285,   286,
8071     1666,   287,   288,   289,   290,  1667,  1668,  1669,   291,  1670,
8072     1671,  1672,   292,   293,   294,   295,   296,   297,  1080,  1081,
8073      300,  1673,   301,  1674,   302,   303,   304,   305,   306,   307,
8074     1675,   308,   309,   310,   311,  1676,  1677,   312,   313,  1082,
8075      315,   316,  1678,   317,   318,   319,  1679,   320,   321,   322,
8076     1680,   323,   324,   325,   326,     0,   328,   329,   330,   331,
8077        0,  1681,   333,  1682,   334,   335,  1083,   337,  1683,   338,
8078     1684,   339,   340,  1685,   341,   342,   343,   344,   345,  1686,
8079      346,     0,  1687,     0,   349,   350,  1688,   351,   352,   353,
8080      354,   355,   356,   357,   358,   359,   360,  1689,   361,   362,
8081      363,   364,   365,   366,   367,  1690,   368,   369,     0,   371,
8082      372,   373,   374,  1085,  1086,  1691,  1087,  1692,   378,   379,
8083      380,   381,   382,   383,   384,   385,   386,   387,  1693,  1694,
8084      388,     0,   390,   391,   392,  1695,   393,   394,   395,  1696,
8085     1697,   396,   397,   398,   399,   400,   401,   402,   403,   404,
8086      405,   406,   407,   408,   409,   410,   411,  1088,   413,  1089,
8087      415,   416,   417,   418,   419,   420,   421,  3886,     0,   424,
8088     1698,   425,   426,   427,   428,  1699,     0,   430,  1090,   432,
8089      433,   434,  1700,   435,   436,  1701,  1702,  3887,   438,   439,
8090     1703,  1704,   440,   441,     0,   443,   444,   445,     0,   447,
8091      448,   449,   450,   451,   452,   453,   454,   455,     0,  1705,
8092      456,   457,     0,   459,     0,   461,   462,   463,  1706,   464,
8093      465,   466,   467,   468,   469,   470,   471,   472,   473,  1091,
8094      475,   476,   477,   478,  1707,   479,   480,   481,   482,   483,
8095      484,   485,   486,   487,   488,   489,   490,  1708,   491,   492,
8096      493,   494,   495,   496,   497,   498,     0,   500,   501,   502,
8097      503,   504,   505,   506,   507,   508,  1709,   509,   510,   511,
8098      512,   513,  1710,   514,   515,  2191,   517,   518,   519,   520,
8099      521,  1093,   523,  1711,   524,   525,   526,   527,   528,   529,
8100      530,   531,   532,   533,   534,   535,   536,     0,   538,  1712,
8101      539,   540,  1713,   541,   542,   543,   544,   545,   546,   547,
8102     1714,   548,  1094,  1095,  1715,  1716,   551,   552,     0,   554,
8103        0,  1717,   556,   557,   558,   559,   560,   561,   562,   563,
8104     1718,  1719,   564,   565,   566,   567,   568,  1720,  1721,   569,
8105      570,   571,   572,   573,     0,  1096,  1722,   576,   577,   578,
8106      579,   580,   581,  1723,  1724,   582,  1725,  1726,   583,   584,
8107      585,   586,   587,   588,     0,     0,     0,     0,     0,     0,
8108        0,     0,     0,     0,     0,   600,   601,   602,     0,     0,
8109        0,   898,   899,   900,     0,  3888,  3889,   903,   904,   905,
8110      906,  1074,     0,  1518,   670,     0,     0,     0,   892,   731,
8111        0,     0,     0,     0,     0,   893,   894,   895,   230,   231,
8112      232,   233,   234,   235,   236,   237,  1650,   238,   239,   240,
8113     1651,  1652,  1653,  1654,  1655,  1656,  1657,   241,   242,  1658,
8114      243,   244,   245,   246,   247,   248,   249,     0,  1075,   252,
8115     1076,  1077,  1659,   255,   256,   257,   258,   259,   260,  1660,
8116     1661,   261,   262,  1078,  1079,   265,  1662,   266,   267,   268,
8117      269,     0,  1663,   271,  1664,   272,   273,   274,   275,   276,
8118      277,   278,   279,   280,  1665,   281,   282,   283,   284,   285,
8119      286,  1666,   287,   288,   289,   290,  1667,  1668,  1669,   291,
8120     1670,  1671,  1672,   292,   293,   294,   295,   296,   297,  1080,
8121     1081,   300,  1673,   301,  1674,   302,   303,   304,   305,   306,
8122      307,  1675,   308,   309,   310,   311,  1676,  1677,   312,   313,
8123     1082,   315,   316,  1678,   317,   318,   319,  1679,   320,   321,
8124      322,  1680,   323,   324,   325,   326,     0,   328,   329,   330,
8125      331,     0,  1681,   333,  1682,   334,   335,  1083,   337,  1683,
8126      338,  1684,   339,   340,  1685,   341,   342,   343,   344,   345,
8127     1686,   346,     0,  1687,     0,   349,   350,  1688,   351,   352,
8128      353,   354,   355,   356,   357,   358,   359,   360,  1689,   361,
8129      362,   363,   364,   365,   366,   367,  1690,   368,   369,     0,
8130      371,   372,   373,   374,  1085,  1086,  1691,  1087,  1692,   378,
8131      379,   380,   381,   382,   383,   384,   385,   386,   387,  1693,
8132     1694,   388,     0,   390,   391,   392,  1695,   393,   394,   395,
8133     1696,  1697,   396,   397,   398,   399,   400,   401,   402,   403,
8134      404,   405,   406,   407,   408,   409,   410,   411,  1088,   413,
8135     1089,   415,   416,   417,   418,   419,   420,   421,  4322,     0,
8136      424,  1698,   425,   426,   427,   428,  1699,     0,   430,  1090,
8137      432,   433,   434,  1700,   435,   436,  1701,  1702,  3887,   438,
8138      439,  1703,  1704,   440,   441,     0,   443,   444,   445,     0,
8139      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
8140     1705,   456,   457,     0,   459,     0,   461,   462,   463,  1706,
8141      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8142     1091,   475,   476,   477,   478,  1707,   479,   480,   481,   482,
8143      483,   484,   485,   486,   487,   488,   489,   490,  1708,   491,
8144      492,   493,   494,   495,   496,   497,   498,     0,   500,   501,
8145      502,   503,   504,   505,   506,   507,   508,  1709,   509,   510,
8146      511,   512,   513,  1710,   514,   515,  2191,   517,   518,   519,
8147      520,   521,  1093,   523,  1711,   524,   525,   526,   527,   528,
8148      529,   530,   531,   532,   533,   534,   535,   536,     0,   538,
8149     1712,   539,   540,  1713,   541,   542,   543,   544,   545,   546,
8150      547,  1714,   548,  1094,  1095,  1715,  1716,   551,   552,     0,
8151      554,     0,  1717,   556,   557,   558,   559,   560,   561,   562,
8152      563,  1718,  1719,   564,   565,   566,   567,   568,  1720,  1721,
8153      569,   570,   571,   572,   573,     0,  1096,  1722,   576,   577,
8154      578,   579,   580,   581,  1723,  1724,   582,  1725,  1726,   583,
8155      584,   585,   586,   587,   588,     0,     0,     0,     0,     0,
8156        0,     0,     0,     0,     0,     0,   600,   601,   602,     0,
8157        0,     0,   898,   899,   900,   610,  3888,  3889,   903,   904,
8158      905,   906,   892,     0,     0,     0,     0,     0,     0,   893,
8159      894,   895,   230,   231,   232,   233,   234,   235,   236,   237,
8160        0,   238,   239,   240,     0,     0,     0,     0,     0,     0,
8161        0,   241,   242,     0,   243,   244,   245,     0,   247,   248,
8162      249,   250,   251,     0,   253,   254,     0,   255,   256,   257,
8163      258,   259,   260,     0,     0,   261,   262,   263,   264,   265,
8164        0,   266,   896,   268,   269,   270,     0,     0,     0,   272,
8165      273,   274,   275,   276,     0,   278,   279,   280,     0,   281,
8166      282,   283,   284,   285,   286,     0,     0,   288,   289,   290,
8167        0,     0,     0,     0,     0,     0,     0,   292,   293,   294,
8168      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
8169      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
8170        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
8171      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
8172      327,   328,   329,   330,   331,   332,     0,   897,     0,   334,
8173      335,   336,   337,     0,   338,     0,   339,     0,     0,     0,
8174      342,   343,   344,   345,     0,   346,   347,     0,   348,   349,
8175      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
8176      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
8177        0,   368,     0,   370,   371,   372,   373,   374,   375,   376,
8178        0,   377,     0,   378,     0,     0,   381,     0,   383,   384,
8179      385,   386,   387,     0,     0,   388,   389,     0,   391,     0,
8180        0,   393,   394,   395,     0,     0,   396,   397,   398,   399,
8181      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
8182      410,   411,   412,     0,   414,   415,   416,   417,   418,   419,
8183      420,   421,   422,   423,   424,     0,   425,   426,     0,   428,
8184        0,   429,   430,   431,   432,   433,   434,     0,   435,   436,
8185        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
8186        0,   444,     0,   446,   447,   448,   449,   450,   451,   452,
8187      453,   454,   455,     0,     0,   456,   457,   458,   459,   460,
8188      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
8189      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
8190      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
8191      489,   490,     0,   491,   492,     0,   494,   495,   496,   497,
8192      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
8193      508,     0,   509,   510,   511,   512,   513,     0,   514,   515,
8194      516,   517,   518,     0,   520,   521,   522,   523,     0,   524,
8195      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
8196      535,   536,   537,   538,     0,   539,   540,     0,   541,     0,
8197      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
8198        0,   551,   552,   553,   554,   555,     0,   556,   557,   558,
8199      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
8200      567,   568,     0,     0,   569,   570,   571,   572,   573,   574,
8201      575,     0,   576,     0,   578,   579,   580,   581,     0,     0,
8202      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
8203      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
8204      600,   601,   602,     0,     0,     0,   898,   899,   900,   610,
8205      901,   902,   903,   904,   905,   906,   892,     0,     0,     0,
8206        0,     0,     0,   893,   894,   895,   230,   231,   232,   233,
8207      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
8208        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
8209      245,     0,   247,   248,   249,   250,   251,     0,   253,   254,
8210        0,   255,   256,   257,   258,   259,   260,     0,     0,   261,
8211      262,   263,   264,   265,     0,   266,  1024,   268,   269,   270,
8212        0,     0,     0,   272,   273,   274,   275,   276,     0,   278,
8213      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
8214        0,   288,   289,   290,     0,     0,     0,     0,     0,     0,
8215        0,   292,   293,   294,   295,   296,   297,   298,   299,   300,
8216        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
8217      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
8218      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
8219      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
8220        0,  1025,     0,   334,   335,   336,   337,     0,   338,     0,
8221      339,     0,     0,     0,   342,   343,   344,   345,     0,   346,
8222      347,     0,   348,   349,   350,     0,   351,   352,   353,   354,
8223      355,     0,   357,   358,   359,   360,     0,   361,   362,   363,
8224      364,   365,   366,   367,     0,   368,     0,   370,   371,   372,
8225      373,   374,   375,   376,     0,   377,     0,   378,     0,     0,
8226      381,     0,   383,   384,   385,   386,   387,     0,     0,   388,
8227      389,     0,   391,     0,     0,   393,   394,   395,     0,     0,
8228      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8229      406,   407,   408,   409,   410,   411,   412,     0,   414,   415,
8230      416,   417,   418,   419,   420,   421,   422,   423,   424,     0,
8231      425,   426,     0,   428,     0,   429,   430,   431,   432,   433,
8232      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
8233        0,   440,   441,   442,     0,   444,     0,   446,   447,   448,
8234      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
8235      457,   458,   459,   460,   461,   462,   463,     0,   464,   465,
8236      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8237      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
8238      485,   486,   487,   488,   489,   490,     0,   491,   492,     0,
8239      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
8240      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
8241      513,     0,   514,   515,   516,   517,   518,     0,   520,   521,
8242      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
8243      531,   532,   533,   534,   535,   536,   537,   538,     0,   539,
8244      540,     0,   541,     0,   543,   544,   545,   546,   547,     0,
8245      548,   549,   550,     0,     0,   551,   552,   553,   554,   555,
8246        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
8247        0,   564,   565,   566,   567,   568,     0,     0,   569,   570,
8248      571,   572,   573,   574,   575,     0,   576,     0,   578,   579,
8249      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
8250      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
8251      596,   597,   598,   599,   600,   601,   602,     0,     0,     0,
8252      898,   899,   900,   610,   901,   902,   903,   904,   905,   906,
8253      892,     0,     0,     0,     0,     0,     0,   893,   894,   895,
8254      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
8255      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
8256      242,     0,   243,   244,   245,     0,   247,   248,   249,   250,
8257      251,     0,   253,   254,     0,   255,   256,   257,   258,   259,
8258      260,     0,     0,   261,   262,   263,   264,   265,     0,   266,
8259     1124,   268,   269,   270,     0,     0,     0,   272,   273,   274,
8260      275,   276,     0,   278,   279,   280,     0,   281,   282,   283,
8261      284,   285,   286,     0,     0,   288,   289,   290,     0,     0,
8262        0,     0,     0,     0,     0,   292,   293,   294,   295,   296,
8263      297,   298,   299,   300,     0,   301,     0,   302,   303,   304,
8264      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
8265      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
8266      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
8267      329,   330,   331,   332,     0,  1125,     0,   334,   335,   336,
8268      337,     0,   338,     0,   339,     0,     0,     0,   342,   343,
8269      344,   345,     0,   346,   347,     0,   348,   349,   350,     0,
8270      351,   352,   353,   354,  1126,     0,   357,   358,   359,   360,
8271        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
8272        0,   370,   371,   372,   373,   374,   375,   376,     0,   377,
8273        0,   378,     0,     0,   381,     0,   383,   384,   385,   386,
8274      387,     0,     0,   388,   389,     0,   391,     0,     0,   393,
8275      394,   395,     0,     0,   396,   397,   398,   399,   400,   401,
8276      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
8277      412,     0,   414,   415,   416,   417,   418,   419,   420,   421,
8278      422,   423,   424,     0,   425,   426,     0,   428,     0,   429,
8279      430,   431,   432,   433,   434,     0,   435,   436,     0,     0,
8280      437,   438,   439,     0,     0,   440,   441,   442,     0,   444,
8281        0,   446,   447,   448,   449,   450,   451,   452,   453,   454,
8282      455,     0,     0,   456,   457,   458,   459,   460,   461,   462,
8283      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
8284      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
8285      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
8286        0,   491,   492,     0,   494,   495,   496,   497,   498,   499,
8287      500,   501,   502,   503,   504,   505,   506,   507,   508,     0,
8288      509,   510,   511,   512,   513,     0,   514,   515,   516,   517,
8289      518,     0,   520,   521,   522,   523,     0,   524,   525,   526,
8290      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
8291      537,   538,     0,   539,   540,     0,   541,     0,   543,   544,
8292      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
8293      552,   553,   554,   555,     0,   556,   557,   558,   559,   560,
8294      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
8295        0,     0,   569,   570,   571,   572,   573,   574,   575,     0,
8296      576,     0,   578,   579,   580,   581,     0,     0,   582,     0,
8297        0,   583,   584,   585,   586,   587,   588,   589,   590,   591,
8298      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
8299      602,     0,     0,     0,   898,   899,   900,   610,   901,   902,
8300      903,   904,   905,   906,   892,     0,     0,     0,     0,     0,
8301        0,   893,   894,   895,   230,   231,   232,   233,   234,   235,
8302      236,   237,     0,   238,   239,   240,     0,     0,     0,     0,
8303        0,     0,     0,   241,   242,     0,   243,   244,   245,     0,
8304      247,   248,   249,   250,   251,     0,   253,   254,     0,   255,
8305      256,   257,   258,   259,   260,     0,     0,   261,   262,   263,
8306      264,   265,     0,   266,  1749,   268,   269,   270,     0,     0,
8307        0,   272,   273,   274,   275,   276,     0,   278,   279,   280,
8308        0,   281,   282,   283,   284,   285,   286,     0,     0,   288,
8309      289,   290,     0,     0,     0,     0,     0,     0,     0,   292,
8310      293,   294,   295,   296,   297,   298,   299,   300,     0,   301,
8311        0,   302,   303,   304,   305,   306,   307,     0,   308,   309,
8312      310,   311,     0,     0,   312,   313,   314,   315,   316,     0,
8313      317,   318,   319,     0,   320,   321,   322,     0,   323,   324,
8314      325,   326,   327,   328,   329,   330,   331,   332,     0,  1750,
8315        0,   334,   335,   336,   337,     0,   338,     0,   339,     0,
8316        0,     0,   342,   343,   344,   345,     0,   346,   347,     0,
8317      348,   349,   350,     0,   351,   352,   353,   354,   355,     0,
8318      357,   358,   359,   360,     0,   361,   362,   363,   364,   365,
8319      366,   367,     0,   368,     0,   370,   371,   372,   373,   374,
8320      375,   376,     0,   377,     0,   378,     0,     0,   381,     0,
8321      383,   384,   385,   386,   387,     0,     0,   388,   389,     0,
8322      391,     0,     0,   393,   394,   395,     0,     0,   396,   397,
8323      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
8324      408,   409,   410,   411,   412,     0,   414,   415,   416,   417,
8325      418,   419,   420,   421,   422,   423,   424,     0,   425,   426,
8326        0,   428,     0,   429,   430,   431,   432,   433,   434,     0,
8327      435,   436,     0,     0,   437,   438,   439,     0,     0,   440,
8328      441,   442,     0,   444,     0,   446,   447,   448,   449,   450,
8329      451,   452,   453,   454,   455,     0,     0,   456,   457,   458,
8330      459,   460,   461,   462,   463,     0,   464,   465,   466,   467,
8331      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
8332      478,     0,   479,   480,   481,   482,   483,   484,   485,   486,
8333      487,   488,   489,   490,     0,   491,   492,     0,   494,   495,
8334      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
8335      506,   507,   508,     0,   509,   510,   511,   512,   513,     0,
8336      514,   515,   516,   517,   518,     0,   520,   521,   522,   523,
8337        0,   524,   525,   526,   527,   528,   529,   530,   531,   532,
8338      533,   534,   535,   536,   537,   538,     0,   539,   540,     0,
8339      541,     0,   543,   544,   545,   546,   547,     0,   548,   549,
8340      550,     0,     0,   551,   552,   553,   554,   555,     0,   556,
8341      557,   558,   559,   560,   561,   562,   563,     0,     0,   564,
8342      565,   566,   567,   568,     0,     0,   569,   570,   571,   572,
8343      573,   574,   575,     0,   576,     0,   578,   579,   580,   581,
8344        0,     0,   582,     0,     0,   583,   584,   585,   586,   587,
8345      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
8346      598,   599,   600,   601,   602,     0,     0,     0,   898,   899,
8347      900,   610,   901,   902,   903,   904,   905,   906,   892,     0,
8348        0,     0,     0,     0,     0,   893,   894,   895,   230,   231,
8349      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
8350        0,     0,     0,     0,     0,     0,     0,   241,   242,     0,
8351      243,   244,   245,     0,   247,   248,   249,   250,   251,     0,
8352      253,   254,     0,   255,   256,   257,   258,   259,   260,     0,
8353        0,   261,   262,   263,   264,   265,     0,   266,   267,   268,
8354      269,   270,     0,     0,     0,   272,   273,   274,   275,   276,
8355        0,   278,   279,   280,     0,   281,   282,   283,   284,   285,
8356      286,     0,     0,   288,   289,   290,     0,     0,     0,     0,
8357        0,     0,     0,   292,   293,   294,   295,   296,   297,   298,
8358      299,   300,     0,   301,     0,   302,   303,   304,   305,   306,
8359      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
8360      314,   315,   316,     0,   317,   318,   319,     0,   320,   321,
8361      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
8362      331,   332,     0,   333,     0,   334,   335,   336,   337,     0,
8363      338,     0,   339,     0,     0,     0,   342,   343,   344,   345,
8364        0,   346,   347,     0,   348,   349,   350,     0,   351,   352,
8365      353,   354,   355,     0,   357,   358,   359,   360,     0,   361,
8366      362,   363,   364,   365,   366,   367,     0,   368,     0,   370,
8367      371,   372,   373,   374,   375,   376,     0,   377,     0,   378,
8368        0,     0,   381,     0,   383,   384,   385,   386,   387,     0,
8369        0,   388,   389,     0,   391,     0,     0,   393,   394,   395,
8370        0,     0,   396,   397,   398,   399,   400,   401,   402,   403,
8371      404,   405,   406,   407,   408,   409,   410,   411,   412,     0,
8372      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
8373      424,     0,   425,   426,     0,   428,     0,   429,   430,   431,
8374      432,   433,   434,     0,   435,   436,     0,     0,   437,   438,
8375      439,     0,     0,   440,   441,   442,     0,   444,     0,   446,
8376      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
8377        0,   456,   457,   458,   459,   460,   461,   462,   463,     0,
8378      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8379      474,   475,   476,   477,   478,     0,   479,   480,   481,   482,
8380      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
8381      492,     0,   494,   495,   496,   497,   498,   499,   500,   501,
8382      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
8383      511,   512,   513,     0,   514,   515,   516,   517,   518,     0,
8384      520,   521,   522,   523,     0,   524,   525,   526,   527,   528,
8385      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
8386        0,   539,   540,     0,   541,     0,   543,   544,   545,   546,
8387      547,     0,   548,   549,   550,     0,     0,   551,   552,   553,
8388      554,   555,     0,   556,   557,   558,   559,   560,   561,   562,
8389      563,     0,     0,   564,   565,   566,   567,   568,     0,     0,
8390      569,   570,   571,   572,   573,   574,   575,     0,   576,     0,
8391      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
8392      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
8393      594,   595,   596,   597,   598,   599,   600,   601,   602,     0,
8394        0,     0,   898,   899,   900,   610,   901,   902,   903,   904,
8395      905,   906,   892,     0,     0,     0,     0,     0,     0,   893,
8396      894,   895,   230,   231,   232,   233,   234,   235,   236,   237,
8397        0,   238,   239,   240,     0,     0,     0,     0,     0,     0,
8398        0,   241,   242,     0,   243,   244,   245,     0,   247,   248,
8399      249,   250,   251,     0,   253,   254,     0,   255,   256,   257,
8400      258,   259,   260,     0,     0,   261,   262,   263,   264,   265,
8401        0,   266,  3024,   268,   269,   270,     0,     0,     0,   272,
8402      273,   274,   275,   276,     0,   278,   279,   280,     0,   281,
8403      282,   283,   284,   285,   286,     0,     0,   288,   289,   290,
8404        0,     0,     0,     0,     0,     0,     0,   292,   293,   294,
8405      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
8406      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
8407        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
8408      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
8409      327,   328,   329,   330,   331,   332,     0,  3025,     0,   334,
8410      335,   336,   337,     0,   338,     0,   339,     0,     0,     0,
8411      342,   343,   344,   345,     0,   346,   347,     0,   348,   349,
8412      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
8413      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
8414        0,   368,     0,   370,   371,   372,   373,   374,   375,   376,
8415        0,   377,     0,   378,     0,     0,   381,     0,   383,   384,
8416      385,   386,   387,     0,     0,   388,   389,     0,   391,     0,
8417        0,   393,   394,   395,     0,     0,   396,   397,   398,   399,
8418      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
8419      410,   411,   412,     0,   414,   415,   416,   417,   418,   419,
8420      420,   421,   422,   423,   424,     0,   425,   426,     0,   428,
8421        0,   429,   430,   431,   432,   433,   434,     0,   435,   436,
8422        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
8423        0,   444,     0,   446,   447,   448,   449,   450,   451,   452,
8424      453,   454,   455,     0,     0,   456,   457,   458,   459,   460,
8425      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
8426      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
8427      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
8428      489,   490,     0,   491,   492,     0,   494,   495,   496,   497,
8429      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
8430      508,     0,   509,   510,   511,   512,   513,     0,   514,   515,
8431      516,   517,   518,     0,   520,   521,   522,   523,     0,   524,
8432      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
8433      535,   536,   537,   538,     0,   539,   540,     0,   541,     0,
8434      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
8435        0,   551,   552,   553,   554,   555,     0,   556,   557,   558,
8436      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
8437      567,   568,     0,     0,   569,   570,   571,   572,   573,   574,
8438      575,     0,   576,     0,   578,   579,   580,   581,     0,     0,
8439      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
8440      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
8441      600,   601,   602,     0,     0,     0,   898,   899,   900,   610,
8442      901,   902,   903,   904,   905,   906,   892,     0,     0,     0,
8443        0,     0,     0,   893,   894,   895,   230,   231,   232,   233,
8444      234,   235,   236,   237,     0,   238,   239,   240,     0,     0,
8445        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
8446      245,     0,   247,   248,   249,   250,   251,     0,   253,   254,
8447        0,   255,   256,   257,   258,   259,   260,     0,     0,   261,
8448      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
8449        0,     0,     0,   272,   273,   274,   275,   276,     0,   278,
8450      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
8451        0,   288,   289,   290,     0,     0,     0,     0,     0,     0,
8452        0,   292,   293,   294,   295,   296,   297,   298,   299,   300,
8453        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
8454      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
8455      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
8456      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
8457        0,   333,     0,   334,   335,   336,   337,     0,   338,     0,
8458      339,     0,     0,     0,   342,   343,   344,   345,     0,   346,
8459      347,     0,   348,   349,   350,     0,   351,   352,   353,   354,
8460      355,     0,   357,   358,   359,   360,     0,   361,   362,   363,
8461      364,   365,   366,   367,     0,   368,     0,   370,   371,   372,
8462      373,   374,   375,   376,     0,   377,     0,   378,     0,     0,
8463      381,     0,   383,   384,   385,   386,   387,     0,     0,   388,
8464      389,     0,   391,     0,     0,   393,   394,   395,     0,     0,
8465      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8466      406,   407,   408,   409,   410,   411,   412,     0,   414,   415,
8467      416,   417,   418,   419,   420,   421,   422,   423,   424,     0,
8468      425,   426,     0,   428,     0,   429,   430,   431,   432,   433,
8469      434,     0,   435,   436,     0,     0,  4909,   438,   439,     0,
8470        0,   440,   441,   442,     0,   444,     0,   446,   447,   448,
8471      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
8472      457,   458,   459,   460,   461,   462,   463,     0,   464,   465,
8473      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8474      476,   477,   478,     0,   479,   480,   481,   482,   483,   484,
8475      485,   486,   487,   488,   489,   490,     0,   491,   492,     0,
8476      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
8477      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
8478      513,     0,   514,   515,   516,   517,   518,     0,   520,   521,
8479      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
8480      531,   532,   533,   534,   535,   536,   537,   538,     0,   539,
8481      540,     0,   541,     0,   543,   544,   545,   546,   547,     0,
8482      548,   549,   550,     0,     0,   551,   552,   553,   554,   555,
8483        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
8484        0,   564,   565,   566,   567,   568,     0,     0,   569,   570,
8485      571,   572,   573,   574,   575,     0,   576,     0,   578,   579,
8486      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
8487      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
8488      596,   597,   598,   599,   600,   601,   602,  1649,     0,     0,
8489      898,   899,   900,     0,   901,   902,   903,   904,   905,   906,
8490        0,     0,     0,     0,   230,   231,   232,   233,   234,   235,
8491      236,   237,  1650,   238,   239,   240,  1651,  1652,  1653,  1654,
8492     1655,  1656,  1657,   241,   242,  1658,   243,   244,   245,   246,
8493      247,   248,   249,   250,   251,   252,   253,   254,  1659,   255,
8494      256,   257,   258,   259,   260,  1660,  1661,   261,   262,   263,
8495      264,   265,  1662,   266,   267,   268,   269,   270,  1663,   271,
8496     1664,   272,   273,   274,   275,   276,   277,   278,   279,   280,
8497     1665,   281,   282,   283,   284,   285,   286,  1666,   287,   288,
8498      289,   290,  1667,  1668,  1669,   291,  1670,  1671,  1672,   292,
8499      293,   294,   295,   296,   297,   298,   299,   300,  1673,   301,
8500     1674,   302,   303,   304,   305,   306,   307,  1675,   308,   309,
8501      310,   311,  1676,  1677,   312,   313,   314,   315,   316,  1678,
8502      317,   318,   319,  1679,   320,   321,   322,  1680,   323,   324,
8503      325,   326,   327,   328,   329,   330,   331,   332,  1681,   333,
8504     1682,   334,   335,   336,   337,  1683,   338,  1684,   339,   340,
8505     1685,   341,   342,   343,   344,   345,  1686,   346,   347,  1687,
8506      348,   349,   350,  1688,   351,   352,   353,   354,   355,   356,
8507      357,   358,   359,   360,  1689,   361,   362,   363,   364,   365,
8508      366,   367,  1690,   368,   369,   370,   371,   372,   373,   374,
8509      375,   376,  1691,   377,  1692,   378,   379,   380,   381,   382,
8510      383,   384,   385,   386,   387,  1693,  1694,   388,   389,   390,
8511      391,   392,  1695,   393,   394,   395,  1696,  1697,   396,   397,
8512      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
8513      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
8514      418,   419,   420,   421,   422,   423,   424,  1698,   425,   426,
8515      427,   428,  1699,   429,   430,   431,   432,   433,   434,  1700,
8516      435,   436,  1701,  1702,   437,   438,   439,  1703,  1704,   440,
8517      441,   442,   443,   444,   445,   446,   447,   448,   449,   450,
8518      451,   452,   453,   454,   455,     0,  1705,   456,   457,   458,
8519      459,   460,   461,   462,   463,  1706,   464,   465,   466,   467,
8520      468,   469,   470,   471,   472,   473,   474,   475,   476,   477,
8521      478,  1707,   479,   480,   481,   482,   483,   484,   485,   486,
8522      487,   488,   489,   490,  1708,   491,   492,   493,   494,   495,
8523      496,   497,   498,   499,   500,   501,   502,   503,   504,   505,
8524      506,   507,   508,  1709,   509,   510,   511,   512,   513,  1710,
8525      514,   515,   516,   517,   518,   519,   520,   521,   522,   523,
8526     1711,   524,   525,   526,   527,   528,   529,   530,   531,   532,
8527      533,   534,   535,   536,   537,   538,  1712,   539,   540,  1713,
8528      541,   542,   543,   544,   545,   546,   547,  1714,   548,   549,
8529      550,  1715,  1716,   551,   552,   553,   554,   555,  1717,   556,
8530      557,   558,   559,   560,   561,   562,   563,  1718,  1719,   564,
8531      565,   566,   567,   568,  1720,  1721,   569,   570,   571,   572,
8532      573,   574,   575,  1722,   576,   577,   578,   579,   580,   581,
8533     1723,  1724,   582,  1725,  1726,   583,   584,   585,   586,   587,
8534      588,   589,   590,   591,   592,   593,   594,   595,   596,   597,
8535      598,   599,   600,   601,   602,   610,     0,     0,     0,     0,
8536        0,     0,     0,     0,  1727,     0,     0,     0,     0,     0,
8537        0,     0,   230,   231,   232,   233,   234,   235,   236,   237,
8538        0,   238,   239,   240,     0,     0,     0,     0,     0,     0,
8539        0,   241,   242,     0,   243,   244,   245,     0,   247,   248,
8540      249,   250,   251,     0,   253,   254,     0,   255,   256,   257,
8541      258,   259,   260,     0,     0,   261,   262,   263,   264,   265,
8542        0,   266,   267,   268,   269,   270,     0,     0,     0,   272,
8543      273,   274,   275,   276,     0,   278,   279,   280,     0,   281,
8544      282,   283,   284,   285,   286,     0,     0,   288,   289,   290,
8545        0,     0,     0,     0,     0,     0,     0,   292,   293,   294,
8546      295,   296,   297,   298,   299,   300,     0,   301,     0,   302,
8547      303,   304,   305,   306,   307,     0,   308,   309,   310,   311,
8548        0,     0,   312,   313,   314,   315,   316,     0,   317,   318,
8549      319,     0,   320,   321,   322,     0,   323,   324,   325,   326,
8550      327,   328,   329,   330,   331,   332,     0,   333,     0,   334,
8551      335,   336,   337,     0,   338,     0,   339,     0,     0,     0,
8552      342,   343,   344,   345,     0,   346,   347,     0,   348,   349,
8553      350,     0,   351,   352,   353,   354,   355,     0,   357,   358,
8554      359,   360,     0,   361,   362,   363,   364,   365,   366,   367,
8555        0,   368,     0,   370,   371,   372,   373,   374,   375,   376,
8556        0,   377,     0,   378,     0,     0,   381,     0,   383,   384,
8557      385,   386,   387,     0,     0,   388,   389,     0,   391,     0,
8558        0,   393,   394,   395,     0,     0,   396,   397,   398,   399,
8559      400,   401,   402,   403,   404,   405,   406,   407,   408,   409,
8560      410,   411,   412,     0,   414,   415,   416,   417,   418,   419,
8561      420,   421,   422,   423,   424,     0,   425,   426,     0,   428,
8562        0,   429,   430,   431,   432,   433,   434,     0,   435,   436,
8563        0,     0,   437,   438,   439,     0,     0,   440,   441,   442,
8564        0,   444,     0,   446,   447,   448,   449,   450,   451,   452,
8565      453,   454,   455,     0,     0,   456,   457,   458,   459,   460,
8566      461,   462,   463,     0,   464,   465,   466,   467,   468,   469,
8567      470,   471,   472,   473,   474,   475,   476,   477,   478,     0,
8568      479,   480,   481,   482,   483,   484,   485,   486,   487,   488,
8569      489,   490,     0,   491,   492,     0,   494,   495,   496,   497,
8570      498,   499,   500,   501,   502,   503,   504,   505,   506,   507,
8571      508,     0,   509,   510,   511,   512,   513,     0,   514,   515,
8572      516,   517,   518,     0,   520,   521,   522,   523,     0,   524,
8573      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
8574      535,   536,   537,   538,     0,   539,   540,     0,   541,     0,
8575      543,   544,   545,   546,   547,     0,   548,   549,   550,     0,
8576        0,   551,   552,   553,   554,   555,     0,   556,   557,   558,
8577      559,   560,   561,   562,   563,     0,     0,   564,   565,   566,
8578      567,   568,     0,     0,   569,   570,   571,   572,   573,   574,
8579      575,     0,   576,     0,   578,   579,   580,   581,     0,     0,
8580      582,     0,     0,   583,   584,   585,   586,   587,   588,   589,
8581      590,   591,   592,   593,   594,   595,   596,   597,   598,   599,
8582      600,   601,   602,   610,     0,     0,     0,     0,     0,     0,
8583        0,     0,   828,     0,     0,     0,     0,     0,     0,     0,
8584      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
8585      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
8586      242,     0,   243,   244,   245,     0,   247,   248,   249,   250,
8587      251,     0,   253,   254,     0,   255,   256,   257,   258,   259,
8588      260,     0,     0,   261,   262,   263,   264,   265,     0,   266,
8589      267,   268,   269,   270,     0,     0,     0,   272,   273,   274,
8590      275,   276,     0,   278,   279,   280,     0,   281,   282,   283,
8591      284,   285,   286,     0,     0,   288,   289,   290,     0,     0,
8592        0,     0,     0,     0,     0,   292,   293,   294,   295,   296,
8593      297,   298,   299,   300,     0,   301,     0,   302,   303,   304,
8594      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
8595      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
8596      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
8597      329,   330,   331,   332,     0,   333,     0,   334,   335,   336,
8598      337,     0,   338,     0,   339,     0,     0,     0,   342,   343,
8599      344,   345,     0,   346,   347,     0,   348,   349,   350,     0,
8600      351,   352,   353,   354,   355,     0,   357,   358,   359,   360,
8601        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
8602        0,   370,   371,   372,   373,   374,   375,   376,     0,   377,
8603        0,   378,     0,     0,   381,     0,   383,   384,   385,   386,
8604      387,     0,     0,   388,   389,     0,   391,     0,     0,   393,
8605      394,   395,     0,     0,   396,   397,   398,   399,   400,   401,
8606      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
8607      412,     0,   414,   415,   416,   417,   418,   419,   420,   421,
8608      422,   423,   424,     0,   425,   426,     0,   428,     0,   429,
8609      430,   431,   432,   433,   434,     0,   435,   436,     0,     0,
8610      437,   438,   439,     0,     0,   440,   441,   442,     0,   444,
8611        0,   446,   447,   448,   449,   450,   451,   452,   453,   454,
8612      455,     0,     0,   456,   457,   458,   459,   460,   461,   462,
8613      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
8614      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
8615      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
8616        0,   491,   492,     0,   494,   495,   496,   497,   498,   499,
8617      500,   501,   502,   503,   504,   505,   506,   507,   508,     0,
8618      509,   510,   511,   512,   513,     0,   514,   515,   516,   517,
8619      518,     0,   520,   521,   522,   523,     0,   524,   525,   526,
8620      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
8621      537,   538,     0,   539,   540,     0,   541,     0,   543,   544,
8622      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
8623      552,   553,   554,   555,     0,   556,   557,   558,   559,   560,
8624      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
8625        0,     0,   569,   570,   571,   572,   573,   574,   575,     0,
8626      576,     0,   578,   579,   580,   581,     0,     0,   582,     0,
8627        0,   583,   584,   585,   586,   587,   588,   589,   590,   591,
8628      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
8629      602,  1074,     0,     0,     0,     0,     0,     0,     0,     0,
8630     5302,     0,     0,     0,     0,     0,     0,     0,   230,   231,
8631      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
8632        0,     0,     0,     0,     0,     0,     0,   241,   242,     0,
8633      243,   244,   245,   246,   247,   248,   249,     0,  1075,   252,
8634     1076,  1077,     0,   255,   256,   257,   258,   259,   260,     0,
8635        0,   261,   262,  1078,  1079,   265,     0,   266,   267,   268,
8636      269,     0,     0,   271,     0,   272,   273,   274,   275,   276,
8637      277,   278,   279,   280,     0,   281,   282,   283,   284,   285,
8638      286,     0,   287,   288,   289,   290,     0,     0,     0,   291,
8639        0,     0,     0,   292,   293,   294,   295,   296,   297,  1080,
8640     1081,   300,     0,   301,     0,   302,   303,   304,   305,   306,
8641      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
8642     1082,   315,   316,     0,   317,   318,   319,     0,   320,   321,
8643      322,     0,   323,   324,   325,   326,     0,   328,   329,   330,
8644      331,     0,     0,   333,     0,   334,   335,  1083,   337,     0,
8645      338,     0,   339,   340,     0,   341,   342,   343,   344,   345,
8646        0,   346,     0,     0,     0,   349,   350,     0,   351,   352,
8647      353,   354,   355,   356,   357,   358,   359,   360,  2187,   361,
8648      362,   363,   364,   365,   366,   367,     0,   368,   369,  2188,
8649      371,   372,   373,   374,  1085,  1086,     0,  1087,     0,   378,
8650      379,   380,   381,   382,   383,   384,   385,   386,   387,     0,
8651        0,   388,     0,   390,   391,   392,     0,   393,   394,   395,
8652        0,     0,   396,   397,   398,   399,   400,   401,   402,   403,
8653      404,   405,   406,   407,   408,   409,   410,   411,  1088,   413,
8654     1089,   415,   416,   417,   418,   419,   420,   421,     0,     0,
8655      424,     0,   425,   426,   427,   428,     0,     0,   430,  1090,
8656      432,   433,   434,     0,   435,   436,     0,     0,   437,   438,
8657      439,     0,  2189,   440,   441,  2190,   443,   444,   445,     0,
8658      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
8659        0,   456,   457,     0,   459,     0,   461,   462,   463,     0,
8660      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8661     1091,   475,   476,   477,   478,     0,   479,   480,   481,   482,
8662      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
8663      492,   493,   494,   495,   496,   497,   498,     0,   500,   501,
8664      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
8665      511,   512,   513,     0,   514,   515,  2191,   517,   518,   519,
8666      520,   521,  1093,   523,     0,   524,   525,   526,   527,   528,
8667      529,   530,   531,   532,   533,   534,   535,   536,     0,   538,
8668        0,   539,   540,     0,   541,   542,   543,   544,   545,   546,
8669      547,     0,   548,  1094,  1095,     0,     0,   551,   552,     0,
8670      554,     0,     0,   556,   557,   558,   559,   560,   561,   562,
8671      563,     0,     0,   564,   565,   566,   567,   568,     0,     0,
8672      569,   570,   571,   572,   573,     0,  1096,  2192,   576,   577,
8673      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
8674      584,   585,   586,   587,   588,     0,     0,     0,     0,     0,
8675        0,     0,  3372,     0,     0,     0,   600,   601,   602,     0,
8676        0,     0,     0,     0,     0,     0,     0,     0,  2193,   230,
8677      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
8678      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
8679        0,   243,   244,   245,   246,   247,   248,   249,     0,  1075,
8680      252,  1076,  1077,     0,   255,   256,   257,   258,   259,   260,
8681        0,     0,   261,   262,  1078,  1079,   265,     0,   266,   267,
8682      268,   269,     0,     0,   271,     0,   272,   273,   274,   275,
8683      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
8684      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
8685      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
8686     1080,  1081,   300,     0,   301,     0,   302,   303,   304,   305,
8687      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
8688      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
8689      321,   322,     0,   323,   324,   325,   326,     0,   328,   329,
8690      330,   331,     0,     0,   333,     0,   334,   335,  1083,   337,
8691        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
8692      345,     0,   346,     0,     0,     0,   349,   350,     0,   351,
8693      352,   353,   354,   355,   356,   357,   358,   359,   360,  2187,
8694      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
8695     2188,   371,   372,   373,   374,  1085,  1086,     0,  1087,     0,
8696      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
8697        0,     0,   388,     0,   390,   391,   392,     0,   393,   394,
8698      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
8699      403,   404,   405,   406,   407,   408,   409,   410,   411,  1088,
8700      413,  1089,   415,   416,   417,   418,   419,   420,   421,     0,
8701        0,   424,     0,   425,   426,   427,   428,     0,     0,   430,
8702     1090,   432,   433,   434,     0,   435,   436,     0,     0,   437,
8703      438,   439,     0,  2189,   440,   441,  2190,   443,   444,   445,
8704        0,   447,   448,   449,   450,   451,   452,   453,   454,   455,
8705        0,     0,   456,   457,     0,   459,     0,   461,   462,   463,
8706        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
8707      473,  1091,   475,   476,   477,   478,     0,   479,   480,   481,
8708      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
8709      491,   492,   493,   494,   495,   496,   497,   498,     0,   500,
8710      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
8711      510,   511,   512,   513,     0,   514,   515,  2191,   517,   518,
8712      519,   520,   521,  1093,   523,     0,   524,   525,   526,   527,
8713      528,   529,   530,   531,   532,   533,   534,   535,   536,     0,
8714      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
8715      546,   547,     0,   548,  1094,  1095,     0,     0,   551,   552,
8716        0,   554,     0,     0,   556,   557,   558,   559,   560,   561,
8717      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
8718        0,   569,   570,   571,   572,   573,     0,  1096,  2192,   576,
8719      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
8720      583,   584,   585,   586,   587,   588,     0,     0,     0,     0,
8721        0,     0,     0,   878,     0,  1518,   670,   600,   601,   602,
8722        0,   731,     0,     0,     0,     0,     0,     0,     0,  2193,
8723      230,   231,   232,   233,   234,   235,   236,   237,     0,   238,
8724      239,   240,     0,     0,     0,     0,     0,     0,     0,   241,
8725      242,     0,   243,   244,   245,   246,   247,   248,   249,   250,
8726      251,   252,   253,   254,     0,   255,   256,   257,   258,   259,
8727      260,     0,     0,   261,   262,   263,   264,   265,     0,   266,
8728      267,   268,   269,   270,     0,   271,     0,   272,   273,   274,
8729      275,   276,   277,   278,   279,   280,     0,   281,   282,   283,
8730      284,   285,   286,     0,   287,   288,   289,   290,     0,     0,
8731        0,   291,     0,     0,     0,   292,   293,   294,   295,   296,
8732      297,   298,   299,   300,  2116,   301,     0,   302,   303,   304,
8733      305,   306,   307,     0,   308,   309,   310,   311,     0,     0,
8734      312,   313,   314,   315,   316,     0,   317,   318,   319,     0,
8735      320,   321,   322,     0,   323,   324,   325,   326,   327,   328,
8736      329,   330,   331,   332,  1933,   333,     0,   334,   335,   336,
8737      337,     0,   338,     0,   339,   340,     0,   341,   342,   343,
8738      344,   345,     0,   346,   347,     0,   348,   349,   350,     0,
8739      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
8740        0,   361,   362,   363,   364,   365,   366,   367,     0,   368,
8741      369,   370,   371,   372,   373,   374,   375,   376,     0,   377,
8742        0,   378,   379,   380,   381,   382,   383,   384,   385,   386,
8743      387,     0,     0,   388,   389,   390,   391,   392,     0,   393,
8744      394,   395,     0,     0,   396,   397,   398,   399,   400,   401,
8745      402,   403,   404,   405,   406,   407,   408,   409,   410,   411,
8746      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
8747      422,   423,   424,     0,   425,   426,   427,   428,     0,   429,
8748      430,   431,   432,   433,   434,     0,   435,   436,  1934,     0,
8749      437,   438,   439,     0,     0,   440,   441,   442,   443,   444,
8750      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
8751      455,     0,     0,   456,   457,   458,   459,   460,   461,   462,
8752      463,     0,   464,   465,   466,   467,   468,   469,   470,   471,
8753      472,   473,   474,   475,   476,   477,   478,     0,   479,   480,
8754      481,   482,   483,   484,   485,   486,   487,   488,   489,   490,
8755        0,   491,   492,   493,   494,   495,   496,   497,   498,   499,
8756      500,   501,   502,   503,   504,   505,   506,   507,   508,     0,
8757      509,   510,   511,   512,   513,     0,   514,   515,   516,   517,
8758      518,   519,   520,   521,   522,   523,     0,   524,   525,   526,
8759      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
8760      537,   538,     0,   539,   540,     0,   541,   542,   543,   544,
8761      545,   546,   547,     0,   548,   549,   550,     0,     0,   551,
8762      552,   553,   554,   555,  1935,   556,   557,   558,   559,   560,
8763      561,   562,   563,     0,     0,   564,   565,   566,   567,   568,
8764        0,     0,   569,   570,   571,   572,   573,   574,   575,     0,
8765      576,   577,   578,   579,   580,   581,     0,     0,   582,     0,
8766        0,   583,   584,   585,   586,   587,   588,   589,   590,   591,
8767      592,   593,   594,   595,   596,   597,   598,   599,   600,   601,
8768      602,     0,   878,     0,  1518,   670,     0,     0,  1519,  1520,
8769      731,     0,     0,     0,     0,     0,     0,     0,     0,   230,
8770      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
8771      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
8772        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
8773      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
8774        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
8775      268,   269,   270,     0,   271,     0,   272,   273,   274,   275,
8776      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
8777      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
8778      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
8779      298,   299,   300,  2121,   301,     0,   302,   303,   304,   305,
8780      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
8781      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
8782      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
8783      330,   331,   332,  1933,   333,     0,   334,   335,   336,   337,
8784        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
8785      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
8786      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
8787      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
8788      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
8789      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
8790        0,     0,   388,   389,   390,   391,   392,     0,   393,   394,
8791      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
8792      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
8793      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
8794      423,   424,     0,   425,   426,   427,   428,     0,   429,   430,
8795      431,   432,   433,   434,     0,   435,   436,  1934,     0,   437,
8796      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
8797      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
8798        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
8799        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
8800      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
8801      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
8802      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
8803      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
8804      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
8805      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
8806      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
8807      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
8808      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
8809      553,   554,   555,  1935,   556,   557,   558,   559,   560,   561,
8810      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
8811        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
8812      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
8813      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
8814      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
8815        0,   878,     0,  1518,   670,     0,     0,  1519,  1520,   731,
8816        0,     0,     0,     0,     0,     0,     0,     0,   230,   231,
8817      232,   233,   234,   235,   236,   237,     0,   238,   239,   240,
8818        0,     0,     0,     0,     0,     0,     0,   241,   242,     0,
8819      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
8820      253,   254,     0,   255,   256,   257,   258,   259,   260,     0,
8821        0,   261,   262,   263,   264,   265,     0,   266,   267,   268,
8822      269,   270,     0,   271,     0,   272,   273,   274,   275,   276,
8823      277,   278,   279,   280,     0,   281,   282,   283,   284,   285,
8824      286,     0,   287,   288,   289,   290,     0,     0,     0,   291,
8825        0,     0,     0,   292,   293,   294,   295,   296,   297,   298,
8826      299,   300,     0,   301,     0,   302,   303,   304,   305,   306,
8827      307,     0,   308,   309,   310,   311,     0,     0,   312,   313,
8828      314,   315,   316,     0,   317,   318,   319,     0,   320,   321,
8829      322,     0,   323,   324,   325,   326,   327,   328,   329,   330,
8830      331,   332,  1933,   333,     0,   334,   335,   336,   337,     0,
8831      338,     0,   339,   340,     0,   341,   342,   343,   344,   345,
8832        0,   346,   347,     0,   348,   349,   350,     0,   351,   352,
8833      353,   354,   355,   356,   357,   358,   359,   360,     0,   361,
8834      362,   363,   364,   365,   366,   367,     0,   368,   369,   370,
8835      371,   372,   373,   374,   375,   376,     0,   377,     0,   378,
8836      379,   380,   381,   382,   383,   384,   385,   386,   387,     0,
8837        0,   388,   389,   390,   391,   392,     0,   393,   394,   395,
8838        0,     0,   396,   397,   398,   399,   400,   401,   402,   403,
8839      404,   405,   406,   407,   408,   409,   410,   411,   412,   413,
8840      414,   415,   416,   417,   418,   419,   420,   421,   422,   423,
8841      424,     0,   425,   426,   427,   428,     0,   429,   430,   431,
8842      432,   433,   434,     0,   435,   436,  1934,     0,   437,   438,
8843      439,     0,     0,   440,   441,   442,   443,   444,   445,   446,
8844      447,   448,   449,   450,   451,   452,   453,   454,   455,     0,
8845        0,   456,   457,   458,   459,   460,   461,   462,   463,     0,
8846      464,   465,   466,   467,   468,   469,   470,   471,   472,   473,
8847      474,   475,   476,   477,   478,     0,   479,   480,   481,   482,
8848      483,   484,   485,   486,   487,   488,   489,   490,     0,   491,
8849      492,   493,   494,   495,   496,   497,   498,   499,   500,   501,
8850      502,   503,   504,   505,   506,   507,   508,     0,   509,   510,
8851      511,   512,   513,     0,   514,   515,   516,   517,   518,   519,
8852      520,   521,   522,   523,     0,   524,   525,   526,   527,   528,
8853      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
8854        0,   539,   540,     0,   541,   542,   543,   544,   545,   546,
8855      547,     0,   548,   549,   550,     0,     0,   551,   552,   553,
8856      554,   555,  1935,   556,   557,   558,   559,   560,   561,   562,
8857      563,     0,     0,   564,   565,   566,   567,   568,     0,     0,
8858      569,   570,   571,   572,   573,   574,   575,     0,   576,   577,
8859      578,   579,   580,   581,     0,     0,   582,     0,     0,   583,
8860      584,   585,   586,   587,   588,   589,   590,   591,   592,   593,
8861      594,   595,   596,   597,   598,   599,   600,   601,   602,     0,
8862      878,     0,     0,   670,     0,     0,  1519,  1520,   731,     0,
8863        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
8864      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
8865        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
8866      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
8867      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
8868      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
8869      270,     0,   271,     0,   272,   273,   274,   275,   276,   277,
8870      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
8871        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
8872        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
8873      300,  2978,   301,     0,   302,   303,   304,   305,   306,   307,
8874        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
8875      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
8876        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
8877      332,  1933,   333,     0,   334,   335,   336,   337,     0,   338,
8878        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
8879      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
8880      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
8881      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
8882      372,   373,   374,   375,   376,     0,   377,     0,   378,   379,
8883      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
8884      388,   389,   390,   391,   392,     0,   393,   394,   395,     0,
8885        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
8886      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
8887      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
8888        0,   425,   426,   427,   428,     0,   429,   430,   431,   432,
8889      433,   434,     0,   435,   436,  1934,     0,   437,   438,   439,
8890        0,     0,   440,   441,   442,   443,   444,   445,   446,   447,
8891      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
8892      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
8893      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
8894      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
8895      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
8896      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
8897      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
8898      512,   513,     0,   514,   515,   516,   517,   518,   519,   520,
8899      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
8900      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
8901      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
8902        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
8903      555,  1935,   556,   557,   558,   559,   560,   561,   562,   563,
8904        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
8905      570,   571,   572,   573,   574,   575,     0,   576,   577,   578,
8906      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
8907      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
8908      595,   596,   597,   598,   599,   600,   601,   602,     0,   610,
8909        0,     0,     0,     0,     0,   743,   744,   731,     0,     0,
8910        0,     0,     0,     0,     0,     0,   230,   732,   232,   233,
8911      234,   235,   236,   237,   733,   238,   239,   240,     0,     0,
8912        0,     0,     0,     0,     0,   241,   242,     0,   243,   244,
8913      245,     0,   734,   248,   249,   250,   251,     0,   253,   254,
8914        0,   255,   256,   257,   258,   259,   260,     0,     0,   261,
8915      262,   263,   264,   265,     0,   266,   267,   268,   269,   270,
8916        0,     0,     0,   272,   273,   274,   275,   276,     0,   278,
8917      279,   280,     0,   281,   282,   283,   284,   285,   286,     0,
8918        0,   288,   289,   290,     0,     0,     0,     0,     0,     0,
8919        0,   292,   293,   294,   295,   296,   297,   298,   299,   300,
8920        0,   301,     0,   302,   303,   304,   305,   306,   307,     0,
8921      308,   309,   310,   311,     0,     0,   312,   313,   314,   315,
8922      316,     0,   317,   318,   319,     0,   320,   321,   322,     0,
8923      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
8924        0,   333,     0,   334,   735,   336,   337,     0,   338,     0,
8925      736,     0,   737,     0,   342,   343,   344,   345,     0,   346,
8926      347,     0,   348,   349,   350,     0,   351,   352,   353,   354,
8927      355,     0,   357,   358,   359,   360,   738,   361,   362,   363,
8928      364,   365,   366,   367,     0,   368,     0,   370,   371,   372,
8929      373,   374,   375,   376,     0,   377,     0,   378,     0,     0,
8930      381,     0,   383,   384,   385,   386,   739,     0,     0,   388,
8931      389,     0,   391,     0,     0,   393,   394,   395,     0,     0,
8932      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
8933      406,   407,   408,   409,   410,   411,   412,     0,   414,   415,
8934      740,   417,   418,   419,   420,   421,   422,   423,   424,     0,
8935      425,   426,     0,   428,     0,   429,   430,   431,   432,   433,
8936      434,     0,   435,   436,     0,     0,   437,   438,   439,     0,
8937        0,   440,   441,   442,     0,   444,     0,   446,   447,   448,
8938      449,   450,   451,   452,   453,   454,   455,     0,     0,   456,
8939      457,   458,   459,   460,   461,   462,   463,     0,   741,   465,
8940      466,   467,   468,   469,   470,   471,   472,   473,   474,   475,
8941      476,   477,   478,     0,   479,   480,   481,   742,   483,   484,
8942      485,   486,   487,   488,   489,   490,     0,   491,   492,     0,
8943      494,   495,   496,   497,   498,   499,   500,   501,   502,   503,
8944      504,   505,   506,   507,   508,     0,   509,   510,   511,   512,
8945      513,     0,   514,   515,   516,   517,   518,     0,   520,   521,
8946      522,   523,     0,   524,   525,   526,   527,   528,   529,   530,
8947      531,   532,   533,   534,   535,   536,   537,   538,     0,   539,
8948      540,     0,   541,     0,   543,   544,   545,   546,   547,     0,
8949      548,   549,   550,     0,     0,   551,   552,   553,   554,   555,
8950        0,   556,   557,   558,   559,   560,   561,   562,   563,     0,
8951        0,   564,   565,   566,   567,   568,     0,     0,   569,   570,
8952      571,   572,   573,   574,   575,     0,   576,     0,   578,   579,
8953      580,   581,     0,     0,   582,     0,     0,   583,   584,   585,
8954      586,   587,   588,   589,   590,   591,   592,   593,   594,   595,
8955      596,   597,   598,   599,   600,   601,   602,     0,  1649,     0,
8956     5520,   670,     0,     0,   743,   744,   731,     0,     0,     0,
8957        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
8958      235,   236,   237,  1650,   238,   239,   240,  1651,  1652,  1653,
8959     1654,  1655,  1656,  1657,   241,   242,  1658,   243,   244,   245,
8960      246,   247,   248,   249,   250,   251,   252,   253,   254,  1659,
8961      255,   256,   257,   258,   259,   260,  1660,  1661,   261,   262,
8962      263,   264,   265,  1662,   266,   267,   268,   269,   270,  1663,
8963      271,  1664,   272,   273,   274,   275,   276,   277,   278,   279,
8964      280,  1665,   281,   282,   283,   284,   285,   286,  1666,   287,
8965      288,   289,   290,  1667,  1668,  1669,   291,  1670,  1671,  1672,
8966      292,   293,   294,   295,   296,   297,   298,   299,   300,  1673,
8967      301,  1674,   302,   303,   304,   305,   306,   307,  1675,   308,
8968      309,   310,   311,  1676,  1677,   312,   313,   314,   315,   316,
8969     1678,   317,   318,   319,  1679,   320,   321,   322,  1680,   323,
8970      324,   325,   326,   327,   328,   329,   330,   331,   332,  1681,
8971      333,  1682,   334,   335,   336,   337,  1683,   338,  1684,   339,
8972      340,  1685,   341,   342,   343,   344,   345,  1686,   346,   347,
8973     1687,   348,   349,   350,  1688,   351,   352,   353,   354,   355,
8974      356,   357,   358,   359,   360,  1689,   361,   362,   363,   364,
8975      365,   366,   367,  1690,   368,   369,   370,   371,   372,   373,
8976      374,   375,   376,  1691,   377,  1692,   378,   379,   380,   381,
8977      382,   383,   384,   385,   386,   387,  1693,  1694,   388,   389,
8978      390,   391,   392,  1695,   393,   394,   395,  1696,  1697,   396,
8979      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
8980      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
8981      417,   418,   419,   420,   421,   422,   423,   424,  1698,   425,
8982      426,   427,   428,  1699,   429,   430,   431,   432,   433,   434,
8983     1700,   435,   436,  1701,  1702,   437,   438,   439,  1703,  1704,
8984      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
8985      450,   451,   452,   453,   454,   455,     0,  1705,   456,   457,
8986      458,   459,   460,   461,   462,   463,  1706,   464,   465,   466,
8987      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
8988      477,   478,  1707,   479,   480,   481,   482,   483,   484,   485,
8989      486,   487,   488,   489,   490,  1708,   491,   492,   493,   494,
8990      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
8991      505,   506,   507,   508,  1709,   509,   510,   511,   512,   513,
8992     1710,   514,   515,   516,   517,   518,   519,   520,   521,   522,
8993      523,  1711,   524,   525,   526,   527,   528,   529,   530,   531,
8994      532,   533,   534,   535,   536,   537,   538,  1712,   539,   540,
8995     1713,   541,   542,   543,   544,   545,   546,   547,  1714,   548,
8996      549,   550,  1715,  1716,   551,   552,   553,   554,   555,  1717,
8997      556,   557,   558,   559,   560,   561,   562,   563,  1718,  1719,
8998      564,   565,   566,   567,   568,  1720,  1721,   569,   570,   571,
8999      572,   573,   574,   575,  1722,   576,   577,   578,   579,   580,
9000      581,  1723,  1724,   582,  1725,  1726,   583,   584,   585,   586,
9001      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9002      597,   598,   599,   600,   601,   602,  1649,     0,     0,     0,
9003        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9004        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
9005      237,  1650,   238,   239,   240,  1651,  1652,  1653,  1654,  1655,
9006     1656,  1657,   241,   242,  1658,   243,   244,   245,   246,   247,
9007      248,   249,   250,   251,   252,   253,   254,  1659,   255,   256,
9008      257,   258,   259,   260,  1660,  1661,   261,   262,   263,   264,
9009      265,  1662,   266,   267,   268,   269,   270,  1663,   271,  1664,
9010      272,   273,   274,   275,   276,   277,   278,   279,   280,  1665,
9011      281,   282,   283,   284,   285,   286,  1666,   287,   288,   289,
9012      290,  1667,  1668,  1669,   291,  1670,  1671,  1672,   292,   293,
9013      294,   295,   296,   297,   298,   299,   300,  1673,   301,  1674,
9014      302,   303,   304,   305,   306,   307,  1675,   308,   309,   310,
9015      311,  1676,  1677,   312,   313,   314,   315,   316,  1678,   317,
9016      318,   319,  1679,   320,   321,   322,  1680,   323,   324,   325,
9017      326,   327,   328,   329,   330,   331,   332,  1681,   333,  1682,
9018      334,   335,   336,   337,  1683,   338,  1684,   339,   340,  1685,
9019      341,   342,   343,   344,   345,  1686,   346,   347,  1687,   348,
9020      349,   350,  1688,   351,   352,   353,   354,   355,   356,   357,
9021      358,   359,   360,  1689,   361,   362,   363,   364,   365,   366,
9022      367,  1690,   368,   369,   370,   371,   372,   373,   374,   375,
9023      376,  1691,   377,  1692,   378,   379,   380,   381,   382,   383,
9024      384,   385,   386,   387,  1693,  1694,   388,   389,   390,   391,
9025      392,  1695,   393,   394,   395,  1696,  1697,   396,   397,   398,
9026      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9027      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
9028      419,   420,   421,   422,   423,   424,  1698,   425,   426,   427,
9029      428,  1699,   429,   430,   431,   432,   433,   434,  1700,   435,
9030      436,  1701,  1702,   437,   438,   439,  1703,  1704,   440,   441,
9031      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9032      452,   453,   454,   455,     0,  1705,   456,   457,   458,   459,
9033      460,   461,   462,   463,  1706,   464,   465,   466,   467,   468,
9034      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9035     1707,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9036      488,   489,   490,  1708,   491,   492,   493,   494,   495,   496,
9037      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9038      507,   508,  1709,   509,   510,   511,   512,   513,  1710,   514,
9039      515,   516,   517,   518,   519,   520,   521,   522,   523,  1711,
9040      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
9041      534,   535,   536,   537,   538,  1712,   539,   540,  1713,   541,
9042      542,   543,   544,   545,   546,   547,  1714,   548,   549,   550,
9043     1715,  1716,   551,   552,   553,   554,   555,  1717,   556,   557,
9044      558,   559,   560,   561,   562,   563,  1718,  1719,   564,   565,
9045      566,   567,   568,  1720,  1721,   569,   570,   571,   572,   573,
9046      574,   575,  1722,   576,   577,   578,   579,   580,   581,  1723,
9047     1724,   582,  1725,  1726,   583,   584,   585,   586,   587,   588,
9048      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
9049      599,   600,   601,   602,  1649,     0,     0,     0,     0,     0,
9050        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9051        0,   230,   231,   232,   233,  3095,   235,   236,   237,  1650,
9052      238,   239,   240,  1651,  1652,  1653,  1654,  1655,  1656,  1657,
9053      241,   242,  1658,   243,   244,   245,   246,   247,   248,   249,
9054      250,   251,   252,   253,   254,  1659,   255,   256,   257,   258,
9055      259,   260,  1660,  1661,   261,   262,   263,   264,   265,  1662,
9056      266,   267,   268,   269,   270,  1663,   271,  1664,   272,   273,
9057      274,   275,   276,   277,   278,   279,   280,  1665,   281,   282,
9058      283,   284,   285,   286,  1666,   287,   288,   289,   290,  1667,
9059     1668,  1669,   291,  1670,  1671,  1672,   292,   293,   294,   295,
9060      296,   297,   298,   299,   300,  1673,   301,  1674,   302,   303,
9061      304,   305,   306,   307,  1675,   308,   309,   310,   311,  1676,
9062     1677,   312,   313,   314,  3096,   316,  1678,   317,   318,   319,
9063     1679,   320,   321,   322,  1680,   323,   324,   325,   326,   327,
9064      328,   329,   330,   331,   332,  1681,   333,  1682,   334,   335,
9065      336,   337,  1683,   338,  1684,   339,   340,  1685,   341,   342,
9066      343,   344,   345,  1686,   346,   347,  1687,   348,   349,   350,
9067     1688,   351,   352,   353,   354,   355,   356,   357,   358,   359,
9068      360,  1689,   361,   362,   363,   364,   365,   366,   367,  1690,
9069      368,   369,   370,   371,   372,   373,   374,   375,   376,  1691,
9070      377,  1692,   378,   379,   380,   381,   382,   383,   384,   385,
9071      386,   387,  1693,  1694,   388,   389,   390,   391,   392,  1695,
9072      393,   394,   395,  1696,  1697,   396,   397,   398,   399,   400,
9073      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
9074      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
9075      421,   422,   423,   424,  1698,   425,   426,   427,   428,  1699,
9076      429,   430,   431,   432,   433,   434,  1700,   435,   436,  1701,
9077     1702,   437,   438,   439,  1703,  1704,   440,   441,   442,   443,
9078      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
9079      454,   455,     0,  1705,   456,   457,   458,   459,   460,   461,
9080      462,   463,  1706,   464,   465,   466,   467,   468,   469,   470,
9081      471,   472,   473,   474,   475,   476,   477,   478,  1707,   479,
9082      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
9083      490,  1708,   491,   492,   493,   494,   495,   496,   497,   498,
9084      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
9085     1709,   509,   510,   511,   512,   513,  1710,  3097,   515,   516,
9086      517,   518,   519,   520,   521,   522,   523,  1711,   524,   525,
9087      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
9088      536,   537,   538,  1712,   539,   540,  1713,   541,   542,   543,
9089      544,   545,   546,   547,  1714,   548,   549,   550,  1715,  1716,
9090      551,   552,   553,   554,   555,  1717,   556,   557,   558,   559,
9091      560,   561,   562,   563,  1718,  1719,   564,   565,   566,   567,
9092      568,  1720,  1721,   569,   570,   571,   572,   573,   574,   575,
9093     1722,   576,   577,   578,   579,   580,   581,  1723,  1724,   582,
9094     1725,  1726,   583,   584,   585,   586,   587,   588,   589,   590,
9095      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
9096      601,   602,   229,     0,     0,     0,     0,     0,     0,     0,
9097        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
9098      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
9099      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
9100        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
9101      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
9102        0,  1244,   261,   262,   263,   264,   265,     0,   266,   267,
9103      268,   269,  1247,     0,  1248,     0,   272,   273,   274,   275,
9104      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
9105      285,   286,     0,   287,   288,   289,   290,  1249,  1250,  1251,
9106     1252,  1253,  1254,  1255,   292,   293,   294,   295,   296,   297,
9107      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
9108      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
9109      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
9110      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
9111      330,   331,  1260,     0,   333,     0,   334,   335,   336,   337,
9112        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
9113      345,     0,   346,  1263,     0,   348,   349,   350,     0,   351,
9114      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
9115      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
9116      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
9117      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
9118        0,     0,   388,  1268,   390,   391,   392,     0,   393,   394,
9119      395,  1269,  1270,   396,   397,   398,   399,   400,   401,   402,
9120      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
9121      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
9122     1273,   424,     0,   425,   426,   427,   428,     0,  1276,   430,
9123      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
9124      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
9125     1279,   447,   448,   449,   450,   451,   452,   453,   454,   455,
9126        0,     0,   456,   457,  1280,   459,   460,   461,   462,   463,
9127        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
9128      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
9129      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
9130      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
9131      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
9132      510,   511,   512,   513,  1283,   514,   515,   516,   517,   518,
9133      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
9134      528,   529,   530,   531,   532,   533,   534,   535,   536,  1285,
9135      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
9136      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
9137     1288,   554,  1289,     0,   556,   557,   558,   559,   560,   561,
9138      562,   563,     0,     0,   564,   565,   566,   567,   568,  1292,
9139        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
9140      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
9141      583,   584,   585,   586,   587,   588,   589,  1294,  1295,  1296,
9142     1297,   594,  1298,  1299,  1300,  1301,   599,   600,   601,   602,
9143      878,     0,     0,   670,     0,     0,     0,     0,     0,     0,
9144        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
9145      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
9146        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
9147      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
9148      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
9149      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
9150      270,     0,   271,     0,   272,   273,   274,   275,   276,   277,
9151      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
9152        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
9153        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
9154      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
9155        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
9156      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
9157        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
9158      332,  1933,   333,     0,   334,   335,   336,   337,     0,   338,
9159        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
9160      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
9161      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
9162      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
9163      372,   373,   374,   375,   376,     0,   377,     0,   378,   379,
9164      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
9165      388,   389,   390,   391,   392,     0,   393,   394,   395,     0,
9166        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
9167      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
9168      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
9169        0,   425,   426,   427,   428,     0,   429,   430,   431,   432,
9170      433,   434,     0,   435,   436,  1934,     0,   437,   438,   439,
9171        0,     0,   440,   441,   442,   443,   444,   445,   446,   447,
9172      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
9173      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
9174      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
9175      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
9176      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
9177      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
9178      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
9179      512,   513,     0,   514,   515,   516,   517,   518,   519,   520,
9180      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
9181      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
9182      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
9183        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
9184      555,  1935,   556,   557,   558,   559,   560,   561,   562,   563,
9185        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
9186      570,   571,   572,   573,   574,   575,     0,   576,   577,   578,
9187      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
9188      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
9189      595,   596,   597,   598,   599,   600,   601,   602,   878,     0,
9190        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9191        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
9192      235,   236,   237,   916,   238,   239,   240,     0,     0,     0,
9193        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
9194      246,   247,   248,   249,   250,   251,   252,   253,   254,     0,
9195      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
9196      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
9197      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
9198      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
9199      288,   289,   290,     0,     0,     0,   291,     0,     0,   879,
9200      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
9201      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
9202      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
9203        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
9204      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
9205      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
9206      340,     0,   341,   342,   343,   344,   345,     0,   346,   347,
9207        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
9208      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
9209      365,   366,   367,     0,   368,   369,   370,   371,   372,   373,
9210      374,   375,   376,     0,   377,     0,   378,   379,   380,   381,
9211      382,   383,   384,   385,   386,   387,     0,     0,   388,   389,
9212      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
9213      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
9214      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
9215      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
9216      426,   427,   428,     0,   429,   430,   431,   432,   433,   434,
9217        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
9218      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
9219      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
9220      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
9221      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
9222      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
9223      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
9224      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
9225      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
9226      880,   514,   515,   516,   517,   518,   519,   520,   521,   522,
9227      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
9228      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
9229        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
9230      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
9231      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
9232      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
9233      572,   573,   574,   575,     0,   576,   577,   578,   579,   580,
9234      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
9235      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9236      597,   598,   599,   600,   601,   602,   878,     0,     0,     0,
9237        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9238        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
9239      237,   937,   238,   239,   240,     0,     0,     0,     0,     0,
9240        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
9241      248,   249,   250,   251,   252,   253,   254,     0,   255,   256,
9242      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
9243      265,     0,   266,   267,   268,   269,   270,     0,   271,     0,
9244      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
9245      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
9246      290,     0,     0,     0,   291,     0,     0,   879,   292,   293,
9247      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
9248      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
9249      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
9250      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
9251      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
9252      334,   335,   336,   337,     0,   338,     0,   339,   340,     0,
9253      341,   342,   343,   344,   345,     0,   346,   347,     0,   348,
9254      349,   350,     0,   351,   352,   353,   354,   355,   356,   357,
9255      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
9256      367,     0,   368,   369,   370,   371,   372,   373,   374,   375,
9257      376,     0,   377,     0,   378,   379,   380,   381,   382,   383,
9258      384,   385,   386,   387,     0,     0,   388,   389,   390,   391,
9259      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
9260      399,   938,   401,   402,   403,   404,   405,   406,   407,   408,
9261      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
9262      419,   420,   421,   422,   423,   424,     0,   425,   426,   427,
9263      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
9264      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
9265      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9266      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
9267      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
9268      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9269        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9270      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
9271      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9272      507,   508,     0,   509,   510,   511,   512,   513,   880,   514,
9273      515,   516,   517,   518,   519,   520,   521,   522,   523,     0,
9274      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
9275      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
9276      542,   543,   544,   545,   546,   547,     0,   548,   549,   550,
9277        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
9278      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
9279      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
9280      574,   575,     0,   576,   577,   578,   579,   580,   581,     0,
9281        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
9282      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
9283      599,   600,   601,   602,   878,     0,     0,     0,     0,     0,
9284        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9285        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
9286      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
9287      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
9288      250,   251,   252,   253,   254,     0,   255,   256,   257,   258,
9289      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
9290      266,   267,   268,   269,   270,     0,   271,     0,   272,   273,
9291      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
9292      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
9293        0,     0,   291,     0,     0,   879,   292,   293,   294,   295,
9294      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
9295      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
9296        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
9297        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
9298      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
9299      336,   337,     0,   338,     0,   339,   340,     0,   341,   342,
9300      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
9301        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
9302      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
9303      368,   369,   370,   371,   372,   373,   374,   375,   376,     0,
9304      377,     0,   378,   379,   380,   381,   382,   383,   384,   385,
9305      386,   387,     0,     0,   388,   389,   390,   391,   392,     0,
9306      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
9307      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
9308      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
9309      421,   422,   423,   424,     0,   425,   426,   427,   428,     0,
9310      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
9311        0,   437,   438,   439,     0,     0,   440,   441,   442,   443,
9312      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
9313      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
9314      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
9315      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
9316      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
9317      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
9318      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
9319        0,   509,   510,   511,   512,   513,   880,   514,   515,   516,
9320      517,   518,   519,   520,   521,   522,   523,     0,   524,   525,
9321      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
9322      536,   537,   538,     0,   539,   540,     0,   541,   542,   543,
9323      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
9324      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
9325      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
9326      568,  2455,     0,   569,   570,   571,   572,   573,   574,   575,
9327        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
9328        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
9329      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
9330      601,   602,   878,     0,     0,     0,     0,     0,     0,     0,
9331        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
9332      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
9333      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
9334        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
9335      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
9336        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
9337      268,   269,   270,     0,   271,     0,   272,   273,   274,   275,
9338      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
9339      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
9340      291,     0,     0,   879,   292,   293,   294,   295,   296,   297,
9341      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
9342      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
9343      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
9344      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
9345      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
9346        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
9347      345,     0,   346,   347,  3464,   348,   349,   350,     0,   351,
9348      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
9349      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
9350      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
9351      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
9352        0,     0,   388,   389,   390,   391,   392,     0,   393,   394,
9353      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
9354      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
9355      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
9356      423,   424,     0,   425,   426,   427,   428,     0,   429,   430,
9357      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
9358      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
9359      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
9360        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
9361        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
9362      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
9363      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
9364      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
9365      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
9366      510,   511,   512,   513,   880,   514,   515,   516,   517,   518,
9367      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
9368      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
9369      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
9370      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
9371      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
9372      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
9373        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
9374      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
9375      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9376      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
9377      878,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9378        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
9379      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
9380        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
9381      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
9382      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
9383      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
9384      270,     0,   271,     0,   272,   273,   274,   275,   276,   277,
9385      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
9386        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
9387        0,   879,   292,   293,   294,   295,   296,   297,   298,   299,
9388      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
9389        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
9390      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
9391        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
9392      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
9393        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
9394      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
9395      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
9396      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
9397      372,   373,   374,   375,   376,     0,   377,     0,   378,   379,
9398      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
9399      388,   389,   390,   391,   392,     0,   393,   394,   395,     0,
9400        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
9401      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
9402      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
9403        0,   425,   426,   427,   428,     0,   429,   430,   431,   432,
9404      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
9405        0,     0,   440,   441,   442,   443,   444,   445,   446,   447,
9406      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
9407      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
9408      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
9409      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
9410      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
9411      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
9412      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
9413      512,   513,   880,   514,   515,   516,   517,   518,   519,   520,
9414      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
9415      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
9416      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
9417        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
9418      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
9419        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
9420      570,   571,   572,   573,   574,   575,     0,   576,   577,   578,
9421      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
9422      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
9423      595,   596,   597,   598,   599,   600,   601,   602,   878,     0,
9424        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9425        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
9426      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
9427        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
9428      246,   247,   248,   249,   250,   251,   252,   253,   254,     0,
9429      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
9430      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
9431      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
9432      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
9433      288,   289,   290,     0,     0,     0,   291,     0,     0,   879,
9434      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
9435      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
9436      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
9437        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
9438      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
9439      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
9440      340,     0,   341,   342,   343,   344,   345,     0,   346,   347,
9441        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
9442      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
9443      365,   366,   367,     0,   368,   369,   370,   371,   372,   373,
9444      374,   375,   376,     0,   377,     0,   378,   379,   380,   381,
9445      382,   383,   384,   385,   386,   387,     0,     0,   388,   389,
9446      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
9447      397,   398,   399,  1043,   401,   402,   403,   404,   405,   406,
9448      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
9449      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
9450      426,   427,   428,     0,   429,   430,   431,   432,   433,   434,
9451        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
9452      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
9453      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
9454      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
9455      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
9456      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
9457      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
9458      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
9459      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
9460      880,   514,   515,   516,   517,   518,   519,   520,   521,   522,
9461      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
9462      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
9463        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
9464      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
9465      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
9466      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
9467      572,   573,   574,   575,     0,   576,   577,   578,   579,   580,
9468      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
9469      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9470      597,   598,   599,   600,   601,   602,   878,     0,     0,     0,
9471        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9472        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
9473      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
9474        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
9475      248,   249,   250,   251,   252,   253,   254,     0,   255,   256,
9476      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
9477      265,     0,   266,   267,   268,   269,   270,     0,   271,     0,
9478      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
9479      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
9480      290,     0,     0,     0,   291,     0,     0,   879,   292,   293,
9481      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
9482      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
9483      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
9484      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
9485      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
9486      334,   335,   336,   337,     0,   338,     0,   339,   340,     0,
9487      341,   342,   343,   344,   345,     0,   346,   347,     0,   348,
9488      349,   350,     0,   351,   352,   353,   354,  1119,   356,   357,
9489      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
9490      367,     0,   368,   369,   370,   371,   372,   373,   374,   375,
9491      376,     0,   377,     0,   378,   379,   380,   381,   382,   383,
9492      384,   385,   386,   387,     0,     0,   388,   389,   390,   391,
9493      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
9494      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9495      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
9496      419,   420,   421,   422,   423,   424,     0,   425,   426,   427,
9497      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
9498      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
9499      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9500      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
9501      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
9502      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9503        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9504      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
9505      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9506      507,   508,     0,   509,   510,   511,   512,   513,   880,   514,
9507      515,   516,   517,   518,   519,   520,   521,   522,   523,     0,
9508      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
9509      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
9510      542,   543,   544,   545,   546,   547,     0,   548,   549,   550,
9511        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
9512      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
9513      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
9514      574,   575,     0,   576,   577,   578,   579,   580,   581,     0,
9515        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
9516      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
9517      599,   600,   601,   602,   878,     0,     0,     0,     0,     0,
9518        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9519        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
9520      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
9521      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
9522      250,   251,   252,   253,   254,     0,   255,   256,   257,   258,
9523      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
9524      266,   267,   268,   269,   270,     0,   271,     0,   272,   273,
9525      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
9526      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
9527        0,     0,   291,     0,     0,   879,   292,   293,   294,   295,
9528      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
9529      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
9530        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
9531        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
9532      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
9533      336,   337,     0,   338,     0,   339,   340,     0,   341,   342,
9534      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
9535        0,   351,   352,   353,   354,  1132,   356,   357,   358,   359,
9536      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
9537      368,   369,   370,   371,   372,   373,   374,   375,   376,     0,
9538      377,     0,   378,   379,   380,   381,   382,   383,   384,   385,
9539      386,   387,     0,     0,   388,   389,   390,   391,   392,     0,
9540      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
9541      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
9542      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
9543      421,   422,   423,   424,     0,   425,   426,   427,   428,     0,
9544      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
9545        0,   437,   438,   439,     0,     0,   440,   441,   442,   443,
9546      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
9547      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
9548      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
9549      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
9550      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
9551      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
9552      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
9553        0,   509,   510,   511,   512,   513,   880,   514,   515,   516,
9554      517,   518,   519,   520,   521,   522,   523,     0,   524,   525,
9555      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
9556      536,   537,   538,     0,   539,   540,     0,   541,   542,   543,
9557      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
9558      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
9559      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
9560      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
9561        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
9562        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
9563      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
9564      601,   602,   878,     0,     0,     0,     0,     0,     0,     0,
9565        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
9566      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
9567      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
9568        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
9569      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
9570        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
9571      268,   269,   270,     0,   271,     0,   272,   273,   274,   275,
9572      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
9573      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
9574      291,     0,     0,   879,   292,   293,   294,   295,   296,   297,
9575      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
9576      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
9577      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
9578      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
9579      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
9580        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
9581      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
9582      352,   353,   354,  1144,   356,   357,   358,   359,   360,     0,
9583      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
9584      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
9585      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
9586        0,     0,   388,   389,   390,   391,   392,     0,   393,   394,
9587      395,     0,     0,   396,   397,   398,   399,  1145,   401,   402,
9588      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
9589      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
9590      423,   424,     0,   425,   426,   427,   428,     0,   429,   430,
9591      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
9592      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
9593      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
9594        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
9595        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
9596      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
9597      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
9598      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
9599      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
9600      510,   511,   512,   513,   880,   514,   515,   516,   517,   518,
9601      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
9602      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
9603      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
9604      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
9605      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
9606      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
9607        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
9608      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
9609      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9610      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
9611      878,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9612        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
9613      233,   234,   235,   236,   237,     0,   238,   239,   240,     3,
9614        4,     0,     0,     0,     0,     0,   241,   242,     0,   243,
9615      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
9616      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
9617      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
9618      270,     0,   271,     0,   272,   273,   274,   275,   276,   277,
9619      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
9620        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
9621        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
9622      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
9623        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
9624      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
9625        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
9626      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
9627        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
9628      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
9629      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
9630      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
9631      372,   373,   374,   375,   376,     0,   377,     0,   378,   379,
9632      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
9633      388,   389,   390,   391,   392,     0,   393,   394,   395,     0,
9634        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
9635      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
9636      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
9637        0,   425,   426,   427,   428,     0,   429,   430,   431,   432,
9638      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
9639        0,     0,   440,   441,   442,   443,   444,   445,   446,   447,
9640      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
9641      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
9642      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
9643      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
9644      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
9645      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
9646      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
9647      512,   513,     0,   514,   515,   516,   517,   518,   519,   520,
9648      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
9649      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
9650      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
9651        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
9652      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
9653        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
9654      570,   571,   572,   573,   574,   575,     0,   576,   577,   578,
9655      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
9656      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
9657      595,   596,   597,   598,   599,   600,   601,   602,   878,     0,
9658        0,   670,     0,     0,     0,     0,     0,     0,     0,     0,
9659        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
9660      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
9661        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
9662      246,   247,   248,   249,   250,   251,   252,   253,   254,     0,
9663      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
9664      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
9665      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
9666      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
9667      288,   289,   290,     0,     0,     0,   291,     0,     0,     0,
9668      292,   293,   294,   295,   296,   297,   298,   299,   300,  2101,
9669      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
9670      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
9671        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
9672      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
9673      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
9674      340,     0,   341,   342,   343,   344,   345,     0,   346,   347,
9675        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
9676      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
9677      365,   366,   367,     0,   368,   369,   370,   371,   372,   373,
9678      374,   375,   376,     0,   377,     0,   378,   379,   380,   381,
9679      382,   383,   384,   385,   386,   387,     0,     0,   388,   389,
9680      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
9681      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
9682      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
9683      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
9684      426,   427,   428,     0,   429,   430,   431,   432,   433,   434,
9685        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
9686      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
9687      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
9688      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
9689      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
9690      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
9691      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
9692      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
9693      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
9694        0,   514,   515,   516,   517,   518,   519,   520,   521,   522,
9695      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
9696      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
9697        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
9698      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
9699      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
9700      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
9701      572,   573,   574,   575,     0,   576,   577,   578,   579,   580,
9702      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
9703      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9704      597,   598,   599,   600,   601,   602,   878,     0,     0,   670,
9705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9706        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
9707      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
9708        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
9709      248,   249,   250,   251,   252,   253,   254,     0,   255,   256,
9710      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
9711      265,     0,   266,   267,   268,   269,   270,     0,   271,     0,
9712      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
9713      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
9714      290,     0,     0,     0,   291,     0,     0,     0,   292,   293,
9715      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
9716      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
9717      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
9718      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
9719      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
9720      334,   335,   336,   337,     0,   338,     0,   339,   340,     0,
9721      341,   342,   343,   344,   345,     0,   346,   347,     0,   348,
9722      349,   350,     0,   351,   352,   353,   354,   355,   356,   357,
9723      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
9724      367,     0,   368,   369,   370,   371,   372,   373,   374,   375,
9725      376,     0,   377,     0,   378,   379,   380,   381,   382,   383,
9726      384,   385,   386,   387,     0,     0,   388,   389,   390,   391,
9727      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
9728      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9729      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
9730      419,   420,   421,   422,   423,   424,     0,   425,   426,   427,
9731      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
9732      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
9733      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9734      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
9735      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
9736      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9737        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9738      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
9739      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9740      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
9741      515,   516,   517,   518,   519,   520,   521,   522,   523,     0,
9742      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
9743      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
9744      542,   543,   544,   545,   546,   547,     0,   548,   549,   550,
9745        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
9746      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
9747      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
9748      574,   575,     0,   576,   577,   578,   579,   580,   581,     0,
9749        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
9750      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
9751      599,   600,   601,   602,   878,     0,     0,   670,     0,     0,
9752        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9753        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
9754      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
9755      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
9756      250,   251,   252,   253,   254,     0,   255,   256,   257,   258,
9757      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
9758      266,   267,   268,   269,   270,     0,   271,     0,   272,   273,
9759      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
9760      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
9761        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
9762      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
9763      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
9764        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
9765        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
9766      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
9767      336,   337,     0,   338,     0,   339,   340,     0,   341,   342,
9768      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
9769        0,   351,   352,   353,   354,  1919,   356,   357,   358,   359,
9770      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
9771      368,   369,   370,   371,   372,   373,   374,   375,   376,     0,
9772      377,     0,   378,   379,   380,   381,   382,   383,   384,   385,
9773      386,   387,     0,     0,   388,   389,   390,   391,   392,     0,
9774      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
9775      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
9776      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
9777      421,   422,   423,   424,     0,   425,   426,   427,   428,     0,
9778      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
9779        0,   437,   438,   439,     0,     0,   440,   441,   442,   443,
9780      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
9781      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
9782      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
9783      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
9784      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
9785      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
9786      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
9787        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
9788      517,   518,   519,   520,   521,   522,   523,     0,   524,   525,
9789      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
9790      536,   537,   538,     0,   539,   540,     0,   541,   542,   543,
9791      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
9792      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
9793      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
9794      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
9795        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
9796        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
9797      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
9798      601,   602,   229,     0,     0,     0,     0,     0,     0,     0,
9799        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
9800      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
9801      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
9802        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
9803      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
9804        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
9805      268,   269,   270,     0,   271,     0,   272,   273,   274,   275,
9806      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
9807      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
9808      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
9809      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
9810      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
9811      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
9812      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
9813      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
9814        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
9815      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
9816      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
9817      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
9818      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
9819      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
9820        0,     0,   388,   389,   390,   391,   392,     0,   393,   394,
9821      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
9822      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
9823      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
9824      423,   424,     0,   425,   426,   427,   428,     0,   429,   430,
9825      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
9826      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
9827      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
9828        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
9829        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
9830      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
9831      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
9832      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
9833      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
9834      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
9835      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
9836      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
9837      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
9838      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
9839      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
9840      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
9841        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
9842      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
9843      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
9844      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
9845      229,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9846        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
9847      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
9848        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
9849      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
9850      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
9851      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
9852      270,     0,   271,     0,   272,   273,   274,   275,   276,   277,
9853      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
9854        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
9855        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
9856      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
9857        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
9858      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
9859        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
9860      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
9861        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
9862      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
9863      354,  1067,   356,   357,   358,   359,   360,     0,   361,   362,
9864      363,   364,   365,   366,   367,     0,   368,   369,   370,   371,
9865      372,   373,   374,   375,   376,     0,   377,     0,   378,   379,
9866      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
9867      388,   389,   390,   391,   392,     0,   393,   394,   395,     0,
9868        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
9869      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
9870      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
9871        0,   425,   426,   427,   428,     0,   429,   430,   431,   432,
9872      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
9873        0,     0,   440,   441,   442,   443,   444,   445,   446,   447,
9874      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
9875      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
9876      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
9877      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
9878      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
9879      493,   494,   495,   496,   497,   498,   499,   500,   501,   502,
9880      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
9881      512,   513,     0,   514,   515,   516,   517,   518,   519,   520,
9882      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
9883      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
9884      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
9885        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
9886      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
9887        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
9888      570,   571,   572,   573,   574,   575,     0,   576,   577,   578,
9889      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
9890      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
9891      595,   596,   597,   598,   599,   600,   601,   602,   229,     0,
9892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9893        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
9894      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
9895        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
9896      246,   247,   248,   249,   250,   251,   252,   253,   254,     0,
9897      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
9898      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
9899      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
9900      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
9901      288,   289,   290,     0,     0,     0,   291,     0,     0,     0,
9902      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
9903      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
9904      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
9905        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
9906      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
9907      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
9908      340,     0,   341,   342,   343,   344,   345,     0,   346,   347,
9909        0,   348,   349,   350,     0,   351,   352,   353,   354,  1116,
9910      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
9911      365,   366,   367,     0,   368,   369,   370,   371,   372,   373,
9912      374,   375,   376,     0,   377,     0,   378,   379,   380,   381,
9913      382,   383,   384,   385,   386,   387,     0,     0,   388,   389,
9914      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
9915      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
9916      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
9917      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
9918      426,   427,   428,     0,   429,   430,   431,   432,   433,   434,
9919        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
9920      440,   441,   442,   443,   444,   445,   446,   447,   448,   449,
9921      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
9922      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
9923      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
9924      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
9925      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
9926      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
9927      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
9928        0,   514,   515,   516,   517,   518,   519,   520,   521,   522,
9929      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
9930      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
9931        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
9932      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
9933      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
9934      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
9935      572,   573,   574,   575,     0,   576,   577,   578,   579,   580,
9936      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
9937      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
9938      597,   598,   599,   600,   601,   602,   229,     0,     0,     0,
9939        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9940        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
9941      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
9942        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
9943      248,   249,   250,   251,   252,   253,   254,     0,   255,   256,
9944      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
9945      265,     0,   266,   267,   268,   269,   270,     0,   271,     0,
9946      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
9947      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
9948      290,     0,     0,     0,   291,     0,     0,     0,   292,   293,
9949      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
9950      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
9951      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
9952      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
9953      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
9954      334,   335,   336,   337,     0,   338,     0,   339,   340,     0,
9955      341,   342,   343,   344,   345,     0,   346,   347,     0,   348,
9956      349,   350,     0,   351,   352,   353,   354,  1130,   356,   357,
9957      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
9958      367,     0,   368,   369,   370,   371,   372,   373,   374,   375,
9959      376,     0,   377,     0,   378,   379,   380,   381,   382,   383,
9960      384,   385,   386,   387,     0,     0,   388,   389,   390,   391,
9961      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
9962      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
9963      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
9964      419,   420,   421,   422,   423,   424,     0,   425,   426,   427,
9965      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
9966      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
9967      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
9968      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
9969      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
9970      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
9971        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
9972      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
9973      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
9974      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
9975      515,   516,   517,   518,   519,   520,   521,   522,   523,     0,
9976      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
9977      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
9978      542,   543,   544,   545,   546,   547,     0,   548,   549,   550,
9979        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
9980      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
9981      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
9982      574,   575,     0,   576,   577,   578,   579,   580,   581,     0,
9983        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
9984      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
9985      599,   600,   601,   602,   229,     0,     0,     0,     0,     0,
9986        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9987        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
9988      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
9989      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
9990      250,   251,   252,   253,   254,     0,   255,   256,   257,   258,
9991      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
9992      266,   267,   268,   269,   270,     0,   271,     0,   272,   273,
9993      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
9994      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
9995        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
9996      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
9997      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
9998        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
9999        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
10000      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
10001      336,   337,     0,   338,     0,   339,   340,     0,   341,   342,
10002      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
10003        0,   351,   352,   353,   354,  1134,   356,   357,   358,   359,
10004      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
10005      368,   369,   370,   371,   372,   373,   374,   375,   376,     0,
10006      377,     0,   378,   379,   380,   381,   382,   383,   384,   385,
10007      386,   387,     0,     0,   388,   389,   390,   391,   392,     0,
10008      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
10009      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10010      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
10011      421,   422,   423,   424,     0,   425,   426,   427,   428,     0,
10012      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
10013        0,   437,   438,   439,     0,     0,   440,   441,   442,   443,
10014      444,   445,   446,   447,   448,   449,   450,   451,   452,   453,
10015      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
10016      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
10017      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
10018      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10019      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
10020      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10021        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
10022      517,   518,   519,   520,   521,   522,   523,     0,   524,   525,
10023      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
10024      536,   537,   538,     0,   539,   540,     0,   541,   542,   543,
10025      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
10026      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
10027      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
10028      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
10029        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
10030        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
10031      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
10032      601,   602,   878,     0,     0,     0,     0,     0,     0,     0,
10033        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
10034      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
10035      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
10036        0,   243,   244,   245,   246,   247,   248,   249,   250,   251,
10037      252,   253,   254,     0,   255,   256,   257,   258,   259,   260,
10038        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
10039      268,   269,   270,     0,   271,     0,   272,   273,   274,   275,
10040      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
10041      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
10042      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
10043      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
10044      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
10045      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
10046      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
10047      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
10048        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
10049      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
10050      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
10051      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
10052      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
10053      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
10054        0,     0,   388,   389,   390,   391,   392,     0,   393,   394,
10055      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
10056      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10057      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10058      423,   424,     0,   425,   426,   427,   428,     0,   429,   430,
10059      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
10060      438,   439,     0,     0,   440,   441,   442,   443,   444,   445,
10061      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
10062        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
10063        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10064      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
10065      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
10066      491,   492,   493,   494,   495,   496,   497,   498,   499,   500,
10067      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
10068      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
10069      519,   520,   521,   522,   523,     0,   524,   525,   526,   527,
10070      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
10071      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
10072      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
10073      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
10074      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
10075        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
10076      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
10077      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10078      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
10079      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10080        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
10081      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
10082        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
10083      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
10084      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
10085      261,   262,   263,   264,   265,  2227,   266,   267,   268,   269,
10086      270,     0,     0,  2307,   272,   273,   274,   275,   276,     0,
10087      278,   279,   280,  2228,   281,   282,   283,   284,   285,   286,
10088        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
10089        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
10090      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
10091        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
10092      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
10093        0,  2308,   324,   325,   326,   327,   328,   329,   330,   331,
10094      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
10095     2230,   339,     0,     0,     0,   342,   343,   344,   345,     0,
10096      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
10097      354,  2309,     0,   357,   358,   359,   360,     0,   361,   362,
10098      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
10099      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
10100        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
10101      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
10102        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10103      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
10104      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
10105        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
10106      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
10107        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
10108      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
10109      456,   457,   458,   459,   460,   461,   462,   463,  2231,   464,
10110      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
10111      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
10112      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
10113        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10114      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
10115      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
10116      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
10117      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
10118      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
10119        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
10120      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
10121        0,  2232,   564,   565,   566,   567,   568,     0,     0,   569,
10122      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
10123      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
10124      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
10125      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
10126        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10127        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
10128      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
10129        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
10130        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
10131      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
10132      263,   264,   265,  2227,   266,   267,   268,   269,   270,     0,
10133        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
10134      280,  2228,   281,   282,   283,   284,   285,   286,     0,     0,
10135      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
10136      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
10137      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
10138      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
10139        0,   317,   318,   319,     0,   320,   321,   322,     0,  2308,
10140      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
10141      333,     0,   334,   335,   336,   337,     0,   338,  2230,   339,
10142        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
10143        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
10144        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
10145      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
10146      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
10147        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
10148        0,   391,  3306,     0,   393,   394,   395,     0,     0,   396,
10149      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
10150      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
10151      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
10152      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
10153        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
10154      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
10155      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
10156      458,   459,   460,   461,   462,   463,  2231,   464,   465,   466,
10157      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
10158      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
10159      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
10160      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
10161      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
10162        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
10163      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
10164      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
10165        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
10166      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
10167      556,   557,   558,   559,   560,   561,   562,   563,     0,  2232,
10168      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
10169      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
10170      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
10171      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
10172      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
10173        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10174        0,     0,     0,   230,   231,   232,   233,   234,   791,   236,
10175      237,   750,   238,   239,   240,     0,     0,     0,     0,     0,
10176        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
10177      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
10178      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
10179      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
10180      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
10181      281,   282,   283,   284,   285,   286,   751,     0,   288,   289,
10182      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
10183      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
10184      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
10185      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
10186      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
10187      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
10188      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
10189        0,   342,   343,   344,   345,   792,   346,   347,     0,   348,
10190      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
10191      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
10192      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
10193      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
10194      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
10195        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
10196      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10197      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
10198      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
10199      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
10200      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
10201      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
10202      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
10203      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
10204      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10205      752,   479,   480,   481,   482,   483,   484,   485,   486,   487,
10206      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
10207      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
10208      507,   508,   753,   509,   510,   511,   512,   513,     0,   514,
10209      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
10210      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
10211      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
10212        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
10213        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
10214      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
10215      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
10216      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
10217        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
10218      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
10219      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
10220        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10221        0,   230,   231,   232,   233,   234,   235,   236,   237,   750,
10222      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
10223      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
10224      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
10225      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
10226      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
10227      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
10228      283,   284,   285,   286,   751,     0,   288,   289,   290,     0,
10229        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
10230      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
10231      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
10232        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
10233        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
10234      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
10235      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
10236      343,   344,   345,  2985,   346,   347,     0,   348,   349,   350,
10237        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
10238      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
10239      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
10240      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
10241      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
10242      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
10243      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10244      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
10245      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
10246      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
10247        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
10248      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
10249      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
10250      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
10251      471,   472,   473,   474,   475,   476,   477,   478,   752,   479,
10252      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10253      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
10254      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10255      753,   509,   510,   511,   512,   513,     0,   514,   515,   516,
10256      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
10257      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
10258      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
10259      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
10260      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
10261      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
10262      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
10263        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
10264        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
10265      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
10266      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
10267        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
10268      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
10269      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
10270        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
10271        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
10272        0,     0,   261,   262,   263,   264,   265,  2227,   266,   267,
10273      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
10274      276,     0,   278,   279,   280,  2228,   281,   282,   283,   284,
10275      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
10276        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
10277      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
10278      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
10279      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
10280      321,   322,     0,  2308,   324,   325,   326,   327,   328,   329,
10281      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
10282        0,   338,  2230,   339,     0,     0,     0,   342,   343,   344,
10283      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
10284      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
10285      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
10286      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
10287      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
10288        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
10289      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
10290      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10291        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10292      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
10293      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
10294      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
10295      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
10296        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
10297     2231,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10298      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
10299      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
10300      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
10301      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
10302      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
10303        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
10304      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
10305      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
10306      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
10307      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
10308      562,   563,     0,  2232,   564,   565,   566,   567,   568,     0,
10309        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
10310        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
10311      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10312      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
10313      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10314        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
10315      233,   234,   235,   236,   237,   750,   238,   239,   240,     0,
10316        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
10317      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
10318      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
10319      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
10320      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
10321      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
10322      751,     0,   288,   289,   290,     0,     0,     0,     0,     0,
10323        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
10324      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
10325        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
10326      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
10327        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
10328      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
10329        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
10330      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
10331      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
10332      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
10333      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
10334        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
10335      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
10336        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10337      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
10338      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
10339        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
10340      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
10341        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
10342      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
10343      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
10344      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
10345      475,   476,   477,   478,   752,   479,   480,   481,   482,   483,
10346      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
10347        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10348      503,   504,   505,   506,   507,   508,   753,   509,   510,   511,
10349      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
10350      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
10351      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
10352      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
10353        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
10354      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
10355        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
10356      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
10357      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
10358      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
10359      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
10360        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10361        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
10362      235,   236,   237,  1962,   238,   239,   240,     0,     0,     0,
10363        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
10364        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
10365      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
10366      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
10367        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
10368      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
10369      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
10370      292,   293,   294,  1963,   296,   297,   298,   299,   300,     0,
10371      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
10372      309,   310,   311,     0,     0,   312,  1964,   314,   315,   316,
10373        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
10374      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
10375      333,     0,   334,   335,   336,   337,     0,   338,  1965,   339,
10376        0,     0,     0,  1966,   343,   344,   345,     0,   346,   347,
10377        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
10378        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
10379      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
10380      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
10381        0,   383,   384,  1967,  1968,   387,     0,     0,   388,   389,
10382        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
10383      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
10384      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
10385      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
10386      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
10387        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
10388      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
10389      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
10390      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
10391     1969,   468,   469,   470,   471,   472,   473,   474,   475,   476,
10392      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
10393      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
10394      495,   496,  1970,   498,   499,   500,   501,   502,  1971,   504,
10395      505,   506,   507,   508,     0,  1972,   510,   511,   512,   513,
10396        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
10397      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
10398      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
10399     1973,   541,     0,  1974,   544,   545,   546,   547,     0,   548,
10400      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
10401      556,   557,  1975,   559,   560,   561,   562,   563,     0,     0,
10402      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
10403      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
10404      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
10405      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
10406      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
10407        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10408        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
10409      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
10410        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
10411      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
10412      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
10413      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
10414      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
10415      281,   282,   283,   284,   285,   286,   751,     0,   288,   289,
10416      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
10417      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
10418      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
10419      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
10420      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
10421      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
10422      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
10423        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
10424      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
10425      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
10426      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
10427      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
10428      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
10429        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
10430      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10431      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
10432      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
10433      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
10434      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
10435      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
10436      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
10437      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
10438      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10439      752,   479,   480,   481,   482,   483,   484,   485,   486,   487,
10440      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
10441      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
10442      507,   508,   753,   509,   510,   511,   512,   513,     0,   514,
10443      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
10444      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
10445      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
10446        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
10447        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
10448      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
10449      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
10450      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
10451        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
10452      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
10453      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
10454        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10455        0,   230,   231,   232,   233,   234,   235,   236,   237,   930,
10456      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
10457      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
10458      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
10459      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
10460      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
10461      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
10462      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
10463        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
10464      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
10465      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
10466        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
10467        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
10468      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
10469      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
10470      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
10471        0,   351,   352,   353,   354,   931,     0,   357,   358,   359,
10472      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
10473      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
10474      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
10475      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
10476      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
10477      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10478      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
10479      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
10480      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
10481      823,   437,   438,   439,     0,     0,   440,   441,   442,     0,
10482      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
10483      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
10484      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
10485      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
10486      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10487      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
10488      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10489        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
10490      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
10491      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
10492      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
10493      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
10494      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
10495      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
10496      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
10497        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
10498        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
10499      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
10500      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
10501        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
10502      231,   232,   233,   234,   235,   236,   237,  3076,   238,   239,
10503      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
10504        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
10505        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
10506        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
10507      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
10508      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
10509      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
10510        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
10511      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
10512      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
10513      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
10514      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
10515      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
10516        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
10517      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
10518      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
10519      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
10520      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
10521      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
10522        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
10523      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
10524      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10525        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10526      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
10527      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
10528      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
10529      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
10530        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
10531        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10532      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
10533      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
10534      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
10535      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
10536      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
10537        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
10538      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
10539      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
10540      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
10541      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
10542      562,   563,     0,     0,   564,   565,   566,   567,   568,  3077,
10543        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
10544        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
10545      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10546      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
10547      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10548        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
10549      233,   234,   235,   236,   237,  3089,   238,   239,   240,     0,
10550        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
10551      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
10552      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
10553      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
10554      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
10555      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
10556        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
10557        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
10558      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
10559        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
10560      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
10561        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
10562      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
10563        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
10564      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
10565      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
10566      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
10567      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
10568        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
10569      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
10570        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10571      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
10572      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
10573        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
10574      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
10575        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
10576      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
10577      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
10578      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
10579      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
10580      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
10581        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10582      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
10583      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
10584      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
10585      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
10586      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
10587        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
10588      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
10589        0,     0,   564,   565,   566,   567,   568,  3090,     0,   569,
10590      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
10591      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
10592      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
10593      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
10594        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10595        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
10596      235,   236,   237,   611,   238,   239,   240,     0,     0,     0,
10597        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
10598        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
10599      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
10600      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
10601        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
10602      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
10603      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
10604      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
10605      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
10606      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
10607        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
10608      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
10609      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
10610        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
10611        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
10612        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
10613      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
10614      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
10615        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
10616        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
10617      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
10618      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
10619      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
10620      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
10621        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
10622      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
10623      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
10624      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
10625      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
10626      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
10627      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
10628      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
10629      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
10630        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
10631      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
10632      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
10633        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
10634      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
10635      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
10636      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
10637      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
10638      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
10639      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
10640      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
10641        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10642        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
10643      237,   661,   238,   239,   240,     0,     0,     0,     0,     0,
10644        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
10645      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
10646      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
10647      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
10648      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
10649      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
10650      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
10651      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
10652      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
10653      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
10654      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
10655      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
10656      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
10657        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
10658      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
10659      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
10660      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
10661      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
10662      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
10663        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
10664      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10665      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
10666      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
10667      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
10668      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
10669      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
10670      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
10671      460,   461,   662,   463,     0,   464,   465,   466,   467,   468,
10672      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10673        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
10674      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
10675      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
10676      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
10677      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
10678      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
10679      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
10680        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
10681        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
10682      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
10683      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
10684      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
10685        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
10686      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
10687      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
10688        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10689        0,   230,   231,   232,   233,   234,   235,   236,   237,   783,
10690      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
10691      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
10692      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
10693      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
10694      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
10695      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
10696      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
10697        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
10698      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
10699      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
10700        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
10701        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
10702      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
10703      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
10704      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
10705        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
10706      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
10707      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
10708      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
10709      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
10710      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
10711      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10712      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
10713      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
10714      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
10715        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
10716      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
10717      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
10718      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
10719      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
10720      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10721      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
10722      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10723        0,   509,   510,   511,   512,   784,     0,   514,   515,   516,
10724      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
10725      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
10726      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
10727      544,   545,   546,   547,     0,   548,   785,   550,     0,     0,
10728      786,   552,   553,   554,   555,     0,   556,   557,   558,   559,
10729      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
10730      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
10731        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
10732        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
10733      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
10734      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
10735        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
10736      231,   232,   233,   234,   235,   236,   237,   817,   238,   239,
10737      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
10738        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
10739        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
10740        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
10741      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
10742      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
10743      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
10744        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
10745      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
10746      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
10747      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
10748      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
10749      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
10750        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
10751      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
10752      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
10753      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
10754      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
10755      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
10756        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
10757      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
10758      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10759        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10760      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
10761      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
10762      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
10763      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
10764        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
10765        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
10766      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
10767      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
10768      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
10769      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
10770      510,   511,   512,   818,     0,   514,   515,   516,   517,   518,
10771        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
10772      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
10773      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
10774      546,   547,     0,   548,   819,   550,     0,     0,   820,   552,
10775      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
10776      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
10777        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
10778        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
10779      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
10780      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
10781      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10782        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
10783      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
10784        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
10785      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
10786      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
10787      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
10788      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
10789      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
10790        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
10791        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
10792      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
10793        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
10794      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
10795        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
10796      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
10797        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
10798      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
10799      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
10800      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
10801      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
10802        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
10803      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
10804        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
10805      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
10806      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
10807        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
10808      433,   434,     0,   435,   436,     0,   823,   437,   438,   439,
10809        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
10810      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
10811      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
10812      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
10813      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
10814      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
10815        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
10816      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
10817      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
10818      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
10819      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
10820      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
10821        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
10822      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
10823        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
10824      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
10825      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
10826      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
10827      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
10828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10829        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
10830      235,   236,   237,   887,   238,   239,   240,     0,     0,     0,
10831        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
10832        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
10833      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
10834      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
10835        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
10836      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
10837      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
10838      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
10839      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
10840      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
10841        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
10842      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
10843      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
10844        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
10845        0,   348,   349,   350,     0,   351,   352,   353,   354,   888,
10846        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
10847      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
10848      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
10849        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
10850        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
10851      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
10852      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
10853      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
10854      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
10855        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
10856      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
10857      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
10858      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
10859      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
10860      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
10861      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
10862      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
10863      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
10864        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
10865      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
10866      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
10867        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
10868      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
10869      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
10870      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
10871      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
10872      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
10873      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
10874      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
10875        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10876        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
10877      237,  1059,   238,   239,   240,     0,     0,     0,     0,     0,
10878        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
10879      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
10880      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
10881      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
10882      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
10883      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
10884      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
10885      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
10886      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
10887      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
10888      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
10889      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
10890      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
10891        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
10892      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
10893      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
10894      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
10895      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
10896      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
10897        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
10898      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
10899      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
10900      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
10901      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
10902      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
10903      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
10904      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
10905      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
10906      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
10907        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
10908      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
10909      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
10910      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
10911      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
10912      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
10913      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
10914        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
10915        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
10916      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
10917      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
10918      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
10919        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
10920      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
10921      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
10922        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10923        0,   230,   231,   232,   233,   234,   235,   236,   237,   783,
10924      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
10925      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
10926      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
10927      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
10928      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
10929      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
10930      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
10931        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
10932      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
10933      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
10934        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
10935        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
10936      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
10937      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
10938      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
10939        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
10940      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
10941      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
10942      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
10943      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
10944      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
10945      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
10946      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
10947      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
10948      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
10949        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
10950      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
10951      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
10952      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
10953      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
10954      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
10955      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
10956      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
10957        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
10958      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
10959      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
10960      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
10961      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
10962      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
10963      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
10964      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
10965        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
10966        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
10967      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
10968      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
10969        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
10970      231,   232,   233,   234,   235,   236,   237,  1206,   238,   239,
10971      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
10972        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
10973        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
10974        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
10975      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
10976      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
10977      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
10978        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
10979      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
10980      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
10981      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
10982      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
10983      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
10984        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
10985      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
10986      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
10987      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
10988      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
10989      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
10990        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
10991      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
10992      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
10993        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
10994      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
10995      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
10996      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
10997      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
10998        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
10999        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
11000      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
11001      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
11002      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
11003      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
11004      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
11005        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
11006      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
11007      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
11008      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
11009      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
11010      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
11011        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
11012        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
11013      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11014      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
11015      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11016        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
11017      233,   234,   235,   236,   237,  1339,   238,   239,   240,     0,
11018        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
11019      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
11020      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
11021      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11022      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
11023      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
11024        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
11025        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
11026      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
11027        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
11028      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
11029        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11030      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
11031        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
11032      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
11033      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
11034      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
11035      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
11036        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
11037      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
11038        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
11039      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
11040      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
11041        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
11042      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
11043        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
11044      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
11045      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
11046      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
11047      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
11048      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
11049        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
11050      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
11051      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
11052      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
11053      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
11054      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
11055        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
11056      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
11057        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
11058      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
11059      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
11060      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11061      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
11062        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11063        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
11064      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
11065        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
11066     1350,   247,   248,   249,   250,   251,     0,   253,   254,     0,
11067      255,   256,   257,   258,   259,   260,     0,     0,   803,   262,
11068      263,   264,  1351,     0,   266,   267,   268,   269,   270,     0,
11069        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
11070      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
11071      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
11072      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
11073      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
11074      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
11075        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
11076      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
11077      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
11078        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
11079        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
11080        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
11081      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
11082      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
11083        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
11084        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
11085      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
11086      407,   408,   409,   410,   806,   412,     0,   414,   415,   416,
11087      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
11088      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
11089        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
11090      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
11091      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
11092      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
11093      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
11094      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
11095      486,   487,   488,   489,   490,     0,   491,   492,     0,   807,
11096      495,   496,   497,   498,   499,   500,   501,   502,   808,   504,
11097      505,   506,   507,   508,     0,   509,   510,   511,   512,  1343,
11098        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
11099      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
11100      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
11101        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
11102      810,   550,     0,     0,   811,   552,   553,   554,   555,     0,
11103      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
11104      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
11105      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
11106      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
11107      587,   812,   589,   590,   591,   592,   593,   594,   595,   596,
11108      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
11109        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11110        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
11111      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
11112        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
11113      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
11114      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
11115      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
11116      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
11117      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
11118      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
11119      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
11120      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
11121      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
11122      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
11123      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
11124      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
11125        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
11126      349,   350,     0,   351,   352,   353,   354,  1462,     0,   357,
11127      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
11128      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
11129      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
11130      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
11131        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
11132      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11133      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
11134      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
11135      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
11136      436,     0,   823,   437,   438,   439,     0,     0,   440,   441,
11137      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
11138      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
11139      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
11140      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11141        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11142      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
11143      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
11144      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
11145      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
11146      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
11147      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
11148        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
11149        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
11150      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
11151      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
11152      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
11153        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
11154      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11155      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
11156        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11157        0,   230,   231,   232,   233,   234,   235,   236,   237,  1523,
11158      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
11159      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
11160      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
11161      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
11162      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
11163      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
11164      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
11165        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
11166      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
11167      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
11168        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
11169        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11170      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
11171      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
11172      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
11173        0,   351,   352,   353,   354,  1524,     0,   357,   358,   359,
11174      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
11175      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
11176      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
11177      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
11178      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
11179      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
11180      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
11181      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
11182      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
11183        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
11184      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
11185      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
11186      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
11187      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
11188      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11189      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
11190      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11191        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
11192      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
11193      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
11194      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
11195      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
11196      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
11197      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
11198      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
11199        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
11200        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
11201      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11202      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
11203        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
11204      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
11205      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
11206        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
11207        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
11208        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
11209      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
11210      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
11211      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
11212        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
11213      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
11214      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
11215      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
11216      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11217      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
11218        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
11219     2885,     0,   346,   347,     0,   348,   349,   350,     0,   351,
11220      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
11221      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
11222      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
11223      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
11224        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
11225     2886,     0,     0,   396,   397,   398,   399,   400,   401,   402,
11226      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
11227        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
11228      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
11229      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
11230      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
11231      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11232        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
11233        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
11234      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
11235      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
11236      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
11237      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
11238      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
11239        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
11240      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
11241      538,     0,   539,   540,  2887,   541,     0,   543,  2888,   545,
11242     2889,   547,     0,   548,   549,   550,     0,     0,   551,   552,
11243      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
11244      562,   563,     0,     0,   564,   565,  2890,   567,   568,     0,
11245        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
11246        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
11247      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11248      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
11249      610,     0,     0,   670,     0,     0,     0,     0,     0,     0,
11250        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
11251      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
11252        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
11253      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
11254      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
11255      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11256      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
11257      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
11258        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
11259        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
11260      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
11261        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
11262      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
11263        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11264      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
11265        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
11266      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
11267      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
11268      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
11269      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
11270        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
11271      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
11272        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
11273      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
11274      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
11275        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
11276      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
11277        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
11278      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
11279      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
11280      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
11281      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
11282      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
11283        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
11284      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
11285      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
11286      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
11287      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
11288      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
11289        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
11290      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
11291        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
11292      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
11293      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
11294      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11295      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
11296        0,     0,     0,     0,     0,     0,   731,     0,     0,     0,
11297        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
11298      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
11299        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
11300        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
11301      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
11302      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
11303        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
11304      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
11305      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
11306      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
11307      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
11308      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
11309        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
11310      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
11311      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
11312        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
11313        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
11314        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
11315      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
11316      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
11317        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
11318        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
11319      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
11320      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
11321      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
11322      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
11323        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
11324      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
11325      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
11326      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
11327      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
11328      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
11329      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
11330      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
11331      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
11332        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
11333      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
11334      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
11335        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
11336      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
11337      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
11338      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
11339      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
11340      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
11341      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
11342      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
11343        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11344        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
11345      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
11346     4173,     0,   241,   242,     0,   243,   244,   245,     0,   247,
11347      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
11348      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
11349      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
11350      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
11351      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
11352      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
11353      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
11354      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
11355      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
11356      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
11357      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
11358      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
11359        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
11360      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
11361      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
11362      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
11363      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
11364      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
11365        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
11366      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11367      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
11368      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
11369      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
11370      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
11371      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
11372      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
11373      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
11374      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11375        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11376      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
11377      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
11378      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
11379      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
11380      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
11381      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
11382        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
11383        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
11384      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
11385      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
11386      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
11387        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
11388      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11389      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
11390        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11391        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
11392      238,   239,   240,     0,     0,     0,     0,     0,  4187,     0,
11393      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
11394      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
11395      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
11396      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
11397      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
11398      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
11399        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
11400      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
11401      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
11402        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
11403        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11404      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
11405      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
11406      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
11407        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
11408      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
11409      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
11410      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
11411      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
11412      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
11413      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
11414      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
11415      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
11416      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
11417        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
11418      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
11419      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
11420      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
11421      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
11422      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11423      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
11424      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11425        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
11426      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
11427      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
11428      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
11429      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
11430      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
11431      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
11432      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
11433        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
11434        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
11435      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11436      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
11437        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
11438      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
11439      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
11440        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
11441        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
11442        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
11443      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
11444      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
11445      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
11446        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
11447      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
11448      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
11449      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
11450      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11451      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
11452        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
11453      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
11454      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
11455      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
11456      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
11457      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
11458        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
11459      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
11460      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
11461        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
11462      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
11463      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
11464      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
11465      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11466        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
11467        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
11468      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
11469      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
11470      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
11471      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
11472      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
11473        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
11474      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
11475      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
11476      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
11477      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
11478      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
11479        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
11480        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
11481      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11482      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
11483      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11484        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
11485      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
11486        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
11487      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
11488      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
11489      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11490      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
11491      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
11492        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
11493        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
11494      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
11495        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
11496      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
11497        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11498      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
11499        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
11500      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
11501      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
11502      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
11503      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
11504        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
11505      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
11506        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
11507      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
11508      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
11509        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
11510      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
11511        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
11512      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
11513      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
11514      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
11515      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
11516      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
11517        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
11518      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
11519      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
11520      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
11521      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
11522      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
11523        0,   548,   549,   550,     0,     0,   769,   552,   553,   554,
11524      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
11525        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
11526      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
11527      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
11528      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11529      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
11530        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11531        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
11532      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
11533        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
11534        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
11535      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
11536      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
11537        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
11538      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
11539      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
11540      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
11541      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
11542      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
11543        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
11544      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
11545      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
11546        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
11547        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
11548        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
11549      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
11550      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
11551        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
11552        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
11553      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
11554      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
11555      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
11556      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
11557        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
11558      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
11559      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
11560      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
11561      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
11562      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
11563      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
11564      495,   496,   497,   498,   499,   500,   501,   781,   503,   504,
11565      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
11566        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
11567      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
11568      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
11569        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
11570      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
11571      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
11572      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
11573      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
11574      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
11575      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
11576      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
11577        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11578        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
11579      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
11580        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
11581      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
11582      257,   258,   259,   260,     0,     0,   803,   262,   263,   264,
11583      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
11584      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
11585      804,   282,   283,   284,   285,   286,     0,     0,   288,   289,
11586      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
11587      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
11588      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
11589      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
11590      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
11591      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
11592      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
11593        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
11594      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
11595      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
11596      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
11597      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
11598      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
11599        0,     0,   393,   394,   805,     0,     0,   396,   397,   398,
11600      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11601      409,   410,   806,   412,     0,   414,   415,   416,   417,   418,
11602      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
11603      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
11604      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
11605      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
11606      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
11607      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
11608      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11609        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11610      488,   489,   490,     0,   491,   492,     0,   807,   495,   496,
11611      497,   498,   499,   500,   501,   502,   808,   504,   505,   506,
11612      507,   508,     0,   509,   510,   511,   512,   809,     0,   514,
11613      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
11614      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
11615      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
11616        0,   543,   544,   545,   546,   547,     0,   548,   810,   550,
11617        0,     0,   811,   552,   553,   554,   555,     0,   556,   557,
11618      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
11619      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
11620      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
11621        0,   582,     0,     0,   583,   584,   585,   586,   587,   812,
11622      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11623      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
11624        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11625        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
11626      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
11627      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
11628      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
11629      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
11630      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
11631      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
11632      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
11633        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
11634      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
11635      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
11636        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
11637        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11638      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
11639      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
11640      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
11641        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
11642      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
11643      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
11644      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
11645      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
11646      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
11647      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
11648      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
11649      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
11650      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
11651        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
11652      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
11653      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
11654      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
11655      471,   472,   473,   474,   475,   476,   834,   478,     0,   479,
11656      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11657      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
11658      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11659        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
11660      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
11661      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
11662      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
11663      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
11664      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
11665      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
11666      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
11667        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
11668        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
11669      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11670      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
11671        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
11672      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
11673      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
11674        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
11675        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
11676        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
11677      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
11678      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
11679      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
11680        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
11681      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
11682      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
11683      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
11684      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11685      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
11686        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
11687      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
11688      352,   353,   354,   912,     0,   357,   358,   359,   360,     0,
11689      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
11690      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
11691      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
11692        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
11693      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
11694      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
11695        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
11696      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
11697      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
11698      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
11699      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11700        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
11701        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
11702      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
11703      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
11704      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
11705      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
11706      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
11707        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
11708      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
11709      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
11710      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
11711      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
11712      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
11713        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
11714        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
11715      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11716      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
11717      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11718        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
11719      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
11720        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
11721      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
11722      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
11723      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11724      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
11725      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
11726        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
11727        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
11728      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
11729        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
11730      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
11731        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11732      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
11733        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
11734      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
11735      354,   922,     0,   357,   358,   359,   360,     0,   361,   362,
11736      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
11737      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
11738        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
11739      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
11740        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
11741      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
11742      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
11743        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
11744      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
11745        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
11746      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
11747      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
11748      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
11749      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
11750      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
11751        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
11752      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
11753      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
11754      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
11755      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
11756      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
11757        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
11758      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
11759        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
11760      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
11761      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
11762      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11763      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
11764        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11765        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
11766      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
11767        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
11768        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
11769      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
11770      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
11771        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
11772      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
11773      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
11774      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
11775      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
11776      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
11777        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
11778      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
11779      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
11780        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
11781        0,   348,   349,   350,     0,   351,   352,   353,   354,   925,
11782        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
11783      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
11784      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
11785        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
11786        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
11787      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
11788      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
11789      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
11790      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
11791        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
11792      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
11793      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
11794      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
11795      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
11796      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
11797      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
11798      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
11799      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
11800        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
11801      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
11802      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
11803        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
11804      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
11805      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
11806      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
11807      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
11808      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
11809      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
11810      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
11811        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11812        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
11813      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
11814        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
11815      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
11816      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
11817      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
11818      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
11819      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
11820      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
11821      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
11822      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
11823      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
11824      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
11825      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
11826      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
11827        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
11828      349,   350,     0,   351,   352,   353,   354,   941,     0,   357,
11829      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
11830      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
11831      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
11832      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
11833        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
11834      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
11835      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
11836      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
11837      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
11838      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
11839      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
11840      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
11841      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
11842      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
11843        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
11844      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
11845      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
11846      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
11847      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
11848      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
11849      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
11850        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
11851        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
11852      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
11853      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
11854      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
11855        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
11856      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
11857      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
11858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11859        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
11860      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
11861      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
11862      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
11863      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
11864      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
11865      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
11866      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
11867        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
11868      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
11869      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
11870        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
11871        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
11872      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
11873      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
11874      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
11875        0,   351,   352,   353,   354,  1008,     0,   357,   358,   359,
11876      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
11877      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
11878      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
11879      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
11880      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
11881      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
11882      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
11883      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
11884      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
11885        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
11886      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
11887      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
11888      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
11889      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
11890      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
11891      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
11892      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
11893        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
11894      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
11895      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
11896      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
11897      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
11898      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
11899      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
11900      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
11901        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
11902        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
11903      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
11904      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
11905        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
11906      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
11907      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
11908        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
11909        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
11910        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
11911      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
11912      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
11913      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
11914        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
11915      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
11916      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
11917      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
11918      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
11919      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
11920        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
11921      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
11922      352,   353,   354,  1014,     0,   357,   358,   359,   360,     0,
11923      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
11924      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
11925      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
11926        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
11927      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
11928      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
11929        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
11930      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
11931      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
11932      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
11933      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
11934        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
11935        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
11936      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
11937      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
11938      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
11939      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
11940      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
11941        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
11942      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
11943      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
11944      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
11945      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
11946      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
11947        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
11948        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
11949      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
11950      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
11951      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11952        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
11953      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
11954        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
11955      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
11956      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
11957      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
11958      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
11959      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
11960        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
11961        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
11962      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
11963        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
11964      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
11965        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
11966      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
11967        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
11968      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
11969      354,  1031,     0,   357,   358,   359,   360,     0,   361,   362,
11970      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
11971      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
11972        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
11973      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
11974        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
11975      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
11976      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
11977        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
11978      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
11979        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
11980      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
11981      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
11982      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
11983      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
11984      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
11985        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
11986      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
11987      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
11988      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
11989      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
11990      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
11991        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
11992      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
11993        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
11994      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
11995      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
11996      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
11997      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
11998        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11999        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
12000      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
12001        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
12002        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
12003      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
12004      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
12005        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
12006      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
12007      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
12008      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
12009      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
12010      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
12011        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
12012      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
12013      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
12014        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
12015        0,   348,   349,   350,     0,   351,   352,   353,   354,  1034,
12016        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
12017      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
12018      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
12019        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
12020        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
12021      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
12022      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
12023      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
12024      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
12025        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
12026      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
12027      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
12028      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
12029      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
12030      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
12031      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
12032      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
12033      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
12034        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
12035      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
12036      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
12037        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
12038      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
12039      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
12040      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
12041      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
12042      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
12043      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12044      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
12045        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12046        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
12047      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
12048        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
12049      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
12050      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
12051      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
12052      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
12053      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
12054      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
12055      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
12056      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
12057      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
12058      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
12059      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
12060      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
12061        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
12062      349,   350,     0,   351,   352,   353,   354,  1036,     0,   357,
12063      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
12064      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
12065      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
12066      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
12067        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
12068      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
12069      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
12070      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
12071      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
12072      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
12073      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
12074      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
12075      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
12076      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
12077        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12078      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
12079      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
12080      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
12081      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
12082      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
12083      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
12084        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
12085        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
12086      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
12087      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
12088      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
12089        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
12090      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12091      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
12092        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12093        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
12094      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
12095      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
12096      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
12097      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
12098      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
12099      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
12100      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
12101        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
12102      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
12103      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
12104        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
12105        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12106      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
12107      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
12108      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
12109        0,   351,   352,   353,   354,  1072,     0,   357,   358,   359,
12110      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
12111      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
12112      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
12113      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
12114      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
12115      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
12116      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
12117      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
12118      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
12119        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
12120      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
12121      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
12122      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
12123      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
12124      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12125      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
12126      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
12127        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
12128      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
12129      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
12130      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
12131      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
12132      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
12133      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
12134      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
12135        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
12136        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
12137      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12138      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
12139        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
12140      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
12141      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
12142        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
12143        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
12144        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
12145      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
12146      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
12147      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
12148        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
12149      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
12150      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
12151      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
12152      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12153      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
12154        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
12155      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
12156      352,   353,   354,  1136,     0,   357,   358,   359,   360,     0,
12157      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
12158      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
12159      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
12160        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
12161      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
12162      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
12163        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
12164      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
12165      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
12166      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
12167      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12168        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
12169        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
12170      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
12171      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
12172      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
12173      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
12174      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
12175        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
12176      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
12177      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
12178      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
12179      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
12180      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
12181        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
12182        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
12183      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
12184      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
12185      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12186        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
12187      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
12188        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
12189      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
12190      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
12191      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12192      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
12193      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
12194        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
12195        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
12196      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
12197        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
12198      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
12199        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12200      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
12201        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
12202      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
12203      354,  1138,     0,   357,   358,   359,   360,     0,   361,   362,
12204      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
12205      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
12206        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
12207      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
12208        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
12209      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
12210      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
12211        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
12212      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
12213        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
12214      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
12215      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
12216      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
12217      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
12218      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
12219        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
12220      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
12221      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
12222      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
12223      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
12224      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
12225        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
12226      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
12227        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
12228      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
12229      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
12230      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12231      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
12232        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12233        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
12234      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
12235        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
12236        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
12237      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
12238      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
12239        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
12240      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
12241      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
12242      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
12243      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
12244      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
12245        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
12246      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
12247      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
12248        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
12249        0,   348,   349,   350,     0,   351,   352,   353,   354,  1148,
12250        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
12251      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
12252      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
12253        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
12254        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
12255      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
12256      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
12257      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
12258      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
12259        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
12260      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
12261      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
12262      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
12263      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
12264      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
12265      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
12266      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
12267      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
12268        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
12269      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
12270      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
12271        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
12272      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
12273      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
12274      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
12275      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
12276      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
12277      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12278      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
12279        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12280        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
12281      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
12282        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
12283      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
12284      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
12285      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
12286      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
12287      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
12288      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
12289      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
12290      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
12291      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
12292      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
12293      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
12294      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
12295        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
12296      349,   350,     0,   351,   352,   353,   354,  1151,     0,   357,
12297      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
12298      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
12299      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
12300      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
12301        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
12302      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
12303      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
12304      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
12305      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
12306      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
12307      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
12308      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
12309      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
12310      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
12311        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12312      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
12313      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
12314      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
12315      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
12316      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
12317      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
12318        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
12319        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
12320      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
12321      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
12322      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
12323        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
12324      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12325      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
12326        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12327        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
12328      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
12329      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
12330      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
12331      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
12332      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
12333      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
12334      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
12335        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
12336      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
12337      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
12338        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
12339        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12340      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
12341      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
12342      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
12343        0,   351,   352,   353,   354,  1154,     0,   357,   358,   359,
12344      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
12345      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
12346      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
12347      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
12348      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
12349      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
12350      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
12351      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
12352      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
12353        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
12354      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
12355      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
12356      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
12357      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
12358      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12359      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
12360      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
12361        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
12362      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
12363      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
12364      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
12365      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
12366      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
12367      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
12368      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
12369        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
12370        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
12371      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12372      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
12373        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
12374      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
12375      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
12376        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
12377        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
12378        0,     0,   803,   262,   263,   264,   265,     0,   266,   267,
12379      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
12380      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
12381      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
12382        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
12383      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
12384      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
12385      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
12386      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12387      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
12388        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
12389      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
12390      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
12391      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
12392      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
12393      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
12394        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
12395      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
12396      403,   404,   405,   406,   407,   408,   409,   410,   806,   412,
12397        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
12398      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
12399      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
12400      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
12401      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12402        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
12403        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
12404      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
12405      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
12406      491,   492,     0,   807,   495,   496,   497,   498,   499,   500,
12407      501,   502,   808,   504,   505,   506,   507,   508,     0,   509,
12408      510,   511,   512,  1343,     0,   514,   515,   516,   517,   518,
12409        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
12410      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
12411      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
12412      546,   547,     0,   548,   810,   550,     0,     0,   811,   552,
12413      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
12414      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
12415        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
12416        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
12417      583,   584,   585,   586,   587,   812,   589,   590,   591,   592,
12418      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
12419      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12420        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
12421      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
12422        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
12423      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
12424      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
12425      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12426      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
12427      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
12428        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
12429        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
12430      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
12431        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
12432      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
12433        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12434      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
12435        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
12436      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
12437      354,  1780,     0,   357,   358,   359,   360,     0,   361,   362,
12438      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
12439      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
12440        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
12441      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
12442        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
12443      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
12444      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
12445        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
12446      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
12447        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
12448      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
12449      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
12450      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
12451      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
12452      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
12453        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
12454      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
12455      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
12456      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
12457      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
12458      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
12459        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
12460      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
12461        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
12462      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
12463      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
12464      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12465      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
12466        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12467        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
12468      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
12469        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
12470        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
12471      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
12472      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
12473        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
12474      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
12475      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
12476      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
12477      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
12478      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
12479        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
12480      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
12481      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
12482        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
12483        0,   348,   349,   350,     0,   351,   352,   353,   354,  1818,
12484        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
12485      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
12486      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
12487        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
12488        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
12489      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
12490      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
12491      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
12492      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
12493        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
12494      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
12495      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
12496      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
12497      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
12498      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
12499      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
12500      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
12501      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
12502        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
12503      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
12504      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
12505        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
12506      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
12507      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
12508      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
12509      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
12510      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
12511      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12512      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
12513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12514        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
12515      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
12516        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
12517      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
12518      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
12519      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
12520      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
12521      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
12522      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
12523      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
12524      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
12525      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
12526      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
12527      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
12528      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
12529        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
12530      349,   350,     0,   351,   352,   353,   354,  1820,     0,   357,
12531      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
12532      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
12533      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
12534      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
12535        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
12536      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
12537      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
12538      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
12539      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
12540      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
12541      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
12542      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
12543      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
12544      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
12545        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12546      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
12547      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
12548      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
12549      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
12550      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
12551      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
12552        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
12553        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
12554      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
12555      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
12556      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
12557        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
12558      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12559      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
12560        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12561        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
12562      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
12563      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
12564      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
12565      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
12566      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
12567      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
12568      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
12569        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
12570      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
12571      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
12572        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
12573        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12574      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
12575      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
12576      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
12577        0,   351,   352,   353,   354,  1891,     0,   357,   358,   359,
12578      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
12579      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
12580      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
12581      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
12582      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
12583      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
12584      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
12585      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
12586      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
12587        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
12588      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
12589      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
12590      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
12591      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
12592      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12593      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
12594      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
12595        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
12596      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
12597      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
12598      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
12599      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
12600      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
12601      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
12602      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
12603        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
12604        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
12605      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12606      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
12607        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
12608      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
12609      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
12610        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
12611        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
12612        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
12613      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
12614      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
12615      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
12616        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
12617      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
12618      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
12619      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
12620      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12621      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
12622        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
12623      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
12624      352,   353,   354,  1893,     0,   357,   358,   359,   360,     0,
12625      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
12626      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
12627      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
12628        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
12629      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
12630      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
12631        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
12632      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
12633      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
12634      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
12635      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12636        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
12637        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
12638      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
12639      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
12640      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
12641      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
12642      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
12643        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
12644      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
12645      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
12646      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
12647      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
12648      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
12649        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
12650        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
12651      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
12652      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
12653      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12654        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
12655      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
12656        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
12657      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
12658      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
12659      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12660      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
12661      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
12662        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
12663        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
12664      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
12665        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
12666      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
12667        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12668      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
12669        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
12670      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
12671      354,  1895,     0,   357,   358,   359,   360,     0,   361,   362,
12672      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
12673      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
12674        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
12675      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
12676        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
12677      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
12678      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
12679        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
12680      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
12681        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
12682      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
12683      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
12684      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
12685      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
12686      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
12687        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
12688      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
12689      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
12690      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
12691      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
12692      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
12693        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
12694      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
12695        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
12696      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
12697      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
12698      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
12699      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
12700        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12701        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
12702      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
12703        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
12704        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
12705      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
12706      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
12707        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
12708      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
12709      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
12710      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
12711      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
12712      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
12713        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
12714      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
12715      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
12716        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
12717        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
12718        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
12719      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
12720      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
12721        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
12722        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
12723      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
12724      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
12725      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
12726      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
12727        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
12728      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
12729      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
12730      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
12731      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
12732      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
12733      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
12734      495,   496,   497,   498,   499,   500,   501,  2000,   503,   504,
12735      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
12736        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
12737      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
12738      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
12739        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
12740      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
12741      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
12742      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
12743      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
12744      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
12745      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
12746      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
12747        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12748        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
12749      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
12750     2180,     0,   241,   242,     0,   243,   244,   245,     0,   247,
12751      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
12752      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
12753      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
12754      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
12755      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
12756      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
12757      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
12758      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
12759      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
12760      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
12761      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
12762      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
12763        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
12764      349,   350,     0,   351,   352,   353,   354,   355,     0,   357,
12765      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
12766      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
12767      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
12768      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
12769        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
12770      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
12771      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
12772      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
12773      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
12774      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
12775      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
12776      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
12777      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
12778      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
12779        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
12780      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
12781      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
12782      507,   508,     0,   509,   510,   511,   512,   513,     0,     0,
12783      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
12784      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
12785      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
12786        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
12787        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
12788      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
12789      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
12790      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
12791        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
12792      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
12793      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
12794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12795        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
12796      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
12797      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
12798      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
12799      259,   260,     0,     0,   803,   262,   263,   264,   265,     0,
12800      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
12801      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
12802      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
12803        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
12804      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
12805      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
12806        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
12807        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
12808      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
12809      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
12810      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
12811        0,   351,   352,   353,   354,   355,     0,   357,   358,   359,
12812      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
12813      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
12814      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
12815      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
12816      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
12817      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
12818      806,   412,     0,   414,   415,   416,   417,   418,   419,   420,
12819      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
12820      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
12821        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
12822      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
12823      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
12824      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
12825      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
12826      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
12827      490,     0,   491,   492,     0,   807,   495,   496,   497,   498,
12828      499,   500,   501,   502,   808,   504,   505,   506,   507,   508,
12829        0,   509,   510,   511,   512,  1343,     0,   514,   515,   516,
12830      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
12831      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
12832      536,   537,   538,     0,   539,   540,     0,   541,     0,  2214,
12833      544,   545,   546,   547,     0,   548,   810,   550,     0,     0,
12834      811,   552,   553,   554,   555,     0,   556,   557,   558,   559,
12835      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
12836      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
12837        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
12838        0,     0,   583,   584,   585,   586,   587,   812,   589,   590,
12839      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
12840      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
12841        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
12842      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
12843      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
12844        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
12845        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
12846        0,     0,   803,   262,   263,   264,   265,     0,   266,   267,
12847      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
12848      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
12849      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
12850        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
12851      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
12852      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
12853      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
12854      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
12855      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
12856        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
12857      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
12858      352,   353,   354,   355,     0,   357,   358,   359,   360,     0,
12859      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
12860      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
12861      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
12862        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
12863      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
12864      403,   404,   405,   406,   407,   408,   409,   410,   806,   412,
12865        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
12866      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
12867      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
12868      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
12869      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
12870        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
12871        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
12872      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
12873      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
12874      491,   492,     0,   807,   495,   496,   497,   498,   499,   500,
12875      501,   502,  2290,   504,   505,   506,   507,   508,     0,   509,
12876      510,   511,   512,  2291,     0,   514,   515,   516,   517,   518,
12877        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
12878      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
12879      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
12880      546,   547,     0,   548,   810,   550,     0,     0,  2292,   552,
12881      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
12882      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
12883        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
12884        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
12885      583,   584,   585,   586,   587,   812,   589,   590,   591,   592,
12886      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
12887      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12888        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
12889      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
12890        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
12891      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
12892      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
12893      803,   262,   263,   264,   265,     0,   266,   267,   268,   269,
12894      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
12895      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
12896        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
12897        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
12898      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
12899        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
12900      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
12901        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
12902      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
12903        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
12904      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
12905      354,   355,     0,   357,   358,   359,   360,     0,   361,   362,
12906      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
12907      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
12908        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
12909      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
12910        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
12911      405,   406,   407,   408,   409,   410,   806,   412,     0,   414,
12912      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
12913        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
12914      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
12915        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
12916      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
12917      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
12918      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
12919      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
12920      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
12921        0,   807,   495,   496,   497,   498,   499,   500,   501,   502,
12922     2369,   504,   505,   506,   507,   508,     0,   509,   510,   511,
12923      512,  2291,     0,   514,   515,   516,   517,   518,     0,   520,
12924      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
12925      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
12926      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
12927        0,   548,   810,   550,     0,     0,  2292,   552,   553,   554,
12928      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
12929        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
12930      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
12931      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
12932      585,   586,   587,   812,   589,   590,   591,   592,   593,   594,
12933      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
12934        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12935        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
12936      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
12937        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
12938        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
12939      255,   256,   257,   258,   259,   260,     0,     0,   803,   262,
12940      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
12941        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
12942      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
12943      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
12944      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
12945      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
12946      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
12947        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
12948      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
12949      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
12950        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
12951        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
12952        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
12953      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
12954      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
12955        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
12956        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
12957      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
12958      407,   408,   409,   410,   806,   412,     0,   414,   415,   416,
12959      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
12960      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
12961        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
12962      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
12963      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
12964      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
12965      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
12966      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
12967      486,   487,   488,   489,   490,     0,   491,   492,     0,   807,
12968      495,   496,   497,   498,   499,   500,   501,   502,  2386,   504,
12969      505,   506,   507,   508,     0,   509,   510,   511,   512,  2291,
12970        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
12971      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
12972      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
12973        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
12974      810,   550,     0,     0,  2292,   552,   553,   554,   555,     0,
12975      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
12976      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
12977      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
12978      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
12979      587,   812,   589,   590,   591,   592,   593,   594,   595,   596,
12980      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
12981        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12982        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
12983      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
12984        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
12985      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
12986      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
12987      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
12988      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
12989      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
12990      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
12991      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
12992      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
12993      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
12994      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
12995      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
12996      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
12997        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
12998      349,   350,     0,   351,   352,   353,   354,  2590,     0,   357,
12999      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
13000      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
13001      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
13002      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
13003        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
13004      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
13005      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
13006      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
13007      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
13008      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
13009      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
13010      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
13011      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
13012      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
13013        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13014      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
13015      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
13016      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
13017      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
13018      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
13019      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
13020        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
13021        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
13022      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
13023      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
13024      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
13025        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
13026      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13027      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
13028        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13029        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
13030      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
13031      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
13032      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
13033      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
13034      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
13035      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
13036      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
13037        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
13038      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
13039      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
13040        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
13041        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
13042      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
13043      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
13044      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
13045        0,   351,   352,   353,   354,  2594,     0,   357,   358,   359,
13046      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
13047      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
13048      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
13049      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
13050      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
13051      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
13052      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
13053      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
13054      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
13055        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
13056      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
13057      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
13058      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
13059      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
13060      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13061      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
13062      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
13063        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
13064      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
13065      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
13066      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
13067      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
13068      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
13069      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
13070      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
13071        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
13072        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
13073      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
13074      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
13075        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
13076      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
13077      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
13078        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
13079        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
13080        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
13081      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
13082      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
13083      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
13084        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
13085      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
13086      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
13087      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
13088      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13089      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
13090        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
13091      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
13092      352,   353,   354,  2670,     0,   357,   358,   359,   360,     0,
13093      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
13094      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
13095      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
13096        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
13097      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
13098      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
13099        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
13100      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
13101      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
13102      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
13103      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13104        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
13105        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
13106      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
13107      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
13108      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
13109      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
13110      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
13111        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
13112      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
13113      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
13114      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
13115      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
13116      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
13117        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
13118        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
13119      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
13120      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
13121      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13122        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
13123      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
13124        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
13125      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
13126      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
13127      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
13128      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
13129      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
13130        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
13131        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
13132      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
13133        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
13134      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
13135        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
13136      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
13137        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
13138      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
13139      354,  2996,     0,   357,   358,   359,   360,     0,   361,   362,
13140      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
13141      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
13142        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
13143      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
13144        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
13145      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
13146      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
13147        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
13148      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
13149        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
13150      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
13151      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
13152      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
13153      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
13154      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
13155        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
13156      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
13157      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
13158      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
13159      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
13160      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
13161        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
13162      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
13163        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
13164      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
13165      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
13166      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
13167      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
13168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13169        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
13170      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
13171        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
13172        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
13173      255,   256,   257,   258,   259,   260,     0,     0,   803,   262,
13174      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
13175        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
13176      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
13177      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
13178      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
13179      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
13180      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
13181        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
13182      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
13183      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
13184        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
13185        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
13186        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
13187      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
13188      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
13189        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
13190        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
13191      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
13192      407,   408,   409,   410,   806,   412,     0,   414,   415,   416,
13193      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
13194      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
13195        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
13196      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
13197      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
13198      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
13199      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
13200      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
13201      486,   487,   488,   489,   490,     0,   491,   492,     0,   807,
13202      495,   496,   497,   498,   499,   500,   501,   502,   808,   504,
13203      505,   506,   507,   508,     0,   509,   510,   511,   512,  2291,
13204        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
13205      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
13206      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
13207        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
13208      810,   550,     0,     0,  2292,   552,   553,   554,   555,     0,
13209      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
13210      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
13211      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
13212      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
13213      587,   812,   589,   590,   591,   592,   593,   594,   595,   596,
13214      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
13215        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13216        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
13217      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
13218        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
13219      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
13220      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
13221      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
13222      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
13223      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
13224      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
13225      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
13226      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
13227      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
13228      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
13229      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
13230      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
13231        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
13232      349,   350,     0,   351,   352,   353,   354,  3065,     0,   357,
13233      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
13234      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
13235      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
13236      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
13237        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
13238      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
13239      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
13240      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
13241      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
13242      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
13243      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
13244      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
13245      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
13246      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
13247        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13248      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
13249      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
13250      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
13251      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
13252      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
13253      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
13254        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
13255        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
13256      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
13257      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
13258      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
13259        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
13260      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13261      599,   600,   601,   602,   610,     0,     0,     0,     0,     0,
13262        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13263        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
13264      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
13265      241,   242,     0,   243,   244,   245,     0,   247,   248,   249,
13266      250,   251,     0,   253,   254,     0,   255,   256,   257,   258,
13267      259,   260,     0,     0,   261,   262,   263,   264,   265,     0,
13268      266,   267,   268,   269,   270,     0,     0,     0,   272,   273,
13269      274,   275,   276,     0,   278,   279,   280,     0,   281,   282,
13270      283,   284,   285,   286,     0,     0,   288,   289,   290,     0,
13271        0,     0,     0,     0,     0,     0,   292,   293,   294,   295,
13272      296,   297,   298,   299,   300,     0,   301,     0,   302,   303,
13273      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
13274        0,   312,   313,   314,   315,   316,     0,   317,   318,   319,
13275        0,   320,   321,   322,     0,   323,   324,   325,   326,   327,
13276      328,   329,   330,   331,   332,     0,   333,     0,   334,   335,
13277      336,   337,     0,   338,     0,   339,     0,     0,     0,   342,
13278      343,   344,   345,     0,   346,   347,     0,   348,   349,   350,
13279        0,   351,   352,   353,   354,  3079,     0,   357,   358,   359,
13280      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
13281      368,     0,   370,   371,   372,   373,   374,   375,   376,     0,
13282      377,     0,   378,     0,     0,   381,     0,   383,   384,   385,
13283      386,   387,     0,     0,   388,   389,     0,   391,     0,     0,
13284      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
13285      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
13286      411,   412,     0,   414,   415,   416,   417,   418,   419,   420,
13287      421,   422,   423,   424,     0,   425,   426,     0,   428,     0,
13288      429,   430,   431,   432,   433,   434,     0,   435,   436,     0,
13289        0,   437,   438,   439,     0,     0,   440,   441,   442,     0,
13290      444,     0,   446,   447,   448,   449,   450,   451,   452,   453,
13291      454,   455,     0,     0,   456,   457,   458,   459,   460,   461,
13292      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
13293      471,   472,   473,   474,   475,   476,   477,   478,     0,   479,
13294      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13295      490,     0,   491,   492,     0,   494,   495,   496,   497,   498,
13296      499,   500,   501,   502,   503,   504,   505,   506,   507,   508,
13297        0,   509,   510,   511,   512,   513,     0,   514,   515,   516,
13298      517,   518,     0,   520,   521,   522,   523,     0,   524,   525,
13299      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
13300      536,   537,   538,     0,   539,   540,     0,   541,     0,   543,
13301      544,   545,   546,   547,     0,   548,   549,   550,     0,     0,
13302      551,   552,   553,   554,   555,     0,   556,   557,   558,   559,
13303      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
13304      568,     0,     0,   569,   570,   571,   572,   573,   574,   575,
13305        0,   576,     0,   578,   579,   580,   581,     0,     0,   582,
13306        0,     0,   583,   584,   585,   586,   587,   588,   589,   590,
13307      591,   592,   593,   594,   595,   596,   597,   598,   599,   600,
13308      601,   602,   610,     0,     0,     0,     0,     0,     0,     0,
13309        0,     0,     0,     0,     0,     0,     0,     0,     0,   230,
13310      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
13311      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
13312        0,   243,   244,   245,     0,   247,   248,   249,   250,   251,
13313        0,   253,   254,     0,   255,   256,   257,   258,   259,   260,
13314        0,     0,   261,   262,   263,   264,   265,     0,   266,   267,
13315      268,   269,   270,     0,     0,     0,   272,   273,   274,   275,
13316      276,     0,   278,   279,   280,     0,   281,   282,   283,   284,
13317      285,   286,     0,     0,   288,   289,   290,     0,     0,     0,
13318        0,     0,     0,     0,   292,   293,   294,   295,   296,   297,
13319      298,   299,   300,     0,   301,     0,   302,   303,   304,   305,
13320      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
13321      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
13322      321,   322,     0,   323,   324,   325,   326,   327,   328,   329,
13323      330,   331,   332,     0,   333,     0,   334,   335,   336,   337,
13324        0,   338,     0,   339,     0,     0,     0,   342,   343,   344,
13325      345,     0,   346,   347,     0,   348,   349,   350,     0,   351,
13326      352,   353,   354,  3081,     0,   357,   358,   359,   360,     0,
13327      361,   362,   363,   364,   365,   366,   367,     0,   368,     0,
13328      370,   371,   372,   373,   374,   375,   376,     0,   377,     0,
13329      378,     0,     0,   381,     0,   383,   384,   385,   386,   387,
13330        0,     0,   388,   389,     0,   391,     0,     0,   393,   394,
13331      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
13332      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
13333        0,   414,   415,   416,   417,   418,   419,   420,   421,   422,
13334      423,   424,     0,   425,   426,     0,   428,     0,   429,   430,
13335      431,   432,   433,   434,     0,   435,   436,     0,     0,   437,
13336      438,   439,     0,     0,   440,   441,   442,     0,   444,     0,
13337      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13338        0,     0,   456,   457,   458,   459,   460,   461,   462,   463,
13339        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
13340      473,   474,   475,   476,   477,   478,     0,   479,   480,   481,
13341      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
13342      491,   492,     0,   494,   495,   496,   497,   498,   499,   500,
13343      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
13344      510,   511,   512,   513,     0,   514,   515,   516,   517,   518,
13345        0,   520,   521,   522,   523,     0,   524,   525,   526,   527,
13346      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
13347      538,     0,   539,   540,     0,   541,     0,   543,   544,   545,
13348      546,   547,     0,   548,   549,   550,     0,     0,   551,   552,
13349      553,   554,   555,     0,   556,   557,   558,   559,   560,   561,
13350      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
13351        0,   569,   570,   571,   572,   573,   574,   575,     0,   576,
13352        0,   578,   579,   580,   581,     0,     0,   582,     0,     0,
13353      583,   584,   585,   586,   587,   588,   589,   590,   591,   592,
13354      593,   594,   595,   596,   597,   598,   599,   600,   601,   602,
13355      610,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13356        0,     0,     0,     0,     0,     0,     0,   230,   231,   232,
13357      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
13358        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
13359      244,   245,     0,   247,   248,   249,   250,   251,     0,   253,
13360      254,     0,   255,   256,   257,   258,   259,   260,     0,     0,
13361      261,   262,   263,   264,   265,     0,   266,   267,   268,   269,
13362      270,     0,     0,     0,   272,   273,   274,   275,   276,     0,
13363      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
13364        0,     0,   288,   289,   290,     0,     0,     0,     0,     0,
13365        0,     0,   292,   293,   294,   295,   296,   297,   298,   299,
13366      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
13367        0,   308,   309,   310,   311,     0,     0,   312,   313,   314,
13368      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
13369        0,   323,   324,   325,   326,   327,   328,   329,   330,   331,
13370      332,     0,   333,     0,   334,   335,   336,   337,     0,   338,
13371        0,   339,     0,     0,     0,   342,   343,   344,   345,     0,
13372      346,   347,     0,   348,   349,   350,     0,   351,   352,   353,
13373      354,  3226,     0,   357,   358,   359,   360,     0,   361,   362,
13374      363,   364,   365,   366,   367,     0,   368,     0,   370,   371,
13375      372,   373,   374,   375,   376,     0,   377,     0,   378,     0,
13376        0,   381,     0,   383,   384,   385,   386,   387,     0,     0,
13377      388,   389,     0,   391,     0,     0,   393,   394,   395,     0,
13378        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
13379      405,   406,   407,   408,   409,   410,   411,   412,     0,   414,
13380      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
13381        0,   425,   426,     0,   428,     0,   429,   430,   431,   432,
13382      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
13383        0,     0,   440,   441,   442,     0,   444,     0,   446,   447,
13384      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
13385      456,   457,   458,   459,   460,   461,   462,   463,     0,   464,
13386      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
13387      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
13388      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
13389        0,   494,   495,   496,   497,   498,   499,   500,   501,   502,
13390      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
13391      512,   513,     0,   514,   515,   516,   517,   518,     0,   520,
13392      521,   522,   523,     0,   524,   525,   526,   527,   528,   529,
13393      530,   531,   532,   533,   534,   535,   536,   537,   538,     0,
13394      539,   540,     0,   541,     0,   543,   544,   545,   546,   547,
13395        0,   548,   549,   550,     0,     0,   551,   552,   553,   554,
13396      555,     0,   556,   557,   558,   559,   560,   561,   562,   563,
13397        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
13398      570,   571,   572,   573,   574,   575,     0,   576,     0,   578,
13399      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
13400      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
13401      595,   596,   597,   598,   599,   600,   601,   602,   610,     0,
13402        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13403        0,     0,     0,     0,     0,   230,   231,   232,   233,   234,
13404      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
13405        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
13406        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
13407      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
13408      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
13409        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
13410      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
13411      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
13412      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
13413      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
13414      309,   310,   311,     0,     0,   312,  3264,   314,   315,   316,
13415        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
13416      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
13417      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
13418        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
13419        0,   348,   349,   350,     0,   351,   352,   353,   354,   355,
13420        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
13421      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
13422      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
13423        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
13424        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
13425      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
13426      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
13427      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
13428      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
13429        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
13430      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
13431      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
13432      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
13433      467,   468,   469,   470,   471,   472,   473,   474,   475,   476,
13434      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
13435      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
13436      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
13437      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
13438        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
13439      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
13440      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
13441        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
13442      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
13443      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
13444      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
13445      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
13446      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
13447      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
13448      597,   598,   599,   600,   601,   602,   610,     0,     0,     0,
13449        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13450        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
13451      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
13452        0,     0,   241,   242,     0,   243,   244,   245,     0,   247,
13453      248,   249,   250,   251,     0,   253,   254,     0,   255,   256,
13454      257,   258,   259,   260,     0,     0,   261,   262,   263,   264,
13455      265,     0,   266,   267,   268,   269,   270,     0,     0,     0,
13456      272,   273,   274,   275,   276,     0,   278,   279,   280,     0,
13457      281,   282,   283,   284,   285,   286,     0,     0,   288,   289,
13458      290,     0,     0,     0,     0,     0,     0,     0,   292,   293,
13459      294,   295,   296,   297,   298,   299,   300,     0,   301,     0,
13460      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
13461      311,     0,     0,   312,   313,   314,   315,   316,     0,   317,
13462      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
13463      326,   327,   328,   329,   330,   331,   332,     0,   333,     0,
13464      334,   335,   336,   337,     0,   338,     0,   339,     0,     0,
13465        0,   342,   343,   344,   345,     0,   346,   347,     0,   348,
13466      349,   350,     0,   351,   352,   353,   354,  4447,     0,   357,
13467      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
13468      367,     0,   368,     0,   370,   371,   372,   373,   374,   375,
13469      376,     0,   377,     0,   378,     0,     0,   381,     0,   383,
13470      384,   385,   386,   387,     0,     0,   388,   389,     0,   391,
13471        0,     0,   393,   394,   395,     0,     0,   396,   397,   398,
13472      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
13473      409,   410,   411,   412,     0,   414,   415,   416,   417,   418,
13474      419,   420,   421,   422,   423,   424,     0,   425,   426,     0,
13475      428,     0,   429,   430,   431,   432,   433,   434,     0,   435,
13476      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
13477      442,     0,   444,     0,   446,   447,   448,   449,   450,   451,
13478      452,   453,   454,   455,     0,     0,   456,   457,   458,   459,
13479      460,   461,   462,   463,     0,   464,   465,   466,   467,   468,
13480      469,   470,   471,   472,   473,   474,   475,   476,   477,   478,
13481        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13482      488,   489,   490,     0,   491,   492,     0,   494,   495,   496,
13483      497,   498,   499,   500,   501,   502,   503,   504,   505,   506,
13484      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
13485      515,   516,   517,   518,     0,   520,   521,   522,   523,     0,
13486      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
13487      534,   535,   536,   537,   538,     0,   539,   540,     0,   541,
13488        0,   543,   544,   545,   546,   547,     0,   548,   549,   550,
13489        0,     0,   551,   552,   553,   554,   555,     0,   556,   557,
13490      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
13491      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
13492      574,   575,     0,   576,     0,   578,   579,   580,   581,     0,
13493        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
13494      589,   590,   591,   592,   593,   594,   595,   596,   597,   598,
13495      599,   600,   601,   602,  1074,     0,     0,     0,     0,     0,
13496        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13497        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
13498      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
13499      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
13500        0,  1075,   252,  1076,  1077,     0,   255,   256,   257,   258,
13501      259,   260,     0,     0,   261,   262,  1078,  1079,   265,     0,
13502      266,   267,   268,   269,     0,     0,   271,     0,   272,   273,
13503      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
13504      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
13505        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
13506      296,   297,  1080,  1081,   300,     0,   301,     0,   302,   303,
13507      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
13508        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
13509        0,   320,   321,   322,     0,   323,   324,   325,   326,     0,
13510      328,   329,   330,   331,     0,     0,   333,     0,   334,   335,
13511     1083,   337,     0,   338,     0,   339,   340,     0,   341,   342,
13512      343,   344,   345,     0,   346,     0,     0,     0,   349,   350,
13513        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13514      360,  2187,   361,   362,   363,   364,   365,   366,   367,     0,
13515      368,   369,  2188,   371,   372,   373,   374,  1085,  1086,     0,
13516     1087,     0,   378,   379,   380,   381,   382,   383,   384,   385,
13517      386,   387,     0,     0,   388,     0,   390,   391,   392,     0,
13518      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
13519      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
13520      411,  1088,   413,  1089,   415,   416,   417,   418,   419,   420,
13521      421,     0,     0,   424,     0,   425,   426,   427,   428,     0,
13522        0,   430,  1090,   432,   433,   434,     0,   435,   436,     0,
13523        0,   437,   438,   439,     0,     0,   440,   441,  2190,   443,
13524      444,   445,     0,   447,   448,   449,   450,   451,   452,   453,
13525      454,   455,     0,     0,   456,   457,     0,   459,     0,   461,
13526      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
13527      471,   472,   473,  1091,   475,   476,   477,   478,     0,   479,
13528      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13529      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
13530        0,   500,   501,   502,   503,   504,   505,   506,   507,   508,
13531        0,   509,   510,   511,   512,   513,     0,   514,   515,  2191,
13532      517,   518,   519,   520,   521,  1093,   523,     0,   524,   525,
13533      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
13534      536,     0,   538,     0,   539,   540,     0,   541,   542,   543,
13535      544,   545,   546,   547,     0,   548,  1094,  1095,     0,     0,
13536      551,   552,     0,   554,     0,     0,   556,   557,   558,   559,
13537      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
13538      568,     0,     0,   569,   570,   571,   572,   573,     0,  1096,
13539     2192,   576,   577,   578,   579,   580,   581,     0,     0,   582,
13540        0,     0,   583,   584,   585,   586,   587,   588,   610,     0,
13541        0,     0,     0,     0,     0,     0,     0,     0,     0,   600,
13542      601,   602,     0,     0,     0,   230,   231,   232,   233,   234,
13543      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
13544        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
13545        0,   247,   248,   249,   250,   251,     0,   253,   254,     0,
13546      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
13547      263,   264,   265,     0,   266,   267,   268,   269,   270,     0,
13548        0,     0,   272,   273,   274,   275,   276,     0,   278,   279,
13549      280,     0,   281,   282,   283,   284,   285,   286,     0,     0,
13550      288,   289,   290,     0,     0,     0,     0,     0,     0,     0,
13551      292,   293,   294,   295,   296,   297,   298,   299,   300,     0,
13552      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
13553      309,   310,   311,     0,     0,   312,   313,   314,   315,   316,
13554        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
13555      324,   325,   326,   327,   328,   329,   330,   331,   332,     0,
13556      333,     0,   334,   335,   336,   337,     0,   338,     0,   339,
13557        0,     0,     0,   342,   343,   344,   345,     0,   346,   347,
13558        0,   348,     0,   350,     0,   351,   352,   353,   354,   355,
13559        0,   357,   358,   359,   360,     0,   361,   362,   363,   364,
13560      365,   366,   367,     0,   368,     0,   370,   371,   372,   373,
13561      374,   375,   376,     0,   377,     0,   378,     0,     0,   381,
13562        0,   383,   384,   385,   386,   387,     0,     0,   388,   389,
13563        0,   391,     0,     0,   393,   394,   395,     0,     0,   396,
13564      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
13565      407,   408,   409,   410,   411,   412,     0,   414,   415,   416,
13566      417,   418,   419,   420,   421,   422,   423,   424,     0,   425,
13567      426,     0,   428,     0,   429,   430,   431,   432,   433,   434,
13568        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
13569      440,   441,   442,     0,   444,     0,   446,   447,   448,   449,
13570      450,   451,   452,     0,   454,   455,     0,     0,   456,   457,
13571      458,   459,   460,   461,   462,   463,     0,   464,   465,   466,
13572      467,   468,   469,   470,   471,     0,   473,   474,   475,   476,
13573      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
13574      486,   487,   488,   489,   490,     0,   491,   492,     0,   494,
13575      495,   496,   497,   498,   499,     0,   501,   502,   503,   504,
13576      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
13577        0,   514,   515,   516,   517,   518,     0,   520,   521,   522,
13578      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
13579      532,   533,   534,   535,   536,   537,   538,     0,   539,   540,
13580        0,   541,     0,   543,   544,   545,   546,   547,     0,   548,
13581      549,   550,     0,     0,   551,   552,   553,   554,   555,     0,
13582      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
13583      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
13584      572,   573,   574,   575,     0,   576,     0,   578,   579,   580,
13585      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
13586      587,   588,   589,   590,   591,   592,   593,   594,   595,   596,
13587      597,   598,   599,   600,   601,   602,  1074,     0,     0,     0,
13588        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13589        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
13590      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
13591        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
13592      248,   249,     0,  1075,   252,  1076,  1077,     0,   255,   256,
13593      257,   258,   259,   260,     0,     0,   261,   262,  1078,  1079,
13594      265,     0,   266,   267,   268,   269,     0,     0,   271,     0,
13595      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
13596      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
13597      290,     0,     0,     0,   291,     0,     0,     0,   292,   293,
13598      294,   295,   296,   297,  1080,  1081,   300,     0,   301,     0,
13599      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
13600      311,     0,     0,   312,   313,  1082,   315,   316,     0,   317,
13601      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
13602      326,     0,   328,   329,   330,   331,     0,     0,   333,     0,
13603      334,   335,  1083,   337,     0,   338,     0,   339,   340,     0,
13604      341,   342,   343,   344,   345,     0,   346,     0,     0,     0,
13605      349,   350,     0,   351,   352,   353,   354,   355,   356,   357,
13606      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
13607      367,     0,   368,   369,     0,   371,   372,   373,   374,  1085,
13608     1086,     0,  1087,     0,   378,   379,   380,   381,   382,   383,
13609      384,   385,   386,   387,     0,     0,   388,     0,   390,   391,
13610      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
13611      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
13612      409,   410,   411,  1088,   413,  1089,   415,   416,   417,   418,
13613      419,   420,   421,     0,     0,   424,     0,   425,   426,   427,
13614      428,  2286,     0,   430,  1090,   432,   433,   434,     0,   435,
13615      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
13616        0,   443,   444,   445,     0,   447,   448,   449,   450,   451,
13617      452,   453,   454,   455,     0,     0,   456,   457,     0,   459,
13618        0,   461,   462,   463,     0,   464,   465,   466,   467,   468,
13619      469,   470,   471,   472,   473,  1091,   475,   476,   477,   478,
13620        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13621      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
13622      497,   498,     0,   500,   501,   502,   503,   504,   505,   506,
13623      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
13624      515,  2191,   517,   518,   519,   520,   521,  1093,   523,     0,
13625      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
13626      534,   535,   536,     0,   538,     0,   539,   540,  3987,   541,
13627      542,   543,   544,   545,   546,   547,     0,   548,  1094,  1095,
13628        0,     0,   551,   552,     0,   554,     0,     0,   556,   557,
13629      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
13630      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
13631        0,  1096,     0,   576,   577,   578,   579,   580,   581,     0,
13632        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
13633     1074,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13634        0,   600,   601,   602,     0,     0,     0,   230,   231,   232,
13635      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
13636        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
13637      244,   245,   246,   247,   248,   249,     0,  1075,   252,  1076,
13638     1077,     0,   255,   256,   257,   258,   259,   260,     0,     0,
13639      261,   262,  1078,  1079,   265,     0,   266,   267,   268,   269,
13640        0,     0,   271,     0,   272,   273,   274,   275,   276,   277,
13641      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
13642        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
13643        0,     0,   292,   293,   294,   295,   296,   297,  1080,  1081,
13644      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
13645        0,   308,   309,   310,   311,     0,     0,   312,   313,  1082,
13646      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
13647        0,   323,   324,   325,   326,     0,   328,   329,   330,   331,
13648        0,     0,   333,     0,   334,   335,  1083,   337,     0,   338,
13649        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
13650      346,     0,     0,     0,   349,   350,     0,   351,   352,   353,
13651      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
13652      363,   364,   365,   366,   367,     0,   368,   369,     0,   371,
13653      372,   373,   374,  1085,  1086,     0,  1087,     0,   378,   379,
13654      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
13655      388,     0,   390,   391,   392,     0,   393,   394,   395,     0,
13656        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
13657      405,   406,   407,   408,   409,   410,   411,  1088,   413,  1089,
13658      415,   416,   417,   418,   419,   420,   421,  2359,     0,   424,
13659        0,   425,   426,   427,   428,     0,     0,   430,  1090,   432,
13660      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
13661        0,     0,   440,   441,     0,   443,   444,   445,     0,   447,
13662      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
13663      456,   457,     0,   459,     0,   461,   462,   463,     0,   464,
13664      465,   466,   467,   468,   469,   470,   471,   472,   473,  1091,
13665      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
13666      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
13667      493,   494,   495,   496,   497,   498,     0,   500,   501,   502,
13668      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
13669      512,   513,     0,   514,   515,  1092,   517,   518,   519,   520,
13670      521,  1093,   523,     0,   524,   525,   526,   527,   528,   529,
13671      530,   531,   532,   533,   534,   535,   536,     0,   538,     0,
13672      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
13673        0,   548,  1094,  1095,     0,     0,   551,   552,     0,   554,
13674        0,     0,   556,   557,   558,   559,   560,   561,   562,   563,
13675        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
13676      570,   571,   572,   573,     0,  1096,     0,   576,   577,   578,
13677      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
13678      585,   586,   587,   588,  1074,     0,     0,     0,     0,     0,
13679        0,     0,     0,     0,     0,   600,   601,   602,     0,     0,
13680        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
13681      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
13682      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
13683        0,  1075,   252,  1076,  1077,     0,   255,   256,   257,   258,
13684      259,   260,     0,     0,   261,   262,  1078,  1079,   265,     0,
13685      266,   267,   268,   269,     0,     0,   271,     0,   272,   273,
13686      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
13687      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
13688        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
13689      296,   297,  1080,  1081,   300,     0,   301,     0,   302,   303,
13690      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
13691        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
13692        0,   320,   321,   322,     0,   323,   324,   325,   326,     0,
13693      328,   329,   330,   331,     0,     0,   333,     0,   334,   335,
13694     1083,   337,     0,   338,     0,   339,   340,     0,   341,   342,
13695      343,   344,   345,     0,   346,     0,     0,     0,   349,   350,
13696        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13697      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
13698      368,   369,     0,   371,   372,   373,   374,  1085,  1086,     0,
13699     1087,     0,   378,   379,   380,   381,   382,   383,   384,   385,
13700      386,   387,     0,     0,   388,     0,   390,   391,   392,     0,
13701      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
13702      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
13703      411,  1088,   413,  1089,   415,   416,   417,   418,   419,   420,
13704      421,  3791,     0,   424,     0,   425,   426,   427,   428,     0,
13705        0,   430,  1090,   432,   433,   434,     0,   435,   436,     0,
13706        0,   437,   438,   439,     0,     0,   440,   441,     0,   443,
13707      444,   445,     0,   447,   448,   449,   450,   451,   452,   453,
13708      454,   455,     0,     0,   456,   457,     0,   459,     0,   461,
13709      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
13710      471,   472,   473,  1091,   475,   476,   477,   478,     0,   479,
13711      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13712      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
13713        0,   500,   501,   502,   503,   504,   505,   506,   507,   508,
13714        0,   509,   510,   511,   512,   513,     0,   514,   515,  1092,
13715      517,   518,   519,   520,   521,  1093,   523,     0,   524,   525,
13716      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
13717      536,     0,   538,     0,   539,   540,     0,   541,   542,   543,
13718      544,   545,   546,   547,     0,   548,  1094,  1095,     0,     0,
13719      551,   552,     0,   554,     0,     0,   556,   557,   558,   559,
13720      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
13721      568,     0,     0,   569,   570,   571,   572,   573,     0,  1096,
13722        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
13723        0,     0,   583,   584,   585,   586,   587,   588,  1074,     0,
13724        0,     0,     0,     0,     0,     0,     0,     0,     0,   600,
13725      601,   602,     0,     0,     0,   230,   231,   232,   233,   234,
13726      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
13727        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
13728      246,   247,   248,   249,     0,  1075,   252,  1076,  1077,     0,
13729      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
13730     1078,  1079,   265,     0,   266,   267,   268,   269,     0,     0,
13731      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
13732      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
13733      288,   289,   290,     0,     0,     0,   291,     0,     0,     0,
13734      292,   293,   294,   295,   296,   297,  1080,  1081,   300,     0,
13735      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
13736      309,   310,   311,     0,     0,   312,   313,  1082,   315,   316,
13737        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
13738      324,   325,   326,     0,   328,   329,   330,   331,     0,     0,
13739      333,     0,   334,   335,  1083,   337,  5374,   338,     0,   339,
13740      340,     0,   341,   342,   343,   344,   345,     0,   346,     0,
13741        0,     0,   349,   350,     0,   351,   352,   353,   354,   355,
13742      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
13743      365,   366,   367,     0,   368,   369,     0,   371,   372,   373,
13744      374,  1085,  1086,     0,  1087,     0,   378,   379,   380,   381,
13745      382,   383,   384,   385,   386,   387,     0,     0,   388,     0,
13746      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
13747      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
13748      407,   408,   409,   410,   411,  1088,   413,  1089,   415,   416,
13749      417,   418,   419,   420,   421,     0,     0,   424,     0,   425,
13750      426,   427,   428,     0,     0,   430,  1090,   432,   433,   434,
13751        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
13752      440,   441,     0,   443,   444,   445,     0,   447,   448,   449,
13753      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
13754        0,   459,     0,   461,   462,   463,     0,   464,   465,   466,
13755      467,   468,   469,   470,   471,   472,   473,  1091,   475,   476,
13756      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
13757      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
13758      495,   496,   497,   498,     0,   500,   501,   502,   503,   504,
13759      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
13760        0,   514,   515,  1092,   517,   518,   519,   520,   521,  1093,
13761      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
13762      532,   533,   534,   535,   536,     0,   538,     0,   539,   540,
13763        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
13764     1094,  1095,     0,     0,   551,   552,     0,   554,     0,     0,
13765      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
13766      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
13767      572,   573,     0,  1096,     0,   576,   577,   578,   579,   580,
13768      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
13769      587,   588,  1074,     0,     0,     0,     0,     0,     0,     0,
13770        0,     0,     0,   600,   601,   602,     0,     0,     0,   230,
13771      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
13772      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
13773        0,   243,   244,   245,   246,   247,   248,   249,     0,  1075,
13774      252,  1076,  1077,     0,   255,   256,   257,   258,   259,   260,
13775        0,     0,   261,   262,  1078,  1079,   265,     0,   266,   267,
13776      268,   269,     0,     0,   271,     0,   272,   273,   274,   275,
13777      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
13778      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
13779      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
13780     1080,  1081,   300,     0,   301,     0,   302,   303,   304,   305,
13781      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
13782      313,  1082,   315,   316,     0,   317,   318,   319,     0,   320,
13783      321,   322,     0,   323,   324,   325,   326,     0,   328,   329,
13784      330,   331,     0,     0,   333,     0,   334,   335,  1083,   337,
13785        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
13786      345,     0,   346,     0,     0,     0,   349,   350,     0,   351,
13787      352,   353,   354,  1084,   356,   357,   358,   359,   360,     0,
13788      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
13789        0,   371,   372,   373,   374,  1085,  1086,     0,  1087,     0,
13790      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
13791        0,     0,   388,     0,   390,   391,   392,     0,   393,   394,
13792      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
13793      403,   404,   405,   406,   407,   408,   409,   410,   411,  1088,
13794      413,  1089,   415,   416,   417,   418,   419,   420,   421,     0,
13795        0,   424,     0,   425,   426,   427,   428,     0,     0,   430,
13796     1090,   432,   433,   434,     0,   435,   436,     0,     0,   437,
13797      438,   439,     0,     0,   440,   441,     0,   443,   444,   445,
13798        0,   447,   448,   449,   450,   451,   452,   453,   454,   455,
13799        0,     0,   456,   457,     0,   459,     0,   461,   462,   463,
13800        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
13801      473,  1091,   475,   476,   477,   478,     0,   479,   480,   481,
13802      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
13803      491,   492,   493,   494,   495,   496,   497,   498,     0,   500,
13804      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
13805      510,   511,   512,   513,     0,   514,   515,  1092,   517,   518,
13806      519,   520,   521,  1093,   523,     0,   524,   525,   526,   527,
13807      528,   529,   530,   531,   532,   533,   534,   535,   536,     0,
13808      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
13809      546,   547,     0,   548,  1094,  1095,     0,     0,   551,   552,
13810        0,   554,     0,     0,   556,   557,   558,   559,   560,   561,
13811      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
13812        0,   569,   570,   571,   572,   573,     0,  1096,     0,   576,
13813      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
13814      583,   584,   585,   586,   587,   588,  1074,     0,     0,     0,
13815        0,     0,     0,     0,     0,     0,     0,   600,   601,   602,
13816        0,     0,     0,   230,   231,   232,   233,   234,   235,   236,
13817      237,     0,   238,   239,   240,     0,     0,     0,     0,     0,
13818        0,     0,   241,   242,     0,   243,   244,   245,   246,   247,
13819      248,   249,     0,  1075,   252,  1076,  1077,     0,   255,   256,
13820      257,   258,   259,   260,     0,     0,   261,   262,  1078,  1079,
13821      265,     0,   266,   267,   268,   269,     0,     0,   271,     0,
13822      272,   273,   274,   275,   276,   277,   278,   279,   280,     0,
13823      281,   282,   283,   284,   285,   286,     0,   287,   288,   289,
13824      290,     0,     0,     0,   291,     0,     0,     0,   292,   293,
13825      294,   295,   296,   297,  1080,  1081,   300,     0,   301,     0,
13826      302,   303,   304,   305,   306,   307,     0,   308,   309,   310,
13827      311,     0,     0,   312,   313,  1082,   315,   316,     0,   317,
13828      318,   319,     0,   320,   321,   322,     0,   323,   324,   325,
13829      326,     0,   328,   329,   330,   331,     0,     0,   333,     0,
13830      334,   335,  1083,   337,     0,   338,     0,   339,   340,     0,
13831      341,   342,   343,   344,   345,     0,   346,     0,     0,     0,
13832      349,   350,     0,   351,   352,   353,   354,  1142,   356,   357,
13833      358,   359,   360,     0,   361,   362,   363,   364,   365,   366,
13834      367,     0,   368,   369,     0,   371,   372,   373,   374,  1085,
13835     1086,     0,  1087,     0,   378,   379,   380,   381,   382,   383,
13836      384,   385,   386,   387,     0,     0,   388,     0,   390,   391,
13837      392,     0,   393,   394,   395,     0,     0,   396,   397,   398,
13838      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
13839      409,   410,   411,  1088,   413,  1089,   415,   416,   417,   418,
13840      419,   420,   421,     0,     0,   424,     0,   425,   426,   427,
13841      428,     0,     0,   430,  1090,   432,   433,   434,     0,   435,
13842      436,     0,     0,   437,   438,   439,     0,     0,   440,   441,
13843        0,   443,   444,   445,     0,   447,   448,   449,   450,   451,
13844      452,   453,   454,   455,     0,     0,   456,   457,     0,   459,
13845        0,   461,   462,   463,     0,   464,   465,   466,   467,   468,
13846      469,   470,   471,   472,   473,  1091,   475,   476,   477,   478,
13847        0,   479,   480,   481,   482,   483,   484,   485,   486,   487,
13848      488,   489,   490,     0,   491,   492,   493,   494,   495,   496,
13849      497,   498,     0,   500,   501,   502,   503,   504,   505,   506,
13850      507,   508,     0,   509,   510,   511,   512,   513,     0,   514,
13851      515,  1092,   517,   518,   519,   520,   521,  1093,   523,     0,
13852      524,   525,   526,   527,   528,   529,   530,   531,   532,   533,
13853      534,   535,   536,     0,   538,     0,   539,   540,     0,   541,
13854      542,   543,   544,   545,   546,   547,     0,   548,  1094,  1095,
13855        0,     0,   551,   552,     0,   554,     0,     0,   556,   557,
13856      558,   559,   560,   561,   562,   563,     0,     0,   564,   565,
13857      566,   567,   568,     0,     0,   569,   570,   571,   572,   573,
13858        0,  1096,     0,   576,   577,   578,   579,   580,   581,     0,
13859        0,   582,     0,     0,   583,   584,   585,   586,   587,   588,
13860     1074,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13861        0,   600,   601,   602,     0,     0,     0,   230,   231,   232,
13862      233,   234,   235,   236,   237,     0,   238,   239,   240,     0,
13863        0,     0,     0,     0,     0,     0,   241,   242,     0,   243,
13864      244,   245,   246,   247,   248,   249,     0,  1075,   252,  1076,
13865     1077,     0,   255,   256,   257,   258,   259,   260,     0,     0,
13866      261,   262,  1078,  1079,   265,     0,   266,   267,   268,   269,
13867        0,     0,   271,     0,   272,   273,   274,   275,   276,   277,
13868      278,   279,   280,     0,   281,   282,   283,   284,   285,   286,
13869        0,   287,   288,   289,   290,     0,     0,     0,   291,     0,
13870        0,     0,   292,   293,   294,   295,   296,   297,  1080,  1081,
13871      300,     0,   301,     0,   302,   303,   304,   305,   306,   307,
13872        0,   308,   309,   310,   311,     0,     0,   312,   313,  1082,
13873      315,   316,     0,   317,   318,   319,     0,   320,   321,   322,
13874        0,   323,   324,   325,   326,     0,   328,   329,   330,   331,
13875        0,     0,   333,     0,   334,   335,  1083,   337,     0,   338,
13876        0,   339,   340,     0,   341,   342,   343,   344,   345,     0,
13877      346,     0,     0,     0,   349,   350,     0,   351,   352,   353,
13878      354,   355,   356,   357,   358,   359,   360,     0,   361,   362,
13879      363,   364,   365,   366,   367,     0,   368,   369,     0,   371,
13880      372,   373,   374,  1085,  1086,     0,  1087,     0,   378,   379,
13881      380,   381,   382,   383,   384,   385,   386,   387,     0,     0,
13882      388,     0,   390,   391,   392,     0,   393,   394,   395,     0,
13883        0,   396,   397,   398,   399,   400,   401,   402,   403,   404,
13884      405,   406,   407,   408,   409,   410,   411,  1088,   413,  1089,
13885      415,   416,   417,   418,   419,   420,   421,     0,     0,   424,
13886        0,   425,   426,   427,   428,     0,     0,   430,  1090,   432,
13887      433,   434,     0,   435,   436,     0,     0,   437,   438,   439,
13888        0,     0,   440,   441,     0,   443,   444,   445,     0,   447,
13889      448,   449,   450,   451,   452,   453,   454,   455,     0,     0,
13890      456,   457,     0,   459,     0,   461,   462,   463,     0,   464,
13891      465,   466,   467,   468,   469,   470,   471,   472,   473,  1091,
13892      475,   476,   477,   478,     0,   479,   480,   481,   482,   483,
13893      484,   485,   486,   487,   488,   489,   490,     0,   491,   492,
13894      493,   494,   495,   496,   497,   498,     0,   500,   501,   502,
13895      503,   504,   505,   506,   507,   508,     0,   509,   510,   511,
13896      512,   513,     0,   514,   515,  1092,   517,   518,   519,   520,
13897      521,  1093,   523,     0,   524,   525,   526,   527,   528,   529,
13898      530,   531,   532,   533,   534,   535,   536,     0,   538,     0,
13899      539,   540,     0,   541,   542,   543,   544,   545,   546,   547,
13900        0,   548,  1094,  1095,     0,     0,   551,   552,     0,   554,
13901        0,     0,   556,   557,   558,   559,   560,   561,   562,   563,
13902        0,     0,   564,   565,   566,   567,   568,     0,     0,   569,
13903      570,   571,   572,   573,     0,  1096,     0,   576,   577,   578,
13904      579,   580,   581,     0,     0,   582,     0,     0,   583,   584,
13905      585,   586,   587,   588,  1074,     0,     0,     0,     0,     0,
13906        0,     0,     0,     0,     0,   600,   601,   602,     0,     0,
13907        0,   230,   231,   232,   233,   234,   235,   236,   237,     0,
13908      238,   239,   240,     0,     0,     0,     0,     0,     0,     0,
13909      241,   242,     0,   243,   244,   245,   246,   247,   248,   249,
13910        0,  1075,   252,  1076,  1077,     0,   255,   256,   257,   258,
13911      259,   260,     0,     0,   261,   262,  1078,  1079,   265,     0,
13912      266,   267,   268,   269,     0,     0,   271,     0,   272,   273,
13913      274,   275,   276,   277,   278,   279,   280,     0,   281,   282,
13914      283,   284,   285,   286,     0,   287,   288,   289,   290,     0,
13915        0,     0,   291,     0,     0,     0,   292,   293,   294,   295,
13916      296,   297,  1080,  1081,   300,     0,   301,     0,   302,   303,
13917      304,   305,   306,   307,     0,   308,   309,   310,   311,     0,
13918        0,   312,   313,  1082,   315,   316,     0,   317,   318,   319,
13919        0,   320,   321,   322,     0,   323,   324,   325,   326,     0,
13920      328,   329,   330,   331,     0,     0,   333,     0,   334,   335,
13921     1083,   337,     0,   338,     0,   339,   340,     0,   341,   342,
13922      343,   344,   345,     0,   346,     0,     0,     0,   349,   350,
13923        0,   351,   352,   353,   354,   355,   356,   357,   358,   359,
13924      360,     0,   361,   362,   363,   364,   365,   366,   367,     0,
13925      368,   369,     0,   371,   372,   373,   374,  1085,  1086,     0,
13926     1087,     0,   378,   379,   380,   381,   382,   383,   384,   385,
13927      386,   387,     0,     0,   388,     0,   390,   391,   392,     0,
13928      393,   394,   395,     0,     0,   396,   397,   398,   399,   400,
13929      401,   402,   403,   404,   405,   406,   407,   408,   409,   410,
13930      411,  1088,   413,  1089,   415,   416,   417,   418,   419,   420,
13931      421,     0,     0,   424,     0,   425,   426,   427,   428,     0,
13932        0,   430,  1090,   432,   433,   434,     0,   435,   436,     0,
13933        0,   437,   438,   439,     0,     0,   440,   441,     0,   443,
13934      444,   445,     0,   447,   448,   449,   450,   451,   452,   453,
13935      454,   455,     0,     0,   456,   457,     0,   459,     0,   461,
13936      462,   463,     0,   464,   465,   466,   467,   468,   469,   470,
13937      471,   472,   473,  1091,   475,   476,   477,   478,     0,   479,
13938      480,   481,   482,   483,   484,   485,   486,   487,   488,   489,
13939      490,     0,   491,   492,   493,   494,   495,   496,   497,   498,
13940        0,   500,   501,   502,   503,   504,   505,   506,   507,   508,
13941        0,   509,   510,   511,   512,   513,     0,   514,   515,  2191,
13942      517,   518,   519,   520,   521,  1093,   523,     0,   524,   525,
13943      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
13944      536,     0,   538,     0,   539,   540,     0,   541,   542,   543,
13945      544,   545,   546,   547,     0,   548,  1094,  1095,     0,     0,
13946      551,   552,     0,   554,     0,     0,   556,   557,   558,   559,
13947      560,   561,   562,   563,     0,     0,   564,   565,   566,   567,
13948      568,     0,     0,   569,   570,   571,   572,   573,     0,  1096,
13949        0,   576,   577,   578,   579,   580,   581,     0,     0,   582,
13950        0,     0,   583,   584,   585,   586,   587,   588,  1074,     0,
13951        0,     0,     0,     0,     0,     0,     0,     0,     0,   600,
13952      601,   602,     0,     0,     0,   230,   231,   232,   233,   234,
13953      235,   236,   237,     0,   238,   239,   240,     0,     0,     0,
13954        0,     0,     0,     0,   241,   242,     0,   243,   244,   245,
13955      246,   247,   248,   249,     0,  1075,   252,  1076,  1077,     0,
13956      255,   256,   257,   258,   259,   260,     0,     0,   261,   262,
13957     1078,  1079,   265,     0,   266,   267,   268,   269,     0,     0,
13958      271,     0,   272,   273,   274,   275,   276,   277,   278,   279,
13959      280,     0,   281,   282,   283,   284,   285,   286,     0,   287,
13960      288,   289,   290,     0,     0,     0,   291,     0,     0,     0,
13961      292,   293,   294,   295,   296,   297,  1080,  1081,   300,     0,
13962      301,     0,   302,   303,   304,   305,   306,   307,     0,   308,
13963      309,   310,   311,     0,     0,   312,   313,  1082,   315,   316,
13964        0,   317,   318,   319,     0,   320,   321,   322,     0,   323,
13965      324,   325,   326,     0,   328,   329,   330,   331,     0,     0,
13966      333,     0,   334,   335,  1083,   337,     0,   338,     0,   339,
13967      340,     0,   341,   342,   343,   344,   345,     0,   346,     0,
13968        0,     0,   349,   350,     0,   351,   352,   353,   354,   355,
13969      356,   357,   358,   359,   360,     0,   361,   362,   363,   364,
13970      365,   366,   367,     0,   368,   369,     0,   371,   372,   373,
13971      374,  1085,  1086,     0,  1087,     0,   378,   379,   380,   381,
13972      382,   383,   384,   385,   386,   387,     0,     0,   388,     0,
13973      390,   391,   392,     0,   393,   394,   395,     0,     0,   396,
13974      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
13975      407,   408,   409,   410,   411,  1088,   413,  1089,   415,   416,
13976      417,   418,   419,   420,   421,     0,     0,   424,     0,   425,
13977      426,   427,   428,     0,     0,   430,  1090,   432,   433,   434,
13978        0,   435,   436,     0,     0,   437,   438,   439,     0,     0,
13979      440,   441,     0,   443,   444,   445,     0,   447,   448,   449,
13980      450,   451,   452,   453,   454,   455,     0,     0,   456,   457,
13981        0,   459,     0,   461,   462,   463,     0,   464,   465,   466,
13982      467,   468,   469,   470,   471,   472,   473,  1091,   475,   476,
13983      477,   478,     0,   479,   480,   481,   482,   483,   484,   485,
13984      486,   487,   488,   489,   490,     0,   491,   492,   493,   494,
13985      495,   496,   497,   498,     0,   500,   501,   502,   503,   504,
13986      505,   506,   507,   508,     0,   509,   510,   511,   512,   513,
13987        0,   514,   515,     0,   517,   518,   519,   520,   521,  1093,
13988      523,     0,   524,   525,   526,   527,   528,   529,   530,   531,
13989      532,   533,   534,   535,   536,     0,   538,     0,   539,   540,
13990        0,   541,   542,   543,   544,   545,   546,   547,     0,   548,
13991     1094,  1095,     0,     0,   551,   552,     0,   554,     0,     0,
13992      556,   557,   558,   559,   560,   561,   562,   563,     0,     0,
13993      564,   565,   566,   567,   568,     0,     0,   569,   570,   571,
13994      572,   573,     0,  1096,     0,   576,   577,   578,   579,   580,
13995      581,     0,     0,   582,     0,     0,   583,   584,   585,   586,
13996      587,   588,  1074,     0,     0,     0,     0,     0,     0,     0,
13997        0,     0,     0,   600,   601,   602,     0,     0,     0,   230,
13998      231,   232,   233,   234,   235,   236,   237,     0,   238,   239,
13999      240,     0,     0,     0,     0,     0,     0,     0,   241,   242,
14000        0,   243,   244,   245,   246,   247,   248,   249,     0,     0,
14001      252,     0,     0,     0,   255,   256,   257,   258,   259,   260,
14002        0,     0,   261,   262,     0,     0,   265,     0,   266,   267,
14003      268,   269,     0,     0,   271,     0,   272,   273,   274,   275,
14004      276,   277,   278,   279,   280,     0,   281,   282,   283,   284,
14005      285,   286,     0,   287,   288,   289,   290,     0,     0,     0,
14006      291,     0,     0,     0,   292,   293,   294,   295,   296,   297,
14007        0,     0,   300,     0,   301,     0,   302,   303,   304,   305,
14008      306,   307,     0,   308,   309,   310,   311,     0,     0,   312,
14009      313,   314,   315,   316,     0,   317,   318,   319,     0,   320,
14010      321,   322,     0,   323,   324,   325,   326,     0,   328,   329,
14011      330,   331,     0,     0,   333,     0,   334,   335,     0,   337,
14012        0,   338,     0,   339,   340,     0,   341,   342,   343,   344,
14013      345,     0,   346,     0,     0,     0,   349,   350,     0,   351,
14014      352,   353,   354,   355,   356,   357,   358,   359,   360,     0,
14015      361,   362,   363,   364,   365,   366,   367,     0,   368,   369,
14016        0,   371,   372,   373,   374,     0,     0,     0,     0,     0,
14017      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
14018        0,     0,   388,     0,   390,   391,   392,     0,   393,   394,
14019      395,     0,     0,   396,   397,   398,   399,   400,   401,   402,
14020      403,   404,   405,   406,   407,   408,   409,   410,   411,     0,
14021      413,     0,   415,   416,   417,   418,   419,   420,   421,     0,
14022        0,   424,     0,   425,   426,   427,   428,     0,     0,   430,
14023        0,   432,   433,   434,     0,   435,   436,     0,     0,   437,
14024      438,   439,     0,     0,   440,   441,     0,   443,   444,   445,
14025        0,   447,   448,   449,   450,   451,   452,   453,   454,   455,
14026        0,     0,   456,   457,     0,   459,     0,   461,   462,   463,
14027        0,   464,   465,   466,   467,   468,   469,   470,   471,   472,
14028      473,     0,   475,   476,   477,   478,     0,   479,   480,   481,
14029      482,   483,   484,   485,   486,   487,   488,   489,   490,     0,
14030      491,   492,   493,   494,   495,   496,   497,   498,     0,   500,
14031      501,   502,   503,   504,   505,   506,   507,   508,     0,   509,
14032      510,   511,   512,   513,     0,   514,   515,     0,   517,   518,
14033      519,   520,   521,     0,   523,     0,   524,   525,   526,   527,
14034      528,   529,   530,   531,   532,   533,   534,   535,   536,     0,
14035      538,     0,   539,   540,     0,   541,   542,   543,   544,   545,
14036      546,   547,     0,   548,     0,     0,     0,     0,   551,   552,
14037        0,   554,     0,     0,   556,   557,   558,   559,   560,   561,
14038      562,   563,     0,     0,   564,   565,   566,   567,   568,     0,
14039        0,   569,   570,   571,   572,   573,     0,     0,     0,   576,
14040      577,   578,   579,   580,   581,     0,     0,   582,     0,     0,
14041      583,   584,   585,   586,   587,   588,     0,     0,     0,     0,
14042        0,     0,     0,     0,     0,     0,     0,   600,   601,   602
14043 };
14044 
14045 static const yytype_int16 yycheck[] =
14046 {
14047        6,   622,   638,     8,   923,     0,     0,   622,    37,    52,
14048       15,   955,     0,  1575,   712,   951,   184,    23,  1165,    25,
14049      671,   890,    22,    29,   206,   206,    21,   804,    28,    35,
14050       36,    37,  1448,    39,   802,   853,    42,    43,   940,    45,
14051     1092,    47,   751,   752,   753,   864,   201,   924,   757,  1510,
14052     2530,  1122,  1494,   826,   209,   192,    13,   212,   949,  2602,
14053     1037,  1226,   694,  1095,    46,  1189,   827,   718,  2897,  2731,
14054       45,  1814,  1080,  1081,  1487,  1735,   708,   811,  1494,  3338,
14055     2947,  2358,  1090,  3357,  1987,    23,  2543,  3652,  3042,  3303,
14056     3683,   211,  1639,  2006,  3069,  2195,  2196,   629,   671,    37,
14057      780,  2443,  2095,   876,  3385,   225,  3095,  3388,  3097,  1011,
14058        0,   889,  1499,  1015,   923,    18,  2707,  3596,  1020,  3368,
14059     3735,  3292,  3626,   932,  3679,   717,   186,  2422,  1030,  3920,
14060      707,    21,  3976,   942,   186,  3448,   914,  3964,  2823,  3959,
14061     3770,   919,  1044,   171,   692,  1606,  1607,   695,   680,  2921,
14062     3632,  4604,     0,  2051,    51,  4485,   807,  4477,     0,  1477,
14063     1425,     0,  1026,     0,     0,     0,  1826,     0,  2028,     0,
14064       36,  1073,  3963,     0,  1917,  2160,  3355,    43,  1042,     0,
14065      831,     0,     0,     0,  4428,   958,   192,   193,   194,   195,
14066     2128,   197,    42,   844,  2956,   201,  2162,   203,  4756,  2850,
14067      206,  2139,   874,   209,  4833,  3557,   212,  4232,  4797,   215,
14068        6,   217,  4668,  1600,   220,   850,   850,    11,   224,  1537,
14069      226,    51,     0,     0,    44,  1372,    37,   833,  5012,  4620,
14070        0,  4622,  4476,  4031,   807,  3631,  1554,  3633,     6,  4116,
14071     1627,     0,   914,     0,     6,   220,  5036,   919,  1256,  1257,
14072     1078,  1079,    74,     6,  4710,  1287,  2533,  2489,    44,  2491,
14073       24,  1089,     6,  2495,    89,  2497,  2498,     6,     6,  1277,
14074       13,    15,    16,     0,  2506,  2507,  2508,    15,    16,    59,
14075        3,    28,     5,     6,    11,    59,     0,     6,    11,     6,
14076     4750,    41,  1111,     6,   166,  1004,  1165,    11,    15,    16,
14077       31,    28,     6,     6,     6,     6,   167,   114,     6,    81,
14078     4717,  4718,  4063,  4064,    28,  4066,  4067,  4068,  4069,  4070,
14079        6,   161,    13,   116,    76,  1637,  1638,   135,   109,   178,
14080       76,  1440,   183,     6,    86,     5,    31,     5,   107,     6,
14081       86,    11,   107,    11,  1169,   146,  4742,  3977,     3,   284,
14082        6,    42,    11,    34,   210,   116,  3044,   166,     6,   146,
14083      278,   298,   284,   273,  4913,    59,   294,    13,  2645,   133,
14084     2647,  1051,    59,   168,   273,   259,   284,   264,   167,   273,
14085       59,   279,   767,    74,   216,   766,   166,   107,   298,   166,
14086      106,   114,   114,   168,   366,  3683,   166,  5340,  5341,   298,
14087      325,   182,   279,    41,   298,   333,   366,   166,    59,   166,
14088      259,   200,  1389,   190,   168,    24,   114,  1245,  1246,  5203,
14089      190,    60,  5212,  1367,   267,   158,   215,   259,   150,    68,
14090      118,   190,   143,   190,   294,   360,   225,   158,   366,   166,
14091      114,   117,   441,    13,  1272,   349,   162,   394,   145,  5038,
14092       13,    38,   166,   214,   450,   441,   638,  4917,    88,   114,
14093      333,   183,   243,   190,  1355,   246,   278,  4642,   166,     6,
14094      395,    76,    42,    59,  4930,  4650,   190,   473,  4798,    42,
14095      196,    86,    13,   430,  1353,   280,   209,   161,   487,  1358,
14096     1359,   395,  4883,   366,    28,   192,  1147,  1129,   140,   220,
14097      130,    35,   263,  1372,    74,    28,   366,   689,   231,  1561,
14098      186,    74,    35,   338,  1165,    68,   636,   228,   443,   491,
14099       28,   254,   642,   211,   133,   241,   280,    35,   244,    76,
14100      373,   491,  1212,    86,  1307,   655,   123,   369,    76,   259,
14101      315,   263,   429,  5486,   929,  1489,    76,   928,   166,    59,
14102      487,  1157,   450,  5343,   343,    76,   491,    76,    59,   487,
14103      321,    76,  1335,  1195,  5113,   339,   488,   485,   369,   491,
14104      218,   489,   166,   353,  1147,  1167,   357,   487,   455,  1211,
14105     1231,  4977,   369,   491,  1409,   469,   435,   407,   487,   166,
14106      385,   144,   231,   487,   363,  1227,  1465,   429,   407,  3770,
14107      166,   268,   366,    86,   166,   336,  1475,   166,   263,   173,
14108      163,   617,   268,   268,  3302,   487,   436,   623,   349,   625,
14109      351,   627,  5211,   629,  3795,   631,   487,   622,   622,  5419,
14110      395,  5415,   638,   121,   622,   491,   487,   643,   446,   645,
14111      433,   336,   392,  5201,   440,   339,   652,   487,   395,   421,
14112      436,  5111,   339,   953,  1463,   407,  5116,   487,  1231,  4138,
14113      339,   407,   442,   485,  1773,   429,   491,   489,  1570,   476,
14114      676,  1573,  3931,  4177,   680,   718,   487,  4181,   320,   685,
14115     1544,   412,  1380,   689,  4166,   853,   692,   468,   339,   695,
14116     4567,   487,   486,  1562,   722,  5485,  1565,  1566,  3972,  1350,
14117     1306,  1637,  1638,  1639,  1581,   711,   487,  1358,  1359,   407,
14118     5030,  3686,  2989,   490,  3973,   618,  1525,   491,  5347,   487,
14119      490,  1372,   717,  4521,     3,   487,   407,     6,  1592,  4081,
14120      491,   490,   732,   490,   734,  5142,   736,  5527,    28,  3953,
14121      483,   746,   742,   487,  1635,  5334,   485,  1525,   487,   487,
14122      489,   478,   479,   339,   392,   478,   479,   763,   311,   716,
14123      766,   767,   768,   490,   478,   479,   452,  3452,   487,  4165,
14124      487,  4167,  1407,  1407,   487,   781,   490,  1350,   476,   452,
14125     2092,   841,   450,   487,   487,   487,   487,   473,   763,   841,
14126     4541,   489,   483,   975,   975,   801,   802,   491,   804,   805,
14127      473,   487,     3,   809,   491,   473,  3977,  1413,   478,   479,
14128      478,   479,   491,  1485,   487,   107,   971,   823,  5274,   478,
14129      479,   827,   977,   960,  1097,   980,  1644,   833,   718,   339,
14130      109,  5287,  5421,  1957,   480,   481,   482,   483,   339,   845,
14131      491,    27,   376,  4022,  1117,   487,   383,   384,   843,   843,
14132     1921,   857,   827,   376,  1127,   843,  5247,  4472,  1131,  2959,
14133      407,  2961,  1135,    68,  1137,  2307,  1538,   873,   376,   407,
14134     1143,   424,  3329,   491,  3525,  1883,  1149,   407,  1747,  1152,
14135     5210,  4906,   857,  1555,    85,   891,   407,  5207,   407,  2276,
14136      896,   897,   407,  1964,  3189,  5484,  1532,   491,   873,   108,
14137      766,   767,   768,   182,  1975,   491,  3881,    28,    22,  3671,
14138      480,   481,   482,   483,   491,   478,   479,   480,   481,   482,
14139      483,   166,   928,   929,   407,   491,  3880,   491,   487,   491,
14140      114,  2478,   109,  2793,  2794,  5391,   137,   834,  2798,   144,
14141     5184,  2926,  2207,   431,    24,   951,   952,   478,   479,   480,
14142      481,   482,   483,   843,   960,   805,   119,    83,   163,   809,
14143     5518,  2927,  5206,   194,   243,   971,  2353,   246,   147,   975,
14144      107,   977,  2910,   107,   980,  2835,  2836,    72,  2296,    49,
14145       59,   491,   168,   167,     6,   194,    36,    83,   190,   995,
14146      491,   166,  3269,  3270,   114,   843,   273,  4788,   119,   125,
14147        6,   843,  5455,  2901,   843,   182,   843,   843,   843,    83,
14148      843,  1017,   843,   303,  5344,  5335,   843,    24,  1024,  1025,
14149     2582,   298,   843,  3795,   843,   843,   843,   278,    83,   125,
14150     1858,  1859,   146,   234,   107,    83,  3268,   143,   178,    24,
14151     1046,  1047,  1048,    40,  1050,  3999,  1052,  1053,  1054,   395,
14152     4643,   125,   119,   133,   119,  4685,    59,   279,   202,   344,
14153      318,  2005,   928,   929,   114,   843,   243,   211,   133,   246,
14154      125,   361,    13,  2220,   349,  3942,   119,   125,   357,  4558,
14155      264,   225,    64,   204,   166,  3362,   333,   409,   866,   119,
14156      349,    26,   259,   294,   476,   337,   447,  5427,    32,    33,
14157       24,  5431,   208,   395,  2048,  4609,   311,   489,   190,   399,
14158     4614,   401,    47,  4617,  1823,   185,  1122,   298,  1124,  1125,
14159      190,   175,   381,  4605,   366,  1425,   133,    10,   313,   315,
14160       13,   453,     6,    74,    17,    18,    19,   204,   161,  2191,
14161      491,   487,   119,   263,   353,   430,   114,   163,   133,   259,
14162     2094,  1157,   171,  5483,   429,  1058,  2092,   227,   116,    93,
14163      407,   204,   407,  1169,   395,   351,   333,  1172,  4995,  1174,
14164      296,  1176,  1167,  1178,   204,  1180,  1181,  1182,   284,   113,
14165      357,   276,  1187,  1189,  1190,   394,   395,  2600,  1194,   468,
14166     1196,   188,  3292,  4467,  1169,  1972,  1973,   398,  5528,   400,
14167      296,  5359,  4461,  4994,  5048,  5032,  4519,   279,  5028,   133,
14168      487,  1217,   231,   147,   294,   114,  4497,  1223,  5548,   424,
14169     1226,  5551,   296,  1229,   410,  4474,  1924,   204,   450,   487,
14170      416,   476,   407,   353,   284,   349,   487,  1243,   359,     3,
14171     5031,   296,   126,   308,   489,  1851,   268,   431,   296,    97,
14172     2894,  4226,   136,   333,   169,   369,   259,  1889,   395,  2195,
14173      339,   395,   268,  1306,    51,  1963,   429,   446,  1274,  1967,
14174      205,  1903,  2045,  1971,   400,   282,  1974,   259,   487,  4268,
14175     1857,  1932,  3382,   178,  1916,    10,   366,    29,    13,   491,
14176      344,   468,    17,    18,    19,   435,  1302,  1303,  1304,   167,
14177     1306,   371,   487,  2947,   400,   279,   487,   190,   429,   294,
14178      268,   177,   335,  1845,  4602,    68,   359,   423,   105,   160,
14179     1326,    85,   395,    86,   292,   435,   400,   175,   353,   212,
14180      337,   338,  1392,  1393,   147,  1395,   339,  1914,  1886,  1931,
14181     1392,  1393,   116,  1395,  4029,   400,  5504,  1375,   333,  4904,
14182     1532,   114,   400,  1901,   434,  4643,  1904,   367,  1364,   366,
14183      353,   114,   429,   366,   259,   366,  1987,  4846,   450,   268,
14184      294,    24,  1987,    34,   138,  4879,   407,    30,   450,   243,
14185      399,   366,   401,   325,   349,   415,   429,   282,  1394,   182,
14186     2026,   359,  1398,  1399,   351,   329,  2173,   280,  2004,   429,
14187     2006,   316,  2382,  1409,  1410,  1411,  2012,  1413,   427,   333,
14188      294,   259,  2018,  2019,  2020,   487,   203,   170,  1966,  5034,
14189      108,  1969,  1970,  2029,  2030,   359,   476,   395,  2034,   297,
14190      310,  1437,   196,   348,  1409,   485,   293,   487,   488,   489,
14191      214,   491,   366,    28,    28,  3988,   361,   338,   407,   333,
14192      243,    51,   429,  4932,   320,   412,  3449,   395,  4937,  4938,
14193      491,   395,   487,   205,   171,   306,  1472,  4058,   118,   437,
14194     1770,  1477,   259,  2392,  1480,   366,   450,   487,  2129,  2459,
14195      133,   396,   450,   293,   350,   620,   147,  1493,  1494,   263,
14196      491,   116,   636,   357,   487,    95,  1502,  2306,   642,  1505,
14197      263,   443,   116,   437,   372,   473,   194,   441,   293,   366,
14198      263,   655,   147,  4787,  4685,   268,   450,    24,   117,   487,
14199      120,  4809,   487,    30,   231,   240,  1532,  2396,  1534,   409,
14200      310,  1537,   491,   240,   326,  2404,   300,   137,  2407,   473,
14201      435,   141,  2478,   128,   128,  4833,   359,   321,  1554,  5114,
14202     4799,  1557,   293,   487,  1560,   280,   404,  1460,   311,   161,
14203     4774,   211,   162,    28,   357,   165,   282,    37,   355,  2220,
14204      172,  2642,   278,   453,   327,  2439,  1582,   283,   294,   714,
14205      180,   366,   395,  2392,   198,  1399,    56,   186,   190,   214,
14206     1596,   474,   475,   476,  3507,   478,   479,   480,   481,   482,
14207      483,   375,  1608,  1609,  1610,  1611,  1612,    15,    16,  3171,
14208     3952,  2372,  2373,  3908,    79,  2376,    85,   333,  2427,  1892,
14209     1626,  1596,    87,   409,   437,   366,   133,  1900,  5221,   409,
14210       93,  1637,  1638,  1639,   217,  3867,   106,   450,   263,  3871,
14211     3872,   294,  3874,   237,   436,   259,  3059,  1920,  3943,   263,
14212      115,   128,  2461,   130,  2472,  2473,  2474,   126,   422,   106,
14213      473,   796,   156,   237,  2442,   353,   430,   136,   268,   433,
14214     3770,   424,  2304,   453,   487,  2539,  3536,  3537,  3538,  3539,
14215      333,  2213,  3542,  3543,  3544,  3545,  3546,  3547,  3548,  3549,
14216     3550,  3551,   399,  3436,   401,  3795,   321,   487,  2562,  2563,
14217     2564,  2565,  3249,  5268,  1841,   170,   394,   395,  3255,   172,
14218     2574,  2613,   128,   366,   130,  1897,  1898,  1898,   183,   319,
14219      427,   407,    24,   193,   359,   171,   442,   431,    30,  1735,
14220      195,  1737,  1887,   156,   228,  2599,  4013,   294,  4015,   117,
14221      342,  3601,  3602,  1749,  1750,  3648,   178,   284,   335,   474,
14222      475,   476,  5011,   478,   479,   480,   481,   482,   483,  2059,
14223      395,   351,   353,  1769,  4682,  5425,  5426,     0,  1546,  4744,
14224      156,   241,  5046,  1551,   244,   161,   333,  2538,   359,   353,
14225      337,   275,  1788,   487,   116,   231,   263,   294,  5037,   259,
14226      476,   382,  3529,  5081,   241,  5009,   273,   244,  1804,  1805,
14227     1806,  1807,   437,   489,   398,   228,  3193,  4725,   186,   366,
14228      294,  1817,  5026,   452,   395,   450,   431,    31,  1824,   356,
14229     1826,  3558,   412,   293,   398,   294,   333,   259,  2697,   161,
14230      325,   133,  1838,   427,   473,  1841,   294,  5430,   473,  1845,
14231      301,    55,   228,  1621,  2026,  1851,  2378,  1625,   349,   333,
14232      351,  3238,   487,   427,  2127,  5069,   437,   273,   452,   366,
14233      329,   321,   294,   450,   333,   360,   198,  4821,   338,  5529,
14234     2994,   329,   487,  4535,   334,   333,   337,  3977,   452,   325,
14235     1886,  1887,   216,  2592,   490,   450,   473,   359,   450,   275,
14236      360,  1897,  1898,   487,   162,  1901,   450,   366,  1904,    76,
14237      395,   333,   362,  3364,   491,   366,   487,  2207,   366,    86,
14238      380,   412,   399,   487,   401,  1921,  1922,   382,   431,   473,
14239      385,  5209,  1928,   395,  1930,   259,   491,   259,   196,   491,
14240     5204,   263,   450,  5221,  4923,  1941,  1931,   491,  1943,  5532,
14241     1945,  5222,  1947,   491,  1949,   294,  1951,  4427,   443,   190,
14242     1955,  1957,  2558,   399,  2605,   401,  5205,   156,  1964,  2967,
14243     1966,    34,   161,  1969,  1970,   437,  1972,  1973,  1997,  1975,
14244     4247,  4248,  5186,   491,   487,  4637,  1982,  4639,   450,  3623,
14245      263,   427,  3626,  1989,   333,   268,  4466,   321,  4817,  4446,
14246     1996,  1997,  1987,  1987,  2000,   237,  2694,   443,  2004,  1987,
14247     2006,   473,   399,   435,   401,  2011,  2012,  1982,   333,  2615,
14248     2661,   168,  2018,  2019,  2020,   487,   313,  2023,   488,  2025,
14249     2026,  2027,  2028,  2029,  2030,  2031,  2032,  3687,  2034,   228,
14250     2036,  2037,  2605,  2902,  2040,   369,   319,    13,  2338,  3683,
14251     3900,   366,  1932,   294,   201,  2725,  2726,  4271,   482,  2055,
14252     2056,  2057,  2058,   487,  4278,   489,  2062,  2063,  1996,  5347,
14253      301,  2067,   412,  2363,  2070,   294,    42,  2073,  2074,  2075,
14254     2076,  2077,  2078,  2079,  2080,  2081,   275,  2083,  2896,   294,
14255     2262,  2262,   333,  2089,  2090,   452,  2092,  5336,  2661,   450,
14256     5349,   161,   333,  2099,  1546,   429,   337,    45,    74,  1551,
14257     2003,   485,   337,   487,   333,  2260,   473,  5061,  2263,  2264,
14258      294,   353,   473,  5327,   184,   366,  2253,   166,   333,    67,
14259      487,  4416,  2128,   253,  2424,   366,   487,   143,   485,  2135,
14260      487,   366,   489,  2139,  2140,   370,  5424,   366,  2957,   161,
14261      156,   190,  5430,  5118,  2150,   161,  4975,   277,     3,   333,
14262     5017,   366,  2452,  2159,  2160,  4387,   398,  4389,  4390,   272,
14263     1792,  4393,   184,   143,   240,  2899,     5,  2173,  3045,  1621,
14264       25,  5420,    11,  1625,  2180,    26,   156,   169,   237,   161,
14265     3742,   161,   366,  2303,  1816,   427,  1538,   263,   443,  2795,
14266      450,     5,   208,  2222,  3071,  2224,    47,    11,  4966,  5413,
14267     4968,  2807,   184,  1555,  4972,  4973,   487,  2213,   489,   450,
14268      452,  3954,   228,   473,  2028,   487,  2222,   489,  2224,  3343,
14269     2220,  2857,  2036,   143,  2524,  2631,  2632,  2633,   208,  3353,
14270       85,    10,   473,  2839,    13,  2241,   156,  3046,    17,    18,
14271       19,   161,   485,  2133,  5532,   487,   489,  2253,   228,  2255,
14272     2256,  2902,   452,  5021,  2260,    34,  2262,  2263,  2264,   275,
14273     2266,  2381,  2268,   918,   488,  5479,  2272,   491,   284,  2275,
14274        5,  5530,     5,   473,    22,   356,    11,  2883,    11,  3740,
14275       28,  3742,   937,   138,    19,   940,  2984,   487,   208,  2038,
14276     2296,  3733,  2041,   218,   353,   275,  5271,   237,  3942,   487,
14277     2275,  2307,   914,    38,   284,   242,   486,   919,   228,  2315,
14278     2316,   491,  3121,  3249,   488,  3975,  2322,   491,   486,  3255,
14279      487,   482,  3487,   491,   278,  2331,   487,   412,   489,   283,
14280      412,  2806,  3719,  2808,  2809,   190,  2150,  2610,  2458,   398,
14281      488,   196,   335,   491,   488,  2618,  2352,   491,   356,  2981,
14282     2982,  2357,  2358,    32,    33,   275,   348,  4652,  3335,   450,
14283     3011,   452,   354,   240,   284,  2638,  2372,  2373,   427,   361,
14284     2376,   488,  2378,  2379,   491,  2648,  3408,  3409,  2651,   488,
14285     2653,  2654,   491,   240,  2657,   264,   265,   399,  3775,   401,
14286     2663,    90,  2665,   452,  3296,  2668,  2402,  2372,  2373,  2405,
14287       68,  2376,   488,  5232,   396,   491,    74,   423,   488,   488,
14288     5385,   491,   491,   353,   488,     3,   194,   491,    86,  2419,
14289      242,   488,  2428,  2429,   491,  3289,   418,   237,   487,   734,
14290      735,   736,   184,   212,   739,   740,   741,  2443,  3011,  2445,
14291     2446,    65,    66,   423,   749,   300,   114,   412,   116,    94,
14292      255,   256,   257,   258,   488,    82,    86,   491,   398,   488,
14293     2733,   488,   491,   488,   491,   488,   491,   237,   491,   443,
14294     2476,  2477,  2478,   450,   488,   452,  2482,   491,  1622,    55,
14295      359,   488,  2488,   488,   491,   356,   491,   427,  4765,   344,
14296     2496,   488,   218,  2499,   491,  5470,   487,    85,  4730,  2505,
14297       11,   280,   170,   423,   399,  3966,   401,  3139,  2514,  5052,
14298     2516,   450,   452,   452,  2814,   488,   395,   488,   491,   490,
14299     2820,   488,   167,   490,  2530,   488,  3158,  2533,   491,  2535,
14300      198,   488,  2538,  4177,   491,   487,  2542,  4181,   393,  2545,
14301      847,   171,   849,   353,  4182,  3961,  4184,   487,   278,   137,
14302      488,  2557,  2558,   491,   488,   200,   488,   491,   437,   491,
14303     3684,  3685,   488,  2538,   194,   491,   353,   422,  3981,  2575,
14304      215,   450,   349,   350,   488,   430,   237,   491,   433,  2585,
14305      225,  2587,   491,   353,   487,  4685,  2741,  2544,   398,  2744,
14306      488,    55,  2747,   491,   473,   263,  2584,   443,  2735,   488,
14307      268,   231,   491,  5265,   488,   441,   251,   491,   487,  2615,
14308      349,   350,  4907,  3322,  5443,   488,    10,   427,   491,   488,
14309     4915,    82,   491,    17,    18,    19,   488,  3496,   398,   491,
14310      349,   350,   488,   278,  3578,   491,  2642,    45,  2644,  2645,
14311     2646,  2647,   452,   311,   489,   488,   234,  3298,   491,  3300,
14312     1794,   470,    10,   283,    93,    13,   214,   427,  1802,   327,
14313     3668,   281,   488,   281,    10,   491,  5495,    13,   278,  2675,
14314     1814,    17,    18,    19,   113,  2857,   488,   487,  2684,   491,
14315      161,  3313,   452,  3315,    42,   278,  2674,   488,    34,   470,
14316      491,    49,   353,    45,  4554,   474,   475,   476,   343,   478,
14317      479,   480,   481,   482,   483,   214,   294,   128,   147,   130,
14318     3471,  4811,    10,   301,   281,    13,    74,   487,   480,    17,
14319       18,    19,  4284,   488,  2997,  3298,   491,  3300,   488,  2735,
14320     3381,   491,  5561,   154,   470,  2741,    34,   398,  2744,  2921,
14321      237,  2747,   349,   350,   488,   333,  1890,   491,   165,   337,
14322     2756,  3642,  2795,  5242,  5243,   128,   424,   130,  2764,  5365,
14323     5366,   488,  3460,  2769,   491,   488,   427,   488,   491,   399,
14324      491,   401,   488,  1917,   488,   491,   488,   491,   366,   491,
14325      491,   154,   412,   141,   487,    55,   431,  2793,  2794,  2795,
14326      488,   452,  2798,   491,   424,   488,  2839,   427,   491,   237,
14327     2806,  2807,  2808,  2809,   488,   488,   166,  3080,  3381,  3082,
14328      398,   488,   400,  2819,   491,   210,  2822,   488,  2824,   488,
14329      491,   487,   491,   487,  4266,   488,   487,   185,   491,  2835,
14330     2836,     0,   190,  2839,   255,   256,   257,   258,   489,  3741,
14331      488,   262,   263,   491,   333,   488,  5326,   268,   491,   454,
14332      487,  2857,   273,  2859,  3486,  2861,   353,  2863,   487,   190,
14333      488,   148,   450,   491,  3637,  1170,   212,   489,  1173,   227,
14334     1175,   487,  1177,   488,  1179,   148,   491,  2883,  1183,   278,
14335      190,  2887,   255,   256,   257,   258,   280,   333,  2894,   262,
14336      329,   488,  3711,   488,   491,   268,   491,   278,   148,    10,
14337      273,   398,    13,   148,  2910,   190,  2888,  2889,  2890,   148,
14338      488,   278,  2918,   491,   212,   353,   488,   161,   488,   491,
14339      359,   491,   280,   333,    93,  3531,  3795,  2933,   148,   488,
14340      427,    42,   491,   488,   280,   116,   491,   237,    49,   488,
14341      226,  2947,   491,  2949,    10,   431,   488,    13,  3221,   491,
14342      278,    17,    18,    19,  3227,   452,   395,   487,  4602,  3565,
14343      398,   488,   242,    74,   491,  4609,   272,   443,    34,    94,
14344     4614,   412,   356,  4617,   143,  3877,  3853,   161,   218,  2793,
14345     2794,  2987,   280,  2989,  2798,  4845,    37,   156,  2994,   427,
14346      487,  3291,   161,   414,   488,    68,   263,   166,   437,  4643,
14347       37,   263,   454,   172,   425,    56,   175,  3613,   161,   488,
14348      179,   450,   491,   371,   452,  3021,   487,  3023,  3024,  3025,
14349      488,  2835,  2836,   491,   278,   488,   488,  3648,   491,   491,
14350      141,   263,   488,  3648,   473,   491,    45,  3337,    45,   208,
14351     2184,   414,   167,   488,   488,  3863,   491,   491,   487,   487,
14352      263,   488,   425,   353,   491,   106,   107,   488,  2202,   228,
14353      491,   417,   488,   114,  2208,   491,   488,   263,  2212,   491,
14354      488,    85,   294,   491,   185,   200,  4128,   443,   143,   190,
14355      474,   475,   476,   161,   478,   479,   480,   481,   482,   483,
14356      215,   156,   488,  4037,  2238,   491,   161,   314,   398,   488,
14357      225,   488,   491,   443,   491,   488,   275,   148,   491,   278,
14358     3292,   488,   148,   471,   491,   284,   227,   487,   148,   170,
14359      478,   479,   480,   481,   482,   483,   251,   427,   474,   475,
14360      476,  3137,   478,   479,   480,   481,   482,   483,   440,  2283,
14361      487,  2894,   193,   208,   292,   488,   212,   488,   491,   307,
14362      491,  3424,   452,  3426,   488,  3428,   148,   491,   488,  2303,
14363      487,   491,    36,   228,  3437,  4809,   454,   488,   487,   280,
14364      491,   340,   148,   148,   491,  4044,   474,   475,   476,   148,
14365      478,   479,   480,   481,   482,   483,   148,   487,   148,  4833,
14366      241,  2335,   488,   244,  2947,   491,   488,   488,    10,   491,
14367      491,    13,   148,   148,   148,    17,    18,    19,   259,   161,
14368      275,   359,   263,   488,   280,  3488,   491,  2361,   343,   284,
14369      148,   148,   148,  2367,  5084,    37,   395,   148,   148,   278,
14370     2374,   395,   210,    37,   487,  4879,   226,  2381,   161,   161,
14371     2384,   487,   293,  3249,   278,     6,  2390,   395,     6,  3255,
14372     4194,   487,   487,   161,   423,     6,   487,   487,  3264,   487,
14373      371,   487,   487,  3269,  3270,     6,  2410,     6,   487,   487,
14374        6,  3571,  2416,   487,   290,   487,   487,  2421,   447,   487,
14375      449,   450,   487,   487,   487,   487,   487,   338,    10,   437,
14376     2434,    13,   487,  3925,  3926,    17,    18,    19,  3304,  3305,
14377     3306,   265,   450,  2447,   487,   487,   451,   487,   487,   360,
14378      487,   487,  4436,   487,  2458,  3321,   485,   487,   210,   488,
14379      489,   490,   487,   491,   491,   473,    37,    97,   226,   380,
14380       37,   382,   491,   161,   385,   275,   161,  3343,  3344,   487,
14381     4038,  4039,  4040,  4041,  4042,    64,   407,  3353,  3354,  3355,
14382      407,   353,   407,  3359,    10,   273,  3362,    13,   423,   442,
14383      471,    17,    18,    19,   407,  3371,   353,   478,   479,   480,
14384      481,   482,   483,  5017,   489,   407,   407,  4793,   228,  3367,
14385      353,   407,   337,   407,   476,   407,    86,   353,   148,   278,
14386      358,   223,   407,   268,   407,   359,  3371,   122,   398,   407,
14387      212,   430,  3445,   298,   273,   278,  3394,  4276,   474,   475,
14388      476,   349,   478,   479,   480,   481,   482,   483,   487,   407,
14389      485,   407,    86,   488,   489,   487,   183,   491,   122,   294,
14390      148,   395,   431,   431,  3440,   190,   487,  5081,   122,  3445,
14391      407,  3609,  3448,  4211,   407,   395,   407,   395,   407,   407,
14392      108,  4912,   122,   407,   407,    55,   407,    55,   407,   248,
14393      407,   282,   318,   298,   407,  3471,   407,   298,   280,  3769,
14394      407,  3771,   407,   437,   407,   407,   407,   407,  3484,   398,
14395       44,  3487,   407,    44,   488,   491,   450,   492,   212,   212,
14396      212,   407,   407,   278,  3794,  4397,  3471,   454,   212,   212,
14397      278,   278,   212,  3509,   212,   278,   212,   212,  4114,   473,
14398      212,   407,  3518,   417,  3814,   487,    37,   148,    26,   278,
14399     3526,   148,  3528,   487,   488,  3531,   490,   114,   263,   431,
14400     3536,  3537,  3538,  3539,   148,   148,  3542,  3543,  3544,  3545,
14401     3546,  3547,  3548,  3549,  3550,  3551,   148,   450,   442,  3555,
14402     3556,   278,   234,   273,   263,    37,   212,   161,   280,  3565,
14403     4496,  2705,   263,  3569,  3607,  5209,  4202,  3573,   263,    37,
14404      487,  4515,   218,   487,   355,  3581,   487,  5221,  3584,  2723,
14405     3586,   487,    36,  3626,   485,   405,   405,  2731,  3770,   407,
14406      407,   407,  3598,   407,   485,  3601,  3602,   487,  5458,  5459,
14407     3606,  3607,   148,   148,   431,  3611,   148,  3613,     6,   431,
14408      148,   148,   366,  3795,  3620,  3621,  3622,  3623,   272,   407,
14409     3626,  3627,   267,   166,   280,  3631,  3632,  3633,   487,   248,
14410      248,  4263,  3638,  3615,  3616,  3617,  3618,   446,    13,   491,
14411      405,   487,   487,   407,   175,   157,   166,   409,   491,   488,
14412      183,   183,   208,  3648,  3648,   491,  4354,  4355,  3664,  4357,
14413     3648,   216,   474,   475,   476,   369,   478,   479,   480,   481,
14414      482,   483,   279,    37,    55,   431,   491,  3683,  3684,  3685,
14415      488,  3687,   287,   431,   353,   487,   216,   216,   268,   268,
14416      407,   407,   407,   242,   487,   356,   443,   161,  3704,  3705,
14417     3706,  3707,   218,  5347,   278,   268,    45,   375,  4417,   412,
14418      278,   263,   226,  4345,   349,   226,   226,   407,   278,   398,
14419      122,   278,  3536,  3537,  3538,  3539,   366,  3733,  3542,  3543,
14420     3544,  3545,  3546,  3547,  3548,  3549,  3550,  3551,   491,   278,
14421       10,   333,   278,    13,  4017,  3751,  5308,   184,  4021,   321,
14422      407,   363,   474,   475,   476,  3569,   478,   479,   480,   481,
14423      482,   483,   284,   407,    37,   212,   431,   488,     6,   431,
14424      218,   148,    42,   317,   273,   161,   443,   476,    37,    49,
14425     5424,   396,   273,   163,   318,   363,  5430,  3601,  3602,    37,
14426      487,   148,  4916,   148,   192,  3977,   487,   148,   273,   431,
14427      450,   263,  3802,   201,    74,    37,   263,   278,    56,   278,
14428      218,   209,  4444,  3813,   212,   181,  4963,   161,   474,   475,
14429      476,   181,   478,   479,   480,   481,   482,   483,    37,   162,
14430      357,   470,   485,   488,   470,   246,   488,   488,   363,   488,
14431      488,   161,  3848,    37,   218,  4451,    10,   278,   263,    13,
14432      190,   454,   190,   190,   190,   190,    25,   491,   106,   173,
14433      407,   491,    56,    10,  3008,   491,    13,   487,   166,   245,
14434     3623,   141,   278,  3626,   450,   491,    55,  3883,    42,   272,
14435      395,  4952,   488,  4954,   412,    49,   218,   488,  5532,   443,
14436     3896,   488,  3898,   488,  3900,    42,   487,   166,   488,   488,
14437      488,  3907,    49,   488,   488,   290,   166,  3913,    10,   491,
14438       74,    13,   106,   488,   487,   185,   299,  3923,   488,   470,
14439      190,   262,   170,   407,   289,   487,   429,    74,   487,   487,
14440     3683,   240,  3938,   236,   487,    55,  3942,   487,   447,   281,
14441       42,   447,   194,   148,   278,   193,  3952,    49,   472,   278,
14442      454,   407,   487,   202,   192,  3961,   407,   227,   407,   151,
14443      268,   487,   407,   201,   202,  3971,   263,   148,   358,  3975,
14444     4243,   209,    74,   211,   212,  3119,  3982,  3983,   282,   366,
14445      148,   148,  3970,   226,   194,   358,  4763,   225,   358,   151,
14446      278,   476,   431,   241,   141,   407,   244,   151,   491,   193,
14447      228,   300,   428,  5150,   300,   151,   407,  4013,  4644,  4015,
14448      280,   259,   407,   382,  4287,  4288,  4022,   238,   407,   407,
14449     4202,   185,   238,   238,   122,   407,   190,   353,  4034,   407,
14450     4036,   353,   353,   263,  5158,  5159,   407,   353,   185,   141,
14451      407,   366,   148,   190,   407,   293,  4864,   241,   407,   407,
14452      244,   407,    44,   407,  4686,   407,   488,   212,   488,   488,
14453      212,  4697,   486,   227,   212,   259,  4072,   212,   178,   488,
14454      488,   491,   417,     3,   161,    45,   107,   335,  4084,   488,
14455      227,   491,   161,   185,   487,    37,  3900,   148,   190,   488,
14456      338,   148,   407,   161,  4963,   178,   487,   476,   148,   293,
14457     3244,   371,   486,   431,  4377,  4378,   437,   431,  4114,   353,
14458      281,  4117,   360,   278,   486,   476,   280,  5053,   353,  4125,
14459     4126,   363,   353,   491,   353,   227,  4132,  4133,   353,   146,
14460      146,  4137,   380,   280,   212,   488,   212,  4143,   212,   212,
14461     4146,  4147,   212,   212,   338,  4151,  4152,   212,   212,   139,
14462       13,  4157,  4158,  4159,  4160,  4161,   166,   290,   485,  4165,
14463     4166,  4167,   161,  4169,  4170,   442,   360,  4173,   491,   488,
14464      488,  4177,   166,   262,  4872,  4181,  5300,   488,   280,   447,
14465      487,  4187,   488,   488,   166,  4883,   380,   487,   473,  3942,
14466      491,   175,   404,   488,   487,  4224,  4202,   491,   488,   340,
14467      417,   471,   161,    37,   431,  4211,   218,   371,   478,   479,
14468      480,   481,   482,   483,   407,   202,    55,   431,  4224,   148,
14469      398,  4227,   487,   382,   371,   170,   417,   358,   151,   353,
14470     4503,   407,   407,   407,  4507,  4508,   353,   407,   488,   333,
14471      487,  4247,  4248,   488,  4850,    55,   407,   488,   450,   398,
14472     5169,   437,  5399,   161,   278,    74,   148,   107,  4956,   417,
14473     4266,  4534,   488,   212,   212,   212,   212,   487,   487,   371,
14474     4270,   197,   216,   407,   454,  4281,   278,   328,   676,    37,
14475     4280,   276,   488,  4889,   491,   298,   487,   685,   491,   278,
14476        3,   491,  3436,   491,   692,   417,   407,   695,  4949,   487,
14477      363,   488,   486,  4117,   436,    84,   172,   471,   107,   166,
14478       27,   212,  4963,   166,   478,   479,   480,   481,   482,   483,
14479     3464,    55,   488,   448,   471,  4331,   290,   448,   488,   215,
14480      487,   478,   479,   480,   481,   482,   483,   488,   488,   215,
14481       55,  4947,  4948,   397,   487,  3489,   488,   491,   488,   487,
14482     4356,   288,   487,   285,   179,  4169,   404,   273,   488,    76,
14483      407,   417,   166,    74,   450,  4371,   196,   191,   184,   471,
14484      184,   268,   268,   476,    55,   398,   478,   479,   480,   481,
14485      482,   483,   491,   491,    68,   407,   407,   407,   148,   151,
14486      212,   108,   407,   488,  5092,   487,   121,   168,   636,  4405,
14487      166,    37,   114,   431,   642,   190,  5115,   487,   273,   363,
14488       37,   263,   431,   163,   131,  4421,   161,   655,   273,    80,
14489      363,  4427,    55,   450,  4177,   142,   398,    37,  4181,   166,
14490     4436,   278,   450,   671,   487,  4735,   199,   161,   676,   476,
14491      281,   210,   487,   681,   166,  4451,   163,   685,   686,   487,
14492      436,   168,   379,   488,   692,   488,   694,   695,  4464,   215,
14493     4466,   298,  4644,   488,   449,   278,   327,   407,    37,   707,
14494      708,   148,  5078,   487,   148,  4463,  5112,   488,   487,   487,
14495      718,   487,   407,   487,   487,   161,   487,   487,    37,  5095,
14496      487,   487,   268,  5099,  4500,  5101,   239,   194,   148,  5150,
14497      488,   363,   219,  4685,   487,   107,   487,   446,  4514,   134,
14498       37,   488,   282,  4519,   417,  4697,  4697,   377,   377,   488,
14499       86,   129,    55,   240,  4512,  4513,    10,    37,   491,    13,
14500       77,   487,   487,    17,    18,    19,   487,   487,   183,   161,
14501      398,  4696,   431,   259,   398,   487,   487,   278,  4554,   398,
14502      488,     6,   155,   487,   454,   147,   487,   350,    42,   350,
14503       68,   281,   960,   801,   802,    49,    68,   129,  4841,   807,
14504     3714,   450,   450,   971,   487,   487,   491,  4583,  4584,   977,
14505      436,  4587,   980,    37,   435,  4740,   166,   398,   436,   324,
14506       74,   134,   196,   831,   487,   833,  4602,   314,   315,  4605,
14507      268,   318,   363,  4609,    37,   278,   844,   278,  4614,    37,
14508      487,  4617,  4618,   191,  4620,   281,  4622,   281,  4624,  4625,
14509      168,   488,   168,   491,   366,    55,   447,   344,  4633,   407,
14510      347,   349,  4905,   386,   119,   429,   353,  4643,  4644,  4645,
14511     5291,  4647,   487,   360,   488,   488,     6,   487,   349,   363,
14512      144,   285,   334,    23,  1052,  1053,  1054,    34,   487,   487,
14513      487,   268,   166,   407,   147,   491,   349,   487,   491,   286,
14514       77,   377,   389,   377,   882,   450,   450,   168,   395,   487,
14515      168,   398,  1624,  2542,  1359,  4958,  3830,   843,  2346,  3833,
14516     4696,  4697,  2902,  2427,  3071,  3744,  5291,  2453,  3769,  2512,
14517      417,   185,  4738,  3283,  5148,  5399,   190,  3923,  4793,  4762,
14518     2988,  4407,  2684,   951,   952,   953,  5270,  4643,  5388,  5178,
14519     5177,  5311,   960,  5424,  3956,  2992,   443,  3971,  5122,   967,
14520     2527,  3914,  5353,   971,  4740,  2527,  3764,  4743,  5353,   977,
14521     4554,  3096,   980,   227,  3333,  3939,     0,   924,  5399,  4755,
14522     4769,  4778,  4758,  4445,   992,  2521,  5401,  4763,  5565,  4765,
14523     5547,  3291,  4755,  3345,  3979,  5324,  4772,    21,  4699,  1007,
14524     4935,  1783,  5131,  4702,  1196,    28,  4047,  4903,  5492,  4767,
14525     2196,  1829,  3981,  4789,  2966,  1827,  1838,  4793,  5053,  1897,
14526     4796,  3935,   672,  1990,   705,  3225,   280,  1990,    52,  1991,
14527     2452,  4807,  4808,  4809,  3794,  3337,  3814,  5353,  5535,  4002,
14528     3954,  1444,  5433,  4004,  1052,  1053,  1054,  4805,  5433,  1932,
14529     2129,  1941,  2140,  5358,   822,  4829,  4034,  4833,  2918,  4835,
14530     4514,  1379,  2176,  4808,  1336,  1402,  1401,   844,  2933,  4845,
14531     3641,  5260,  4848,  2150,  4850,  5103,  4889,  3626,  5148,  4602,
14532     4199,  2175,  4166,  4183,  1092,  4880,  4609,  3623,  5081,  5080,
14533     5541,  4614,  4035,  4869,  4617,  3623,     0,  5473,  5373,  4875,
14534     5250,  5462,  4848,  4879,  3573,  5263,  2862,  4883,  1862,  2765,
14535     4628,  1404,  5264,  4889,  2482,  2860,    -1,   371,  2087,    -1,
14536     4643,  1129,  4898,    -1,    -1,    -1,  2090,    -1,    -1,    -1,
14537       -1,    -1,    -1,  4047,    -1,    -1,    -1,    -1,  4914,  1147,
14538     4916,    -1,    -1,    -1,  5535,    -1,    -1,    -1,    -1,  1157,
14539     5535,    -1,    -1,    -1,    -1,    -1,    -1,  1165,    -1,    -1,
14540     5112,    -1,   186,    -1,    -1,    -1,  4942,    -1,    -1,    -1,
14541       -1,  4947,  4948,    -1,    -1,    -1,  4952,  4953,  4954,  4955,
14542       -1,  5251,    -1,    -1,    -1,    -1,    -1,  1195,    -1,    93,
14543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14544       -1,  1209,    -1,  1211,    -1,    -1,    -1,    -1,    -1,  4985,
14545       -1,    -1,    -1,    -1,    -1,    -1,  4992,   471,    -1,  1227,
14546      474,   475,   476,  1231,   478,   479,   480,   481,   482,   483,
14547       -1,    -1,    -1,    -1,    -1,  1243,    -1,    -1,  5014,   143,
14548       -1,  5017,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14549       -1,    -1,   156,    -1,    -1,    -1,    -1,   161,    -1,    -1,
14550       -1,  4845,   166,    -1,    -1,    -1,  1274,    -1,   172,  5027,
14551       -1,   175,    -1,    -1,    -1,   179,    -1,    -1,    -1,    -1,
14552       -1,    -1,    -1,    -1,    -1,  4869,  4809,    -1,    -1,    -1,
14553       -1,    -1,    -1,    -1,  1302,  1303,  1304,    -1,  1306,    -1,
14554       -1,    -1,  5078,    -1,   208,  5081,    -1,    -1,  5084,    -1,
14555     4833,    -1,  5088,    -1,    -1,    -1,    -1,    -1,  1326,  5095,
14556       -1,    -1,    -1,  5099,   228,  5101,    -1,  5103,    -1,    -1,
14557       -1,    -1,    -1,    -1,    -1,    -1,  5112,    -1,    -1,    -1,
14558     5383,    -1,  1350,    -1,    -1,    -1,    -1,  5123,    -1,    -1,
14559     1358,  1359,    -1,  5278,    -1,    -1,  4879,    -1,    -1,    -1,
14560       -1,    -1,    -1,    -1,  1372,    -1,    -1,    -1,    -1,    -1,
14561       -1,   275,    -1,    -1,   278,    -1,    -1,    -1,    -1,    -1,
14562      284,    -1,  5158,  5159,    -1,    -1,  1394,    24,    -1,  4303,
14563     1398,  1399,    -1,    30,    -1,    -1,    -1,    -1,    -1,    -1,
14564       -1,  4315,    -1,    -1,    -1,  1413,    43,    -1,    -1,    -1,
14565       -1,  1419,  5482,  5189,    -1,    -1,    -1,  1425,    -1,    -1,
14566     5196,    -1,    -1,    -1,  5200,    -1,    -1,    -1,    -1,  5354,
14567     5355,    -1,    -1,  5209,    -1,    72,   340,    -1,    -1,    -1,
14568       -1,    -1,    -1,    10,    -1,  5221,    13,    -1,    -1,    -1,
14569       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14570       -1,    -1,    -1,    -1,    -1,  5241,  5242,  5243,    -1,    -1,
14571       -1,  5247,  5230,    -1,  5250,    42,    -1,  5547,    -1,  1487,
14572       -1,    -1,    49,    -1,  5260,    -1,    -1,  5263,    -1,   126,
14573       -1,   395,    -1,    -1,  5017,  5565,   133,    -1,    -1,   136,
14574     5084,    -1,  5278,    -1,    -1,    10,    -1,    74,    13,    -1,
14575       -1,    -1,    17,    18,    19,    -1,    -1,  5293,    -1,   423,
14576     1528,    -1,    -1,    -1,  5300,   162,    -1,    -1,    -1,    34,
14577       -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,    -1,    -1,
14578       -1,    -1,    -1,   447,    49,   449,   450,    -1,    -1,    -1,
14579     5326,    -1,    -1,  1561,    -1,  5331,    -1,    -1,  5081,   196,
14580       -1,  5337,    -1,    -1,    -1,    -1,    -1,  5325,    -1,    74,
14581       -1,  5347,    -1,    -1,   141,    -1,    -1,    -1,  5354,  5355,
14582       -1,   485,  5358,  5359,   488,   489,   490,    -1,  5353,  5353,
14583       -1,    -1,    -1,  5369,    -1,  5353,    -1,  5373,   622,    -1,
14584       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14585       -1,    -1,    -1,    -1,  1622,    -1,    -1,  5393,   185,    -1,
14586     5433,  4535,   259,   190,    -1,    -1,   263,    -1,    -1,  1637,
14587     1638,  1639,    -1,    -1,    -1,    -1,   273,    -1,    -1,    -1,
14588       -1,    -1,  5567,  5568,    -1,   282,    -1,    -1,  5424,  5425,
14589     5426,    -1,    -1,    -1,  5430,    -1,    -1,   294,    -1,    -1,
14590      227,    -1,    -1,    -1,    -1,    -1,  5250,    -1,  5433,  5433,
14591     1838,    -1,    -1,  1841,    -1,  5433,    -1,    -1,    -1,    -1,
14592      185,    -1,  5458,  5459,    -1,   190,  5209,    -1,    -1,    -1,
14593       -1,    -1,  5468,   717,   718,    -1,   333,  5473,  5221,   336,
14594      337,    -1,    -1,    -1,    -1,    -1,    -1,   212,   213,    -1,
14595       -1,    -1,    -1,   280,    -1,    -1,    -1,    -1,  1886,  1887,
14596       -1,    -1,   227,  4637,    -1,  4639,    -1,    -1,  5504,   366,
14597       -1,    -1,  1740,  1901,    -1,    -1,  1904,    -1,  5514,    -1,
14598       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1757,
14599       -1,    -1,    -1,  5529,    -1,    -1,  5532,    -1,    -1,    -1,
14600       -1,   266,  1770,    -1,    -1,  5541,    -1,  1775,    -1,  5545,
14601     5535,  5535,    -1,    -1,    -1,   280,    -1,  5535,   283,    -1,
14602       -1,    -1,    -1,    -1,    -1,  5369,  1794,    -1,    -1,    -1,
14603       -1,  5567,  5568,    -1,  1802,    -1,    -1,   434,  1966,    -1,
14604       -1,  1969,  1970,    -1,   371,    -1,  1814,    -1,    -1,    -1,
14605       -1,    -1,    -1,    -1,    -1,    -1,    -1,   841,    -1,   843,
14606       -1,    -1,    -1,  1831,  5347,    -1,    -1,    -1,    -1,    -1,
14607     1838,    -1,    -1,  1841,    -1,    -1,  1844,    -1,    -1,    -1,
14608       -1,    17,    -1,  1851,    -1,    -1,    -1,    -1,    -1,  1857,
14609       26,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14610       -1,  1869,    -1,    -1,    -1,    -1,   371,    -1,    -1,    -1,
14611       -1,    -1,    -1,    -1,  5458,  5459,    -1,    -1,  1886,  1887,
14612       -1,  1889,  1890,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14613       -1,    -1,    -1,  1901,    22,  1903,  1904,    -1,    -1,    -1,
14614       28,  5424,    -1,    -1,   471,  1913,  1914,  5430,  1916,  1917,
14615       -1,   478,   479,   480,   481,   482,   483,    -1,    -1,    -1,
14616       -1,    -1,    -1,    -1,  1932,    -1,    -1,    -1,    -1,    -1,
14617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14618       -1,    -1,    -1,    -1,    -1,    -1,    -1,     0,    -1,    -1,
14619       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1966,    -1,
14620       -1,  1969,  1970,    -1,    -1,    -1,   471,    -1,    -1,   474,
14621      475,   476,    -1,   478,   479,   480,   481,   482,   483,    37,
14622       -1,    -1,    -1,   488,    -1,    -1,   491,    -1,    -1,    -1,
14623       -1,    -1,    -1,    -1,    -1,    -1,  2004,    -1,  2006,    -1,
14624       58,    -1,    -1,  2011,  2012,    -1,    -1,    -1,    -1,  5532,
14625     2018,  2019,  2020,    -1,    -1,  2023,    -1,  2025,    -1,  2027,
14626     2028,  2029,  2030,  2031,  2032,    -1,  2034,    -1,  2036,  2037,
14627       -1,    -1,  2040,    -1,    92,    -1,    -1,    -1,    -1,    -1,
14628       93,    -1,    -1,    -1,    -1,    -1,  2054,  2055,  2056,  2057,
14629     2058,  2059,    -1,    -1,    -1,  2063,    -1,    -1,    -1,  2067,
14630       -1,    -1,  2070,    -1,    -1,  2073,  2074,  2075,  2076,  2077,
14631     2078,  2079,  2080,  2081,    -1,  2083,    -1,    -1,    -1,    -1,
14632       -1,    -1,  2090,    -1,  2092,  2253,    -1,    -1,    -1,    -1,
14633      143,    -1,  2260,    -1,   152,  2263,  2264,    -1,    -1,    -1,
14634       -1,    -1,    -1,   156,    -1,    -1,    -1,    -1,   161,    -1,
14635       -1,    -1,    -1,   166,    -1,    -1,    -1,    -1,    -1,   172,
14636       -1,  2129,   175,    -1,    -1,    -1,   179,  2135,    -1,   187,
14637       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14638       -1,    -1,  2150,  1167,    -1,    -1,    -1,    -1,    -1,    -1,
14639       -1,  2159,  2160,    -1,    -1,   208,    -1,    -1,    -1,    -1,
14640      218,    22,    -1,    -1,    -1,   223,    27,    -1,    -1,    -1,
14641       -1,    -1,    -1,    -1,    -1,   228,  2184,    -1,    -1,    -1,
14642       -1,    -1,    -1,  2191,    -1,    -1,    -1,  2195,  2196,    -1,
14643       -1,    -1,    -1,    -1,  2202,    -1,    -1,    -1,    -1,  2207,
14644     2208,    62,    -1,    -1,  2212,   263,    -1,    -1,    -1,    -1,
14645       -1,    -1,  2220,    -1,    75,  1239,    -1,    -1,    -1,    -1,
14646       -1,    -1,   275,    -1,    -1,   278,    -1,    -1,    -1,    90,
14647     2238,   284,    -1,  2241,    -1,  1259,    -1,   295,    -1,    -1,
14648       -1,    -1,    -1,   301,    -1,  2253,    -1,    -1,    -1,  2257,
14649       -1,    -1,  2260,    -1,    -1,  2263,  2264,    -1,    -1,    -1,
14650       -1,    -1,    -1,  2271,    -1,    -1,    -1,  1291,    -1,    -1,
14651      131,    -1,    -1,    -1,    -1,  2283,    -1,    -1,    -1,   337,
14652       -1,   142,  1306,   341,    -1,    -1,    -1,   340,    -1,    -1,
14653       -1,    -1,   350,    -1,    -1,  2303,  2304,    -1,    -1,    -1,
14654      358,    -1,   163,    -1,  2312,    -1,    -1,   168,   366,    -1,
14655       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14656      378,    -1,    -1,    -1,    -1,    -1,  2334,  2335,    -1,   387,
14657     2338,    -1,    -1,   391,    -1,    -1,    -1,    -1,    -1,    -1,
14658       -1,    -1,   395,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14659       -1,  5265,   410,  2361,    -1,  2363,    -1,    -1,    -1,  2367,
14660       -1,    -1,    -1,    -1,    -1,    -1,  2374,    -1,  1392,  1393,
14661      423,  1395,    -1,  2381,    -1,    -1,  2384,    -1,    -1,   240,
14662       -1,    -1,  2390,    -1,    -1,    -1,    -1,   445,    -1,    -1,
14663       -1,   449,    -1,    -1,   447,    -1,   449,   450,    -1,    -1,
14664       -1,    -1,  2410,    -1,    -1,    -1,    -1,    -1,  2416,    -1,
14665       -1,    -1,    -1,  2421,    -1,    -1,  2424,    -1,    -1,   280,
14666       -1,    -1,    -1,    -1,    -1,    -1,  2434,    -1,    -1,    -1,
14667       -1,    -1,   485,    -1,    -1,   488,   489,   490,    -1,  2447,
14668       -1,    -1,    -1,   619,  2452,    -1,    -1,    -1,    10,    -1,
14669     2458,    13,    24,   314,   315,    17,    18,    19,    30,    -1,
14670       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2476,  2477,
14671     2478,    -1,    34,    -1,  2482,    -1,    37,    -1,    -1,    -1,
14672       42,    -1,    -1,    -1,    -1,    -1,   347,    49,    -1,    -1,
14673       -1,    -1,   353,    -1,    -1,   671,   672,    58,    -1,   360,
14674       72,    -1,   363,    -1,    -1,    -1,  2514,  2515,    -1,    -1,
14675       -1,    -1,    74,    -1,    -1,    -1,  2524,    -1,    -1,    -1,
14676       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14677       -1,    92,    -1,    -1,   395,    -1,    -1,    -1,    -1,    -1,
14678       -1,   402,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   410,
14679     2558,    -1,    -1,    -1,   126,    -1,   417,    -1,    -1,    -1,
14680       -1,   133,    -1,    -1,   136,    -1,    -1,  2735,    -1,    -1,
14681       -1,    -1,    -1,  2741,    -1,    -1,  2744,    -1,    -1,  2747,
14682       -1,    -1,   443,    -1,    -1,    -1,    -1,    -1,    -1,  2597,
14683      162,   152,  2600,   769,    -1,    -1,    -1,  2605,    -1,    -1,
14684       -1,    -1,    -1,    -1,   732,    -1,   734,  2615,   736,    -1,
14685       -1,    -1,    -1,    -1,   742,   743,   744,    -1,    -1,   795,
14686       -1,    -1,    -1,   185,   196,    -1,   187,   803,   190,    -1,
14687      806,   807,   808,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14689      212,   213,    -1,  2661,    -1,    -1,    -1,   218,    -1,    -1,
14690       -1,    -1,   223,    -1,    -1,   227,    -1,    -1,    -1,    -1,
14691       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14692       -1,    -1,    -1,    -1,    -1,    -1,    -1,   259,    -1,    -1,
14693       -1,   263,    -1,    -1,    -1,    -1,    -1,  2705,    -1,    -1,
14694       -1,   273,   263,    -1,   266,    -1,    -1,    -1,    -1,    -1,
14695      282,    -1,    -1,  2721,    -1,  2723,    -1,    -1,   280,    -1,
14696       -1,   283,   294,  2731,    -1,    -1,  2894,  2735,    -1,    -1,
14697     2738,    -1,    -1,  2741,   295,    -1,  2744,    -1,    -1,  2747,
14698      301,    -1,    -1,    -1,    -1,  2753,    -1,    -1,    -1,    -1,
14699       -1,    -1,    -1,    -1,    -1,    -1,  2764,    -1,    -1,    -1,
14700       -1,  2769,   890,    -1,   336,   337,    -1,    -1,    -1,    -1,
14701       -1,    -1,    -1,    -1,    -1,    -1,   337,    -1,    -1,  2947,
14702      341,    -1,    -1,    -1,    -1,  2793,  2794,  2795,    -1,   350,
14703     2798,    -1,    -1,    -1,   366,    -1,    24,   358,  2806,  2807,
14704     2808,  2809,    30,    -1,    -1,   366,  2814,    -1,    -1,   371,
14705       -1,  2819,  2820,    -1,  2822,    43,  2824,   378,    -1,    -1,
14706       -1,    -1,    -1,    -1,    -1,    -1,   387,  2835,  2836,    -1,
14707      391,  2839,    -1,    -1,    -1,    -1,    -1,    -1,   681,    -1,
14708       -1,    -1,    -1,    -1,    72,    -1,    -1,    -1,    -1,   410,
14709       -1,  2859,    -1,  2861,    -1,  2863,    -1,    -1,    -1,    -1,
14710       -1,    -1,   434,    -1,   707,    -1,    -1,    -1,    -1,    -1,
14711       -1,    -1,    -1,    -1,    -1,  2883,    -1,    -1,    -1,    -1,
14712       -1,    -1,    -1,    -1,   445,    -1,  2894,    -1,   449,    -1,
14713       -1,    -1,    -1,    -1,  2902,    -1,   124,    -1,   126,    -1,
14714       -1,    -1,    -1,    -1,    -1,   133,    -1,  1931,   136,   471,
14715     2918,    -1,   474,   475,   476,    -1,   478,   479,   480,   481,
14716      482,   483,    -1,    -1,    -1,  2933,    -1,    -1,    -1,   491,
14717       -1,    -1,    -1,    -1,   162,    -1,    -1,    -1,    -1,  2947,
14718       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2956,    -1,
14719       -1,  2959,    -1,  2961,    -1,    -1,    -1,    -1,  2966,    -1,
14720       -1,    -1,    -1,  1987,    -1,    -1,    -1,    -1,   196,    -1,
14721       -1,  1147,    -1,  2981,  2982,    -1,    -1,    -1,    10,  2987,
14722       -1,    13,    -1,    -1,    -1,    17,    18,    19,    24,  1165,
14723       -1,    -1,    -1,    -1,    30,    -1,    -1,    -1,    -1,    -1,
14724     3008,    37,    34,  3011,    -1,    -1,    -1,  3015,    -1,    -1,
14725       42,    -1,    -1,    -1,    -1,    -1,    -1,    49,    -1,    -1,
14726       56,    -1,    -1,    -1,    -1,  1201,  3034,    -1,    -1,    -1,
14727       -1,   259,    -1,    -1,    58,   263,    72,  1165,    -1,    -1,
14728     2064,    -1,    74,    -1,    -1,   273,    -1,    -1,    -1,    -1,
14729       -1,  3059,    -1,    -1,   282,  1231,    -1,    -1,    -1,    -1,
14730       -1,    -1,    -1,    -1,    -1,    -1,   294,    -1,    92,    -1,
14731      106,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14732       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3095,  3096,  3097,
14733      126,    -1,    -1,    -1,    -1,    -1,    -1,   133,    -1,    -1,
14734      136,    -1,    -1,    -1,    -1,   333,    -1,    -1,   336,   337,
14735       -1,  3119,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14736       -1,  3129,    -1,  3131,   967,    -1,   162,    -1,   152,    -1,
14737       -1,  3139,  1308,    -1,    -1,    -1,    -1,    -1,   366,    -1,
14738       -1,  1317,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   992,
14739     3158,    -1,    -1,   185,    -1,  1331,    -1,   193,   190,    -1,
14740      196,    -1,    -1,   187,  1007,    -1,    -1,    -1,    -1,    -1,
14741       -1,    -1,    -1,    -1,  1350,    -1,    -1,  1353,  1354,    -1,
14742      212,   213,  1358,  1359,    -1,    -1,    -1,    -1,    -1,    -1,
14743       -1,    -1,    58,    -1,    -1,   227,  1372,    -1,    -1,   223,
14744       -1,    -1,    -1,    -1,    -1,   241,   434,    -1,   244,    -1,
14745       -1,    -1,    -1,    -1,  3222,    -1,    -1,    -1,    -1,    -1,
14746       -1,    -1,    -1,   259,    -1,  1353,    92,   263,    -1,    -1,
14747     1358,  1359,    -1,    -1,   266,   259,  3244,   273,    -1,   263,
14748       -1,  3249,    -1,    -1,  1372,    -1,   282,  3255,   280,    -1,
14749       -1,   283,    -1,    -1,    -1,  3263,    -1,   293,   294,    -1,
14750       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14751      294,   295,    -1,    -1,    -1,    -1,    -1,   301,    -1,    -1,
14752       -1,    -1,    -1,  3291,  3292,    -1,   152,    -1,    -1,    -1,
14753     3298,    -1,  3300,    -1,    -1,    -1,    -1,   333,    -1,    -1,
14754      336,   337,   338,    -1,    -1,  3313,    -1,  3315,    -1,   333,
14755       -1,    -1,    -1,   337,    -1,    -1,    -1,   341,    -1,    -1,
14756       -1,   187,    -1,    -1,   360,    -1,   350,    -1,    -1,  3337,
14757      366,    -1,    -1,    -1,   358,    -1,    -1,  1465,    -1,   371,
14758       -1,    -1,   366,    -1,   380,    -1,    -1,  1475,    -1,    -1,
14759       -1,    -1,    -1,  3361,   378,    -1,    -1,   223,    -1,    -1,
14760       -1,    -1,    -1,   387,    -1,    -1,  1209,   391,    -1,    -1,
14761       -1,    -1,    -1,  3381,  3382,    -1,    -1,    -1,    -1,    -1,
14762       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3396,    -1,
14763       -1,  1519,  1520,    -1,    -1,    -1,    -1,   263,   434,    -1,
14764       -1,    -1,    -1,  1579,    -1,    -1,    -1,    -1,    -1,    -1,
14765     1586,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14766       -1,   445,    -1,    -1,    -1,    -1,    -1,    -1,  3436,   295,
14767       -1,    -1,    -1,    -1,  1562,   301,    -1,  1565,  1566,   471,
14768       -1,    -1,   474,   475,   476,    -1,   478,   479,   480,   481,
14769      482,   483,    -1,    -1,    -1,  3623,  3464,    -1,  3626,   491,
14770       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    24,    -1,
14771       -1,   337,    -1,   339,    30,   341,    -1,    -1,  3486,    -1,
14772        3,  3489,    -1,    -1,   350,    -1,    -1,    10,    -1,    -1,
14773       13,    -1,   358,    -1,    17,    18,    19,    -1,    -1,    -1,
14774      366,  3509,    -1,    -1,  3512,    -1,    -1,    -1,    -1,    -1,
14775     3518,    34,   378,    -1,    37,  3683,    72,    -1,  3526,    42,
14776     3528,   387,    -1,  3531,    -1,   391,    49,  3535,  3536,  3537,
14777     3538,  3539,    -1,    -1,  3542,  3543,  3544,  3545,  3546,  3547,
14778     3548,  3549,  3550,  3551,    -1,    -1,    -1,  3555,  3556,    -1,
14779       -1,    74,  3560,    -1,    -1,    -1,    -1,  3565,    -1,    -1,
14780     2584,  3569,    -1,  3571,    -1,  3573,    -1,    -1,    -1,    -1,
14781      126,    -1,    -1,  3581,    -1,    -1,  3584,   133,  3586,   445,
14782      136,    -1,    -1,    58,    -1,    -1,    -1,    -1,  3596,    -1,
14783     3598,    -1,    -1,  3601,  3602,    -1,    -1,    -1,  3606,  3607,
14784       -1,    -1,    -1,    -1,    -1,  3613,   162,    -1,    -1,    -1,
14785       -1,    -1,    -1,    -1,    -1,  3623,    -1,    92,  3626,  1747,
14786       -1,  1797,    -1,    -1,    -1,  1801,    -1,    -1,    -1,    10,
14787     3638,    -1,    13,    -1,    -1,    -1,    17,    18,    19,    -1,
14788      196,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14789     2674,    -1,    -1,    34,    -1,    -1,  3664,    -1,    -1,    -1,
14790       -1,    42,   185,  3671,    -1,    -1,    -1,   190,    49,    -1,
14791       24,    -1,    -1,    -1,    -1,  3683,    30,   152,    -1,    -1,
14792       -1,    -1,    -1,    -1,    -1,  1528,    -1,    -1,    -1,   212,
14793      213,    -1,    -1,    74,    -1,    -1,    -1,    -1,    -1,    -1,
14794       -1,    -1,    -1,   259,   227,    -1,  3714,   263,    -1,    -1,
14795       -1,    -1,   187,    -1,    -1,    -1,    -1,   273,    72,    -1,
14796       -1,    -1,    -1,    -1,    -1,    -1,   282,  1855,    -1,    -1,
14797       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1865,   294,  1867,
14798       -1,    -1,    -1,   266,    -1,  1873,    -1,    -1,   223,    -1,
14799       -1,    -1,  1880,    -1,    -1,    -1,  3764,   280,    -1,    -1,
14800      283,  3769,  3770,  3771,    -1,    -1,    -1,    -1,    -1,    -1,
14801       -1,  2795,   126,    -1,  3942,    -1,    -1,   333,    -1,   133,
14802      336,   337,   136,    -1,   259,    -1,  3794,  3795,   263,    -1,
14803       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    24,
14804       -1,    -1,    -1,    -1,   185,    30,  3814,    -1,   162,   190,
14805      366,    -1,    -1,    -1,    -1,  2839,    -1,    -1,    -1,   294,
14806      295,    -1,  3830,    -1,    -1,  3833,   301,    -1,    -1,    -1,
14807       -1,   212,   213,    -1,    -1,    -1,    -1,    -1,  2862,    -1,
14808       -1,  2017,   196,    -1,    -1,    -1,   227,    72,   371,    -1,
14809       -1,    -1,    -1,    -1,  2878,    -1,    -1,    -1,   333,    -1,
14810       -1,    -1,   337,    -1,    -1,    -1,   341,    -1,    -1,    -1,
14811     2894,    -1,    -1,    -1,    -1,   350,    -1,    -1,   434,    -1,
14812       -1,    -1,    -1,   358,    -1,   266,  2014,  2015,    -1,    -1,
14813       -1,   366,  3900,  2021,  2022,    -1,    -1,  1740,    -1,   280,
14814       -1,   126,   283,   378,    -1,   259,    -1,    -1,   133,   263,
14815       -1,   136,   387,    -1,  1757,    -1,   391,  3925,  3926,   273,
14816       -1,  3929,  2050,  2947,    -1,    -1,    -1,  3935,   282,    -1,
14817       -1,    -1,  1775,  2109,  3942,    -1,    -1,   162,    -1,    -1,
14818      294,    -1,    -1,    -1,    -1,    -1,  3954,    -1,   471,    -1,
14819       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
14820      483,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3977,
14821      445,   196,    -1,  3981,  3982,  3983,    -1,    -1,    -1,   333,
14822       -1,    -1,   336,   337,    -1,    -1,    -1,    -1,  1831,    -1,
14823      371,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14824       -1,  1844,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4177,
14825       -1,    -1,   366,  4181,  1857,    -1,    -1,    -1,    -1,    -1,
14826       -1,    -1,    -1,    -1,    -1,    -1,  1869,    -1,  4036,    -1,
14827       -1,  2159,  2160,    -1,   259,    -1,    -1,    -1,   263,  4047,
14828       -1,    -1,    -1,    -1,  2220,    -1,    -1,    -1,   273,    -1,
14829       -1,    -1,    -1,    -1,    -1,    -1,    -1,   282,    -1,    -1,
14830       -1,    -1,    -1,    -1,  4072,    -1,    -1,    -1,    -1,   294,
14831     1913,  1914,    -1,    -1,    -1,    -1,  4084,    -1,    -1,    -1,
14832      434,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14833      471,    -1,  2220,   474,   475,   476,    -1,   478,   479,   480,
14834      481,   482,   483,    -1,    -1,    -1,  4114,   488,   333,  4117,
14835       -1,   336,   337,    -1,  2290,    -1,    -1,  4125,  4126,    -1,
14836     4128,    -1,    -1,    -1,  4132,  4133,    -1,    -1,    -1,  4137,
14837     4138,    -1,    -1,    -1,    -1,  4143,    -1,    -1,  4146,  4147,
14838       -1,   366,    -1,  4151,    -1,    -1,    -1,    -1,    -1,  4157,
14839       -1,    -1,    24,    -1,    24,    -1,    -1,    -1,    30,    -1,
14840       30,  4169,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4177,
14841       -1,    43,    -1,  4181,    -1,    -1,    -1,    -1,    -1,    -1,
14842       -1,    10,    -1,    -1,    13,    -1,    -1,  2315,    17,    18,
14843       19,    -1,    -1,  2369,    -1,    -1,    -1,    -1,    -1,    -1,
14844       72,    -1,    72,  4211,    -1,    34,    -1,    -1,    -1,   434,
14845     2386,  2054,    -1,    42,    -1,    -1,    -1,    -1,    -1,  4227,
14846       49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14847       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4245,    -1,    -1,
14848       -1,    -1,    -1,    -1,    -1,    74,    -1,    -1,    -1,    -1,
14849       -1,    -1,   124,  4421,   126,  4263,   126,    -1,    -1,    -1,
14850     4268,   133,    -1,   133,   136,    -1,   136,    -1,  2396,    -1,
14851       -1,    -1,    -1,    -1,  2450,    -1,  2404,    -1,  4286,  2407,
14852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14853      162,  2419,   162,    -1,    -1,  4303,    -1,    -1,    -1,    -1,
14854     4308,    -1,    -1,    -1,    -1,    -1,    -1,  4315,    -1,    -1,
14855     2486,    -1,    -1,  2489,    -1,  2491,    -1,    -1,    -1,  2495,
14856       -1,  2497,  2498,  4331,   196,    -1,   196,    -1,    -1,    -1,
14857     2506,  2507,  2508,    -1,    -1,    -1,    -1,  4345,    -1,    -1,
14858       -1,    10,    -1,  3367,    13,    -1,    -1,    -1,    17,    18,
14859       19,    -1,    -1,    -1,    -1,    -1,   185,    -1,    -1,    -1,
14860       -1,   190,    -1,    -1,    -1,    34,    -1,    -1,  4376,    -1,
14861     3394,    -1,    -1,    42,    -1,    -1,    -1,    -1,    -1,    -1,
14862       49,    -1,    -1,   212,   213,  2561,    -1,   259,    -1,   259,
14863       -1,   263,    -1,   263,    -1,    -1,    -1,  4405,   227,    -1,
14864       -1,   273,    -1,   273,    -1,    74,    -1,    -1,    -1,    -1,
14865      282,    -1,   282,  4421,  2257,    -1,    -1,  2593,    -1,    -1,
14866       -1,  3445,   294,    -1,   294,    -1,    -1,    -1,  2271,  2605,
14867       -1,    -1,    -1,    -1,  4602,    -1,  4444,   266,    -1,    -1,
14868       -1,  4609,    -1,  4451,    -1,    -1,  4614,    -1,    -1,  4617,
14869     4618,   280,    -1,    -1,   283,    -1,    -1,    -1,    -1,    -1,
14870       -1,   333,    -1,   333,   336,   337,   336,   337,    -1,  2312,
14871       -1,    -1,    -1,    -1,    -1,  4643,    -1,    -1,    -1,    -1,
14872       -1,    -1,    -1,    -1,    -1,  2661,    -1,    -1,  4496,    -1,
14873     4498,    -1,    -1,    -1,   366,    -1,   366,    -1,    -1,    -1,
14874     2628,  2629,    -1,    -1,    -1,    -1,  2634,    -1,    -1,    -1,
14875       -1,    -1,    -1,    -1,    -1,    -1,   185,    -1,    -1,    -1,
14876       -1,   190,    -1,    -1,    -1,    -1,    -1,  4535,  4696,    -1,
14877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14878       -1,    -1,   371,   212,   213,    -1,  4554,    -1,    -1,    -1,
14879     4558,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   227,    -1,
14880       -1,    -1,   434,    -1,   434,    -1,    -1,    -1,    -1,  2697,
14881       -1,    -1,  4740,    -1,    -1,  4583,  4584,    -1,    -1,  4587,
14882       -1,    -1,    -1,  3607,    -1,    -1,    -1,    -1,    -1,    -1,
14883       -1,    -1,    -1,    -1,  4602,    -1,    -1,   266,    -1,  3623,
14884       -1,  4609,  3626,    -1,    -1,    -1,  4614,    -1,    -1,  4617,
14885     4618,   280,    -1,    -1,   283,    -1,  4624,  4625,    -1,    -1,
14886       -1,    -1,    -1,    -1,  3648,    -1,    -1,    -1,    -1,  4637,
14887       -1,  4639,    -1,    -1,    -1,  4643,    -1,    -1,    -1,    -1,
14888       -1,  4809,   471,    -1,    -1,   474,   475,   476,    -1,   478,
14889      479,   480,   481,   482,   483,    -1,    -1,    -1,    -1,   488,
14890       -1,    -1,    -1,    -1,    -1,  4833,    10,    -1,    -1,    13,
14891       -1,    -1,  2515,    17,    18,    19,    -1,  4685,  4686,    -1,
14892       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4696,    -1,
14893       34,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,    -1,
14894       -1,    -1,   371,    -1,    -1,    49,    -1,    -1,    -1,    -1,
14895       -1,  4879,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14896       -1,    -1,    -1,    -1,    -1,    -1,  2902,  4735,    -1,    -1,
14897       74,    -1,  4740,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14898       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14899       -1,    10,    -1,    -1,    13,    -1,    -1,    -1,    17,    18,
14900       19,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14901       -1,    -1,  2900,    -1,  2902,    34,    -1,    -1,    -1,    -1,
14902       -1,    -1,    -1,    42,    -1,    -1,    -1,    -1,    -1,    -1,
14903       49,    -1,    -1,    -1,    -1,    -1,    -1,  2925,  2926,    -1,
14904       -1,  4809,   471,  4811,    -1,   474,   475,   476,    -1,   478,
14905      479,   480,   481,   482,   483,    74,    -1,    -1,    -1,   488,
14906       -1,    -1,    -1,    -1,  4992,  4833,    -1,  4835,    -1,    -1,
14907       -1,    -1,    -1,    -1,    -1,  3011,    -1,  4845,  4846,    -1,
14908     4848,   185,  4850,    -1,    -1,    -1,   190,    -1,    10,  5017,
14909       -1,    13,    -1,    -1,    -1,    17,    18,    19,    -1,    -1,
14910       -1,  4869,    -1,    -1,    -1,    -1,    -1,  4875,   212,   213,
14911       -1,  4879,    34,    -1,    -1,    -1,    -1,  4885,  2721,    -1,
14912       42,  4889,    -1,   227,    -1,    -1,    -1,    49,    -1,    -1,
14913       -1,    -1,    -1,    -1,    -1,  2738,    -1,    -1,    -1,    -1,
14914       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14915     2753,    -1,    74,  5081,    -1,  4923,    -1,    -1,  3942,    -1,
14916       -1,    -1,   266,    -1,  4932,  3101,   185,    -1,    -1,  4937,
14917     4938,   190,    -1,    -1,  4942,    -1,   280,    -1,    -1,  4947,
14918     4948,  4949,    -1,    -1,    -1,    -1,  3970,    -1,    -1,    -1,
14919       -1,    -1,    -1,   212,   213,  4963,    -1,    -1,    -1,    -1,
14920       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   227,    -1,
14921       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4985,    -1,    -1,
14922     3156,    -1,    -1,    -1,  4992,    -1,    -1,    -1,    -1,    -1,
14923       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14924       -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,  5017,
14925       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14926       -1,   280,    -1,   185,   283,    -1,    -1,   371,   190,    -1,
14927       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14928       -1,  5209,    -1,    -1,    -1,  5053,  5054,    -1,  3224,    -1,
14929      212,   213,    -1,  5221,    -1,    -1,    -1,    -1,    -1,    -1,
14930       -1,    -1,    -1,    -1,    -1,   227,    -1,    -1,    -1,    -1,
14931     5078,    -1,    -1,  5081,    -1,    -1,  5084,    -1,    -1,    -1,
14932       -1,    -1,    -1,    -1,    -1,    -1,    -1,  5095,    -1,    -1,
14933       -1,  5099,  3268,  5101,    -1,  5103,    -1,    -1,    -1,    -1,
14934       -1,    -1,    -1,    -1,   266,    -1,  3282,  3283,    -1,    -1,
14935     5278,    -1,   371,    -1,    -1,  5123,  3292,    -1,   280,    -1,
14936       -1,   283,  3298,    -1,  3300,    -1,    -1,   471,    -1,    -1,
14937      474,   475,   476,    -1,   478,   479,   480,   481,   482,   483,
14938     5148,    -1,  5150,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14939       -1,    -1,    -1,  4177,    -1,    -1,    -1,  4181,    -1,    -1,
14940       -1,    -1,    -1,  5331,  3292,    -1,    -1,    -1,    -1,    -1,
14941     3346,    -1,  3015,    -1,    -1,    -1,    -1,    -1,    -1,  5347,
14942       -1,    -1,    -1,    -1,    -1,    -1,  5354,  5355,  3316,    -1,
14943       -1,  3034,  5200,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14944       -1,  5209,    -1,    -1,  3380,  3381,    -1,    -1,    -1,   371,
14945       -1,    -1,   471,  5221,    -1,   474,   475,   476,    -1,   478,
14946      479,   480,   481,   482,   483,    -1,    -1,    -1,    -1,   488,
14947       -1,    -1,    -1,  5241,  5242,  5243,    -1,    -1,    -1,    -1,
14948       -1,    -1,  5250,  5251,    -1,    -1,  5254,    -1,    -1,    -1,
14949       -1,    -1,  5260,    -1,    -1,    -1,  5424,  5265,    -1,    -1,
14950       -1,    -1,  5430,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14951     5278,    -1,    -1,    -1,    -1,    -1,    -1,  3405,    -1,    -1,
14952       -1,    -1,    -1,  5291,    -1,     8,  3129,    -1,  3131,    -1,
14953       -1,    14,    15,    -1,    -1,    -1,    -1,    20,    -1,    22,
14954       -1,    -1,    -1,    -1,    -1,    28,    -1,    -1,    31,   471,
14955       -1,    -1,   474,   475,   476,    -1,   478,   479,   480,   481,
14956      482,   483,    -1,  5331,    -1,    -1,   488,    50,    51,  5337,
14957       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5347,
14958       -1,    10,    -1,    -1,    13,    -1,  5354,  5355,    17,    18,
14959       19,  5359,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14960       -1,  5369,    -1,    -1,  5532,    34,    -1,    -1,  3496,    -1,
14961       -1,    -1,    -1,    42,    -1,    -1,    -1,  5545,    -1,  3222,
14962       49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14963       -1,  5399,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5567,
14964     5568,    -1,    -1,    10,  3580,    74,    13,    -1,    -1,    -1,
14965       17,    18,    19,    -1,    -1,    -1,  5424,    -1,    -1,    -1,
14966     3263,    -1,  5430,    -1,    -1,    -1,    -1,    34,    -1,    -1,
14967       -1,    -1,    -1,    -1,    -1,    42,    -1,    -1,    -1,  4463,
14968       -1,    -1,    49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14969     5458,  5459,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14970     5468,    -1,    -1,    -1,    -1,  5473,    -1,    74,    -1,    -1,
14971       -1,    -1,    -1,    -1,  5482,    -1,   199,    -1,    -1,    24,
14972       -1,    -1,    -1,    -1,   207,    30,    -1,   210,  4512,  4513,
14973      213,   214,    -1,   216,    -1,   218,  5504,    -1,   221,    -1,
14974      223,    -1,    -1,    -1,    -1,    -1,  5514,    -1,    -1,    -1,
14975       -1,    -1,    -1,    -1,    -1,    -1,   185,    -1,  3361,    -1,
14976       -1,   190,    -1,    -1,  5532,    -1,    -1,    72,    -1,    -1,
14977       -1,    -1,    -1,    -1,    -1,    -1,    -1,  5545,    -1,  5547,
14978       -1,    -1,    -1,   212,   213,    -1,    -1,    -1,    -1,    -1,
14979       -1,    -1,    -1,  3396,    -1,    -1,    -1,  5565,   227,  5567,
14980     5568,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14981       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   185,    -1,
14982       -1,   126,    -1,   190,    -1,  4609,    -1,    -1,   133,    -1,
14983     4614,   136,    -1,  4617,  3770,    -1,    -1,   266,    -1,    -1,
14984       -1,    -1,    -1,    -1,    -1,   212,   213,    -1,    -1,    -1,
14985       -1,   280,    -1,    -1,   283,    -1,    -1,   162,    -1,  3795,
14986      227,    -1,    -1,    -1,    -1,    -1,    -1,  3803,    -1,    -1,
14987     3806,    -1,  3808,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14988       -1,    -1,  3770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14989       -1,   196,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
14990       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3795,    -1,  3512,
14991       -1,    -1,    -1,   280,  3802,  3851,   283,    -1,    -1,    -1,
14992       -1,    -1,    -1,    -1,    -1,  3813,    -1,    -1,    -1,    -1,
14993       -1,  3867,  3535,    -1,    -1,  3871,  3872,    -1,  3874,    -1,
14994       -1,    -1,   371,    10,    -1,    -1,    13,    -1,    -1,    -1,
14995       17,    18,    19,    -1,   259,    -1,    -1,  3560,   263,    -1,
14996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    34,   273,    -1,
14997       -1,    -1,    -1,    -1,    -1,    42,    -1,   282,    -1,    -1,
14998       -1,    -1,    49,  4767,    -1,    -1,    -1,    -1,    -1,   294,
14999       -1,    -1,    -1,  3596,    -1,    -1,    -1,    -1,    -1,    -1,
15000     3888,  3889,    -1,    -1,   371,    10,    -1,    74,    13,    -1,
15001       -1,    -1,    17,    18,    19,    -1,    -1,    -1,    -1,    -1,
15002       -1,  4805,    -1,    -1,    -1,    -1,    -1,    -1,   333,    34,
15003       -1,   336,   337,    -1,    -1,    -1,    -1,    42,  3974,    -1,
15004       -1,  3977,   471,    -1,    49,   474,   475,   476,    -1,   478,
15005      479,   480,   481,   482,   483,    -1,    -1,    -1,    -1,   488,
15006       -1,   366,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    74,
15007       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15008       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3977,
15009       -1,    -1,    -1,    -1,    -1,  4879,    -1,    -1,    -1,    -1,
15010       -1,    -1,    -1,    -1,   471,  4889,    -1,   474,   475,   476,
15011       -1,   478,   479,   480,   481,   482,   483,    -1,   185,    -1,
15012       -1,   488,    -1,   190,    -1,    -1,  4062,  4063,  4064,   434,
15013     4066,  4067,  4068,  4069,  4070,    -1,    -1,    -1,    -1,    -1,
15014       -1,    -1,    -1,    -1,    -1,   212,   213,    -1,    -1,    -1,
15015      633,    -1,    -1,    -1,    -1,    -1,  4044,   640,   641,    -1,
15016      227,   644,    -1,   646,   647,    -1,    -1,    -1,   651,    -1,
15017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   662,
15018      185,    -1,    -1,    -1,    -1,   190,    -1,    -1,    -1,    -1,
15019       -1,    -1,    -1,    10,    -1,    -1,    13,    -1,    -1,   266,
15020       17,    18,    19,    -1,    -1,    -1,    -1,   212,   213,    -1,
15021       -1,    -1,    -1,   280,    22,    -1,   283,    -1,   701,    27,
15022      703,    -1,   227,    -1,    -1,    42,    -1,    -1,    -1,    -1,
15023      713,    -1,    49,  5017,    -1,    -1,    -1,    -1,    -1,    -1,
15024       -1,    -1,    -1,  5027,    -1,    -1,    -1,    -1,    -1,    -1,
15025       -1,    -1,    -1,    -1,    62,    -1,    -1,    74,    -1,    -1,
15026       -1,   266,  4198,   746,  4200,    -1,    -1,    75,    -1,    -1,
15027       -1,    -1,    -1,    -1,    -1,   280,    -1,    -1,   283,    -1,
15028       -1,    -1,    90,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15029       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15030      108,    -1,    -1,    -1,   371,    -1,    -1,    -1,    -1,    -1,
15031       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15032       -1,    -1,    -1,   131,    -1,    -1,  3929,    -1,    -1,    -1,
15033       -1,    -1,    -1,    -1,   142,    -1,    -1,    -1,    -1,    -1,
15034       -1,    -1,    -1,   151,    -1,    -1,    -1,    -1,    -1,    -1,
15035       -1,   834,    -1,    -1,    -1,   163,    -1,    -1,    -1,    -1,
15036      168,    -1,    -1,    -1,    -1,    -1,   371,   175,   185,    -1,
15037       -1,    -1,    -1,   190,    -1,    -1,    -1,    -1,    -1,    -1,
15038       -1,    -1,  4270,    -1,    -1,    -1,   194,   870,  4276,    -1,
15039       -1,    -1,  4280,    -1,    -1,   212,   213,    -1,    -1,    -1,
15040       -1,    -1,    -1,    -1,   471,    -1,    -1,   474,   475,   476,
15041      227,   478,   479,   480,   481,   482,   483,    -1,  4306,  4307,
15042       -1,   488,    -1,  4311,  4312,    -1,    -1,    -1,    -1,    -1,
15043       -1,    -1,   240,    -1,    -1,    -1,    -1,    -1,  4374,  4375,
15044       -1,    -1,    -1,    -1,    -1,    -1,  5230,    -1,    -1,   266,
15045       -1,  4387,    -1,  4389,  4390,    -1,    -1,  4393,    -1,    -1,
15046      943,    -1,    -1,   280,    -1,    -1,   471,    -1,    -1,   474,
15047      475,   476,   280,   478,   479,   480,   481,   482,   483,    -1,
15048       -1,   964,    -1,   488,    -1,   293,    -1,    -1,    -1,    -1,
15049       -1,    -1,    -1,   976,    -1,    -1,   304,    -1,   981,    -1,
15050       -1,    -1,    -1,    -1,    -1,    -1,   314,   315,   991,    -1,
15051      318,    -1,    -1,   996,    -1,    -1,    -1,    -1,    24,    -1,
15052       -1,  4457,  1005,    -1,    30,    -1,    -1,  1010,    -1,    -1,
15053     1013,    -1,    -1,    -1,    -1,  4138,   344,    -1,    -1,   347,
15054       -1,  5325,    -1,   351,    -1,   353,    -1,    -1,    -1,    -1,
15055       -1,    -1,   360,    -1,   371,   363,    -1,    -1,    -1,  4495,
15056       -1,    -1,    -1,    -1,    -1,    -1,    72,    -1,    -1,  5353,
15057       -1,    -1,  1055,    -1,   382,    -1,    -1,    -1,    -1,    -1,
15058       -1,   389,    -1,    -1,    -1,    -1,    -1,   395,    -1,    -1,
15059      398,    -1,    -1,    -1,   402,    -1,    -1,    -1,    -1,    -1,
15060       -1,    -1,   410,    -1,   412,  4541,    -1,    -1,    -1,   417,
15061       -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,   194,    -1,
15062      126,   197,   430,   201,   202,    -1,    -1,   133,    -1,    -1,
15063      136,   209,    -1,   211,   212,   443,    -1,    -1,    -1,    -1,
15064       -1,   217,  4245,    -1,    -1,    -1,    -1,   225,   224,  5433,
15065       -1,    -1,     0,    -1,   471,    -1,   162,   474,   475,   476,
15066       -1,   478,   479,   480,   481,   482,   483,    -1,    -1,    -1,
15067       -1,    -1,    20,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15068       -1,    -1,    30,  4286,    32,    33,    -1,    -1,    -1,  1172,
15069      196,  1174,    -1,  1176,    -1,  1178,    -1,  1180,  1181,  1182,
15070       48,    -1,    -1,    -1,  1187,  4308,    -1,    -1,    -1,    57,
15071       -1,    -1,    -1,    -1,    -1,  1198,    -1,    -1,    -1,    -1,
15072       -1,    69,    -1,    71,    72,    -1,    -1,    -1,    -1,    -1,
15073       78,    -1,    80,    -1,    -1,  1218,    -1,    -1,    -1,    -1,
15074       -1,    -1,    -1,    91,    -1,    93,    -1,    -1,    -1,  4685,
15075       -1,  5535,    -1,   259,    -1,    -1,    -1,   263,    -1,    -1,
15076       -1,    -1,   110,    -1,    -1,   113,    -1,   273,    -1,    -1,
15077       -1,    -1,    -1,  4376,    -1,    -1,   282,    -1,    -1,   127,
15078       -1,   129,    -1,    -1,    -1,   133,    -1,    -1,   294,    -1,
15079       -1,   139,    -1,    -1,  4730,    -1,    -1,  4685,    -1,   147,
15080       -1,   149,    -1,  4739,    -1,    -1,    -1,    -1,   156,    -1,
15081       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15082       -1,    -1,    -1,    -1,   172,    -1,    -1,   333,    -1,    -1,
15083      336,   337,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,
15084       -1,   189,    13,    -1,    -1,    -1,    17,    18,    19,    -1,
15085       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15086      366,    -1,    24,    34,    -1,    -1,    -1,    -1,    30,    -1,
15087       -1,    42,    -1,    -1,    -1,    -1,    -1,    10,    49,    -1,
15088       13,   229,   230,    -1,    17,    18,    19,   235,    -1,    -1,
15089       -1,    -1,    -1,    -1,    -1,  4498,  1379,    -1,    -1,   247,
15090       -1,    34,    -1,    74,    -1,    -1,    -1,    -1,    -1,    42,
15091       72,    -1,    -1,    -1,    -1,    -1,    49,   265,    -1,    -1,
15092       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   434,    -1,
15093       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15094       -1,    74,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15095       -1,    -1,    -1,   301,    -1,  4558,    -1,    -1,    -1,    -1,
15096       -1,   309,    -1,    -1,   126,    -1,    -1,    -1,    -1,    -1,
15097       -1,   133,    -1,    -1,   136,   323,    -1,    -1,  1461,    -1,
15098       -1,   329,   330,    -1,   332,    -1,    -1,    -1,    -1,   337,
15099       -1,    -1,    -1,    -1,   342,    -1,    -1,   345,    -1,    -1,
15100      162,    -1,    -1,    -1,   352,    -1,    -1,    -1,    -1,    -1,
15101      358,   359,    -1,    -1,   185,    -1,    -1,    -1,   366,   190,
15102       -1,    -1,   370,    -1,    -1,    -1,    -1,  4963,    -1,    -1,
15103       -1,  4967,   380,    -1,   196,    -1,    -1,    -1,    -1,    -1,
15104       -1,   212,   213,    -1,    -1,    -1,    -1,   395,    -1,   625,
15105     1533,   627,   185,    -1,    -1,   631,   227,   190,   636,    -1,
15106       -1,    -1,    -1,    -1,   642,    -1,    -1,   415,    -1,   645,
15107       -1,    -1,    -1,    -1,    -1,  4963,   652,   655,   426,   212,
15108      213,    -1,    -1,    -1,   432,    -1,    -1,    -1,    -1,   437,
15109       -1,    -1,    -1,   671,   227,   266,    -1,   259,    -1,    -1,
15110       -1,   263,   450,    -1,    -1,    -1,    -1,   685,   686,   280,
15111       -1,   273,   283,    -1,   692,    -1,   694,   695,    -1,    -1,
15112      282,    58,    -1,    -1,    -1,   473,    -1,    -1,    -1,    -1,
15113      708,    -1,   294,   266,    -1,    -1,    -1,    -1,    -1,   487,
15114      718,    -1,   490,    -1,    -1,    -1,    -1,   280,    -1,    -1,
15115      283,    -1,    -1,    -1,    -1,    92,    -1,    -1,    -1,    -1,
15116       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15117       -1,   333,    -1,    -1,   336,   337,    -1,    -1,    -1,    -1,
15118       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15119       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15120      371,    -1,    -1,    10,   366,    -1,    13,    -1,    -1,    -1,
15121       17,    18,    19,    -1,  5150,   152,    -1,    -1,  5154,    -1,
15122     5156,    -1,    -1,    -1,  5160,  5161,    -1,    34,    -1,   807,
15123       -1,    -1,    -1,    -1,    -1,    42,    -1,    -1,   371,    -1,
15124       -1,    -1,    49,  4846,    -1,    -1,    -1,    -1,    -1,    -1,
15125      187,    -1,  5140,   831,    -1,    -1,    -1,    -1,    -1,    -1,
15126       -1,    -1,    -1,    -1,    -1,    -1,   844,    74,    -1,    -1,
15127       -1,    -1,   434,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15128       -1,    -1,  4885,    -1,    -1,    -1,   223,    -1,    -1,    -1,
15129       -1,    -1,    -1,    -1,    -1,    -1,  1779,    -1,    -1,    -1,
15130      471,    -1,    -1,   474,   475,   476,    -1,   478,   479,   480,
15131      481,   482,   483,    -1,    -1,    -1,    -1,   488,    -1,    -1,
15132      896,   897,   259,    -1,    -1,    -1,   263,    -1,    -1,  4932,
15133       -1,    -1,    -1,    -1,  4937,  4938,    -1,    -1,   471,    -1,
15134       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15135      483,    -1,    -1,    -1,    -1,   488,    -1,   294,   295,    -1,
15136       -1,    -1,    -1,    -1,   301,    -1,    -1,    -1,    -1,    -1,
15137       -1,    -1,    -1,    -1,    -1,   953,    -1,    -1,   185,    -1,
15138       -1,    -1,    -1,   190,    -1,    -1,    -1,    -1,    -1,    -1,
15139       -1,    -1,    -1,   971,    -1,    -1,   333,    -1,    -1,   977,
15140      337,    -1,   980,    -1,   341,   212,   213,    -1,    -1,    -1,
15141       -1,    -1,    -1,   350,    -1,    -1,    -1,    -1,    -1,   995,
15142      227,   358,    -1,  1906,    -1,  1908,    -1,    -1,    -1,   366,
15143       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15144       -1,   378,  1925,    -1,  1927,    -1,    -1,    -1,  1024,  1025,
15145      387,  5054,    -1,    -1,   391,    -1,    -1,    -1,    -1,   266,
15146     1943,    -1,  1945,  5399,  1947,    -1,  1949,    -1,  1951,    -1,
15147       -1,    -1,  1955,   280,  1050,    -1,   283,    -1,    -1,    -1,
15148       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15149       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15150       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   445,    -1,
15151       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15152       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15153       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15154       -1,    -1,    -1,    -1,    -1,    -1,  5482,    -1,  1124,  1125,
15155       -1,  1129,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15156       -1,    -1,    -1,    -1,   371,    -1,    -1,    -1,    -1,  1147,
15157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15158       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1165,    -1,    -1,
15159       -1,    -1,    -1,    -1,  5482,    -1,    10,    -1,    -1,    13,
15160       -1,    -1,    -1,    17,    18,    19,    -1,    -1,    -1,    -1,
15161       -1,  5547,    -1,    -1,    -1,    -1,    -1,  1195,    -1,    -1,
15162       34,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    42,  5565,
15163       -1,    -1,    -1,  1211,    -1,    49,    -1,    -1,    -1,    -1,
15164       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1227,
15165       -1,  5254,    -1,  1231,    -1,    -1,    -1,    -1,    -1,  5547,
15166       74,    -1,    -1,    -1,   471,    -1,    -1,   474,   475,   476,
15167       -1,   478,   479,   480,   481,   482,   483,  5565,    -1,    -1,
15168       -1,   488,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15170       -1,    -1,  2185,  2186,    -1,    -1,    -1,    -1,    -1,    -1,
15171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15172       -1,  2204,  2205,    -1,    -1,    -1,  2209,  2210,    -1,    -1,
15173       -1,  2214,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15174       -1,    -1,    -1,    -1,    -1,  2228,    -1,    -1,    -1,    -1,
15175       -1,    -1,  2235,    -1,    -1,    -1,  2239,  2240,    -1,    -1,
15176     2243,  2244,    -1,    -1,    -1,    -1,    -1,  2250,    -1,    -1,
15177       -1,   185,  1350,    -1,    -1,    -1,   190,    -1,    -1,    -1,
15178     1358,  1359,  2265,    -1,  2267,    -1,    -1,    -1,    -1,    -1,
15179       -1,    -1,    -1,    -1,  1372,    -1,    -1,    -1,   212,   213,
15180       -1,    -1,  2285,    -1,    -1,    -1,    -1,  2290,    -1,    -1,
15181       -1,    -1,    -1,   227,    -1,    -1,    -1,    -1,    -1,    -1,
15182       -1,    -1,  2305,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15183       -1,  2314,    -1,    -1,  2317,    -1,  2319,  2320,  2321,    -1,
15184       -1,    -1,    -1,  2326,  2327,    -1,    -1,  1425,    -1,    -1,
15185       -1,    -1,   266,  2336,    -1,    -1,    -1,    -1,  2341,    -1,
15186       -1,    -1,  2345,    -1,    -1,    -1,   280,    -1,    -1,   283,
15187       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2362,
15188       -1,    -1,    -1,    -1,    -1,  2368,  2369,    -1,    -1,    -1,
15189       -1,    -1,  2375,    -1,    -1,    -1,    -1,    -1,    10,    -1,
15190       -1,    13,  2385,  2386,  1480,    17,    18,    19,  2391,    -1,
15191       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15192     2403,    -1,    34,  2406,    -1,    -1,    -1,    -1,  2411,  1505,
15193       42,    -1,    -1,    -1,  2417,  2418,    -1,    49,    -1,    -1,
15194     2423,    -1,    -1,  2426,    -1,    -1,    -1,  2430,  2431,  2432,
15195     2433,    -1,  2435,    -1,    -1,   202,    -1,   371,    -1,    -1,
15196       -1,    -1,    74,    -1,   211,  2448,  2449,    -1,  2451,    -1,
15197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   225,  2462,
15198     2463,  2464,    -1,    -1,    10,    -1,    -1,    13,    -1,    -1,
15199       -1,    17,    18,    19,    -1,    -1,    -1,    -1,    -1,    -1,
15200       -1,    -1,    -1,    -1,    -1,    -1,  1582,    -1,    34,    -1,
15201       -1,    -1,    -1,    -1,    -1,    -1,    42,    -1,    -1,    -1,
15202       -1,    -1,    -1,    49,    -1,    -1,    -1,    -1,    -1,    -1,
15203       -1,    -1,  1608,  1609,  1610,  1611,    -1,    -1,    -1,    -1,
15204       -1,    -1,  2525,    10,  1622,    -1,    13,    -1,    74,    -1,
15205       17,    18,    19,    -1,    -1,    -1,    -1,   471,    -1,    -1,
15206      474,   475,   476,    -1,   478,   479,   480,   481,   482,   483,
15207     2553,    -1,    -1,   185,   488,    42,    -1,    -1,   190,    -1,
15208       -1,    -1,    49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15209       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15210      212,   213,    -1,    -1,    -1,    -1,    -1,    74,    -1,    -1,
15211       -1,    -1,    -1,    -1,    -1,   227,    -1,    -1,    -1,    -1,
15212       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15213       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15214       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15215       -1,    -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,   185,
15216       -1,    -1,    -1,    -1,   190,    -1,    -1,    -1,   280,    -1,
15217       -1,   283,    -1,  1749,  1750,    -1,    -1,    -1,    -1,    -1,
15218       -1,    -1,    -1,    -1,    -1,    -1,   212,   213,    -1,    -1,
15219       -1,    -1,  1770,  1769,    -1,    -1,    -1,    -1,    -1,    -1,
15220       -1,   227,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15221       -1,    -1,    -1,    -1,    -1,    -1,  1794,    -1,   185,    -1,
15222       -1,    -1,    -1,   190,  1802,    -1,    -1,    -1,  1804,  1805,
15223     1806,  1807,    -1,    -1,    -1,    -1,  1814,    -1,    -1,    -1,
15224      266,    -1,    -1,    -1,    -1,   212,   213,    -1,    -1,    -1,
15225       -1,    -1,    -1,    -1,   280,    -1,    -1,   283,    -1,   371,
15226      227,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15227       -1,    -1,    -1,    -1,  2757,    -1,    -1,    -1,    -1,    -1,
15228       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15229       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
15230       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1886,  1887,
15231       -1,  1889,  1890,   280,    -1,    -1,    -1,    -1,    -1,    -1,
15232       -1,    -1,    -1,  1901,    -1,  1903,  1904,    -1,    -1,    -1,
15233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1916,  1917,
15234       -1,    -1,    -1,    -1,    -1,   371,  1922,    -1,    -1,    -1,
15235       -1,    -1,  1928,    -1,  1932,    -1,    -1,    -1,    -1,   471,
15236       -1,    -1,   474,   475,   476,    -1,   478,   479,   480,   481,
15237      482,   483,    -1,    -1,    -1,    -1,   488,    -1,    -1,    -1,
15238       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1966,   636,
15239       -1,  1969,  1970,    -1,    -1,   642,    -1,    -1,    -1,    -1,
15240       -1,    -1,    -1,    -1,   371,    -1,    -1,    -1,   655,    -1,
15241       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15242       -1,    -1,    -1,    -1,   671,    -1,    -1,    -1,    -1,    -1,
15243       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   686,
15244       -1,    -1,    -1,    -1,    -1,   471,    -1,   694,   474,   475,
15245      476,    -1,   478,   479,   480,   481,   482,   483,    -1,    -1,
15246       -1,   708,   488,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15247       -1,   718,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15248       -1,  2059,    -1,    -1,    -1,    -1,  2062,    -1,    -1,    -1,
15249       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15250       -1,    -1,    -1,    -1,   471,    -1,    -1,   474,   475,   476,
15251       -1,   478,   479,   480,   481,   482,   483,    -1,    -1,    -1,
15252       -1,    -1,    -1,    -1,    -1,    -1,  3009,    -1,    -1,    -1,
15253     3013,    -1,    -1,    -1,    -1,    -1,  3019,    -1,    -1,    -1,
15254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15255       -1,  2129,    -1,    -1,  3037,  3038,    -1,    -1,    -1,  3042,
15256      807,    -1,    -1,    -1,  3047,  3048,  3049,    -1,    -1,    -1,
15257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15258       -1,   203,    -1,    -1,   831,    -1,    -1,    -1,    -1,    -1,
15259       -1,    -1,    -1,   215,    -1,    -1,    -1,   844,    -1,    -1,
15260     3083,  3084,  3085,  3086,   226,    -1,  2184,    -1,    -1,    -1,
15261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15262       -1,    -1,    -1,    -1,  2202,    -1,    -1,    -1,    -1,  2207,
15263     2208,    -1,    -1,    -1,  2212,    -1,    -1,  3120,    -1,  3122,
15264     3123,  3124,  2220,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15266     2238,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,
15267       -1,    -1,    13,    -1,    -1,    -1,    17,    18,    19,  2255,
15268     2256,    -1,  2260,    -1,    -1,  2263,  2264,    -1,    -1,    -1,
15269     2266,    -1,  2268,    34,    -1,    -1,  2272,    -1,    -1,    -1,
15270       -1,    42,    -1,    -1,    -1,  2283,   953,    -1,    49,    -1,
15271       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15272       -1,    -1,    -1,    -1,    -1,  2303,  2304,    -1,    -1,    -1,
15273       -1,    -1,    -1,    74,    -1,    -1,    -1,    -1,    -1,    -1,
15274       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15275       -1,    -1,    -1,  3236,    -1,    -1,  2334,  2335,    -1,    -1,
15276     2338,    -1,  3245,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15277       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15278       -1,    -1,    -1,  2361,    -1,  2363,    -1,    -1,    -1,  2367,
15279       -1,    -1,    -1,  3276,    -1,    -1,  2374,    -1,    -1,    -1,
15280       -1,    -1,    -1,  2381,    -1,    -1,  2384,    -1,    -1,    -1,
15281       -1,    -1,  2390,    -1,    -1,    -1,  3299,    -1,    -1,    -1,
15282       -1,    -1,    -1,    -1,    -1,    -1,  2402,    -1,    -1,  2405,
15283       -1,    -1,  2410,    -1,    -1,    -1,    -1,    -1,  2416,    -1,
15284       -1,    -1,    -1,  2421,   185,    -1,  2424,    -1,    -1,   190,
15285       -1,    -1,    -1,    -1,    -1,    -1,  2434,    -1,    -1,    -1,
15286       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3351,  2447,
15287       -1,   212,   213,  3356,  2452,    -1,    -1,    -1,    -1,    -1,
15288     2458,    -1,  1129,    -1,    -1,    -1,   227,    -1,    -1,    -1,
15289       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15290     1147,    -1,    -1,    -1,    -1,    -1,    -1,  3390,    -1,    -1,
15291       -1,    -1,  2488,    -1,    -1,    -1,    -1,    -1,  1165,    -1,
15292     2496,    -1,    -1,  2499,    -1,   266,    -1,    -1,    -1,  2505,
15293       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   280,
15294     2516,    -1,   283,    -1,    -1,    -1,  2524,    -1,  1195,    -1,
15295     3433,    -1,  3435,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15296       -1,    -1,    -1,    -1,  1211,    -1,    -1,    -1,    -1,    -1,
15297       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15298     1227,  2557,    -1,    -1,  1231,    -1,    -1,    -1,    -1,    -1,
15299       -1,    -1,    -1,    -1,    -1,   617,    -1,    10,    -1,    -1,
15300       13,   623,  3485,    -1,    17,    18,    19,    -1,    -1,  2585,
15301       -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,    -1,
15302       13,    34,    -1,    -1,    17,    18,    19,  2605,    -1,    42,
15303      371,    -1,    -1,    -1,    -1,    10,    49,    -1,    13,    -1,
15304       -1,    34,    17,    18,    19,    -1,    -1,    -1,    -1,    42,
15305       -1,    -1,    -1,    -1,    -1,    -1,    49,    -1,    -1,    34,
15306       -1,    74,    -1,    -1,    -1,    -1,    -1,    42,  2644,    -1,
15307     2646,    -1,    -1,    -1,    49,    -1,    -1,    -1,    -1,    -1,
15308       -1,    74,    -1,  2661,    -1,    -1,    -1,    -1,    -1,    -1,
15309       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    74,
15310       -1,    -1,    -1,  1350,    -1,    -1,    -1,    -1,    -1,    -1,
15311       -1,  1358,  1359,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15312       -1,    -1,    -1,    -1,    -1,  1372,    -1,  2705,    -1,    -1,
15313      471,    -1,    -1,   474,   475,   476,    -1,   478,   479,   480,
15314      481,   482,   483,    -1,    -1,  2723,    -1,   488,    -1,    -1,
15315       -1,    -1,    -1,  2731,    -1,    -1,    -1,    -1,    -1,    -1,
15316       -1,    -1,    -1,  2741,    -1,    -1,  2744,    -1,    -1,  2747,
15317       -1,    -1,   185,    -1,    -1,    -1,    -1,   190,  1425,    -1,
15318     2756,    -1,   804,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15319       -1,    -1,   185,    -1,    -1,    -1,    -1,   190,    -1,   212,
15320      213,   823,    -1,    -1,    -1,    -1,    -1,  3690,    -1,  3692,
15321      185,    -1,    -1,    -1,   227,   190,  3699,    -1,    -1,   212,
15322      213,    -1,    -1,   845,    -1,    -1,    -1,    -1,    -1,    -1,
15323       -1,    -1,  3715,    -1,   227,    -1,  2814,   212,   213,    -1,
15324       -1,    -1,  2820,    -1,  3727,    -1,    -1,    -1,  3731,    -1,
15325       -1,    -1,   227,   266,    -1,    -1,    -1,    -1,    -1,    -1,
15326       -1,    -1,    -1,    -1,    -1,    -1,  3749,   280,    -1,   891,
15327      283,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
15328       -1,    -1,    -1,    -1,  3767,    -1,    -1,   280,    -1,  3772,
15329      283,   266,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15330       -1,    -1,    -1,    -1,    -1,   280,    -1,    -1,   283,    -1,
15331       -1,    -1,    -1,    -1,  3797,    -1,    -1,    -1,  3801,    -1,
15332       -1,    -1,    -1,    -1,  2902,    -1,  3809,  3810,  3811,  3812,
15333       -1,    -1,    -1,    -1,    -1,  3818,  3819,  3820,  3821,    -1,
15334       -1,    -1,  3825,  3826,    -1,    -1,    -1,    -1,  3831,  3832,
15335       -1,  3834,  3835,  3836,  3837,  3838,  3839,  3840,   371,    -1,
15336       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3850,    -1,    -1,
15337       -1,  3854,  3855,  3856,  3857,  1622,    -1,    -1,   371,    -1,
15338       -1,    -1,    10,    -1,    -1,    13,    -1,    -1,    -1,    17,
15339       18,    19,    -1,    -1,    -1,  1017,   371,  3880,    -1,    -1,
15340       -1,    -1,    -1,  2981,  2982,    -1,    34,    -1,    -1,    -1,
15341       -1,    -1,    -1,    -1,    42,    -1,  3899,    -1,    -1,    -1,
15342       -1,    49,    -1,    -1,  1046,  1047,  1048,    -1,    -1,    -1,
15343     3008,    -1,    -1,  3011,    -1,    -1,    -1,    -1,    -1,    -1,
15344       -1,    -1,    -1,    -1,    -1,  3021,    74,  3023,  3024,  3025,
15345       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   471,    -1,
15346       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15347      483,    -1,    -1,    -1,    -1,   488,    -1,    -1,   471,    -1,
15348       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15349      483,    -1,    -1,    -1,    -1,   488,   471,    -1,    -1,   474,
15350      475,   476,    -1,   478,   479,   480,   481,   482,   483,    -1,
15351       -1,    -1,    -1,   488,    -1,    -1,  3999,  3095,  3096,  3097,
15352       -1,    -1,    -1,  1770,    -1,    -1,    -1,    -1,    -1,    -1,
15353       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15354       -1,  3119,    -1,    -1,    -1,    -1,    -1,  1794,    -1,    -1,
15355       -1,    -1,    -1,    -1,    -1,  1802,    -1,   185,    -1,    -1,
15356       -1,  3139,   190,    -1,    -1,    -1,    -1,  1814,  4051,    -1,
15357       -1,    -1,  1194,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15358     3158,    -1,    -1,    -1,   212,   213,    -1,    -1,    -1,    -1,
15359       -1,    -1,    -1,    -1,    -1,  1217,    -1,    -1,    -1,   227,
15360       -1,    -1,    -1,    -1,  1226,    -1,    -1,    -1,    -1,    -1,
15361       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15362       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15363       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,    -1,
15364       -1,    -1,  1889,  1890,    -1,    -1,    -1,    -1,    -1,    -1,
15365       -1,    -1,   280,    -1,    -1,   283,  1903,    -1,    -1,    -1,
15366       -1,    -1,    -1,    -1,    -1,    -1,  3244,    -1,    -1,  1916,
15367     1917,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15368       -1,    -1,    -1,    -1,    -1,  1932,    -1,    -1,  3264,    -1,
15369       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15370       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15371       -1,    -1,    -1,  3291,    -1,    -1,    -1,    -1,    -1,    -1,
15372     3298,    -1,  3300,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15373       -1,    -1,    -1,    -1,    -1,  3313,    -1,  3315,    -1,    -1,
15374       -1,    -1,  1364,   371,    -1,    -1,    -1,    -1,    -1,    -1,
15375       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3337,
15376       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15377     4253,    -1,    -1,    -1,  4257,  4258,  4259,  4260,    -1,    -1,
15378       -1,  4264,    -1,    -1,    -1,    -1,    -1,    -1,  1410,    -1,
15379       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   681,
15380       -1,    -1,    -1,  3381,    -1,    -1,    -1,    -1,    -1,    -1,
15381       -1,    -1,  2059,    -1,    -1,  4298,  4299,  4300,  4301,  4302,
15382       -1,  4304,  4305,    -1,    -1,   707,    -1,    -1,    -1,    -1,
15383       -1,    -1,    -1,  4316,  4317,    -1,    -1,    -1,    -1,    -1,
15384       -1,    -1,    -1,   471,    -1,    -1,   474,   475,   476,    -1,
15385      478,   479,   480,   481,   482,   483,    -1,    -1,  3436,    -1,
15386      488,    -1,    -1,  4346,  3440,    -1,    -1,    -1,    -1,    -1,
15387       -1,  1493,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15388     1502,    -1,  2129,    -1,    -1,    -1,  3464,    -1,    -1,    -1,
15389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15390       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3486,    -1,
15391       -1,  3489,  1534,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15392       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15393       -1,    -1,    -1,    -1,    -1,  1557,    -1,  2184,  1560,    -1,
15394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15395       -1,    -1,    -1,    -1,    -1,  2202,    -1,    -1,    -1,    -1,
15396     2207,  2208,    -1,    -1,    -1,  2212,    -1,  4450,    -1,    -1,
15397       -1,    -1,    -1,  2220,    -1,    -1,    -1,    -1,    -1,    -1,
15398       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15399     1612,  2238,    -1,  3571,    -1,    -1,    -1,    -1,    -1,    -1,
15400       -1,    -1,    -1,    -1,  1626,    -1,    -1,    -1,    -1,    -1,
15401       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15402       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4510,    -1,    -1,
15403       -1,    -1,    -1,    -1,    -1,    -1,  2283,    -1,    -1,    -1,
15404       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15405       -1,    -1,    -1,    -1,    -1,    -1,  2303,  2304,    -1,    -1,
15406       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   951,
15407       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15408       -1,    -1,    -1,    -1,    -1,   967,    -1,  2334,  2335,    -1,
15409       -1,  2338,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15410       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15411      992,    -1,    -1,    -1,  2361,  1737,  2363,    -1,    -1,    -1,
15412     2367,    -1,    -1,    -1,    -1,  1007,    -1,  2374,  3704,  3705,
15413     3706,  3707,    -1,    -1,  2381,    -1,  3714,  2384,    -1,    -1,
15414       -1,    -1,    -1,  2390,    -1,    -1,    -1,    -1,    -1,    -1,
15415     4633,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15416       -1,    -1,    -1,  2410,    -1,    -1,  1788,    -1,    -1,  2416,
15417       -1,    -1,    -1,    -1,  2421,    -1,    -1,  2424,    -1,    -1,
15418       -1,    -1,    -1,    -1,    -1,    -1,  3764,  2434,    -1,    -1,
15419       -1,  3769,    -1,  3771,    -1,  1817,    -1,    -1,    -1,    -1,
15420     2447,    -1,  1824,    -1,  4687,  2452,    -1,    -1,    -1,    -1,
15421     1092,  2458,    -1,    -1,    -1,    -1,  3794,    -1,   801,   802,
15422       -1,    -1,    -1,  4706,    -1,    -1,    -1,    -1,  4711,  4712,
15423       -1,    -1,    -1,    -1,    -1,    -1,  3814,    -1,  4721,    -1,
15424       -1,    -1,    -1,    -1,    -1,  4728,    -1,    -1,    -1,    -1,
15425       -1,    -1,  3830,    -1,    -1,  3833,    -1,    -1,    -1,    -1,
15426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15427       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2524,    -1,    -1,
15428       -1,  4764,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15429       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15430       -1,  4784,    -1,  4786,    -1,    -1,    -1,  3883,  1930,    -1,
15431       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4801,  1941,
15432       -1,    -1,  3898,    -1,    -1,    -1,    -1,  1209,    -1,    -1,
15433       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4821,    -1,
15434       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3925,  3926,    -1,
15435     1972,  1973,    -1,    -1,    -1,    -1,  4839,  3935,  2605,    -1,
15436       -1,    -1,    -1,    10,    -1,    -1,    13,  1989,   951,   952,
15437       17,    18,    19,    -1,    -1,    -1,  3954,    -1,    -1,    -1,
15438       -1,    -1,    -1,    -1,    -1,    -1,    -1,    34,    -1,    -1,
15439       -1,    -1,    -1,    -1,    -1,    42,    -1,    -1,    -1,    -1,
15440       -1,    -1,    49,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15441       -1,    -1,    -1,    -1,  2661,    -1,    -1,    -1,    -1,    -1,
15442       -1,    -1,    -1,    -1,    -1,    -1,    -1,    74,    -1,    -1,
15443       -1,    -1,    -1,    -1,    -1,    -1,  4919,    -1,    -1,    -1,
15444       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4931,    -1,
15445       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2705,    -1,
15446       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2089,    -1,  4047,
15447       -1,    -1,    -1,    -1,    -1,    -1,  2723,  2099,    -1,    -1,
15448       -1,    -1,    -1,    -1,  2731,    -1,    -1,    -1,    -1,    -1,
15449       -1,    -1,    -1,    -1,    -1,    10,    -1,    -1,    13,    -1,
15450       -1,    -1,    17,    18,    19,    -1,  2128,    -1,    -1,    -1,
15451       -1,    -1,    -1,  4996,    -1,    -1,    -1,  2139,  2140,    34,
15452       -1,    -1,    -1,    38,    -1,    -1,    -1,    42,    -1,    -1,
15453       -1,    -1,    -1,    -1,    49,    -1,    -1,  1419,   185,    -1,
15454       -1,    -1,    -1,   190,    -1,    -1,    -1,    -1,    -1,    -1,
15455       -1,  2173,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    74,
15456       -1,    -1,    -1,    -1,    -1,   212,   213,  2814,    -1,    -1,
15457       -1,    -1,    -1,  2820,    -1,    -1,    -1,    -1,  5061,    -1,
15458      227,    -1,  5065,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15460       -1,    -1,    -1,    -1,    -1,  1487,    -1,    -1,   123,    -1,
15461       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   266,
15462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15463       -1,    -1,    -1,   280,    -1,    -1,   283,  5120,    -1,    -1,
15464       -1,    -1,    -1,    -1,    -1,    -1,  1528,    -1,    -1,    -1,
15465       -1,    -1,  5135,    -1,    -1,  2902,    -1,    -1,    -1,    -1,
15466     1243,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15467      185,    -1,    -1,    -1,    -1,   190,    -1,    -1,    -1,  1561,
15468       -1,    -1,    -1,    -1,    -1,  4263,    -1,    -1,    -1,    -1,
15469     4268,  1274,    -1,    -1,  2316,    -1,  5179,   212,   213,    -1,
15470       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2331,
15471       -1,  5194,   227,    -1,    -1,    -1,    -1,    -1,    -1,  1302,
15472     1303,  1304,    -1,  1306,   371,  4303,    -1,    -1,    -1,    -1,
15473     2352,    -1,    -1,    -1,  2981,  2982,    -1,  4315,    -1,    -1,
15474       -1,    -1,    -1,  1326,    -1,    -1,    -1,    -1,    -1,    -1,
15475       -1,   266,    -1,    -1,    -1,  1637,  1638,  1639,    -1,    -1,
15476       -1,  3008,    -1,    -1,  3011,   280,    -1,  4345,   283,    24,
15477       -1,    -1,    -1,    -1,    -1,    30,   681,    -1,    -1,    -1,
15478     4356,    -1,    37,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15479       -1,    -1,    -1,    -1,  5277,  4371,    -1,    -1,    -1,    -1,
15480       -1,    56,   707,    -1,    -1,    -1,  2428,  2429,    -1,    -1,
15481       -1,  1394,    -1,    -1,    -1,  1398,  1399,    72,    -1,    -1,
15482       -1,    -1,    -1,    -1,   471,    -1,    -1,   474,   475,   476,
15483       -1,   478,   479,   480,   481,   482,   483,    -1,  5321,   486,
15484       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3095,  3096,
15485     3097,   106,    -1,    -1,    -1,    -1,   371,    -1,  1740,    -1,
15486       -1,    -1,    -1,    -1,   681,    -1,  4444,    -1,    -1,    -1,
15487       -1,   126,  3119,    -1,    -1,  1757,    -1,    -1,   133,    -1,
15488       -1,   136,    -1,    -1,    -1,    -1,    -1,    -1,  4464,    -1,
15489      707,    -1,  3139,  1775,    -1,    -1,    -1,    -1,    -1,    -1,
15490       -1,    -1,    -1,    -1,    -1,    -1,    -1,   162,    -1,    -1,
15491       -1,  3158,    -1,  2535,    -1,    -1,   431,    -1,    -1,    -1,
15492       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5412,
15493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   193,    -1,
15494       -1,   196,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1831,
15495       -1,    -1,    -1,    -1,    -1,    -1,   471,  4535,    -1,   474,
15496      475,   476,  1844,   478,   479,   480,   481,   482,   483,    -1,
15497       -1,    -1,    -1,    -1,    -1,  1857,    -1,    -1,    -1,    -1,
15498       -1,    -1,    -1,    -1,    -1,    -1,   241,  1869,    -1,   244,
15499       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3244,    -1,    -1,
15500       -1,    -1,    -1,    -1,   259,    -1,    -1,    -1,   263,    -1,
15501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   273,    -1,
15502       -1,    -1,    -1,    -1,    -1,    -1,    -1,   282,    -1,    -1,
15503       -1,  1913,  1914,    -1,    -1,    -1,    -1,    -1,   293,   294,
15504       -1,    -1,    -1,    -1,  3291,    -1,    -1,    -1,    -1,    -1,
15505       -1,  3298,    -1,  3300,  1637,  1638,  1639,    -1,    -1,  4637,
15506       -1,  4639,   967,    -1,    -1,    -1,  3313,    -1,  3315,  4645,
15507       -1,  4647,    -1,    -1,    -1,    -1,    -1,    -1,   333,    -1,
15508       -1,   336,   337,   338,    -1,    -1,    -1,   992,    -1,    -1,
15509     3337,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15510       -1,    -1,  1007,    -1,    -1,   360,    -1,    -1,  4686,    -1,
15511       -1,   366,    -1,    -1,    -1,    -1,    -1,    -1,  4696,    -1,
15512       -1,    -1,    -1,    -1,    -1,   380,    -1,    -1,    -1,    -1,
15513       -1,    -1,    -1,    -1,  3381,    -1,    -1,    -1,    -1,    -1,
15514       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15515      967,    -1,    -1,    -1,    -1,    -1,    -1,  4735,    -1,    -1,
15516       -1,    -1,  4740,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15517       -1,    -1,  2054,    -1,    -1,   992,    -1,    -1,    -1,   434,
15518       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1092,    -1,  3436,
15519     1007,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15521     2092,    -1,    -1,    -1,    -1,    -1,    -1,  3464,    -1,    -1,
15522       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15523       -1,  4807,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3486,
15524       -1,    -1,  3489,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15525       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15526       -1,    -1,    -1,    -1,    -1,  2887,    -1,    -1,    -1,    -1,
15527       -1,    -1,    -1,    -1,    -1,  1092,    -1,    -1,    -1,    -1,
15528       -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,  2910,    13,
15529       -1,    -1,    -1,    17,    18,    19,    -1,    -1,    -1,    -1,
15530       -1,    -1,    -1,    -1,  1209,    -1,    -1,    -1,    -1,  2191,
15531       34,    -1,    -1,  2195,  2196,    -1,    -1,    -1,    42,    -1,
15532       -1,    -1,    -1,    -1,  3571,    49,    -1,    -1,    -1,    -1,
15533       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15534       -1,    -1,    -1,    -1,    -1,  4923,    -1,    -1,    -1,    -1,
15535       74,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,
15536       -1,    13,    -1,    -1,    -1,    17,    18,    19,    -1,    -1,
15537       -1,  4949,    -1,    -1,    -1,  2257,    -1,  4953,    -1,  4955,
15538       -1,    -1,    34,    -1,    -1,  4963,    -1,    -1,    -1,  2271,
15539       42,    -1,  1209,    -1,    -1,    -1,    -1,    49,    -1,    -1,
15540       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15542       -1,    -1,    74,    -1,    -1,    -1,    -1,    -1,  2011,    -1,
15543     2312,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15544     2023,    -1,  2025,    -1,  2027,    -1,    -1,  2030,  2031,  2032,
15545       -1,    -1,    -1,   681,  2037,    -1,    -1,  2040,    -1,    -1,
15546       -1,   185,    -1,    -1,    -1,    -1,   190,  3714,    -1,    -1,
15547       -1,    -1,  2055,  2056,  2057,  2058,    -1,    -1,    -1,   707,
15548     2063,    -1,    -1,    -1,  2067,    -1,    -1,  2070,   212,   213,
15549     2073,  2074,  2075,  2076,  2077,  2078,  2079,  2080,  2081,    -1,
15550     2083,    -1,    -1,   227,    -1,    -1,    -1,  2090,   160,  2092,
15551       -1,    -1,    -1,    -1,  1419,  3137,    -1,  3764,    -1,    -1,
15552       -1,    -1,  3769,    -1,  3771,    -1,    -1,    -1,    -1,    -1,
15553       -1,    -1,    -1,   185,    -1,    -1,  1353,    -1,   190,    -1,
15554       -1,    -1,   266,    -1,    -1,    -1,    -1,  3794,    -1,    -1,
15555       -1,    -1,  2135,    -1,    -1,    -1,   280,    -1,    -1,   283,
15556      212,   213,    -1,    -1,    -1,    -1,    -1,  3814,    -1,    -1,
15557     5148,    -1,  5150,    -1,    -1,   227,  2159,  2160,   302,    -1,
15558       -1,    -1,  1487,  3830,    -1,    -1,  3833,    -1,    -1,    -1,
15559       -1,    -1,    -1,    -1,    -1,    -1,  2478,    -1,    -1,    -1,
15560       -1,    -1,  1419,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15561       -1,    -1,    -1,  5189,   266,    -1,    -1,    -1,    -1,    -1,
15562       -1,    -1,    -1,  1528,    -1,    -1,    -1,    -1,   280,    -1,
15563       -1,   283,    -1,  2515,    -1,    -1,    -1,    -1,    -1,    -1,
15564       -1,    -1,    -1,    -1,    -1,    -1,    -1,   371,    -1,    -1,
15565       -1,    -1,    -1,    -1,   306,    -1,  1561,    10,  2241,    -1,
15566       13,    -1,    -1,    -1,    17,    18,    19,    -1,    -1,    -1,
15567     1487,    -1,    -1,  5251,    -1,    -1,    -1,    -1,  3925,  3926,
15568       -1,    34,  3304,  3305,  3306,    -1,    -1,  5265,  3935,    42,
15569       -1,    -1,    -1,    -1,    -1,    -1,    49,    -1,    -1,  3321,
15570     5278,    -1,    -1,    -1,    -1,    -1,    -1,  3954,    -1,    -1,
15571       -1,  1528,    -1,  5291,    -1,  2597,    -1,  5293,  2600,   371,
15572       -1,    74,  3344,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15573       -1,    -1,  3354,  3355,    -1,    -1,    -1,  3359,    -1,   967,
15574       -1,    -1,    -1,    -1,  1561,    -1,    -1,   471,    -1,    -1,
15575      474,   475,   476,    -1,   478,   479,   480,   481,   482,   483,
15576       -1,    -1,    -1,    -1,   992,    -1,    -1,    -1,    -1,    -1,
15577       -1,    -1,    -1,    -1,    -1,    -1,  5354,  5355,    -1,  1007,
15578       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15579       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15580     4047,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   161,    -1,
15581       -1,    -1,    -1,   166,    -1,    -1,    -1,  5393,    -1,   471,
15582       -1,  5399,   474,   475,   476,    -1,   478,   479,   480,   481,
15583      482,   483,   185,    -1,    -1,  1740,    -1,   190,    -1,  2721,
15584       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5425,
15585     5426,    -1,  1757,    -1,    -1,    -1,  2738,    -1,    -1,   212,
15586      213,    -1,  3484,    -1,  1092,  3487,    -1,    -1,    -1,    -1,
15587     1775,  2753,    -1,    -1,   227,    -1,    -1,    -1,    -1,    -1,
15588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15589       -1,    -1,    -1,  2476,  2477,  2478,    -1,    -1,    -1,  2482,
15590       -1,    -1,    -1,    -1,  5482,    -1,    -1,    -1,    -1,    -1,
15591       -1,    -1,    -1,   266,    -1,    -1,    -1,    -1,    -1,    -1,
15592       -1,    -1,    -1,  1740,    -1,    -1,  1831,   280,    -1,    -1,
15593      283,  2514,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1844,
15594     1757,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15595       -1,    -1,  1857,  5529,    -1,    -1,    -1,    -1,  1775,    -1,
15596       -1,    -1,    -1,    -1,  1869,    -1,    -1,    -1,    -1,  5547,
15597       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15598       -1,  1209,    -1,    -1,    -1,    -1,    -1,  5565,    -1,  5567,
15599     5568,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3620,  3621,
15600     3622,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1913,  1914,
15601       -1,    -1,    -1,    -1,  1831,    -1,  4263,    -1,   371,    -1,
15602       -1,  4268,    -1,    -1,    -1,    -1,    -1,  1844,    -1,    -1,
15603       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15604     1857,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15605       -1,    -1,  1869,    -1,    -1,    -1,  4303,    -1,    -1,    -1,
15606       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4315,    -1,
15607       -1,    -1,    -1,    -1,  2956,    -1,    -1,  2959,    -1,  2961,
15608       -1,    -1,    -1,    -1,  2966,    -1,    -1,    -1,    -1,    -1,
15609       -1,    -1,    -1,    -1,    -1,    -1,  1913,  1914,  4345,    -1,
15610       -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,    -1,
15611       13,    -1,    -1,    -1,    17,    18,    19,    -1,   471,    -1,
15612       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15613      483,    34,    -1,  3015,    -1,    -1,    -1,    -1,    -1,    42,
15614       -1,    -1,    -1,    -1,    -1,    -1,    49,   681,    -1,  2054,
15615       -1,    -1,  3034,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15616       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15617       -1,    74,    -1,   707,    -1,    -1,    -1,  3059,    -1,    -1,
15618       -1,  2764,    -1,    -1,    -1,    -1,  2769,    -1,    -1,    -1,
15619       -1,  1419,    -1,    -1,    -1,    -1,    -1,  4444,    -1,    -1,
15620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15621       -1,    -1,  2795,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15622       -1,    -1,    -1,  2806,    -1,  2808,  2809,    -1,    -1,    -1,
15623       -1,    -1,    -1,    -1,    -1,    -1,  2819,  2054,    -1,  2822,
15624       -1,  2824,    -1,    -1,    -1,    -1,    -1,  3129,    -1,  3131,
15625       -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,    -1,  1487,
15626       13,    -1,    -1,    -1,    17,    18,    19,    -1,    -1,    -1,
15627       -1,    -1,    -1,    -1,  3896,    -1,  2859,    -1,  2861,    -1,
15628     2863,    34,   185,    -1,    37,  3907,  2191,   190,  4535,    42,
15629     2195,  2196,    -1,    -1,    -1,    -1,    49,    -1,    -1,    -1,
15630     1528,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   212,
15631      213,    -1,    -1,    -1,    -1,    -1,  3938,    -1,    -1,    -1,
15632       -1,    74,    -1,    -1,   227,    -1,    -1,    -1,    -1,    10,
15633       -1,    -1,    13,  1561,    -1,  2918,    17,    18,    19,    -1,
15634     3222,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3971,
15635     2933,    -1,  2257,    34,    -1,    -1,    37,    -1,    -1,    -1,
15636       -1,    42,    -1,   266,    -1,    -1,  2271,  3249,    49,    -1,
15637       -1,    -1,    -1,  3255,  2191,    -1,    -1,   280,  2195,  2196,
15638      283,  3263,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15639     4637,    -1,  4639,    74,    -1,    -1,    -1,    -1,    -1,    -1,
15640     4022,    -1,    -1,    -1,  2987,   308,    -1,  2312,    -1,    -1,
15641     3292,    10,    -1,    -1,    13,    -1,    -1,    -1,    17,    18,
15642       19,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15643       -1,    -1,   185,   967,    -1,    34,    -1,   190,    -1,  4686,
15644     2257,    -1,    -1,    42,    -1,    -1,    -1,    -1,    -1,    -1,
15645       49,    -1,    -1,    -1,  2271,    -1,    -1,    -1,   992,   212,
15646      213,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   371,    -1,
15647       -1,    -1,    -1,  1007,   227,    74,    -1,    -1,    -1,  3361,
15648       -1,    -1,    -1,    -1,    -1,   388,    -1,    -1,  4735,    -1,
15649       -1,    -1,    -1,    -1,    -1,  2312,    -1,    -1,    -1,    -1,
15650     3382,    -1,    -1,    -1,   185,    -1,    -1,    -1,    -1,   190,
15651       -1,    -1,  1740,   266,  3396,    -1,    -1,    -1,    -1,    -1,
15652       -1,    -1,    -1,    -1,    -1,    -1,    -1,   280,    -1,  1757,
15653      283,   212,   213,    -1,    -1,    -1,  4158,  4159,  4160,  4161,
15654       -1,    -1,    -1,    -1,    -1,    -1,   227,  1775,    -1,    -1,
15655       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1092,    -1,
15656       -1,    -1,    -1,    -1,    -1,    -1,    -1,   166,   471,    -1,
15657       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15658      483,    -1,    -1,    -1,    -1,   266,   185,    -1,    -1,    -1,
15659       -1,   190,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   280,
15660       -1,    -1,   283,  1831,    -1,    -1,    -1,    -1,    -1,    -1,
15661     2515,    -1,    -1,   212,   213,    -1,  1844,    -1,   371,    -1,
15662       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   227,  1857,
15663     3512,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15664       -1,  1869,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15665       -1,    -1,    -1,  3535,    -1,    -1,    -1,    -1,    -1,    -1,
15666       -1,    -1,    -1,    -1,    -1,    -1,  3249,   266,    -1,    -1,
15667       -1,    -1,  3255,    -1,    -1,  1209,  4923,    -1,  3560,    -1,
15668       -1,   280,    -1,    -1,   283,  1913,  1914,    -1,    -1,    -1,
15669      371,    -1,  2597,    -1,    -1,  2600,    -1,    -1,  2515,    -1,
15670       -1,    -1,  4949,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15671       -1,    -1,    -1,    -1,  3596,    -1,  4963,    -1,   471,    -1,
15672       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
15673      483,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    10,
15674       -1,    -1,    13,    -1,    -1,    -1,    17,    18,    19,    -1,
15675       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15676       -1,    -1,    -1,    34,    -1,    -1,    37,    -1,    -1,    -1,
15677       -1,    42,   371,    -1,    -1,    -1,    -1,    -1,    49,    -1,
15678     2597,    -1,    -1,  2600,    -1,    -1,    -1,    -1,    -1,  3671,
15679      471,    -1,    -1,   474,   475,   476,    -1,   478,   479,   480,
15680      481,   482,   483,    74,    10,    -1,    -1,    13,    -1,    -1,
15681       -1,    17,    18,    19,    -1,    -1,  2721,    -1,    -1,    -1,
15682       -1,   681,    -1,    -1,    -1,    -1,  2054,    -1,    34,    -1,
15683       -1,    -1,    -1,  2738,    -1,    -1,    42,    -1,    -1,    -1,
15684       -1,    -1,    -1,    49,    -1,    -1,    -1,   707,  2753,    -1,
15685       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15686       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    74,    -1,
15687       -1,    -1,   471,    -1,    -1,   474,   475,   476,  4500,   478,
15688      479,   480,   481,   482,   483,  1419,    -1,    -1,  3770,    -1,
15689       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15690       -1,  5148,    -1,  5150,  2721,    -1,    -1,    -1,    -1,    -1,
15691       -1,    -1,    -1,  3795,   185,    -1,    -1,    -1,    -1,   190,
15692       -1,  2738,    -1,    -1,    -1,    -1,  3509,    -1,    -1,    -1,
15693       -1,    -1,    -1,    -1,    -1,  3518,  2753,    -1,    -1,    -1,
15694       -1,   212,   213,  3526,    -1,  3528,    -1,    -1,    -1,    -1,
15695       -1,    -1,    -1,  1487,    -1,    -1,   227,    -1,    -1,    -1,
15696       -1,    -1,    -1,  2191,    -1,    -1,    -1,  2195,  2196,    -1,
15697       -1,    -1,  3555,  3556,    -1,    -1,    -1,    -1,    -1,   185,
15698       -1,    -1,    -1,    -1,   190,    -1,    -1,    -1,    -1,    -1,
15699     3573,    -1,    -1,    -1,  1528,   266,    -1,    -1,  3581,    -1,
15700       -1,  3584,    -1,  3586,  5251,    -1,   212,   213,    -1,   280,
15701       -1,    -1,   283,    -1,    -1,  3598,    -1,    -1,  5265,    -1,
15702       -1,   227,    -1,  3606,  3607,    -1,    -1,  1561,    -1,  2257,
15703       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15704       -1,    -1,    -1,  2271,  5291,    -1,    -1,  3929,    -1,    -1,
15705       -1,  2956,    -1,    -1,  2959,  3638,  2961,    -1,    -1,    -1,
15706      266,  2966,    -1,    -1,    -1,    -1,    -1,   681,    -1,    -1,
15707       -1,    -1,    -1,    -1,   280,    -1,    -1,   283,    -1,    -1,
15708       -1,  3664,    -1,    -1,  2312,    -1,    -1,    -1,    -1,    -1,
15709       -1,    -1,    -1,   707,    -1,  3977,    -1,    -1,    -1,  3981,
15710      371,    -1,    -1,    -1,    -1,    -1,    -1,   967,    -1,    -1,
15711     3015,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15712       -1,  4743,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3034,
15713       -1,    -1,   992,    -1,    -1,    -1,  4758,    -1,    -1,  2956,
15714       -1,  4763,  2959,    -1,  2961,    -1,    -1,  1007,    -1,  2966,
15715       -1,    -1,  5399,    -1,  3059,    -1,    -1,    -1,    -1,    -1,
15716       -1,    -1,    -1,    -1,    -1,   371,    -1,  4789,    -1,    -1,
15717       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15718       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15719       -1,    -1,    -1,    -1,    -1,    -1,    -1,   403,  3015,    -1,
15720      471,    -1,    -1,   474,   475,   476,  1740,   478,   479,   480,
15721      481,   482,   483,    -1,    -1,    -1,    -1,  3034,    -1,    -1,
15722       -1,    -1,    -1,  1757,  3129,    -1,  3131,    -1,    -1,    -1,
15723       -1,    -1,  1092,    -1,    -1,  5482,    -1,    -1,    -1,    -1,
15724       -1,  1775,  3059,    -1,    -1,    -1,  4128,    -1,    -1,    -1,
15725       -1,    -1,    -1,    -1,    -1,    -1,  4138,    -1,    -1,    -1,
15726       -1,    -1,    -1,    -1,    -1,   471,    -1,    -1,   474,   475,
15727      476,    -1,   478,   479,   480,   481,   482,   483,    -1,    -1,
15728       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2515,    -1,    -1,
15729       -1,    -1,  4914,    -1,    -1,    -1,    -1,  1831,    -1,    -1,
15730     5547,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15731     1844,    -1,  3129,    -1,  3131,    -1,    -1,  3222,  5565,    -1,
15732       -1,    -1,    -1,  1857,    -1,    -1,    -1,    -1,    -1,    -1,
15733       -1,    -1,    -1,    -1,    -1,  1869,    -1,    -1,    -1,    -1,
15734       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1209,
15735       -1,    -1,    -1,   967,    -1,    -1,    -1,    -1,  3263,    -1,
15736       -1,    -1,    -1,  4245,    -1,    -1,    -1,    -1,    -1,  2597,
15737       -1,    -1,  2600,    -1,    -1,    -1,    -1,    -1,   992,  1913,
15738     1914,    -1,    -1,    -1,    -1,    -1,    -1,  3292,    -1,    -1,
15739       -1,    -1,  5014,  1007,    -1,    -1,    -1,    -1,    -1,  3982,
15740     3983,    -1,    -1,    -1,  4286,  3222,    -1,    -1,    -1,    -1,
15741       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15742       -1,    -1,    -1,    -1,    -1,    -1,  4308,    -1,    -1,    -1,
15743       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   681,    -1,
15744       -1,    -1,    -1,    -1,    -1,    -1,  3263,    -1,    -1,    -1,
15745       -1,    -1,    -1,  4036,    -1,    -1,  3361,    -1,    -1,    -1,
15746       -1,    -1,    -1,    -1,   707,    -1,    -1,    -1,    -1,    -1,
15747       -1,    -1,    -1,    -1,    -1,  3292,    -1,  3382,  1092,    -1,
15748       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4072,
15749       -1,  3396,    -1,  2721,  4376,    -1,    -1,    -1,    -1,    -1,
15750       -1,  4084,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15751     2738,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15752     2054,    -1,    -1,    -1,    -1,  2753,    -1,    -1,    -1,    -1,
15753       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15754       -1,    -1,  4125,  4126,  3361,    -1,    -1,    -1,    -1,  4132,
15755     4133,    -1,    -1,    -1,  4137,    -1,    -1,    -1,    -1,  1419,
15756     4143,    -1,    -1,  4146,  4147,  3382,    -1,    -1,  4151,    -1,
15757       -1,    -1,    -1,    -1,  4157,    -1,    -1,    -1,    -1,  3396,
15758       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15759       -1,    -1,    -1,    -1,    -1,  1209,    -1,    -1,    -1,    -1,
15760       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3512,    -1,    -1,
15761       -1,    -1,    -1,    -1,  4496,    -1,  4498,    -1,    -1,    -1,
15762       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1487,  4211,    -1,
15763     3535,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15764       -1,    -1,    -1,    -1,  4227,    -1,    -1,    -1,    -1,    -1,
15765       -1,    -1,    -1,    -1,    -1,  3560,    -1,  2191,    -1,    -1,
15766       -1,  2195,  2196,    -1,    -1,    -1,    10,    -1,  1528,    13,
15767       -1,    -1,    -1,    17,    18,    19,  4558,    -1,    -1,    -1,
15768       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15769       34,  3596,    -1,    37,    -1,  3512,    -1,    -1,    42,    -1,
15770       -1,  1561,    -1,    -1,    -1,    49,    -1,    -1,    -1,    -1,
15771       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3535,    -1,
15772       -1,    -1,    -1,  2257,   967,    -1,    -1,    -1,  2956,    -1,
15773       74,  2959,    -1,  2961,    -1,    -1,    -1,  2271,  2966,    -1,
15774       -1,    -1,    -1,  3560,    -1,    -1,    -1,    -1,  4331,   992,
15775       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15776       -1,    -1,    -1,    -1,  1007,    -1,  3671,    -1,    -1,    -1,
15777       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2312,  3596,
15778       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3015,    -1,    -1,
15779       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15780       -1,    -1,    -1,  4685,    -1,  1419,  3034,    -1,    -1,    -1,
15781       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15782       -1,    -1,  4405,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15783       -1,  3059,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15784       -1,   185,    -1,    -1,    -1,    -1,   190,    -1,    -1,  1092,
15785       -1,    -1,    -1,    -1,  3671,    -1,    -1,    -1,    -1,    -1,
15786       -1,    -1,    -1,    -1,    -1,  3770,    -1,    -1,   212,   213,
15787       -1,    -1,    -1,  1487,    -1,    -1,    -1,    -1,    -1,    -1,
15788     1740,    -1,    -1,   227,    -1,    10,    -1,    -1,    13,    -1,
15789     3795,    -1,    17,    18,    19,    -1,    -1,  1757,    -1,    -1,
15790       -1,  3129,    -1,  3131,    -1,    -1,    -1,    -1,    -1,    34,
15791       -1,    -1,    -1,    -1,  1528,  1775,    -1,    42,    -1,    -1,
15792       -1,    -1,   266,    -1,    49,    -1,    -1,    -1,    -1,  4811,
15793       -1,    -1,    -1,    -1,    -1,    -1,   280,    -1,    -1,   283,
15794       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1561,    -1,    74,
15795       -1,    -1,    -1,  3770,    -1,    -1,    -1,    -1,    -1,    -1,
15796       -1,    -1,    -1,    -1,  4846,    -1,  1209,    -1,    -1,    -1,
15797       -1,  1831,    -1,    -1,    -1,    -1,    -1,    -1,  3795,    -1,
15798       -1,  2515,    -1,    -1,  1844,    -1,    -1,    -1,    -1,    -1,
15799       -1,    -1,    -1,    -1,  3222,    -1,    -1,  1857,    -1,    -1,
15800     4583,  4584,    -1,  4885,  4587,    -1,    -1,    -1,    -1,  1869,
15801       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15802       -1,    -1,    -1,    -1,  3929,    -1,    -1,   371,    -1,    -1,
15803       -1,    -1,    -1,    -1,    -1,  3263,    -1,    -1,    -1,    -1,
15804       -1,  4624,  4625,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15805     4932,    -1,    -1,  1913,  1914,  4937,  4938,    -1,    -1,    -1,
15806      185,    -1,    -1,  2597,  3292,   190,  2600,    -1,    -1,    -1,
15807       -1,    -1,  3977,    -1,    -1,    -1,  3981,    -1,    -1,    -1,
15808       -1,    -1,    -1,    -1,    -1,    -1,    -1,   212,   213,    -1,
15809       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15810       -1,    -1,   227,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15811       -1,    -1,  3929,    -1,    -1,    -1,    22,    -1,    -1,    -1,
15812       -1,    27,    -1,    -1,    -1,    -1,  1740,   471,    -1,    -1,
15813      474,   475,   476,  3361,   478,   479,   480,   481,   482,   483,
15814       -1,   266,    -1,  1757,    -1,    -1,    -1,    -1,    -1,    -1,
15815       -1,    -1,    -1,    -1,  3382,   280,    62,    -1,   283,    -1,
15816     3977,  1775,    -1,    -1,  3981,    -1,    -1,    -1,  3396,    75,
15817       76,  5053,  5054,    -1,    -1,    -1,  1419,    -1,    -1,    -1,
15818       86,    -1,    -1,    -1,    90,    -1,    -1,  2721,    -1,    -1,
15819       -1,    -1,    -1,    -1,  2054,    -1,    -1,    -1,    -1,    -1,
15820       -1,    -1,   108,    -1,  2738,    -1,    -1,    -1,    -1,    -1,
15821       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1831,    -1,  2753,
15822       -1,    -1,    -1,  4128,    -1,   131,    -1,    -1,    -1,    -1,
15823     1844,    -1,    -1,  4138,    -1,    -1,   142,    -1,    -1,    -1,
15824       -1,    -1,    -1,  1857,  1487,   151,   371,    -1,    -1,    -1,
15825       -1,    -1,  4835,    -1,    -1,  1869,    -1,   163,    -1,    -1,
15826       -1,    -1,   168,    -1,    -1,  4848,    -1,    -1,    -1,    -1,
15827       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15828       -1,    -1,    -1,    -1,  3512,  1528,    -1,    -1,   194,    -1,
15829       -1,    -1,  4875,    -1,    -1,    -1,    -1,    -1,    -1,  1913,
15830     1914,    -1,    -1,    -1,    -1,    -1,  4889,  3535,    -1,    -1,
15831       -1,  4128,    -1,   219,    -1,    -1,    -1,    -1,  1561,    -1,
15832       -1,  4138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15833       -1,  2191,  3560,    -1,   240,  2195,  2196,    -1,    -1,    -1,
15834     4245,    -1,    -1,    -1,    -1,    -1,   471,    -1,    -1,   474,
15835      475,   476,    -1,   478,   479,   480,   481,   482,   483,  4942,
15836       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3596,    -1,
15837       -1,    -1,  5254,    -1,   280,    -1,    -1,    -1,    -1,    -1,
15838       -1,  4286,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15839       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2257,   304,    -1,
15840       -1,    -1,  4985,  4308,    -1,    -1,    -1,    -1,   314,   315,
15841       -1,  2271,   318,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15842       -1,    -1,  2956,    -1,    -1,  2959,    -1,  2961,  4245,    -1,
15843       -1,    -1,  2966,    -1,    -1,    -1,    -1,    -1,   344,    -1,
15844     2054,   347,    -1,  3671,    -1,   351,    -1,   353,    -1,    -1,
15845       -1,    -1,  2312,    -1,   360,    -1,    -1,   363,    -1,    -1,
15846       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4286,
15847       -1,  4376,    -1,    -1,    -1,    -1,   382,    -1,    -1,    -1,
15848       -1,  3015,    -1,   389,    -1,    -1,    -1,    -1,    -1,   395,
15849       -1,  4308,   398,    -1,    -1,    -1,   402,  1740,    -1,    -1,
15850     3034,    -1,    -1,    -1,   410,    -1,   412,    -1,    -1,    -1,
15851       -1,   417,    -1,    -1,  1757,    -1,    -1,    -1,    -1,    -1,
15852     5103,    -1,    -1,    -1,    -1,  3059,    -1,    -1,    -1,    -1,
15853       -1,    -1,  1775,    -1,    -1,    -1,    -1,   443,    -1,    -1,
15854     5123,    -1,  3770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15855       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4376,
15856       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3795,    -1,    -1,
15857       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2191,    -1,    -1,
15858       -1,  2195,  2196,    -1,    -1,    -1,    -1,    -1,  1831,    -1,
15859       -1,    -1,    -1,  4498,    -1,  3129,    -1,  3131,    -1,    -1,
15860       -1,  1844,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15861       -1,    -1,    -1,    -1,  1857,    -1,    -1,  5200,    -1,    -1,
15862       -1,    -1,    -1,    -1,    -1,    -1,  1869,    -1,    -1,    -1,
15863       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15864       -1,    -1,    -1,  2257,    -1,    -1,    -1,    -1,    -1,    -1,
15865       -1,    -1,    -1,  4558,    -1,  2515,    -1,  2271,  5241,  5242,
15866     5243,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15867     1913,  1914,    -1,    -1,    -1,    -1,    -1,  5260,    -1,    -1,
15868       -1,  4498,    -1,    -1,    -1,    -1,    -1,    -1,  3222,    -1,
15869       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2312,    -1,
15870       -1,  3929,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15871       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15872       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3263,
15873       -1,    -1,    -1,    -1,  1318,    -1,    -1,  2597,    -1,    -1,
15874     2600,  4558,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3977,
15875       -1,    -1,    -1,  3981,  5337,    -1,    -1,    -1,  3292,    -1,
15876       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15877       -1,    -1,    -1,    -1,    -1,    -1,  5359,    -1,    -1,    -1,
15878     4685,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15879       -1,    -1,  1376,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15880       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15881       -1,  2054,    -1,    22,    -1,    -1,    -1,    -1,    -1,    -1,
15882       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3361,    -1,    -1,
15883       39,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15884       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3382,    -1,
15885       -1,    -1,    -1,    62,    -1,    -1,    -1,    -1,    -1,    -1,
15886       -1,  2721,  3396,    -1,    -1,    -1,    75,    -1,  4685,    -1,
15887       -1,    -1,    -1,    -1,    -1,    -1,    -1,    86,  2738,    -1,
15888       -1,    90,    -1,    -1,    -1,  5468,    -1,    -1,    -1,    -1,
15889       -1,    -1,    -1,  2753,    -1,    -1,    -1,    -1,    -1,   108,
15890     4128,  2515,    -1,    -1,    -1,   114,  4811,    -1,    -1,    -1,
15891     4138,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15892       -1,  5504,   131,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15893       -1,  5514,    -1,   142,    -1,    -1,    -1,    -1,    -1,    -1,
15894       -1,  4846,   151,    -1,    -1,    -1,    -1,    -1,  2191,    -1,
15895       -1,    -1,  2195,  2196,   163,    -1,    -1,    -1,    -1,    -1,
15896       -1,    -1,   171,    -1,    -1,    -1,   175,    -1,    -1,    -1,
15897       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3512,    -1,
15898     4885,    -1,    -1,  2597,    -1,   194,  2600,    -1,    -1,    -1,
15899       -1,    -1,    -1,    -1,  4811,    -1,    -1,    -1,    -1,    -1,
15900       -1,  3535,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15901       -1,    -1,    -1,    -1,  2257,    -1,    -1,  4245,    -1,    -1,
15902       -1,    -1,   231,    -1,    -1,    -1,  3560,  4932,  2271,  4846,
15903       -1,   240,  4937,  4938,    -1,    -1,    -1,    -1,    -1,    -1,
15904       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15905       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4286,  1643,
15906       -1,    -1,  3596,  1647,    -1,    -1,    -1,    -1,  4885,  2312,
15907       -1,   280,    -1,    -1,   283,    -1,    -1,    -1,    -1,    -1,
15908     4308,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15909       -1,    -1,    -1,    -1,    -1,   304,  2956,    -1,    -1,  2959,
15910       -1,  2961,    -1,    -1,    -1,    -1,  2966,  2721,    -1,   318,
15911       -1,    -1,    -1,    -1,    -1,  4932,   325,    -1,    -1,    -1,
15912     4937,  4938,    -1,    -1,  2738,    -1,    -1,    -1,    -1,    -1,
15913       -1,    -1,    -1,    -1,    -1,   344,    -1,  3671,    -1,  2753,
15914       -1,    -1,    -1,    -1,   353,    -1,    -1,    -1,  4376,  5054,
15915       -1,   360,    -1,    -1,   363,  3015,    -1,    -1,    -1,    -1,
15916       -1,    -1,    -1,    -1,    27,    -1,    -1,    -1,    -1,    -1,
15917       -1,    -1,    -1,   382,  3034,    -1,    -1,    -1,    -1,    -1,
15918      389,    -1,    -1,    -1,    -1,    -1,   395,    -1,    -1,   398,
15919      399,    -1,   401,   402,    -1,    -1,    -1,    -1,    -1,  3059,
15920       -1,    -1,    -1,   412,    -1,    -1,    -1,    -1,   417,    -1,
15921       -1,    -1,    75,    -1,    -1,   424,    -1,    -1,   427,    -1,
15922       -1,   430,    -1,    -1,    -1,    -1,    -1,    90,    -1,    -1,
15923       -1,    -1,    -1,    -1,   443,    -1,  3770,  5054,    -1,    -1,
15924       -1,    -1,    -1,    -1,    -1,   108,    -1,    -1,    -1,    -1,
15925       -1,   114,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15926       -1,  3795,    -1,    -1,    -1,    -1,    -1,    -1,   131,  3129,
15927     4498,  3131,  2515,    -1,    -1,    -1,    -1,    -1,    -1,   142,
15928       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   151,    -1,
15929       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15930      163,    -1,    -1,    -1,    -1,   168,    -1,    -1,    -1,    -1,
15931       -1,    -1,   175,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15933     4558,   194,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15934       -1,    -1,  2956,    -1,    -1,  2959,    -1,  2961,    -1,  5254,
15935       -1,    -1,  2966,    -1,  2597,    -1,   219,  2600,    -1,    -1,
15936       -1,    -1,  3222,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15937       -1,    -1,    -1,    -1,    -1,    -1,    -1,   240,    -1,    -1,
15938       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15939       -1,    -1,    -1,    -1,    -1,  3929,    -1,    -1,    -1,    -1,
15940       -1,  3015,    -1,  3263,    -1,    -1,    -1,    -1,    -1,    -1,
15941       -1,    -1,    -1,    -1,    -1,    -1,    -1,   280,    -1,    -1,
15942     3034,    -1,    -1,    -1,    -1,  2009,    -1,    -1,    -1,    -1,
15943       -1,    -1,  3292,    -1,    -1,    -1,    -1,  5254,    -1,    -1,
15944     2024,   304,    -1,  3977,  2028,  3059,    -1,  3981,    -1,    -1,
15945       -1,   314,   315,    -1,    -1,   318,    -1,  4685,  2042,  2043,
15946     2044,    -1,  2046,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15947       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2721,    -1,
15948       -1,   344,    -1,    -1,   347,    -1,    -1,    -1,   351,    -1,
15949      353,    -1,    -1,    -1,    -1,  2738,    -1,   360,    -1,    -1,
15950      363,  3361,    -1,    -1,  2088,    -1,    -1,    -1,    -1,    -1,
15951     2753,    -1,    -1,    -1,    -1,  3129,    -1,  3131,    -1,   382,
15952       -1,    -1,  3382,    -1,    -1,    -1,   389,    -1,    -1,    -1,
15953       -1,   394,   395,    -1,    -1,   398,  3396,    -1,    -1,   402,
15954       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   412,
15955       -1,    -1,    -1,    -1,   417,    -1,    -1,    -1,    -1,    -1,
15956       -1,    -1,  2146,    -1,    -1,    -1,    -1,   430,    -1,    -1,
15957       -1,    -1,    -1,    -1,  2158,    -1,    -1,    -1,    -1,  2163,
15958      443,    -1,    -1,  4811,    -1,    -1,    -1,    -1,    -1,    -1,
15959       -1,    -1,    -1,    -1,  4128,    -1,    -1,    -1,    -1,    -1,
15960       -1,    -1,    -1,    -1,  4138,    -1,    -1,    -1,  3222,    -1,
15961       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4846,    -1,
15962       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15963       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15964       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3263,
15965       -1,    -1,  3512,    -1,    -1,    -1,    -1,  4885,    -1,    -1,
15966       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15967       -1,    -1,    -1,    -1,    -1,  3535,    -1,    -1,  3292,    -1,
15968       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15969       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15970     3560,    -1,    -1,    -1,  4932,    -1,    -1,    -1,    -1,  4937,
15971     4938,  4245,    -1,  2956,    -1,    -1,  2959,    -1,  2961,    -1,
15972       -1,    -1,    -1,  2966,    -1,    -1,    -1,    -1,    -1,    -1,
15973       -1,    -1,    -1,    -1,    -1,    -1,  3596,    -1,    -1,    -1,
15974       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3361,    -1,    -1,
15975       -1,    -1,  4286,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15976       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3382,    -1,
15977       -1,    -1,  3015,    -1,  4308,    -1,    -1,    -1,    -1,    -1,
15978       -1,    -1,  3396,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15979       -1,  3034,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15981       -1,  3671,    -1,    -1,    -1,    -1,  3059,    -1,    -1,    -1,
15982       -1,    -1,    -1,    -1,    -1,    -1,  5054,    -1,    -1,    -1,
15983       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15984       -1,    -1,  4376,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15985       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15986       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15987       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15988       -1,    -1,    -1,    -1,    -1,    -1,  3129,    -1,  3131,    -1,
15989       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3512,    -1,
15990       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15991     3770,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15992       -1,  3535,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15993       -1,    -1,    -1,    -1,    -1,  3795,    -1,    -1,    -1,    -1,
15994       -1,    -1,    -1,    -1,    -1,    -1,  3560,    -1,    -1,    -1,
15995       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15996       -1,    -1,    -1,    -1,  4498,    -1,    -1,    -1,    -1,    -1,
15997       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3222,
15998       -1,    -1,  3596,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15999       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16002     3263,    -1,    -1,    -1,  4558,    -1,  5254,    -1,    -1,    -1,
16003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16004       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3292,
16005       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3671,    -1,    -1,
16006       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3929,
16007       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16008       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16010       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16011       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3977,  3361,    -1,
16012       -1,  3981,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16013       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3382,
16014       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16015       -1,  4685,    -1,  3396,    -1,    -1,  3770,    -1,    -1,    -1,
16016       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16018       -1,  3795,    -1,  2767,    -1,    -1,    -1,    -1,    -1,    -1,
16019       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16020       -1,    -1,    -1,  2787,  2788,    -1,  2790,    -1,    -1,  2793,
16021     2794,    -1,  2796,    -1,  2798,    -1,    -1,    -1,  2802,    -1,
16022       -1,  2805,    -1,    -1,    -1,    -1,  2810,    -1,    -1,    -1,
16023       -1,    -1,  2816,    -1,    -1,    -1,    -1,  2821,    -1,    -1,
16024       -1,    -1,    -1,    -1,  2828,  2829,  2830,  2831,    -1,    -1,
16025       -1,  2835,  2836,    -1,  2838,    -1,    -1,    -1,    -1,    -1,
16026       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4128,  3512,
16027       -1,    -1,  2856,    -1,  2858,    -1,    -1,  4811,  4138,    -1,
16028       -1,  2865,  2866,  2867,  2868,  2869,  2870,  2871,  2872,  2873,
16029     2874,    -1,  3535,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16030       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16031       -1,    -1,  4846,    -1,    -1,  3929,    -1,  3560,    -1,    -1,
16032       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2911,    -1,    -1,
16033       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16034       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16035       -1,  4885,    -1,  3596,    -1,    -1,    -1,    -1,    -1,    -1,
16036       -1,    -1,    -1,  3977,    -1,    -1,    -1,  3981,    -1,    -1,
16037       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16038       -1,    -1,    -1,    -1,    -1,  4245,    -1,    -1,    -1,    -1,
16039       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4932,    -1,
16040       -1,    -1,    -1,  4937,  4938,    -1,    -1,    -1,    -1,    -1,
16041       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3002,    -1,
16042       -1,    -1,    -1,    -1,    -1,    -1,  4286,    -1,  3671,    -1,
16043       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16044       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4308,    -1,
16045       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16046       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16047       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16048       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16049       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16050       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16051       -1,    -1,    -1,    -1,  4128,    -1,  4376,    -1,    -1,    -1,
16052     5054,    -1,    -1,    -1,  4138,    -1,    -1,  3770,    -1,    -1,
16053       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16054       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16055       -1,    -1,  3795,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16057       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16058       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16060       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16061       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16062       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16063       -1,  4245,    -1,    -1,    -1,    -1,    -1,    -1,  4498,    -1,
16064       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16065       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16066       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3253,
16067     3254,    -1,  4286,    -1,  3258,    -1,    -1,    -1,    -1,    -1,
16068       -1,    -1,    -1,    -1,    -1,    -1,  3929,    -1,    -1,    -1,
16069       -1,    -1,    -1,    -1,  4308,    -1,    -1,    -1,  4558,    -1,
16070       -1,    -1,    -1,  3287,    -1,    -1,    -1,    -1,    -1,    -1,
16071       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16072     5254,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16073       -1,    -1,    -1,    -1,  3977,    -1,    -1,    -1,  3981,    -1,
16074       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16075       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16076       -1,    -1,  4376,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16077       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16078       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16079       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16080       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16081       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16082       -1,    -1,    -1,    -1,    -1,  4685,    -1,    -1,    -1,    -1,
16083       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16084       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16085       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16086       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16087       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16088       -1,    -1,    -1,    -1,  4498,  4128,    -1,    -1,    -1,    -1,
16089       -1,    -1,    -1,    -1,    -1,  4138,    -1,    -1,    -1,    -1,
16090       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16091       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16092       -1,    -1,    -1,    -1,  3508,    -1,    -1,    -1,    -1,    -1,
16093     3514,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16094       -1,    -1,    -1,    -1,  4558,    -1,    -1,    -1,  3532,  3533,
16095       -1,  4811,  3536,  3537,  3538,  3539,    -1,    -1,  3542,  3543,
16096     3544,  3545,  3546,  3547,  3548,  3549,  3550,  3551,  3552,    -1,
16097       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16098       -1,    -1,    -1,    -1,    -1,    -1,  4846,    -1,    -1,    -1,
16099     3574,    -1,    -1,  3577,    -1,  3579,    -1,    -1,  3582,  3583,
16100       -1,    -1,  4245,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16101       -1,    -1,    -1,    -1,    -1,    -1,  3600,  3601,  3602,  3603,
16102       -1,  3605,    -1,    -1,    -1,  4885,    -1,    -1,    -1,    -1,
16103       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16104       -1,    -1,    -1,  4286,    -1,    -1,    -1,    -1,    -1,    -1,
16105       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16106       -1,    -1,    -1,    -1,    -1,  4308,    -1,    -1,    -1,    -1,
16107       -1,  4685,  4932,    -1,    -1,    -1,    -1,  4937,  4938,    -1,
16108       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16109       -1,    -1,    -1,    -1,    -1,    -1,  3680,    -1,    -1,    -1,
16110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16111       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16112       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16113       -1,    -1,    -1,  4376,    -1,    -1,    -1,    -1,    -1,    -1,
16114       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16115       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16116       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16117       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16118       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16119       -1,    -1,    -1,    -1,  5054,    -1,    -1,  4811,    -1,    -1,
16120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16121       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16122       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16123       -1,    -1,  4846,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16124       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16125       -1,    -1,    -1,    -1,    -1,  4498,    -1,    -1,    -1,    -1,
16126       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16127       -1,  4885,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16128       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16129       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16131       -1,    -1,    -1,    -1,    -1,  4558,  3900,    -1,  4932,    -1,
16132       -1,    -1,    -1,  4937,  4938,    -1,    -1,    -1,    -1,    -1,
16133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16134       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16135       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16136       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16137       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16138       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16139       -1,    -1,    -1,    -1,  5254,    -1,    -1,    -1,    -1,    -1,
16140       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16141       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16142       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16143       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16144     5054,    -1,  4685,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16145       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16146       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16147       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16148       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4073,
16149       -1,    -1,    -1,  4077,    -1,  4079,  4080,    -1,    -1,    -1,
16150       -1,    -1,  4086,  4087,  4088,  4089,    -1,    -1,    -1,    -1,
16151     4094,  4095,  4096,  4097,  4098,  4099,  4100,  4101,  4102,  4103,
16152     4104,  4105,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16153       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16154       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4131,    -1,    -1,
16155     4134,    -1,  4136,    -1,    -1,    -1,    -1,  4141,    -1,    -1,
16156     4144,  4145,    -1,    -1,  4148,  4149,    -1,    -1,  4811,    -1,
16157       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16158       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16159       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16160       -1,    -1,    -1,  4846,    -1,    -1,    -1,    -1,    -1,    -1,
16161       -1,  4195,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16162       -1,    -1,    -1,    -1,    -1,    -1,  4210,    -1,    -1,    -1,
16163       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16164     5254,    -1,  4885,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16165       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16166       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16167       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16168       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4932,
16169       -1,    -1,    -1,    -1,  4937,  4938,    -1,    -1,    -1,    -1,
16170       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16172       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16173       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16174       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16175       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16176       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16177       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16178       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16180       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16181       -1,  5054,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16182       -1,    -1,    -1,    -1,  4408,    -1,    -1,    -1,    -1,    -1,
16183       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16184       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16185       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16187       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16188       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16190       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4493,
16191     4494,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16192       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4522,    -1,
16194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16195       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16196       -1,    -1,    -1,  4547,    -1,    -1,    -1,    -1,    -1,  4553,
16197     4554,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16198       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4571,    -1,  4573,
16199       -1,    -1,    -1,  4577,  4578,  4579,    -1,    -1,  4582,    -1,
16200       -1,  4585,  4586,    -1,    -1,    -1,  4590,    -1,    -1,    -1,
16201     4594,  5254,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16202       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16203       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16204       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16205       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4641,    -1,    -1,
16206       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16207       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16208       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16209       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16210       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16211       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16212       -1,    -1,    -1,  4707,    -1,    -1,    -1,    -1,    -1,    -1,
16213       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16214       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16215       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16216       -1,  4745,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16217       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16218       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16219       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16220       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16221       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16222       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16223       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16224       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16225       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16226     4844,  4845,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16227       -1,    -1,    -1,    -1,    -1,  4859,  4860,  4861,    -1,    -1,
16228       -1,    -1,    -1,    -1,    -1,  4869,    -1,    -1,    -1,    -1,
16229       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16230       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16231       -1,    -1,  4896,  4897,    -1,    -1,    -1,    -1,    -1,    -1,
16232       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16234       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16235       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16236       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16237       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16238       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16239       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16240       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16241       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16242       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16243       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16244       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16245       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16246       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16247       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16248       -1,    -1,    -1,    -1,  5068,    -1,    -1,  5071,    -1,    -1,
16249       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16250     5084,    -1,    -1,  5087,    -1,    -1,    -1,  5091,    -1,    -1,
16251       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16252       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16253       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16255     5134,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16257       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16258       -1,    -1,    -1,    -1,    -1,    -1,    -1,  5171,    -1,    -1,
16259       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16260       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16263       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16264       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16266       -1,    -1,    -1,    -1,  5248,    -1,  5250,    -1,    -1,    -1,
16267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16268       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16269       -1,    -1,  5276,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16270       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16271       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16272       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16273       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16274       -1,    -1,    -1,    -1,    -1,    -1,  5330,    -1,    -1,    -1,
16275       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16276       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16277       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5362,    -1,
16278       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16279       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16280       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16281       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16282       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16283       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  5422,    -1,
16284       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16285       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16286       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16287       -1,    -1,    -1,    -1,  5458,  5459,    -1,    -1,    -1,    -1,
16288       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16289       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16291       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16292       -1,    -1,    -1,    -1,    -1,    -1,  5510,  5511,    -1,    -1,
16293       -1,  5515,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16294       -1,    -1,     3,    -1,     5,     6,    -1,     8,     9,    10,
16295       11,    12,    -1,    -1,    -1,    -1,    -1,    -1,  5542,    20,
16296       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
16297       31,    -1,    -1,    -1,    -1,    36,    -1,    -1,    39,    40,
16298       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
16299       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
16300       61,    62,    63,    64,    65,    66,    67,    -1,    69,    70,
16301       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
16302       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
16303       91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
16304      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
16305      111,   112,   113,   114,   115,    -1,   117,   118,   119,   120,
16306      121,   122,    -1,   124,   125,   126,   127,   128,    -1,   130,
16307      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
16308      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
16309      151,   152,   153,   154,   155,    -1,   157,   158,   159,   160,
16310       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
16311      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
16312      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
16313      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
16314      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
16315      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
16316       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
16317      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
16318      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
16319      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
16320      261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
16321      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
16322      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
16323      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
16324       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
16325       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
16326      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
16327      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
16328      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
16329      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
16330      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
16331      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
16332      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16333      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
16334      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
16335      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
16336      421,   422,    -1,   424,   425,   426,   427,   428,   429,   430,
16337       -1,   432,   433,   434,   435,   436,   437,   438,   439,   440,
16338      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
16339      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
16340      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
16341      471,    -1,    -1,    -1,    -1,    -1,    -1,   478,   479,   480,
16342       -1,    -1,    -1,    -1,    -1,    -1,   487,   488,     3,    -1,
16343        5,     6,    -1,     8,     9,    10,    11,    12,    -1,    -1,
16344       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
16345       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
16346       -1,    36,    -1,    -1,    39,    40,    -1,    42,    43,    44,
16347       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
16348       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
16349       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
16350       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
16351       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
16352       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
16353      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
16354      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
16355      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
16356       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
16357      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
16358      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
16359      165,    -1,   167,   168,   169,   170,   171,    -1,   173,   174,
16360       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
16361      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
16362      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
16363      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
16364      215,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
16365      225,   226,   227,    -1,   229,   230,   231,   232,   233,   234,
16366      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
16367      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
16368      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
16369      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
16370       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
16371      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
16372      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
16373      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
16374      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
16375      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
16376      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
16377      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
16378      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
16379      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
16380      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
16381      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
16382      395,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
16383      405,   406,    -1,    -1,   409,   410,   411,   412,   413,   414,
16384      415,   416,   417,   418,   419,   420,   421,   422,    -1,   424,
16385      425,   426,   427,   428,   429,   430,    -1,   432,   433,   434,
16386      435,   436,   437,   438,    -1,   440,   441,   442,   443,   444,
16387      445,    -1,    -1,   448,    -1,   450,   451,   452,   453,   454,
16388      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
16389      465,   466,   467,   468,   469,   470,   471,    -1,   473,    -1,
16390       -1,    -1,    -1,   478,   479,    -1,    -1,    -1,    -1,    -1,
16391       -1,    -1,   487,   488,     3,    -1,     5,     6,    -1,     8,
16392        9,    10,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,
16393       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
16394       29,    30,    31,    -1,    -1,    -1,    -1,    36,    -1,    -1,
16395       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
16396       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
16397       59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
16398       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
16399       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
16400       89,    90,    91,    92,    -1,    94,    95,    96,    97,    98,
16401       99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
16402      109,   110,   111,   112,   113,   114,   115,    -1,   117,   118,
16403      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
16404       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
16405       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
16406      149,   150,   151,   152,   153,   154,   155,    -1,   157,   158,
16407      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
16408      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
16409       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
16410      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
16411      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
16412      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
16413      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
16414      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
16415      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
16416      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
16417      259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
16418      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
16419       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
16420      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
16421      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
16422      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
16423      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
16424      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
16425      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
16426      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
16427       -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
16428      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
16429      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
16430      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
16431      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
16432      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
16433      419,   420,   421,   422,    -1,   424,   425,   426,   427,   428,
16434      429,   430,    -1,   432,   433,   434,   435,   436,   437,   438,
16435       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
16436       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
16437      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
16438      469,   470,   471,    -1,    -1,    -1,    -1,    -1,    -1,   478,
16439      479,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,   488,
16440        3,    -1,     5,     6,    -1,     8,     9,    10,    11,    12,
16441       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
16442       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
16443       -1,    -1,    -1,    36,    -1,    -1,    39,    40,    -1,    42,
16444       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
16445       53,    -1,    55,    56,    57,    58,    59,    60,    61,    62,
16446       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
16447       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
16448       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
16449       -1,    94,    95,    96,    97,    98,    99,   100,   101,   102,
16450      103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
16451      113,   114,   115,    -1,   117,   118,   119,   120,   121,   122,
16452       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
16453      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
16454       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
16455      153,   154,   155,    -1,   157,   158,   159,   160,    -1,   162,
16456       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
16457      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
16458      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
16459      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
16460      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
16461      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
16462      223,   224,   225,   226,   227,    -1,   229,   230,   231,   232,
16463      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
16464      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
16465      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
16466      263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
16467      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
16468       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
16469      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
16470      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
16471      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
16472      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
16473      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
16474      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
16475      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
16476      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
16477      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
16478      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
16479      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
16480       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
16481      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
16482       -1,   424,   425,   426,   427,   428,   429,   430,    -1,   432,
16483      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
16484      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
16485      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
16486      463,   464,   465,   466,   467,   468,   469,   470,   471,    -1,
16487       -1,    -1,    -1,    -1,    -1,   478,   479,    -1,    -1,    -1,
16488       -1,    -1,    -1,    -1,   487,   488,     3,    -1,     5,     6,
16489       -1,     8,     9,    10,    11,    12,    -1,    -1,    -1,    -1,
16490       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
16491       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    36,
16492       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
16493       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
16494       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
16495       67,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
16496       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
16497       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
16498       97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
16499      107,   108,   109,   110,   111,   112,   113,   114,   115,    -1,
16500      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
16501      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
16502      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
16503      147,   148,   149,   150,   151,   152,   153,   154,   155,    -1,
16504      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
16505      167,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
16506      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
16507      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
16508      197,    -1,   199,   200,   201,   202,   203,   204,   205,   206,
16509      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
16510      217,   218,   219,   220,    -1,    -1,   223,   224,   225,   226,
16511      227,    -1,   229,   230,   231,   232,   233,   234,   235,   236,
16512      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
16513      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
16514      257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
16515      267,   268,   269,   270,   271,   272,   273,   274,    -1,   276,
16516      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
16517      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
16518      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
16519      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
16520      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
16521       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
16522      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
16523      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
16524      357,   358,    -1,   360,   361,   362,   363,   364,   365,   366,
16525      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
16526      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
16527      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
16528      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
16529       -1,    -1,   409,   410,   411,   412,   413,   414,   415,   416,
16530      417,   418,   419,   420,   421,   422,    -1,   424,   425,   426,
16531      427,   428,   429,   430,    -1,   432,   433,   434,   435,   436,
16532      437,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
16533       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
16534      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
16535      467,   468,   469,   470,   471,     3,    -1,    -1,    -1,    -1,
16536       -1,   478,   479,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16537      487,   488,    20,    21,    22,    23,    24,    25,    26,    27,
16538       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    37,
16539       -1,    39,    40,    -1,    42,    43,    44,    -1,    46,    47,
16540       48,    49,    50,    -1,    52,    53,    -1,    55,    56,    57,
16541       58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
16542       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    77,
16543       78,    79,    80,    81,    -1,    83,    84,    85,    -1,    87,
16544       88,    89,    90,    91,    92,    -1,    94,    95,    96,    97,
16545       -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,
16546      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
16547      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
16548       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
16549      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
16550      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
16551      158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,   167,
16552      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
16553      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
16554      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
16555       -1,   199,   200,   201,   202,   203,   204,   205,   206,   207,
16556       -1,   209,    -1,   211,    -1,    -1,   214,   215,   216,   217,
16557      218,   219,   220,    -1,    -1,   223,   224,   225,   226,    -1,
16558       -1,   229,   230,   231,    -1,    -1,   234,   235,   236,   237,
16559      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
16560      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
16561      258,   259,   260,   261,   262,    -1,   264,   265,    -1,   267,
16562       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
16563       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
16564       -1,   289,    -1,   291,   292,   293,   294,   295,   296,   297,
16565      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
16566      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
16567      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
16568      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
16569      338,   339,    -1,   341,   342,   343,   344,   345,   346,   347,
16570      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
16571      358,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
16572      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
16573      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
16574      388,   389,   390,   391,    -1,   393,   394,    -1,   396,    -1,
16575      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
16576       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
16577      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
16578      428,   429,    -1,    -1,   432,   433,   434,   435,   436,   437,
16579      438,    -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,
16580      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
16581      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
16582      468,   469,   470,    -1,     3,    -1,    -1,    -1,    -1,    -1,
16583       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16584      488,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
16585       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16586       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
16587       -1,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
16588       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
16589       69,    70,    71,    72,    -1,    -1,    75,    -1,    77,    78,
16590       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
16591       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
16592       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
16593      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
16594      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
16595       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
16596       -1,   140,   141,   142,    -1,   144,   145,   146,   147,    -1,
16597      149,   150,   151,   152,    -1,    -1,   155,    -1,   157,   158,
16598      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
16599      169,   170,   171,    -1,   173,    -1,    -1,    -1,   177,   178,
16600       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
16601      189,   190,   191,   192,   193,   194,   195,   196,   197,    -1,
16602      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
16603      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
16604      219,   220,    -1,    -1,   223,    -1,   225,   226,   227,    -1,
16605      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
16606      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
16607      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
16608      259,    -1,    -1,   262,    -1,   264,   265,   266,   267,    -1,
16609       -1,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
16610       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
16611      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
16612      299,   300,    -1,    -1,   303,   304,    -1,   306,    -1,   308,
16613      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
16614      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
16615      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
16616      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
16617       -1,   350,   351,   352,   353,   354,   355,   356,   357,   358,
16618       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
16619      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
16620      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
16621      389,    -1,   391,    -1,   393,   394,    -1,   396,   397,   398,
16622      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
16623      409,   410,    -1,   412,    -1,    -1,   415,   416,   417,   418,
16624      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
16625      429,    -1,    -1,   432,   433,   434,   435,   436,    -1,   438,
16626      439,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
16627       -1,    -1,   451,   452,   453,   454,   455,   456,     3,    -1,
16628       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,
16629      469,   470,    -1,    -1,    -1,    20,    21,    22,    23,    24,
16630       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,   488,
16631       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
16632       45,    46,    47,    48,    -1,    50,    51,    52,    53,    -1,
16633       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
16634       65,    66,    67,    -1,    69,    70,    71,    72,    -1,    -1,
16635       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
16636       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
16637       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,    -1,
16638      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
16639      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
16640      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
16641       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
16642      145,   146,   147,    -1,   149,   150,   151,   152,    -1,    -1,
16643      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
16644      165,    -1,   167,   168,   169,   170,   171,    -1,   173,    -1,
16645       -1,    -1,   177,   178,    -1,   180,   181,   182,   183,   184,
16646      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
16647      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
16648      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
16649      215,   216,   217,   218,   219,   220,    -1,    -1,   223,    -1,
16650      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
16651      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
16652      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
16653      255,   256,   257,   258,   259,    -1,    -1,   262,    -1,   264,
16654      265,   266,   267,    -1,    -1,   270,   271,   272,   273,   274,
16655       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
16656      285,   286,   287,   288,   289,   290,    -1,   292,   293,   294,
16657      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
16658       -1,   306,    -1,   308,   309,   310,    -1,   312,   313,   314,
16659      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
16660      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
16661      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
16662      345,   346,   347,   348,    -1,   350,   351,   352,   353,   354,
16663      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
16664       -1,   366,   367,   368,   369,   370,   371,   372,   373,   374,
16665      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
16666      385,   386,   387,   388,   389,    -1,   391,    -1,   393,   394,
16667       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
16668      405,   406,    -1,    -1,   409,   410,    -1,   412,    -1,    -1,
16669      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
16670      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
16671      435,   436,    -1,   438,   439,   440,   441,   442,   443,   444,
16672      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
16673      455,   456,     3,    -1,     5,     6,    -1,     8,     9,    10,
16674       11,    12,    -1,   468,   469,   470,    -1,    -1,    -1,    20,
16675       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
16676       31,    -1,    -1,   488,    -1,    36,    -1,    -1,    39,    40,
16677       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
16678       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
16679       61,    62,    63,    64,    65,    66,    67,    -1,    69,    70,
16680       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
16681       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
16682       91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
16683      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
16684      111,   112,   113,   114,   115,    -1,   117,   118,   119,   120,
16685      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
16686      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
16687      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
16688      151,   152,   153,   154,   155,    -1,   157,   158,   159,   160,
16689       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
16690      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
16691      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
16692      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
16693      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
16694      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
16695       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
16696      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
16697      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
16698      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
16699      261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
16700      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
16701      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
16702      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
16703       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
16704       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
16705      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
16706      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
16707      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
16708      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
16709      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
16710      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
16711      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16712      391,    -1,   393,   394,   395,   396,   397,   398,   399,   400,
16713      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
16714      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
16715      421,   422,    -1,   424,   425,   426,   427,   428,   429,   430,
16716       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
16717      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,   450,
16718      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
16719      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
16720      471,    -1,   473,    -1,    -1,    -1,    -1,   478,   479,    -1,
16721       -1,    -1,     3,    -1,     5,     6,   487,     8,     9,    10,
16722       11,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
16723       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
16724       31,    -1,    -1,    -1,    -1,    36,    -1,    -1,    39,    40,
16725       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
16726       51,    52,    53,    54,    55,    56,    57,    58,    59,    60,
16727       61,    62,    63,    64,    65,    66,    67,    -1,    69,    70,
16728       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
16729       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
16730       91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
16731      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
16732      111,   112,   113,   114,   115,    -1,   117,   118,   119,   120,
16733      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
16734      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
16735      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
16736      151,   152,   153,   154,   155,    -1,   157,   158,   159,   160,
16737       -1,   162,    -1,   164,   165,   166,   167,   168,   169,   170,
16738      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
16739      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
16740      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
16741      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
16742      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
16743       -1,   222,   223,   224,   225,   226,   227,    -1,   229,   230,
16744      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
16745      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
16746      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
16747      261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
16748      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
16749      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
16750      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
16751       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
16752       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
16753      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
16754      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
16755      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
16756      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
16757      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
16758      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
16759      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16760      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
16761      401,   402,    -1,   404,   405,   406,    -1,   408,   409,   410,
16762      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
16763      421,   422,    -1,   424,   425,   426,   427,   428,   429,   430,
16764       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
16765      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
16766      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
16767      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
16768      471,    -1,    -1,    -1,    -1,    -1,    -1,   478,   479,    -1,
16769       -1,    -1,     3,    -1,     5,     6,   487,     8,     9,    10,
16770       11,    12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
16771       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
16772       31,    -1,    -1,    -1,    -1,    36,    -1,    -1,    39,    40,
16773       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
16774       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
16775       61,    62,    63,    64,    65,    66,    67,    -1,    69,    70,
16776       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
16777       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
16778       91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
16779      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
16780      111,   112,   113,   114,   115,    -1,   117,   118,   119,   120,
16781      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
16782      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
16783      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
16784      151,   152,   153,   154,   155,    -1,   157,   158,   159,   160,
16785       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
16786      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
16787      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
16788      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
16789      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
16790      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
16791       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
16792      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
16793      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
16794      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
16795      261,   262,   263,   264,   265,   266,   267,   268,   269,   270,
16796      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
16797      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
16798      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
16799       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
16800       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
16801      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
16802      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
16803      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
16804      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
16805      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
16806      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
16807      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16808      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
16809      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
16810      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
16811      421,   422,    -1,   424,   425,   426,   427,   428,   429,   430,
16812       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
16813      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
16814      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
16815      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
16816      471,    -1,    -1,    -1,    -1,    -1,    -1,   478,   479,    -1,
16817       -1,    -1,    -1,    -1,   485,   486,   487,     3,    -1,     5,
16818        6,    -1,     8,     9,    10,    11,    12,    -1,    -1,    -1,
16819       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
16820       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
16821       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
16822       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
16823       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
16824       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
16825       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
16826       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
16827       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
16828      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
16829       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
16830      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
16831      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
16832      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
16833       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
16834       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
16835      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
16836      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
16837      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
16838      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
16839      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
16840      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
16841      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
16842      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
16843      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
16844      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
16845      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
16846      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
16847      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
16848      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
16849      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
16850      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
16851      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
16852      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
16853      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
16854      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
16855       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
16856      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
16857      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
16858      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
16859      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
16860      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
16861      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
16862       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
16863      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
16864      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
16865       -1,    -1,   478,   479,   480,    -1,    -1,     3,    -1,     5,
16866        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
16867       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
16868       26,    27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,
16869       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
16870       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
16871       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
16872       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
16873       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
16874       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
16875       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
16876      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
16877       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
16878      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
16879      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
16880      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
16881       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
16882       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
16883      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
16884      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
16885      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
16886      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
16887      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
16888      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
16889      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
16890      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
16891      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
16892      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
16893      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
16894      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
16895      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
16896      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
16897      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
16898      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
16899      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
16900      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
16901      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
16902      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
16903       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
16904      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
16905      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
16906      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
16907      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
16908      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
16909      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
16910       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
16911      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
16912      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
16913       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
16914        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
16915       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
16916       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
16917       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
16918       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
16919       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
16920       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
16921       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
16922       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
16923       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
16924      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
16925       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
16926      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
16927      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
16928      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
16929       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
16930       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
16931      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
16932      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
16933      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
16934      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
16935      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
16936      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
16937      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
16938      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
16939      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
16940      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
16941      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
16942      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
16943      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
16944      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
16945      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
16946      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
16947      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
16948      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
16949      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
16950      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
16951       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
16952      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
16953      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
16954      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
16955      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
16956      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
16957      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
16958       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
16959      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
16960      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
16961       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
16962        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
16963       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
16964       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
16965       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
16966       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
16967       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
16968       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
16969       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
16970       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
16971       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
16972      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
16973       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
16974      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
16975      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
16976      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
16977       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
16978      166,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
16979      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
16980      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
16981      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
16982      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
16983      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
16984      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
16985      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
16986      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
16987      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
16988      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
16989      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
16990      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
16991      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
16992      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
16993      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
16994      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
16995      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
16996      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
16997      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
16998      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
16999       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17000      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17001      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17002      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17003      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17004      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17005      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17006       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17007      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17008      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17009       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17010        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17011       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17012       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17013       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17014       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17015       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17016       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17017       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17018       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17019       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17020      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17021       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17022      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17023      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17024      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17025       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17026       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17027      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17028      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17029      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17030      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17031      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17032      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17033      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17034      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17035      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17036      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17037      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17038      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17039      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17040      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17041      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17042      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17043      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17044      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17045      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17046      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17047       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17048      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17049      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17050      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17051      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17052      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17053      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17054       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17055      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17056      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17057       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17058        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17059       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17060       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17061       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17062       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17063       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17064       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17065       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17066       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17067       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17068      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17069       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17070      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17071      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17072      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17073       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17074       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17075      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17076      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17077      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17078      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17079      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17080      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17081      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17082      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17083      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17084      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17085      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17086      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17087      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17088      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17089      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17090      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17091      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17092      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17093      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17094      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17095       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17096      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17097      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17098      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17099      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17100      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17101      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17102       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17103      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17104      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17105       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17106        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17107       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17108       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17109       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17110       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17111       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17112       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17113       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17114       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17115       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17116      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17117       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17118      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17119      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17120      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17121       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17122       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17123      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17124      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17125      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17126      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17127      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17128      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17129      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17130      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17131      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17132      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17133      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17134      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17135      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17136      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17137      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17138      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17139      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17140      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17141      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17142      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17143       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17144      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17145      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17146      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17147      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17148      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17149      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17150       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17151      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17152      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17153       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17154        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17155       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17156       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17157       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17158       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17159       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17160       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17161       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17162       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17163       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17164      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17165       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17166      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17167      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17168      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17169       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17170       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17171      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17172      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17173      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17174      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17175      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17176      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17177      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17178      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17179      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17180      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17181      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17182      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17183      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17184      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17185      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17186      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17187      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17188      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17189      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17190      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17191       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17192      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17193      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17194      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17195      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17196      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17197      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17198       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17199      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17200      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17201       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17202        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17203       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17204       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17205       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17206       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17207       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17208       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17209       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17210       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17211       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17212      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17213       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17214      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17215      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17216      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17217       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17218       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17219      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17220      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17221      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17222      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17223      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17224      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17225      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17226      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17227      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17228      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17229      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17230      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17231      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17232      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17233      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17234      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17235      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17236      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17237      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17238      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17239       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17240      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17241      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17242      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17243      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17244      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17245      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17246       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17247      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17248      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17249       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17250        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17251       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17252       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17253       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17254       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17255       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17256       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17257       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17258       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17259       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17260      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17261       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17262      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17263      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17264      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17265       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17266       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17267      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17268      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17269      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17270      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17271      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17272      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17273      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17274      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17275      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17276      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17277      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17278      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17279      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17280      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17281      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17282      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17283      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17284      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17285      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17286      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17287       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17288      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17289      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17290      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17291      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17292      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17293      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17294       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17295      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17296      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17297       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17298        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17299       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17300       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17301       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17302       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17303       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17304       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17305       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17306       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17307       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17308      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17309       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17310      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17311      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17312      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17313       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17314       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17315      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17316      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17317      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17318      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17319      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17320      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17321      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17322      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17323      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17324      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17325      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17326      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17327      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17328      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17329      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17330      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17331      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17332      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17333      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17334      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17335       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17336      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17337      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17338      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17339      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17340      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17341      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17342       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17343      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17344      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17345       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17346        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17347       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17348       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17349       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17350       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17351       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17352       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17353       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17354       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17355       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17356      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17357       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17358      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17359      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17360      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17361       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17362       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17363      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17364      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17365      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17366      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17367      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17368      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17369      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17370      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17371      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17372      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17373      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17374      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17375      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17376      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17377      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17378      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17379      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17380      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17381      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17382      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17383       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17384      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17385      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17386      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17387      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17388      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17389      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17390       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17391      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17392      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17393       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17394        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17395       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17396       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17397       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17398       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17399       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17400       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17401       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17402       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17403       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17404      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17405       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17406      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17407      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17408      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17409       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17410       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17411      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17412      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17413      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17414      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17415      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17416      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17417      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17418      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17419      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17420      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17421      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17422      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17423      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17424      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17425      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17426      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17427      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17428      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17429      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17430      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17431       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17432      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17433      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17434      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17435      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17436      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17437      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17438       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17439      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17440      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17441       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17442        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17443       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17444       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17445       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17446       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17447       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17448       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17449       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17450       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17451       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17452      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17453       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17454      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17455      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17456      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17457       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17458       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17459      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17460      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17461      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17462      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17463      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17464      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17465      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17466      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17467      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
17468      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17469      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17470      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17471      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17472      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17473      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17474      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17475      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17476      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17477      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17478      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17479       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17480      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17481      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17482      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17483      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
17484      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17485      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17486       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17487      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17488      466,   467,   468,   469,   470,    -1,    -1,    -1,    -1,    -1,
17489       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17490        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17491       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17492       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17493       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17494       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17495       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17496       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17497       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17498       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17499       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17500      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
17501       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17502      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17503      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17504      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17505       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17506       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17507      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17508      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17509      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17510      206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,   215,
17511      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17512      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17513      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17514      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17515      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
17516       -1,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17517      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17518      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17519      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17520      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17521      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17522      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17523      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17524      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17525      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17526      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17527       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17528      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17529      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17530      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17531      416,   417,   418,   419,   420,   421,   422,    -1,   424,   425,
17532      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17533      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17534       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17535      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17536      466,   467,   468,   469,   470,   471,    -1,    -1,    -1,    -1,
17537       -1,    -1,   478,   479,    -1,    -1,    -1,     3,    -1,     5,
17538        6,   487,     8,     9,    10,    11,    12,    -1,    -1,    -1,
17539       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
17540       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17541       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17542       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17543       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17544       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17545       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17546       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17547       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17548      106,   107,   108,   109,   110,   111,   112,   113,    -1,   115,
17549       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17550      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17551      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17552      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17553       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17554       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17555      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17556      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17557      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17558      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17559      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17560      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17561      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17562      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17563      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
17564      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17565      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17566      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17567      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17568      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17569      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17570      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17571      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17572      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17573      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17574      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17575       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17576      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17577      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17578      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17579      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
17580      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17581      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17582       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17583      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17584      466,   467,   468,   469,   470,    -1,    -1,    -1,    -1,    -1,
17585       -1,    -1,   478,   479,     3,    -1,     5,     6,    -1,     8,
17586        9,   487,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,
17587       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
17588       29,    30,    31,    -1,    -1,    -1,    -1,    36,    -1,    -1,
17589       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
17590       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
17591       59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
17592       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
17593       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
17594       89,    90,    91,    92,    -1,    94,    95,    96,    97,    98,
17595       99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
17596      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
17597      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
17598       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
17599       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
17600      149,   150,   151,   152,   153,   154,   155,    -1,   157,   158,
17601      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
17602      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
17603       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
17604      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
17605      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
17606      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
17607      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
17608      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
17609      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
17610      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
17611      259,   260,   261,   262,    -1,   264,   265,   266,   267,   268,
17612      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
17613       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
17614      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
17615      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
17616      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
17617      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
17618      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
17619      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
17620      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
17621       -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
17622      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
17623      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
17624      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
17625      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
17626      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
17627      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
17628      429,   430,    -1,   432,   433,   434,   435,   436,   437,   438,
17629       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
17630       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
17631      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
17632      469,   470,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   478,
17633      479,    -1,    -1,    -1,     3,    -1,     5,     6,   487,     8,
17634        9,    10,    11,    12,    -1,    -1,    -1,    -1,    -1,    -1,
17635       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
17636       29,    30,    31,    -1,    -1,    -1,    -1,    36,    -1,    -1,
17637       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
17638       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
17639       59,    60,    61,    62,    63,    64,    65,    66,    67,    -1,
17640       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
17641       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
17642       89,    90,    91,    92,    -1,    94,    95,    96,    97,    98,
17643       99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
17644      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
17645      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
17646       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
17647       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
17648      149,   150,   151,   152,   153,   154,   155,    -1,   157,   158,
17649      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
17650      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
17651       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
17652      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
17653      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
17654      209,    -1,   211,    -1,   213,   214,   215,   216,   217,   218,
17655      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
17656      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
17657      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
17658      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
17659      259,   260,   261,   262,    -1,   264,   265,   266,   267,   268,
17660      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
17661       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
17662      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
17663      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
17664      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
17665      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
17666      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
17667      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
17668      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
17669       -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
17670      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
17671      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
17672      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
17673      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
17674      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
17675      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
17676      429,   430,    -1,   432,   433,   434,   435,   436,   437,   438,
17677       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
17678       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
17679      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
17680      469,   470,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   478,
17681      479,     3,    -1,     5,     6,    -1,     8,     9,   487,    11,
17682       12,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,
17683       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
17684       -1,    -1,    -1,    -1,    36,    -1,    -1,    39,    40,    -1,
17685       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
17686       52,    53,    -1,    55,    56,    57,    58,    59,    60,    61,
17687       62,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
17688       72,    73,    -1,    75,    -1,    77,    78,    79,    80,    81,
17689       82,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
17690       92,    -1,    94,    95,    96,    97,    98,    99,   100,   101,
17691      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
17692      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
17693      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
17694      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
17695      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
17696      152,   153,   154,   155,    -1,   157,   158,   159,   160,    -1,
17697      162,    -1,   164,   165,    -1,   167,   168,   169,   170,   171,
17698       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
17699      182,   183,   184,   185,   186,   187,   188,   189,    -1,   191,
17700      192,   193,   194,   195,   196,   197,    -1,   199,   200,   201,
17701      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
17702      212,   213,   214,   215,   216,   217,   218,   219,   220,    -1,
17703       -1,   223,   224,   225,   226,   227,    -1,   229,   230,   231,
17704      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17705      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
17706      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
17707      262,    -1,   264,   265,   266,   267,   268,   269,   270,   271,
17708      272,   273,   274,    -1,   276,   277,    -1,    -1,   280,   281,
17709      282,    -1,    -1,   285,   286,   287,   288,   289,   290,   291,
17710      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
17711       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
17712      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
17713      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
17714      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
17715      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
17716      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
17717      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
17718      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
17719      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17720       -1,   393,   394,    -1,   396,   397,   398,   399,   400,   401,
17721      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
17722      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
17723      422,    -1,    -1,   425,   426,   427,   428,   429,   430,    -1,
17724      432,   433,   434,   435,   436,   437,   438,    -1,   440,   441,
17725      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
17726      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
17727      462,   463,   464,   465,   466,   467,   468,   469,   470,     3,
17728       -1,     5,     6,    -1,     8,     9,    -1,    11,    12,    -1,
17729       -1,    -1,    -1,    -1,    -1,   487,    20,    21,    22,    23,
17730       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
17731       -1,    -1,    36,    -1,    -1,    39,    40,    -1,    42,    43,
17732       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
17733       -1,    55,    56,    57,    58,    59,    60,    61,    62,    63,
17734       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
17735       -1,    75,    -1,    77,    78,    79,    80,    81,    82,    83,
17736       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
17737       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17738      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
17739       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
17740      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
17741      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
17742      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
17743      154,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
17744      164,   165,    -1,   167,   168,   169,   170,   171,    -1,   173,
17745      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
17746      184,   185,   186,   187,   188,   189,    -1,   191,   192,   193,
17747      194,   195,   196,   197,    -1,   199,   200,   201,   202,   203,
17748      204,   205,   206,   207,    -1,   209,    -1,   211,   212,   213,
17749      214,   215,   216,   217,   218,   219,   220,    -1,    -1,   223,
17750      224,   225,   226,   227,    -1,   229,   230,   231,   232,   233,
17751      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17752      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
17753      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
17754      264,   265,   266,   267,   268,   269,   270,   271,   272,   273,
17755      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
17756       -1,   285,   286,   287,   288,   289,   290,   291,   292,   293,
17757      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
17758      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
17759      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
17760      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
17761      334,   335,   336,   337,   338,   339,    -1,   341,   342,   343,
17762      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
17763      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
17764      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
17765      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
17766      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
17767      394,    -1,   396,   397,   398,   399,   400,   401,   402,    -1,
17768      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
17769      414,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
17770       -1,   425,   426,   427,   428,   429,   430,    -1,   432,   433,
17771      434,   435,   436,   437,   438,    -1,   440,   441,   442,   443,
17772      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
17773      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
17774      464,   465,   466,   467,   468,   469,   470,     3,    -1,     5,
17775        6,    -1,     8,     9,    -1,    11,    12,    -1,    -1,    -1,
17776       -1,    -1,    -1,   487,    20,    21,    22,    23,    24,    25,
17777       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
17778       36,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
17779       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
17780       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
17781       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
17782       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
17783       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
17784       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17785      106,   107,   108,   109,   110,   111,   112,   113,    -1,   115,
17786       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
17787      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
17788      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
17789      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
17790       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
17791       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
17792      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
17793      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
17794      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
17795      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
17796      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
17797      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
17798      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17799      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17800      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
17801      266,   267,   268,   269,   270,   271,   272,   273,   274,    -1,
17802      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
17803      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
17804      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
17805      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
17806      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
17807      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
17808      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
17809      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
17810      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
17811      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
17812       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
17813      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
17814      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
17815      406,    -1,    -1,   409,   410,   411,   412,   413,   414,   415,
17816      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
17817      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
17818      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
17819       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
17820      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
17821      466,   467,   468,   469,   470,     3,    -1,     5,     6,    -1,
17822        8,     9,    10,    11,    12,    -1,    -1,    -1,    -1,    -1,
17823       -1,   487,    20,    21,    22,    23,    24,    25,    26,    27,
17824       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    36,    -1,
17825       -1,    39,    40,    -1,    42,    43,    44,    45,    46,    47,
17826       48,    -1,    50,    51,    52,    53,    -1,    55,    56,    57,
17827       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
17828       -1,    69,    70,    71,    72,    73,    -1,    75,    -1,    77,
17829       78,    79,    80,    81,    82,    83,    84,    85,    -1,    87,
17830       88,    89,    90,    91,    92,    -1,    94,    95,    96,    97,
17831       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
17832      108,   109,   110,   111,   112,   113,   114,   115,    -1,   117,
17833      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
17834       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
17835      138,    -1,   140,    -1,   142,    -1,   144,   145,   146,   147,
17836      148,   149,   150,   151,   152,   153,   154,   155,    -1,   157,
17837      158,   159,   160,    -1,   162,    -1,   164,   165,    -1,   167,
17838      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
17839      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
17840      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
17841       -1,   199,   200,   201,   202,   203,   204,   205,   206,   207,
17842       -1,   209,    -1,   211,    -1,    -1,   214,   215,   216,   217,
17843      218,   219,   220,    -1,    -1,   223,   224,   225,   226,    -1,
17844       -1,   229,   230,   231,   232,   233,   234,   235,   236,   237,
17845      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
17846      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
17847      258,   259,   260,   261,   262,   263,   264,   265,    -1,   267,
17848      268,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
17849       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
17850      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
17851      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
17852      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
17853      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
17854      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
17855      338,   339,    -1,   341,   342,   343,   344,   345,   346,   347,
17856      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
17857      358,    -1,   360,   361,   362,   363,   364,   365,   366,   367,
17858      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
17859      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17860      388,   389,   390,   391,    -1,   393,   394,    -1,   396,   397,
17861      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
17862       -1,   409,   410,   411,   412,   413,   414,   415,   416,   417,
17863      418,   419,   420,   421,   422,    -1,   424,   425,   426,   427,
17864      428,   429,   430,    -1,   432,   433,   434,   435,   436,   437,
17865      438,    -1,   440,   441,   442,   443,   444,   445,    -1,    -1,
17866      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
17867      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
17868      468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,
17869      478,   479,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,
17870       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
17871       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
17872       40,    -1,    42,    43,    44,    45,    46,    47,    48,    49,
17873       50,    51,    52,    53,    -1,    55,    56,    57,    58,    59,
17874       60,    -1,    62,    63,    64,    65,    66,    67,    -1,    69,
17875       70,    71,    72,    73,    -1,    75,    -1,    77,    78,    79,
17876       80,    81,    82,    83,    84,    85,    -1,    87,    88,    89,
17877       90,    91,    92,    -1,    94,    95,    96,    97,    98,    99,
17878      100,   101,   102,   103,   104,   105,   106,   107,   108,   109,
17879      110,   111,   112,   113,    -1,   115,    -1,   117,   118,   119,
17880      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
17881      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
17882      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
17883      150,   151,   152,   153,    -1,   155,    -1,   157,   158,   159,
17884      160,    -1,   162,    -1,   164,   165,    -1,   167,   168,   169,
17885      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
17886      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
17887       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17888      200,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
17889       -1,   211,   212,   213,   214,   215,   216,   217,   218,   219,
17890      220,   221,    -1,   223,   224,   225,   226,   227,    -1,   229,
17891      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17892      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
17893      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
17894      260,   261,   262,    -1,   264,   265,   266,   267,    -1,   269,
17895      270,   271,   272,   273,   274,    -1,   276,   277,    -1,   279,
17896      280,   281,   282,    -1,    -1,   285,   286,   287,   288,   289,
17897      290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
17898      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
17899      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
17900      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
17901      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
17902       -1,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17903      350,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17904      360,   361,   362,   363,   364,   365,   366,   367,   368,   369,
17905      370,   371,   372,   373,   374,   375,    -1,   377,   378,   379,
17906      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17907      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
17908      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
17909      410,   411,   412,   413,    -1,   415,   416,   417,   418,   419,
17910      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
17911      430,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
17912      440,   441,   442,   443,   444,   445,    -1,    -1,   448,    -1,
17913      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
17914      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
17915      470,     3,    -1,   473,    -1,    -1,    -1,    -1,    -1,    -1,
17916       -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,    20,    21,
17917       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
17918       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
17919       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
17920       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
17921       62,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
17922       72,    73,    -1,    75,    -1,    77,    78,    79,    80,    81,
17923       82,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
17924       92,    -1,    94,    95,    96,    97,    98,    99,   100,   101,
17925      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
17926      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
17927      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
17928      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
17929      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
17930      152,   153,    -1,   155,    -1,   157,   158,   159,   160,    -1,
17931      162,    -1,   164,   165,    -1,   167,   168,   169,   170,   171,
17932       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
17933      182,   183,   184,   185,   186,   187,   188,   189,    -1,   191,
17934      192,   193,   194,   195,   196,   197,    -1,   199,   200,   201,
17935      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
17936      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
17937       -1,   223,   224,   225,   226,   227,    -1,   229,   230,   231,
17938      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17939      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
17940      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
17941      262,    -1,   264,   265,   266,   267,    -1,   269,   270,   271,
17942      272,   273,   274,    -1,   276,   277,    -1,   279,   280,   281,
17943      282,    -1,    -1,   285,   286,   287,   288,   289,   290,   291,
17944      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
17945       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
17946      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
17947      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
17948      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
17949      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
17950      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
17951      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
17952      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
17953      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17954       -1,   393,   394,    -1,   396,   397,   398,   399,   400,   401,
17955      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
17956      412,   413,    -1,   415,   416,   417,   418,   419,   420,   421,
17957      422,    -1,    -1,   425,   426,   427,   428,   429,   430,    -1,
17958      432,   433,   434,   435,   436,   437,   438,    -1,   440,   441,
17959      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
17960      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
17961      462,   463,   464,   465,   466,   467,   468,   469,   470,     3,
17962       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17963       -1,    -1,    -1,    -1,    -1,   487,    20,    21,    22,    23,
17964       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
17965       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
17966       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
17967       -1,    55,    56,    57,    58,    59,    60,    -1,    62,    63,
17968       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
17969       -1,    75,    -1,    77,    78,    79,    80,    81,    82,    83,
17970       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
17971       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17972      104,   105,   106,   107,   108,   109,   110,   111,   112,   113,
17973       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
17974      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
17975      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
17976      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
17977       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
17978      164,   165,    -1,   167,   168,   169,   170,   171,    -1,   173,
17979      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
17980      184,   185,   186,   187,   188,   189,    -1,   191,   192,   193,
17981      194,   195,   196,   197,    -1,   199,   200,   201,   202,   203,
17982      204,   205,   206,   207,    -1,   209,    -1,   211,   212,   213,
17983      214,   215,   216,   217,   218,   219,   220,    -1,    -1,   223,
17984      224,   225,   226,   227,    -1,   229,   230,   231,   232,   233,
17985      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17986      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
17987      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
17988      264,   265,   266,   267,    -1,   269,   270,   271,   272,   273,
17989      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
17990       -1,   285,   286,   287,   288,   289,   290,   291,   292,   293,
17991      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
17992      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
17993      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
17994      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
17995      334,   335,   336,   337,   338,   339,    -1,   341,   342,   343,
17996      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
17997      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
17998      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
17999      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
18000      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
18001      394,    -1,   396,   397,   398,   399,   400,   401,   402,    -1,
18002      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
18003       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
18004       -1,   425,   426,   427,   428,   429,   430,    -1,   432,   433,
18005      434,   435,   436,   437,   438,    -1,   440,   441,   442,   443,
18006      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
18007      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18008      464,   465,   466,   467,   468,   469,   470,     3,    -1,    -1,
18009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18010       -1,    -1,    -1,   487,    20,    21,    22,    23,    24,    25,
18011       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
18012       -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,    45,
18013       46,    47,    48,    49,    50,    51,    52,    53,    -1,    55,
18014       56,    57,    58,    59,    60,    -1,    62,    63,    64,    65,
18015       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    75,
18016       -1,    77,    78,    79,    80,    81,    82,    83,    84,    85,
18017       -1,    87,    88,    89,    90,    91,    92,    -1,    94,    95,
18018       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
18019      106,   107,   108,   109,   110,   111,   112,   113,    -1,   115,
18020       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
18021      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
18022      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
18023      146,   147,   148,   149,   150,   151,   152,   153,    -1,   155,
18024       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,   165,
18025       -1,   167,   168,   169,   170,   171,    -1,   173,   174,    -1,
18026      176,   177,   178,    -1,   180,   181,   182,   183,   184,   185,
18027      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
18028      196,   197,    -1,   199,   200,   201,   202,   203,   204,   205,
18029      206,   207,    -1,   209,    -1,   211,   212,   213,   214,   215,
18030      216,   217,   218,   219,   220,    -1,    -1,   223,   224,   225,
18031      226,   227,    -1,   229,   230,   231,   232,   233,   234,   235,
18032      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
18033      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
18034      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
18035      266,   267,    -1,   269,   270,   271,   272,   273,   274,    -1,
18036      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
18037      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
18038      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
18039      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
18040      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
18041      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
18042      336,   337,   338,   339,    -1,   341,   342,   343,   344,   345,
18043      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
18044      356,   357,   358,    -1,   360,   361,   362,   363,   364,   365,
18045      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
18046       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
18047      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
18048      396,   397,   398,   399,   400,   401,   402,    -1,   404,   405,
18049      406,    -1,    -1,   409,   410,   411,   412,   413,    -1,   415,
18050      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
18051      426,   427,   428,   429,   430,    -1,   432,   433,   434,   435,
18052      436,   437,   438,    -1,   440,   441,   442,   443,   444,   445,
18053       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
18054      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
18055      466,   467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,
18056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18057       -1,   487,    20,    21,    22,    23,    24,    25,    26,    27,
18058       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,
18059       -1,    39,    40,    -1,    42,    43,    44,    45,    46,    47,
18060       48,    49,    50,    51,    52,    53,    -1,    55,    56,    57,
18061       58,    59,    60,    -1,    62,    63,    64,    65,    66,    67,
18062       -1,    69,    70,    71,    72,    73,    -1,    75,    -1,    77,
18063       78,    79,    80,    81,    82,    83,    84,    85,    -1,    87,
18064       88,    89,    90,    91,    92,    -1,    94,    95,    96,    97,
18065       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
18066      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
18067      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
18068       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
18069      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
18070      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
18071      158,   159,   160,    -1,   162,    -1,   164,   165,    -1,   167,
18072      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
18073      178,    -1,   180,   181,   182,   183,   184,   185,   186,   187,
18074      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18075       -1,   199,   200,   201,   202,   203,   204,   205,   206,   207,
18076       -1,   209,    -1,   211,   212,   213,   214,   215,   216,   217,
18077      218,   219,   220,    -1,    -1,   223,   224,   225,   226,   227,
18078       -1,   229,   230,   231,   232,   233,   234,   235,   236,   237,
18079      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18080      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
18081      258,   259,   260,   261,   262,    -1,   264,   265,   266,   267,
18082       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
18083       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
18084      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
18085      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
18086      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
18087      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
18088      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18089      338,   339,    -1,   341,   342,   343,   344,   345,   346,   347,
18090      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18091      358,    -1,   360,   361,   362,   363,   364,   365,   366,   367,
18092      368,   369,   370,   371,   372,   373,   374,   375,    -1,   377,
18093      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18094      388,   389,   390,   391,    -1,   393,   394,    -1,   396,   397,
18095      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
18096       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
18097      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
18098      428,   429,   430,    -1,   432,   433,   434,   435,   436,   437,
18099      438,    -1,   440,   441,   442,   443,   444,   445,    -1,    -1,
18100      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
18101      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
18102      468,   469,   470,     3,    -1,     5,     6,    -1,    -1,    -1,
18103       -1,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,
18104       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
18105       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
18106       40,    -1,    42,    43,    44,    45,    46,    47,    48,    49,
18107       50,    51,    52,    53,    -1,    55,    56,    57,    58,    59,
18108       60,    -1,    -1,    63,    64,    65,    66,    67,    -1,    69,
18109       70,    71,    72,    73,    -1,    75,    -1,    77,    78,    79,
18110       80,    81,    82,    83,    84,    85,    -1,    87,    88,    89,
18111       90,    91,    92,    -1,    94,    95,    96,    97,    -1,    -1,
18112       -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
18113      110,   111,   112,   113,    -1,   115,    -1,   117,   118,   119,
18114      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
18115      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
18116      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
18117      150,   151,   152,   153,   154,   155,    -1,   157,   158,   159,
18118      160,    -1,   162,    -1,   164,   165,    -1,   167,   168,   169,
18119      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
18120      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
18121       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
18122      200,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
18123       -1,   211,   212,   213,   214,   215,   216,   217,   218,   219,
18124      220,    -1,    -1,   223,   224,   225,   226,   227,    -1,   229,
18125      230,   231,    -1,    -1,   234,   235,   236,   237,   238,   239,
18126      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
18127      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
18128      260,   261,   262,    -1,   264,   265,   266,   267,    -1,   269,
18129      270,   271,   272,   273,   274,    -1,   276,   277,   278,    -1,
18130      280,   281,   282,    -1,    -1,   285,   286,   287,   288,   289,
18131      290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
18132      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
18133      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
18134      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
18135      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
18136       -1,   341,   342,   343,   344,   345,   346,   347,   348,   349,
18137      350,   351,   352,   353,   354,   355,   356,   357,   358,    -1,
18138      360,   361,   362,   363,   364,    -1,   366,   367,   368,   369,
18139      370,   371,   372,   373,   374,   375,    -1,   377,   378,   379,
18140      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
18141      390,   391,    -1,   393,   394,    -1,   396,   397,   398,   399,
18142      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
18143      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
18144      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
18145       -1,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
18146      440,   441,   442,   443,   444,   445,    -1,    -1,   448,    -1,
18147       -1,   451,   452,   453,   454,   455,   456,   457,   458,   459,
18148      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
18149      470,     3,    -1,    -1,    -1,    -1,    -1,    -1,   478,   479,
18150      480,    -1,    -1,    -1,    -1,    -1,    -1,   487,    20,    21,
18151       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
18152       32,    33,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
18153       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
18154       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
18155       -1,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
18156       72,    73,    -1,    75,    -1,    77,    78,    79,    80,    81,
18157       82,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
18158       92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,
18159       -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
18160      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
18161      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
18162      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
18163      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
18164      152,   153,    -1,   155,    -1,   157,   158,   159,   160,    -1,
18165      162,    -1,   164,   165,    -1,   167,   168,   169,   170,   171,
18166       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
18167      182,   183,   184,   185,   186,   187,   188,   189,    -1,   191,
18168      192,   193,   194,   195,   196,   197,    -1,   199,   200,   201,
18169      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
18170      212,   213,   214,   215,   216,   217,   218,   219,   220,    -1,
18171       -1,   223,   224,   225,   226,   227,    -1,   229,   230,   231,
18172       -1,    -1,   234,   235,   236,   237,   238,   239,   240,   241,
18173      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
18174      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
18175      262,    -1,   264,   265,   266,   267,    -1,   269,   270,   271,
18176      272,   273,   274,    -1,   276,   277,    -1,    -1,   280,   281,
18177      282,    -1,    -1,   285,   286,   287,   288,   289,   290,   291,
18178      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
18179       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
18180      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
18181      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
18182      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
18183      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
18184      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
18185      362,   363,   364,    -1,   366,   367,   368,   369,   370,   371,
18186      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
18187      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
18188       -1,   393,   394,   395,   396,   397,   398,   399,   400,   401,
18189      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
18190      412,   413,    -1,   415,   416,   417,   418,   419,   420,   421,
18191      422,    -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,
18192      432,   433,   434,   435,   436,   437,   438,    -1,   440,   441,
18193      442,   443,   444,   445,    -1,    -1,   448,    -1,   450,   451,
18194      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
18195      462,   463,   464,   465,   466,   467,   468,   469,   470,     3,
18196       -1,   473,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18197       -1,    -1,    -1,    -1,    -1,   487,    20,    21,    22,    23,
18198       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
18199       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
18200       44,    45,    46,    47,    48,    49,    50,    51,    52,    53,
18201       -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
18202       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
18203       -1,    75,    -1,    77,    78,    79,    80,    81,    82,    83,
18204       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
18205       94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,
18206       -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
18207       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
18208      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
18209      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
18210      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
18211       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
18212      164,   165,    -1,   167,   168,   169,   170,   171,    -1,   173,
18213      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
18214      184,   185,   186,   187,   188,   189,    -1,   191,   192,   193,
18215      194,   195,   196,   197,    -1,   199,   200,   201,   202,   203,
18216      204,   205,   206,   207,    -1,   209,    -1,   211,   212,   213,
18217      214,   215,   216,   217,   218,   219,   220,    -1,    -1,   223,
18218      224,   225,   226,   227,    -1,   229,   230,   231,    -1,    -1,
18219      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
18220      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
18221      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
18222      264,   265,   266,   267,    -1,   269,   270,   271,   272,   273,
18223      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
18224       -1,   285,   286,   287,   288,   289,   290,   291,   292,   293,
18225      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
18226      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
18227      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18228      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
18229      334,   335,   336,   337,   338,   339,    -1,   341,   342,   343,
18230      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18231      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
18232      364,    -1,   366,   367,   368,   369,   370,   371,   372,   373,
18233      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
18234      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
18235      394,    -1,   396,   397,   398,   399,   400,   401,   402,    -1,
18236      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
18237       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
18238       -1,   425,   426,   427,   428,   429,    -1,    -1,   432,   433,
18239      434,   435,   436,   437,   438,    -1,   440,   441,   442,   443,
18240      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
18241      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18242      464,   465,   466,   467,   468,   469,   470,     3,    -1,    -1,
18243       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18244       -1,    -1,    -1,   487,    20,    21,    22,    23,    24,    25,
18245       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
18246       -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,
18247       46,    47,    48,    49,    50,    -1,    52,    53,    -1,    55,
18248       56,    57,    58,    59,    60,    -1,    -1,    63,    64,    65,
18249       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    -1,
18250       -1,    77,    78,    79,    80,    81,    -1,    83,    84,    85,
18251       -1,    87,    88,    89,    90,    91,    92,    -1,    -1,    95,
18252       96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
18253      106,   107,   108,   109,   110,   111,   112,   113,    -1,   115,
18254       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
18255      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
18256      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
18257      146,   147,   148,   149,   150,   151,   152,   153,    -1,   155,
18258       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,    -1,
18259       -1,    -1,   168,   169,   170,   171,    -1,   173,   174,    -1,
18260      176,   177,   178,    -1,   180,   181,   182,   183,   184,    -1,
18261      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
18262      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
18263      206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,
18264      216,   217,   218,   219,   220,    -1,    -1,   223,   224,    -1,
18265      226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,
18266      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
18267      246,   247,   248,   249,   250,    -1,   252,   253,   254,   255,
18268      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
18269       -1,   267,    -1,   269,   270,   271,   272,   273,   274,    -1,
18270      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
18271      286,   287,    -1,   289,    -1,   291,   292,   293,   294,   295,
18272      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
18273      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
18274      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
18275      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
18276      336,   337,   338,   339,    -1,   341,   342,    -1,   344,   345,
18277      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
18278      356,   357,   358,   359,   360,   361,   362,   363,   364,    -1,
18279      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
18280       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
18281      386,   387,   388,   389,   390,   391,    -1,   393,   394,   395,
18282      396,    -1,   398,   399,   400,   401,   402,    -1,   404,   405,
18283      406,    -1,    -1,   409,   410,   411,   412,   413,    -1,   415,
18284      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
18285      426,   427,   428,   429,    -1,    -1,   432,   433,   434,   435,
18286      436,   437,   438,    -1,   440,    -1,   442,   443,   444,   445,
18287       -1,    -1,   448,    -1,   450,   451,   452,   453,   454,   455,
18288      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
18289      466,   467,   468,   469,   470,     3,    -1,   473,    -1,    -1,
18290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18291       -1,   487,    20,    21,    22,    23,    24,    25,    26,    27,
18292       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,
18293       -1,    39,    40,    -1,    42,    43,    44,    -1,    46,    47,
18294       48,    49,    50,    -1,    52,    53,    -1,    55,    56,    57,
18295       58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
18296       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    77,
18297       78,    79,    80,    81,    -1,    83,    84,    85,    -1,    87,
18298       88,    89,    90,    91,    92,    -1,    -1,    95,    96,    97,
18299       -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,
18300      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
18301      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
18302       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
18303      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
18304      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
18305      158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,
18306      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
18307      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
18308      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18309       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18310       -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,
18311      218,   219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,
18312       -1,   229,   230,   231,    -1,    -1,   234,   235,   236,   237,
18313      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18314      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
18315      258,   259,   260,   261,   262,    -1,   264,   265,    -1,   267,
18316       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
18317       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
18318       -1,   289,    -1,   291,   292,   293,   294,   295,   296,   297,
18319      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
18320      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
18321      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
18322      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18323      338,   339,    -1,   341,   342,    -1,   344,   345,   346,   347,
18324      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18325      358,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
18326      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
18327      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18328      388,   389,   390,   391,    -1,   393,   394,    -1,   396,    -1,
18329      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
18330       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
18331      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
18332      428,   429,    -1,    -1,   432,   433,   434,   435,   436,   437,
18333      438,    -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,
18334      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
18335      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
18336      468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,
18337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,
18338       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
18339       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
18340       40,    -1,    42,    43,    44,    -1,    46,    47,    48,    49,
18341       50,    -1,    52,    53,    -1,    55,    56,    57,    58,    59,
18342       60,    -1,    -1,    63,    64,    65,    66,    67,    -1,    69,
18343       70,    71,    72,    73,    -1,    -1,    -1,    77,    78,    79,
18344       80,    81,    -1,    83,    84,    85,    -1,    87,    88,    89,
18345       90,    91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,
18346       -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,
18347      110,   111,   112,   113,    -1,   115,    -1,   117,   118,   119,
18348      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
18349      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
18350      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
18351      150,   151,   152,   153,    -1,   155,    -1,   157,   158,   159,
18352      160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,
18353      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
18354      180,   181,   182,   183,   184,    -1,   186,   187,   188,   189,
18355       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
18356       -1,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
18357       -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,   219,
18358      220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,
18359      230,   231,    -1,    -1,   234,   235,   236,   237,   238,   239,
18360      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
18361      250,    -1,   252,   253,   254,   255,   256,   257,   258,   259,
18362      260,   261,   262,    -1,   264,   265,    -1,   267,    -1,   269,
18363      270,   271,   272,   273,   274,    -1,   276,   277,    -1,    -1,
18364      280,   281,   282,    -1,    -1,   285,   286,   287,    -1,   289,
18365       -1,   291,   292,   293,   294,   295,   296,   297,   298,   299,
18366      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
18367      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
18368      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
18369      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
18370       -1,   341,   342,    -1,   344,   345,   346,   347,   348,   349,
18371      350,   351,   352,   353,   354,   355,   356,   357,   358,    -1,
18372      360,   361,   362,   363,   364,    -1,   366,   367,   368,   369,
18373      370,    -1,   372,   373,   374,   375,    -1,   377,   378,   379,
18374      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
18375      390,   391,    -1,   393,   394,    -1,   396,    -1,   398,   399,
18376      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
18377      410,   411,   412,   413,    -1,   415,   416,   417,   418,   419,
18378      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
18379       -1,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
18380      440,    -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,
18381       -1,   451,   452,   453,   454,   455,   456,   457,   458,   459,
18382      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
18383      470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18384       -1,    -1,    -1,    -1,    -1,    -1,    -1,   487,    20,    21,
18385       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
18386       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
18387       42,    43,    44,    -1,    46,    47,    48,    49,    50,    -1,
18388       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
18389       -1,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
18390       72,    73,    -1,    -1,    -1,    77,    78,    79,    80,    81,
18391       -1,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
18392       92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,
18393       -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
18394      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
18395      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
18396      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
18397      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
18398      152,   153,    -1,   155,    -1,   157,   158,   159,   160,    -1,
18399      162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,
18400       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
18401      182,   183,   184,    -1,   186,   187,   188,   189,    -1,   191,
18402      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
18403      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
18404       -1,    -1,   214,    -1,   216,   217,   218,   219,   220,    -1,
18405       -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,   231,
18406       -1,    -1,   234,   235,   236,   237,   238,   239,   240,   241,
18407      242,   243,   244,   245,   246,   247,   248,   249,   250,    -1,
18408      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
18409      262,    -1,   264,   265,    -1,   267,    -1,   269,   270,   271,
18410      272,   273,   274,    -1,   276,   277,    -1,    -1,   280,   281,
18411      282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,
18412      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
18413       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
18414      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
18415      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
18416      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
18417      342,    -1,   344,   345,   346,   347,   348,   349,   350,   351,
18418      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
18419      362,   363,   364,    -1,   366,   367,   368,   369,   370,    -1,
18420      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
18421      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
18422       -1,   393,   394,    -1,   396,    -1,   398,   399,   400,   401,
18423      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
18424      412,   413,    -1,   415,   416,   417,   418,   419,   420,   421,
18425      422,    -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,
18426      432,   433,   434,   435,   436,   437,   438,    -1,   440,    -1,
18427      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
18428      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
18429      462,   463,   464,   465,   466,   467,   468,   469,   470,     3,
18430       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18431       -1,    -1,    -1,    -1,    -1,   487,    20,    21,    22,    23,
18432       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
18433       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
18434       44,    -1,    46,    47,    48,    49,    50,    -1,    52,    53,
18435       -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
18436       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
18437       -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,    83,
18438       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
18439       -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,
18440       -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
18441       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
18442      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
18443      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
18444      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
18445       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
18446      164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,
18447      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
18448      184,    -1,   186,   187,   188,   189,    -1,   191,   192,   193,
18449      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
18450      204,   205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,
18451      214,    -1,   216,   217,   218,   219,   220,    -1,    -1,   223,
18452      224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,
18453      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
18454      244,   245,   246,   247,   248,   249,   250,    -1,   252,   253,
18455      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
18456      264,   265,    -1,   267,    -1,   269,   270,   271,   272,   273,
18457      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
18458       -1,   285,   286,   287,    -1,   289,    -1,   291,   292,   293,
18459      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
18460      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
18461      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18462      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
18463      334,   335,   336,   337,   338,   339,    -1,   341,   342,    -1,
18464      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18465      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
18466      364,    -1,   366,   367,   368,   369,   370,    -1,   372,   373,
18467      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
18468      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
18469      394,    -1,   396,    -1,   398,   399,   400,   401,   402,    -1,
18470      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
18471       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
18472       -1,   425,   426,   427,   428,   429,    -1,    -1,   432,   433,
18473      434,   435,   436,   437,   438,    -1,   440,    -1,   442,   443,
18474      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
18475      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18476      464,   465,   466,   467,   468,   469,   470,    -1,    -1,    -1,
18477        3,    -1,     5,     6,    -1,    -1,    -1,    10,    11,    -1,
18478       -1,    -1,    -1,   487,    17,    18,    19,    20,    21,    22,
18479       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
18480       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
18481       43,    44,    45,    46,    47,    48,    -1,    50,    51,    52,
18482       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
18483       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
18484       -1,    74,    75,    76,    77,    78,    79,    80,    81,    82,
18485       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
18486       93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
18487      103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
18488      113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
18489      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
18490      133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
18491      143,   144,   145,   146,   147,    -1,   149,   150,   151,   152,
18492       -1,   154,   155,   156,   157,   158,   159,   160,   161,   162,
18493      163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
18494      173,    -1,   175,    -1,   177,   178,   179,   180,   181,   182,
18495      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
18496      193,   194,   195,   196,   197,   198,   199,   200,    -1,   202,
18497      203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
18498      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
18499      223,    -1,   225,   226,   227,   228,   229,   230,   231,   232,
18500      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
18501      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
18502      253,   254,   255,   256,   257,   258,   259,   260,    -1,   262,
18503      263,   264,   265,   266,   267,   268,    -1,   270,   271,   272,
18504      273,   274,   275,   276,   277,   278,   279,   280,   281,   282,
18505      283,   284,   285,   286,    -1,   288,   289,   290,    -1,   292,
18506      293,   294,   295,   296,   297,   298,   299,   300,    -1,   302,
18507      303,   304,    -1,   306,    -1,   308,   309,   310,   311,   312,
18508      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
18509      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18510      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
18511      343,   344,   345,   346,   347,   348,    -1,   350,   351,   352,
18512      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18513      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
18514      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
18515      383,   384,   385,   386,   387,   388,   389,    -1,   391,   392,
18516      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
18517      403,   404,   405,   406,   407,   408,   409,   410,    -1,   412,
18518       -1,   414,   415,   416,   417,   418,   419,   420,   421,   422,
18519      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18520      433,   434,   435,   436,    -1,   438,   439,   440,   441,   442,
18521      443,   444,   445,   446,   447,   448,   449,   450,   451,   452,
18522      453,   454,   455,   456,    -1,    -1,    -1,    -1,    -1,    -1,
18523       -1,    -1,    -1,    -1,    -1,   468,   469,   470,    -1,    -1,
18524       -1,   474,   475,   476,    -1,   478,   479,   480,   481,   482,
18525      483,     3,    -1,     5,     6,    -1,    -1,    -1,    10,    11,
18526       -1,    -1,    -1,    -1,    -1,    17,    18,    19,    20,    21,
18527       22,    23,    24,    25,    26,    27,    28,    29,    30,    31,
18528       32,    33,    34,    35,    36,    37,    38,    39,    40,    41,
18529       42,    43,    44,    45,    46,    47,    48,    -1,    50,    51,
18530       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
18531       62,    63,    64,    65,    66,    67,    68,    69,    70,    71,
18532       72,    -1,    74,    75,    76,    77,    78,    79,    80,    81,
18533       82,    83,    84,    85,    86,    87,    88,    89,    90,    91,
18534       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
18535      102,   103,   104,   105,   106,   107,   108,   109,   110,   111,
18536      112,   113,   114,   115,   116,   117,   118,   119,   120,   121,
18537      122,   123,   124,   125,   126,   127,   128,   129,   130,   131,
18538      132,   133,   134,   135,   136,   137,   138,   139,   140,   141,
18539      142,   143,   144,   145,   146,   147,    -1,   149,   150,   151,
18540      152,    -1,   154,   155,   156,   157,   158,   159,   160,   161,
18541      162,   163,   164,   165,   166,   167,   168,   169,   170,   171,
18542      172,   173,    -1,   175,    -1,   177,   178,   179,   180,   181,
18543      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
18544      192,   193,   194,   195,   196,   197,   198,   199,   200,    -1,
18545      202,   203,   204,   205,   206,   207,   208,   209,   210,   211,
18546      212,   213,   214,   215,   216,   217,   218,   219,   220,   221,
18547      222,   223,    -1,   225,   226,   227,   228,   229,   230,   231,
18548      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
18549      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
18550      252,   253,   254,   255,   256,   257,   258,   259,   260,    -1,
18551      262,   263,   264,   265,   266,   267,   268,    -1,   270,   271,
18552      272,   273,   274,   275,   276,   277,   278,   279,   280,   281,
18553      282,   283,   284,   285,   286,    -1,   288,   289,   290,    -1,
18554      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
18555      302,   303,   304,    -1,   306,    -1,   308,   309,   310,   311,
18556      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
18557      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
18558      332,   333,   334,   335,   336,   337,   338,   339,   340,   341,
18559      342,   343,   344,   345,   346,   347,   348,    -1,   350,   351,
18560      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
18561      362,   363,   364,   365,   366,   367,   368,   369,   370,   371,
18562      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
18563      382,   383,   384,   385,   386,   387,   388,   389,    -1,   391,
18564      392,   393,   394,   395,   396,   397,   398,   399,   400,   401,
18565      402,   403,   404,   405,   406,   407,   408,   409,   410,    -1,
18566      412,    -1,   414,   415,   416,   417,   418,   419,   420,   421,
18567      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
18568      432,   433,   434,   435,   436,    -1,   438,   439,   440,   441,
18569      442,   443,   444,   445,   446,   447,   448,   449,   450,   451,
18570      452,   453,   454,   455,   456,    -1,    -1,    -1,    -1,    -1,
18571       -1,    -1,    -1,    -1,    -1,    -1,   468,   469,   470,    -1,
18572       -1,    -1,   474,   475,   476,     3,   478,   479,   480,   481,
18573      482,   483,    10,    -1,    -1,    -1,    -1,    -1,    -1,    17,
18574       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
18575       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,
18576       -1,    39,    40,    -1,    42,    43,    44,    -1,    46,    47,
18577       48,    49,    50,    -1,    52,    53,    -1,    55,    56,    57,
18578       58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
18579       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    77,
18580       78,    79,    80,    81,    -1,    83,    84,    85,    -1,    87,
18581       88,    89,    90,    91,    92,    -1,    -1,    95,    96,    97,
18582       -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,
18583      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
18584      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
18585       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
18586      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
18587      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
18588      158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,
18589      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
18590      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
18591      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18592       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18593       -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,
18594      218,   219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,
18595       -1,   229,   230,   231,    -1,    -1,   234,   235,   236,   237,
18596      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18597      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
18598      258,   259,   260,   261,   262,    -1,   264,   265,    -1,   267,
18599       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
18600       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
18601       -1,   289,    -1,   291,   292,   293,   294,   295,   296,   297,
18602      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
18603      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
18604      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
18605      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18606      338,   339,    -1,   341,   342,    -1,   344,   345,   346,   347,
18607      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18608      358,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
18609      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
18610      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18611      388,   389,   390,   391,    -1,   393,   394,    -1,   396,    -1,
18612      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
18613       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
18614      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
18615      428,   429,    -1,    -1,   432,   433,   434,   435,   436,   437,
18616      438,    -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,
18617      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
18618      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
18619      468,   469,   470,    -1,    -1,    -1,   474,   475,   476,     3,
18620      478,   479,   480,   481,   482,   483,    10,    -1,    -1,    -1,
18621       -1,    -1,    -1,    17,    18,    19,    20,    21,    22,    23,
18622       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
18623       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
18624       44,    -1,    46,    47,    48,    49,    50,    -1,    52,    53,
18625       -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
18626       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
18627       -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,    83,
18628       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
18629       -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,
18630       -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
18631       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
18632      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
18633      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
18634      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
18635       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
18636      164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,
18637      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
18638      184,    -1,   186,   187,   188,   189,    -1,   191,   192,   193,
18639      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
18640      204,   205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,
18641      214,    -1,   216,   217,   218,   219,   220,    -1,    -1,   223,
18642      224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,
18643      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
18644      244,   245,   246,   247,   248,   249,   250,    -1,   252,   253,
18645      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
18646      264,   265,    -1,   267,    -1,   269,   270,   271,   272,   273,
18647      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
18648       -1,   285,   286,   287,    -1,   289,    -1,   291,   292,   293,
18649      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
18650      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
18651      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18652      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
18653      334,   335,   336,   337,   338,   339,    -1,   341,   342,    -1,
18654      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18655      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
18656      364,    -1,   366,   367,   368,   369,   370,    -1,   372,   373,
18657      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
18658      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
18659      394,    -1,   396,    -1,   398,   399,   400,   401,   402,    -1,
18660      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
18661       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
18662       -1,   425,   426,   427,   428,   429,    -1,    -1,   432,   433,
18663      434,   435,   436,   437,   438,    -1,   440,    -1,   442,   443,
18664      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
18665      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18666      464,   465,   466,   467,   468,   469,   470,    -1,    -1,    -1,
18667      474,   475,   476,     3,   478,   479,   480,   481,   482,   483,
18668       10,    -1,    -1,    -1,    -1,    -1,    -1,    17,    18,    19,
18669       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
18670       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
18671       40,    -1,    42,    43,    44,    -1,    46,    47,    48,    49,
18672       50,    -1,    52,    53,    -1,    55,    56,    57,    58,    59,
18673       60,    -1,    -1,    63,    64,    65,    66,    67,    -1,    69,
18674       70,    71,    72,    73,    -1,    -1,    -1,    77,    78,    79,
18675       80,    81,    -1,    83,    84,    85,    -1,    87,    88,    89,
18676       90,    91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,
18677       -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,
18678      110,   111,   112,   113,    -1,   115,    -1,   117,   118,   119,
18679      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
18680      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
18681      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
18682      150,   151,   152,   153,    -1,   155,    -1,   157,   158,   159,
18683      160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,
18684      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
18685      180,   181,   182,   183,   184,    -1,   186,   187,   188,   189,
18686       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
18687       -1,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
18688       -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,   219,
18689      220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,
18690      230,   231,    -1,    -1,   234,   235,   236,   237,   238,   239,
18691      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
18692      250,    -1,   252,   253,   254,   255,   256,   257,   258,   259,
18693      260,   261,   262,    -1,   264,   265,    -1,   267,    -1,   269,
18694      270,   271,   272,   273,   274,    -1,   276,   277,    -1,    -1,
18695      280,   281,   282,    -1,    -1,   285,   286,   287,    -1,   289,
18696       -1,   291,   292,   293,   294,   295,   296,   297,   298,   299,
18697      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
18698      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
18699      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
18700      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
18701       -1,   341,   342,    -1,   344,   345,   346,   347,   348,   349,
18702      350,   351,   352,   353,   354,   355,   356,   357,   358,    -1,
18703      360,   361,   362,   363,   364,    -1,   366,   367,   368,   369,
18704      370,    -1,   372,   373,   374,   375,    -1,   377,   378,   379,
18705      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
18706      390,   391,    -1,   393,   394,    -1,   396,    -1,   398,   399,
18707      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
18708      410,   411,   412,   413,    -1,   415,   416,   417,   418,   419,
18709      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
18710       -1,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
18711      440,    -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,
18712       -1,   451,   452,   453,   454,   455,   456,   457,   458,   459,
18713      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
18714      470,    -1,    -1,    -1,   474,   475,   476,     3,   478,   479,
18715      480,   481,   482,   483,    10,    -1,    -1,    -1,    -1,    -1,
18716       -1,    17,    18,    19,    20,    21,    22,    23,    24,    25,
18717       26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,
18718       -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,
18719       46,    47,    48,    49,    50,    -1,    52,    53,    -1,    55,
18720       56,    57,    58,    59,    60,    -1,    -1,    63,    64,    65,
18721       66,    67,    -1,    69,    70,    71,    72,    73,    -1,    -1,
18722       -1,    77,    78,    79,    80,    81,    -1,    83,    84,    85,
18723       -1,    87,    88,    89,    90,    91,    92,    -1,    -1,    95,
18724       96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,
18725      106,   107,   108,   109,   110,   111,   112,   113,    -1,   115,
18726       -1,   117,   118,   119,   120,   121,   122,    -1,   124,   125,
18727      126,   127,    -1,    -1,   130,   131,   132,   133,   134,    -1,
18728      136,   137,   138,    -1,   140,   141,   142,    -1,   144,   145,
18729      146,   147,   148,   149,   150,   151,   152,   153,    -1,   155,
18730       -1,   157,   158,   159,   160,    -1,   162,    -1,   164,    -1,
18731       -1,    -1,   168,   169,   170,   171,    -1,   173,   174,    -1,
18732      176,   177,   178,    -1,   180,   181,   182,   183,   184,    -1,
18733      186,   187,   188,   189,    -1,   191,   192,   193,   194,   195,
18734      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
18735      206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,
18736      216,   217,   218,   219,   220,    -1,    -1,   223,   224,    -1,
18737      226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,
18738      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
18739      246,   247,   248,   249,   250,    -1,   252,   253,   254,   255,
18740      256,   257,   258,   259,   260,   261,   262,    -1,   264,   265,
18741       -1,   267,    -1,   269,   270,   271,   272,   273,   274,    -1,
18742      276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,
18743      286,   287,    -1,   289,    -1,   291,   292,   293,   294,   295,
18744      296,   297,   298,   299,   300,    -1,    -1,   303,   304,   305,
18745      306,   307,   308,   309,   310,    -1,   312,   313,   314,   315,
18746      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
18747      326,    -1,   328,   329,   330,   331,   332,   333,   334,   335,
18748      336,   337,   338,   339,    -1,   341,   342,    -1,   344,   345,
18749      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
18750      356,   357,   358,    -1,   360,   361,   362,   363,   364,    -1,
18751      366,   367,   368,   369,   370,    -1,   372,   373,   374,   375,
18752       -1,   377,   378,   379,   380,   381,   382,   383,   384,   385,
18753      386,   387,   388,   389,   390,   391,    -1,   393,   394,    -1,
18754      396,    -1,   398,   399,   400,   401,   402,    -1,   404,   405,
18755      406,    -1,    -1,   409,   410,   411,   412,   413,    -1,   415,
18756      416,   417,   418,   419,   420,   421,   422,    -1,    -1,   425,
18757      426,   427,   428,   429,    -1,    -1,   432,   433,   434,   435,
18758      436,   437,   438,    -1,   440,    -1,   442,   443,   444,   445,
18759       -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,   455,
18760      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
18761      466,   467,   468,   469,   470,    -1,    -1,    -1,   474,   475,
18762      476,     3,   478,   479,   480,   481,   482,   483,    10,    -1,
18763       -1,    -1,    -1,    -1,    -1,    17,    18,    19,    20,    21,
18764       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
18765       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
18766       42,    43,    44,    -1,    46,    47,    48,    49,    50,    -1,
18767       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
18768       -1,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
18769       72,    73,    -1,    -1,    -1,    77,    78,    79,    80,    81,
18770       -1,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
18771       92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,
18772       -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
18773      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
18774      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
18775      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
18776      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
18777      152,   153,    -1,   155,    -1,   157,   158,   159,   160,    -1,
18778      162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,
18779       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
18780      182,   183,   184,    -1,   186,   187,   188,   189,    -1,   191,
18781      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
18782      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
18783       -1,    -1,   214,    -1,   216,   217,   218,   219,   220,    -1,
18784       -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,   231,
18785       -1,    -1,   234,   235,   236,   237,   238,   239,   240,   241,
18786      242,   243,   244,   245,   246,   247,   248,   249,   250,    -1,
18787      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
18788      262,    -1,   264,   265,    -1,   267,    -1,   269,   270,   271,
18789      272,   273,   274,    -1,   276,   277,    -1,    -1,   280,   281,
18790      282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,
18791      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
18792       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
18793      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
18794      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
18795      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
18796      342,    -1,   344,   345,   346,   347,   348,   349,   350,   351,
18797      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
18798      362,   363,   364,    -1,   366,   367,   368,   369,   370,    -1,
18799      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
18800      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
18801       -1,   393,   394,    -1,   396,    -1,   398,   399,   400,   401,
18802      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
18803      412,   413,    -1,   415,   416,   417,   418,   419,   420,   421,
18804      422,    -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,
18805      432,   433,   434,   435,   436,   437,   438,    -1,   440,    -1,
18806      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
18807      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
18808      462,   463,   464,   465,   466,   467,   468,   469,   470,    -1,
18809       -1,    -1,   474,   475,   476,     3,   478,   479,   480,   481,
18810      482,   483,    10,    -1,    -1,    -1,    -1,    -1,    -1,    17,
18811       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
18812       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,
18813       -1,    39,    40,    -1,    42,    43,    44,    -1,    46,    47,
18814       48,    49,    50,    -1,    52,    53,    -1,    55,    56,    57,
18815       58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
18816       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    77,
18817       78,    79,    80,    81,    -1,    83,    84,    85,    -1,    87,
18818       88,    89,    90,    91,    92,    -1,    -1,    95,    96,    97,
18819       -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,
18820      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
18821      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
18822       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
18823      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
18824      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
18825      158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,
18826      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
18827      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
18828      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18829       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18830       -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,
18831      218,   219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,
18832       -1,   229,   230,   231,    -1,    -1,   234,   235,   236,   237,
18833      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18834      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
18835      258,   259,   260,   261,   262,    -1,   264,   265,    -1,   267,
18836       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
18837       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
18838       -1,   289,    -1,   291,   292,   293,   294,   295,   296,   297,
18839      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
18840      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
18841      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
18842      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18843      338,   339,    -1,   341,   342,    -1,   344,   345,   346,   347,
18844      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18845      358,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
18846      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
18847      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18848      388,   389,   390,   391,    -1,   393,   394,    -1,   396,    -1,
18849      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
18850       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
18851      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
18852      428,   429,    -1,    -1,   432,   433,   434,   435,   436,   437,
18853      438,    -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,
18854      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
18855      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
18856      468,   469,   470,    -1,    -1,    -1,   474,   475,   476,     3,
18857      478,   479,   480,   481,   482,   483,    10,    -1,    -1,    -1,
18858       -1,    -1,    -1,    17,    18,    19,    20,    21,    22,    23,
18859       24,    25,    26,    27,    -1,    29,    30,    31,    -1,    -1,
18860       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
18861       44,    -1,    46,    47,    48,    49,    50,    -1,    52,    53,
18862       -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
18863       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
18864       -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,    83,
18865       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
18866       -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,
18867       -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
18868       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
18869      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
18870      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
18871      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
18872       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
18873      164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,
18874      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
18875      184,    -1,   186,   187,   188,   189,    -1,   191,   192,   193,
18876      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
18877      204,   205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,
18878      214,    -1,   216,   217,   218,   219,   220,    -1,    -1,   223,
18879      224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,
18880      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
18881      244,   245,   246,   247,   248,   249,   250,    -1,   252,   253,
18882      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
18883      264,   265,    -1,   267,    -1,   269,   270,   271,   272,   273,
18884      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
18885       -1,   285,   286,   287,    -1,   289,    -1,   291,   292,   293,
18886      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
18887      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
18888      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
18889      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
18890      334,   335,   336,   337,   338,   339,    -1,   341,   342,    -1,
18891      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
18892      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
18893      364,    -1,   366,   367,   368,   369,   370,    -1,   372,   373,
18894      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
18895      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
18896      394,    -1,   396,    -1,   398,   399,   400,   401,   402,    -1,
18897      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
18898       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
18899       -1,   425,   426,   427,   428,   429,    -1,    -1,   432,   433,
18900      434,   435,   436,   437,   438,    -1,   440,    -1,   442,   443,
18901      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
18902      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
18903      464,   465,   466,   467,   468,   469,   470,     3,    -1,    -1,
18904      474,   475,   476,    -1,   478,   479,   480,   481,   482,   483,
18905       -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,    25,
18906       26,    27,    28,    29,    30,    31,    32,    33,    34,    35,
18907       36,    37,    38,    39,    40,    41,    42,    43,    44,    45,
18908       46,    47,    48,    49,    50,    51,    52,    53,    54,    55,
18909       56,    57,    58,    59,    60,    61,    62,    63,    64,    65,
18910       66,    67,    68,    69,    70,    71,    72,    73,    74,    75,
18911       76,    77,    78,    79,    80,    81,    82,    83,    84,    85,
18912       86,    87,    88,    89,    90,    91,    92,    93,    94,    95,
18913       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
18914      106,   107,   108,   109,   110,   111,   112,   113,   114,   115,
18915      116,   117,   118,   119,   120,   121,   122,   123,   124,   125,
18916      126,   127,   128,   129,   130,   131,   132,   133,   134,   135,
18917      136,   137,   138,   139,   140,   141,   142,   143,   144,   145,
18918      146,   147,   148,   149,   150,   151,   152,   153,   154,   155,
18919      156,   157,   158,   159,   160,   161,   162,   163,   164,   165,
18920      166,   167,   168,   169,   170,   171,   172,   173,   174,   175,
18921      176,   177,   178,   179,   180,   181,   182,   183,   184,   185,
18922      186,   187,   188,   189,   190,   191,   192,   193,   194,   195,
18923      196,   197,   198,   199,   200,   201,   202,   203,   204,   205,
18924      206,   207,   208,   209,   210,   211,   212,   213,   214,   215,
18925      216,   217,   218,   219,   220,   221,   222,   223,   224,   225,
18926      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
18927      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
18928      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
18929      256,   257,   258,   259,   260,   261,   262,   263,   264,   265,
18930      266,   267,   268,   269,   270,   271,   272,   273,   274,   275,
18931      276,   277,   278,   279,   280,   281,   282,   283,   284,   285,
18932      286,   287,   288,   289,   290,   291,   292,   293,   294,   295,
18933      296,   297,   298,   299,   300,    -1,   302,   303,   304,   305,
18934      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
18935      316,   317,   318,   319,   320,   321,   322,   323,   324,   325,
18936      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
18937      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
18938      346,   347,   348,   349,   350,   351,   352,   353,   354,   355,
18939      356,   357,   358,   359,   360,   361,   362,   363,   364,   365,
18940      366,   367,   368,   369,   370,   371,   372,   373,   374,   375,
18941      376,   377,   378,   379,   380,   381,   382,   383,   384,   385,
18942      386,   387,   388,   389,   390,   391,   392,   393,   394,   395,
18943      396,   397,   398,   399,   400,   401,   402,   403,   404,   405,
18944      406,   407,   408,   409,   410,   411,   412,   413,   414,   415,
18945      416,   417,   418,   419,   420,   421,   422,   423,   424,   425,
18946      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
18947      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
18948      446,   447,   448,   449,   450,   451,   452,   453,   454,   455,
18949      456,   457,   458,   459,   460,   461,   462,   463,   464,   465,
18950      466,   467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,
18951       -1,    -1,    -1,    -1,   480,    -1,    -1,    -1,    -1,    -1,
18952       -1,    -1,    20,    21,    22,    23,    24,    25,    26,    27,
18953       -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,
18954       -1,    39,    40,    -1,    42,    43,    44,    -1,    46,    47,
18955       48,    49,    50,    -1,    52,    53,    -1,    55,    56,    57,
18956       58,    59,    60,    -1,    -1,    63,    64,    65,    66,    67,
18957       -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,    77,
18958       78,    79,    80,    81,    -1,    83,    84,    85,    -1,    87,
18959       88,    89,    90,    91,    92,    -1,    -1,    95,    96,    97,
18960       -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,
18961      108,   109,   110,   111,   112,   113,    -1,   115,    -1,   117,
18962      118,   119,   120,   121,   122,    -1,   124,   125,   126,   127,
18963       -1,    -1,   130,   131,   132,   133,   134,    -1,   136,   137,
18964      138,    -1,   140,   141,   142,    -1,   144,   145,   146,   147,
18965      148,   149,   150,   151,   152,   153,    -1,   155,    -1,   157,
18966      158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,
18967      168,   169,   170,   171,    -1,   173,   174,    -1,   176,   177,
18968      178,    -1,   180,   181,   182,   183,   184,    -1,   186,   187,
18969      188,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18970       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18971       -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,
18972      218,   219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,
18973       -1,   229,   230,   231,    -1,    -1,   234,   235,   236,   237,
18974      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18975      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
18976      258,   259,   260,   261,   262,    -1,   264,   265,    -1,   267,
18977       -1,   269,   270,   271,   272,   273,   274,    -1,   276,   277,
18978       -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,   287,
18979       -1,   289,    -1,   291,   292,   293,   294,   295,   296,   297,
18980      298,   299,   300,    -1,    -1,   303,   304,   305,   306,   307,
18981      308,   309,   310,    -1,   312,   313,   314,   315,   316,   317,
18982      318,   319,   320,   321,   322,   323,   324,   325,   326,    -1,
18983      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18984      338,   339,    -1,   341,   342,    -1,   344,   345,   346,   347,
18985      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18986      358,    -1,   360,   361,   362,   363,   364,    -1,   366,   367,
18987      368,   369,   370,    -1,   372,   373,   374,   375,    -1,   377,
18988      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18989      388,   389,   390,   391,    -1,   393,   394,    -1,   396,    -1,
18990      398,   399,   400,   401,   402,    -1,   404,   405,   406,    -1,
18991       -1,   409,   410,   411,   412,   413,    -1,   415,   416,   417,
18992      418,   419,   420,   421,   422,    -1,    -1,   425,   426,   427,
18993      428,   429,    -1,    -1,   432,   433,   434,   435,   436,   437,
18994      438,    -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,
18995      448,    -1,    -1,   451,   452,   453,   454,   455,   456,   457,
18996      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
18997      468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,
18998       -1,    -1,   480,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18999       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
19000       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
19001       40,    -1,    42,    43,    44,    -1,    46,    47,    48,    49,
19002       50,    -1,    52,    53,    -1,    55,    56,    57,    58,    59,
19003       60,    -1,    -1,    63,    64,    65,    66,    67,    -1,    69,
19004       70,    71,    72,    73,    -1,    -1,    -1,    77,    78,    79,
19005       80,    81,    -1,    83,    84,    85,    -1,    87,    88,    89,
19006       90,    91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,
19007       -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,
19008      110,   111,   112,   113,    -1,   115,    -1,   117,   118,   119,
19009      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
19010      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
19011      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
19012      150,   151,   152,   153,    -1,   155,    -1,   157,   158,   159,
19013      160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,
19014      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
19015      180,   181,   182,   183,   184,    -1,   186,   187,   188,   189,
19016       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
19017       -1,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
19018       -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,   219,
19019      220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,
19020      230,   231,    -1,    -1,   234,   235,   236,   237,   238,   239,
19021      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
19022      250,    -1,   252,   253,   254,   255,   256,   257,   258,   259,
19023      260,   261,   262,    -1,   264,   265,    -1,   267,    -1,   269,
19024      270,   271,   272,   273,   274,    -1,   276,   277,    -1,    -1,
19025      280,   281,   282,    -1,    -1,   285,   286,   287,    -1,   289,
19026       -1,   291,   292,   293,   294,   295,   296,   297,   298,   299,
19027      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
19028      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
19029      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
19030      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
19031       -1,   341,   342,    -1,   344,   345,   346,   347,   348,   349,
19032      350,   351,   352,   353,   354,   355,   356,   357,   358,    -1,
19033      360,   361,   362,   363,   364,    -1,   366,   367,   368,   369,
19034      370,    -1,   372,   373,   374,   375,    -1,   377,   378,   379,
19035      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
19036      390,   391,    -1,   393,   394,    -1,   396,    -1,   398,   399,
19037      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
19038      410,   411,   412,   413,    -1,   415,   416,   417,   418,   419,
19039      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
19040       -1,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
19041      440,    -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,
19042       -1,   451,   452,   453,   454,   455,   456,   457,   458,   459,
19043      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
19044      470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19045      480,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,
19046       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
19047       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
19048       42,    43,    44,    45,    46,    47,    48,    -1,    50,    51,
19049       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
19050       -1,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
19051       72,    -1,    -1,    75,    -1,    77,    78,    79,    80,    81,
19052       82,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
19053       92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,
19054       -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
19055      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
19056      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
19057      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
19058      142,    -1,   144,   145,   146,   147,    -1,   149,   150,   151,
19059      152,    -1,    -1,   155,    -1,   157,   158,   159,   160,    -1,
19060      162,    -1,   164,   165,    -1,   167,   168,   169,   170,   171,
19061       -1,   173,    -1,    -1,    -1,   177,   178,    -1,   180,   181,
19062      182,   183,   184,   185,   186,   187,   188,   189,   190,   191,
19063      192,   193,   194,   195,   196,   197,    -1,   199,   200,   201,
19064      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
19065      212,   213,   214,   215,   216,   217,   218,   219,   220,    -1,
19066       -1,   223,    -1,   225,   226,   227,    -1,   229,   230,   231,
19067       -1,    -1,   234,   235,   236,   237,   238,   239,   240,   241,
19068      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
19069      252,   253,   254,   255,   256,   257,   258,   259,    -1,    -1,
19070      262,    -1,   264,   265,   266,   267,    -1,    -1,   270,   271,
19071      272,   273,   274,    -1,   276,   277,    -1,    -1,   280,   281,
19072      282,    -1,   284,   285,   286,   287,   288,   289,   290,    -1,
19073      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
19074       -1,   303,   304,    -1,   306,    -1,   308,   309,   310,    -1,
19075      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
19076      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
19077      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
19078      342,   343,   344,   345,   346,   347,   348,    -1,   350,   351,
19079      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
19080      362,   363,   364,    -1,   366,   367,   368,   369,   370,   371,
19081      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
19082      382,   383,   384,   385,   386,   387,   388,   389,    -1,   391,
19083       -1,   393,   394,    -1,   396,   397,   398,   399,   400,   401,
19084      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,    -1,
19085      412,    -1,    -1,   415,   416,   417,   418,   419,   420,   421,
19086      422,    -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,
19087      432,   433,   434,   435,   436,    -1,   438,   439,   440,   441,
19088      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
19089      452,   453,   454,   455,   456,    -1,    -1,    -1,    -1,    -1,
19090       -1,    -1,     3,    -1,    -1,    -1,   468,   469,   470,    -1,
19091       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   480,    20,
19092       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
19093       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
19094       -1,    42,    43,    44,    45,    46,    47,    48,    -1,    50,
19095       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
19096       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
19097       71,    72,    -1,    -1,    75,    -1,    77,    78,    79,    80,
19098       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
19099       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
19100      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
19101      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
19102      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
19103      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
19104      141,   142,    -1,   144,   145,   146,   147,    -1,   149,   150,
19105      151,   152,    -1,    -1,   155,    -1,   157,   158,   159,   160,
19106       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
19107      171,    -1,   173,    -1,    -1,    -1,   177,   178,    -1,   180,
19108      181,   182,   183,   184,   185,   186,   187,   188,   189,   190,
19109      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
19110      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
19111      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
19112       -1,    -1,   223,    -1,   225,   226,   227,    -1,   229,   230,
19113      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
19114      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
19115      251,   252,   253,   254,   255,   256,   257,   258,   259,    -1,
19116       -1,   262,    -1,   264,   265,   266,   267,    -1,    -1,   270,
19117      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
19118      281,   282,    -1,   284,   285,   286,   287,   288,   289,   290,
19119       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
19120       -1,    -1,   303,   304,    -1,   306,    -1,   308,   309,   310,
19121       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
19122      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
19123      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
19124      341,   342,   343,   344,   345,   346,   347,   348,    -1,   350,
19125      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
19126      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
19127      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
19128      381,   382,   383,   384,   385,   386,   387,   388,   389,    -1,
19129      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
19130      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
19131       -1,   412,    -1,    -1,   415,   416,   417,   418,   419,   420,
19132      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
19133       -1,   432,   433,   434,   435,   436,    -1,   438,   439,   440,
19134      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
19135      451,   452,   453,   454,   455,   456,    -1,    -1,    -1,    -1,
19136       -1,    -1,    -1,     3,    -1,     5,     6,   468,   469,   470,
19137       -1,    11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   480,
19138       20,    21,    22,    23,    24,    25,    26,    27,    -1,    29,
19139       30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,
19140       40,    -1,    42,    43,    44,    45,    46,    47,    48,    49,
19141       50,    51,    52,    53,    -1,    55,    56,    57,    58,    59,
19142       60,    -1,    -1,    63,    64,    65,    66,    67,    -1,    69,
19143       70,    71,    72,    73,    -1,    75,    -1,    77,    78,    79,
19144       80,    81,    82,    83,    84,    85,    -1,    87,    88,    89,
19145       90,    91,    92,    -1,    94,    95,    96,    97,    -1,    -1,
19146       -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,   109,
19147      110,   111,   112,   113,   114,   115,    -1,   117,   118,   119,
19148      120,   121,   122,    -1,   124,   125,   126,   127,    -1,    -1,
19149      130,   131,   132,   133,   134,    -1,   136,   137,   138,    -1,
19150      140,   141,   142,    -1,   144,   145,   146,   147,   148,   149,
19151      150,   151,   152,   153,   154,   155,    -1,   157,   158,   159,
19152      160,    -1,   162,    -1,   164,   165,    -1,   167,   168,   169,
19153      170,   171,    -1,   173,   174,    -1,   176,   177,   178,    -1,
19154      180,   181,   182,   183,   184,   185,   186,   187,   188,   189,
19155       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
19156      200,   201,   202,   203,   204,   205,   206,   207,    -1,   209,
19157       -1,   211,   212,   213,   214,   215,   216,   217,   218,   219,
19158      220,    -1,    -1,   223,   224,   225,   226,   227,    -1,   229,
19159      230,   231,    -1,    -1,   234,   235,   236,   237,   238,   239,
19160      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
19161      250,   251,   252,   253,   254,   255,   256,   257,   258,   259,
19162      260,   261,   262,    -1,   264,   265,   266,   267,    -1,   269,
19163      270,   271,   272,   273,   274,    -1,   276,   277,   278,    -1,
19164      280,   281,   282,    -1,    -1,   285,   286,   287,   288,   289,
19165      290,   291,   292,   293,   294,   295,   296,   297,   298,   299,
19166      300,    -1,    -1,   303,   304,   305,   306,   307,   308,   309,
19167      310,    -1,   312,   313,   314,   315,   316,   317,   318,   319,
19168      320,   321,   322,   323,   324,   325,   326,    -1,   328,   329,
19169      330,   331,   332,   333,   334,   335,   336,   337,   338,   339,
19170       -1,   341,   342,   343,   344,   345,   346,   347,   348,   349,
19171      350,   351,   352,   353,   354,   355,   356,   357,   358,    -1,
19172      360,   361,   362,   363,   364,    -1,   366,   367,   368,   369,
19173      370,   371,   372,   373,   374,   375,    -1,   377,   378,   379,
19174      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
19175      390,   391,    -1,   393,   394,    -1,   396,   397,   398,   399,
19176      400,   401,   402,    -1,   404,   405,   406,    -1,    -1,   409,
19177      410,   411,   412,   413,   414,   415,   416,   417,   418,   419,
19178      420,   421,   422,    -1,    -1,   425,   426,   427,   428,   429,
19179       -1,    -1,   432,   433,   434,   435,   436,   437,   438,    -1,
19180      440,   441,   442,   443,   444,   445,    -1,    -1,   448,    -1,
19181       -1,   451,   452,   453,   454,   455,   456,   457,   458,   459,
19182      460,   461,   462,   463,   464,   465,   466,   467,   468,   469,
19183      470,    -1,     3,    -1,     5,     6,    -1,    -1,   478,   479,
19184       11,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
19185       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
19186       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
19187       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
19188       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
19189       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
19190       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
19191       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
19192       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
19193      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
19194      111,   112,   113,   114,   115,    -1,   117,   118,   119,   120,
19195      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
19196      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
19197      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
19198      151,   152,   153,   154,   155,    -1,   157,   158,   159,   160,
19199       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
19200      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
19201      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
19202      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
19203      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
19204      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
19205       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
19206      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
19207      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
19208      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
19209      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
19210      271,   272,   273,   274,    -1,   276,   277,   278,    -1,   280,
19211      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
19212      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
19213       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
19214       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
19215      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
19216      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
19217      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
19218      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
19219      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
19220      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
19221      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
19222      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
19223      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
19224      411,   412,   413,   414,   415,   416,   417,   418,   419,   420,
19225      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
19226       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
19227      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
19228      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
19229      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
19230       -1,     3,    -1,     5,     6,    -1,    -1,   478,   479,    11,
19231       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,
19232       22,    23,    24,    25,    26,    27,    -1,    29,    30,    31,
19233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,
19234       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
19235       52,    53,    -1,    55,    56,    57,    58,    59,    60,    -1,
19236       -1,    63,    64,    65,    66,    67,    -1,    69,    70,    71,
19237       72,    73,    -1,    75,    -1,    77,    78,    79,    80,    81,
19238       82,    83,    84,    85,    -1,    87,    88,    89,    90,    91,
19239       92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,
19240       -1,    -1,    -1,   105,   106,   107,   108,   109,   110,   111,
19241      112,   113,    -1,   115,    -1,   117,   118,   119,   120,   121,
19242      122,    -1,   124,   125,   126,   127,    -1,    -1,   130,   131,
19243      132,   133,   134,    -1,   136,   137,   138,    -1,   140,   141,
19244      142,    -1,   144,   145,   146,   147,   148,   149,   150,   151,
19245      152,   153,   154,   155,    -1,   157,   158,   159,   160,    -1,
19246      162,    -1,   164,   165,    -1,   167,   168,   169,   170,   171,
19247       -1,   173,   174,    -1,   176,   177,   178,    -1,   180,   181,
19248      182,   183,   184,   185,   186,   187,   188,   189,    -1,   191,
19249      192,   193,   194,   195,   196,   197,    -1,   199,   200,   201,
19250      202,   203,   204,   205,   206,   207,    -1,   209,    -1,   211,
19251      212,   213,   214,   215,   216,   217,   218,   219,   220,    -1,
19252       -1,   223,   224,   225,   226,   227,    -1,   229,   230,   231,
19253       -1,    -1,   234,   235,   236,   237,   238,   239,   240,   241,
19254      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
19255      252,   253,   254,   255,   256,   257,   258,   259,   260,   261,
19256      262,    -1,   264,   265,   266,   267,    -1,   269,   270,   271,
19257      272,   273,   274,    -1,   276,   277,   278,    -1,   280,   281,
19258      282,    -1,    -1,   285,   286,   287,   288,   289,   290,   291,
19259      292,   293,   294,   295,   296,   297,   298,   299,   300,    -1,
19260       -1,   303,   304,   305,   306,   307,   308,   309,   310,    -1,
19261      312,   313,   314,   315,   316,   317,   318,   319,   320,   321,
19262      322,   323,   324,   325,   326,    -1,   328,   329,   330,   331,
19263      332,   333,   334,   335,   336,   337,   338,   339,    -1,   341,
19264      342,   343,   344,   345,   346,   347,   348,   349,   350,   351,
19265      352,   353,   354,   355,   356,   357,   358,    -1,   360,   361,
19266      362,   363,   364,    -1,   366,   367,   368,   369,   370,   371,
19267      372,   373,   374,   375,    -1,   377,   378,   379,   380,   381,
19268      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
19269       -1,   393,   394,    -1,   396,   397,   398,   399,   400,   401,
19270      402,    -1,   404,   405,   406,    -1,    -1,   409,   410,   411,
19271      412,   413,   414,   415,   416,   417,   418,   419,   420,   421,
19272      422,    -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,
19273      432,   433,   434,   435,   436,   437,   438,    -1,   440,   441,
19274      442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,
19275      452,   453,   454,   455,   456,   457,   458,   459,   460,   461,
19276      462,   463,   464,   465,   466,   467,   468,   469,   470,    -1,
19277        3,    -1,    -1,     6,    -1,    -1,   478,   479,    11,    -1,
19278       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
19279       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
19280       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
19281       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
19282       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
19283       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
19284       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
19285       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
19286       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
19287       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
19288      113,   114,   115,    -1,   117,   118,   119,   120,   121,   122,
19289       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
19290      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
19291       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
19292      153,   154,   155,    -1,   157,   158,   159,   160,    -1,   162,
19293       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
19294      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
19295      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
19296      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
19297      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
19298      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
19299      223,   224,   225,   226,   227,    -1,   229,   230,   231,    -1,
19300       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19301      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
19302      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
19303       -1,   264,   265,   266,   267,    -1,   269,   270,   271,   272,
19304      273,   274,    -1,   276,   277,   278,    -1,   280,   281,   282,
19305       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
19306      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
19307      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
19308      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
19309      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
19310      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
19311      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
19312      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
19313      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
19314      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
19315      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
19316      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
19317       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
19318      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
19319       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
19320      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
19321      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
19322      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
19323      463,   464,   465,   466,   467,   468,   469,   470,    -1,     3,
19324       -1,    -1,    -1,    -1,    -1,   478,   479,    11,    -1,    -1,
19325       -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,
19326       24,    25,    26,    27,    28,    29,    30,    31,    -1,    -1,
19327       -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,
19328       44,    -1,    46,    47,    48,    49,    50,    -1,    52,    53,
19329       -1,    55,    56,    57,    58,    59,    60,    -1,    -1,    63,
19330       64,    65,    66,    67,    -1,    69,    70,    71,    72,    73,
19331       -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,    83,
19332       84,    85,    -1,    87,    88,    89,    90,    91,    92,    -1,
19333       -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,
19334       -1,   105,   106,   107,   108,   109,   110,   111,   112,   113,
19335       -1,   115,    -1,   117,   118,   119,   120,   121,   122,    -1,
19336      124,   125,   126,   127,    -1,    -1,   130,   131,   132,   133,
19337      134,    -1,   136,   137,   138,    -1,   140,   141,   142,    -1,
19338      144,   145,   146,   147,   148,   149,   150,   151,   152,   153,
19339       -1,   155,    -1,   157,   158,   159,   160,    -1,   162,    -1,
19340      164,    -1,   166,    -1,   168,   169,   170,   171,    -1,   173,
19341      174,    -1,   176,   177,   178,    -1,   180,   181,   182,   183,
19342      184,    -1,   186,   187,   188,   189,   190,   191,   192,   193,
19343      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
19344      204,   205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,
19345      214,    -1,   216,   217,   218,   219,   220,    -1,    -1,   223,
19346      224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,
19347      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
19348      244,   245,   246,   247,   248,   249,   250,    -1,   252,   253,
19349      254,   255,   256,   257,   258,   259,   260,   261,   262,    -1,
19350      264,   265,    -1,   267,    -1,   269,   270,   271,   272,   273,
19351      274,    -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,
19352       -1,   285,   286,   287,    -1,   289,    -1,   291,   292,   293,
19353      294,   295,   296,   297,   298,   299,   300,    -1,    -1,   303,
19354      304,   305,   306,   307,   308,   309,   310,    -1,   312,   313,
19355      314,   315,   316,   317,   318,   319,   320,   321,   322,   323,
19356      324,   325,   326,    -1,   328,   329,   330,   331,   332,   333,
19357      334,   335,   336,   337,   338,   339,    -1,   341,   342,    -1,
19358      344,   345,   346,   347,   348,   349,   350,   351,   352,   353,
19359      354,   355,   356,   357,   358,    -1,   360,   361,   362,   363,
19360      364,    -1,   366,   367,   368,   369,   370,    -1,   372,   373,
19361      374,   375,    -1,   377,   378,   379,   380,   381,   382,   383,
19362      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
19363      394,    -1,   396,    -1,   398,   399,   400,   401,   402,    -1,
19364      404,   405,   406,    -1,    -1,   409,   410,   411,   412,   413,
19365       -1,   415,   416,   417,   418,   419,   420,   421,   422,    -1,
19366       -1,   425,   426,   427,   428,   429,    -1,    -1,   432,   433,
19367      434,   435,   436,   437,   438,    -1,   440,    -1,   442,   443,
19368      444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,
19369      454,   455,   456,   457,   458,   459,   460,   461,   462,   463,
19370      464,   465,   466,   467,   468,   469,   470,    -1,     3,    -1,
19371        5,     6,    -1,    -1,   478,   479,    11,    -1,    -1,    -1,
19372       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
19373       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
19374       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
19375       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
19376       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
19377       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
19378       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
19379       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
19380       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
19381      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
19382      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
19383      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
19384      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
19385      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
19386      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
19387      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
19388      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
19389      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
19390      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
19391      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
19392      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
19393      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
19394      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
19395      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
19396      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
19397      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
19398      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
19399      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
19400      295,   296,   297,   298,   299,   300,    -1,   302,   303,   304,
19401      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
19402      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
19403      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
19404      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
19405      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
19406      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
19407      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
19408      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
19409      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
19410      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
19411      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
19412      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
19413      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
19414      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
19415      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
19416      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
19417      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
19418       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19419       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
19420       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
19421       37,    38,    39,    40,    41,    42,    43,    44,    45,    46,
19422       47,    48,    49,    50,    51,    52,    53,    54,    55,    56,
19423       57,    58,    59,    60,    61,    62,    63,    64,    65,    66,
19424       67,    68,    69,    70,    71,    72,    73,    74,    75,    76,
19425       77,    78,    79,    80,    81,    82,    83,    84,    85,    86,
19426       87,    88,    89,    90,    91,    92,    93,    94,    95,    96,
19427       97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
19428      107,   108,   109,   110,   111,   112,   113,   114,   115,   116,
19429      117,   118,   119,   120,   121,   122,   123,   124,   125,   126,
19430      127,   128,   129,   130,   131,   132,   133,   134,   135,   136,
19431      137,   138,   139,   140,   141,   142,   143,   144,   145,   146,
19432      147,   148,   149,   150,   151,   152,   153,   154,   155,   156,
19433      157,   158,   159,   160,   161,   162,   163,   164,   165,   166,
19434      167,   168,   169,   170,   171,   172,   173,   174,   175,   176,
19435      177,   178,   179,   180,   181,   182,   183,   184,   185,   186,
19436      187,   188,   189,   190,   191,   192,   193,   194,   195,   196,
19437      197,   198,   199,   200,   201,   202,   203,   204,   205,   206,
19438      207,   208,   209,   210,   211,   212,   213,   214,   215,   216,
19439      217,   218,   219,   220,   221,   222,   223,   224,   225,   226,
19440      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
19441      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
19442      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
19443      257,   258,   259,   260,   261,   262,   263,   264,   265,   266,
19444      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
19445      277,   278,   279,   280,   281,   282,   283,   284,   285,   286,
19446      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
19447      297,   298,   299,   300,    -1,   302,   303,   304,   305,   306,
19448      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
19449      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19450      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
19451      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
19452      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
19453      357,   358,   359,   360,   361,   362,   363,   364,   365,   366,
19454      367,   368,   369,   370,   371,   372,   373,   374,   375,   376,
19455      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
19456      387,   388,   389,   390,   391,   392,   393,   394,   395,   396,
19457      397,   398,   399,   400,   401,   402,   403,   404,   405,   406,
19458      407,   408,   409,   410,   411,   412,   413,   414,   415,   416,
19459      417,   418,   419,   420,   421,   422,   423,   424,   425,   426,
19460      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
19461      437,   438,   439,   440,   441,   442,   443,   444,   445,   446,
19462      447,   448,   449,   450,   451,   452,   453,   454,   455,   456,
19463      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
19464      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
19465       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19466       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
19467       29,    30,    31,    32,    33,    34,    35,    36,    37,    38,
19468       39,    40,    41,    42,    43,    44,    45,    46,    47,    48,
19469       49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
19470       59,    60,    61,    62,    63,    64,    65,    66,    67,    68,
19471       69,    70,    71,    72,    73,    74,    75,    76,    77,    78,
19472       79,    80,    81,    82,    83,    84,    85,    86,    87,    88,
19473       89,    90,    91,    92,    93,    94,    95,    96,    97,    98,
19474       99,   100,   101,   102,   103,   104,   105,   106,   107,   108,
19475      109,   110,   111,   112,   113,   114,   115,   116,   117,   118,
19476      119,   120,   121,   122,   123,   124,   125,   126,   127,   128,
19477      129,   130,   131,   132,   133,   134,   135,   136,   137,   138,
19478      139,   140,   141,   142,   143,   144,   145,   146,   147,   148,
19479      149,   150,   151,   152,   153,   154,   155,   156,   157,   158,
19480      159,   160,   161,   162,   163,   164,   165,   166,   167,   168,
19481      169,   170,   171,   172,   173,   174,   175,   176,   177,   178,
19482      179,   180,   181,   182,   183,   184,   185,   186,   187,   188,
19483      189,   190,   191,   192,   193,   194,   195,   196,   197,   198,
19484      199,   200,   201,   202,   203,   204,   205,   206,   207,   208,
19485      209,   210,   211,   212,   213,   214,   215,   216,   217,   218,
19486      219,   220,   221,   222,   223,   224,   225,   226,   227,   228,
19487      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
19488      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
19489      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
19490      259,   260,   261,   262,   263,   264,   265,   266,   267,   268,
19491      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
19492      279,   280,   281,   282,   283,   284,   285,   286,   287,   288,
19493      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
19494      299,   300,    -1,   302,   303,   304,   305,   306,   307,   308,
19495      309,   310,   311,   312,   313,   314,   315,   316,   317,   318,
19496      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
19497      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
19498      339,   340,   341,   342,   343,   344,   345,   346,   347,   348,
19499      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
19500      359,   360,   361,   362,   363,   364,   365,   366,   367,   368,
19501      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
19502      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
19503      389,   390,   391,   392,   393,   394,   395,   396,   397,   398,
19504      399,   400,   401,   402,   403,   404,   405,   406,   407,   408,
19505      409,   410,   411,   412,   413,   414,   415,   416,   417,   418,
19506      419,   420,   421,   422,   423,   424,   425,   426,   427,   428,
19507      429,   430,   431,   432,   433,   434,   435,   436,   437,   438,
19508      439,   440,   441,   442,   443,   444,   445,   446,   447,   448,
19509      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
19510      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
19511      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19512       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
19513       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
19514       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
19515       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
19516       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
19517       -1,    62,    63,    64,    65,    66,    67,    -1,    69,    70,
19518       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
19519       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
19520       91,    92,    -1,    94,    95,    96,    97,    98,    99,   100,
19521      101,   102,   103,   104,   105,   106,   107,   108,   109,   110,
19522      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
19523      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
19524      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
19525      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
19526      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
19527       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
19528      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
19529      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
19530      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
19531      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
19532      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
19533       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
19534      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
19535      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
19536      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
19537      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
19538      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
19539      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
19540      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
19541       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
19542       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
19543      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
19544      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
19545      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
19546      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
19547      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
19548      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
19549      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
19550      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
19551      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
19552      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
19553      421,   422,    -1,    -1,   425,   426,   427,   428,   429,   430,
19554       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
19555      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
19556      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
19557      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
19558        3,    -1,    -1,     6,    -1,    -1,    -1,    -1,    -1,    -1,
19559       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
19560       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
19561       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
19562       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
19563       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
19564       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
19565       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
19566       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
19567       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
19568       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
19569      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
19570       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
19571      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
19572       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
19573      153,   154,   155,    -1,   157,   158,   159,   160,    -1,   162,
19574       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
19575      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
19576      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
19577      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
19578      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
19579      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
19580      223,   224,   225,   226,   227,    -1,   229,   230,   231,    -1,
19581       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19582      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
19583      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
19584       -1,   264,   265,   266,   267,    -1,   269,   270,   271,   272,
19585      273,   274,    -1,   276,   277,   278,    -1,   280,   281,   282,
19586       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
19587      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
19588      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
19589      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
19590      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
19591      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
19592      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
19593      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
19594      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
19595      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
19596      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
19597      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
19598       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
19599      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
19600       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
19601      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
19602      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
19603      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
19604      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
19605       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19606       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
19607       25,    26,    27,    28,    29,    30,    31,    -1,    -1,    -1,
19608       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
19609       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
19610       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
19611       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
19612       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
19613       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
19614       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,   104,
19615      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
19616      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
19617      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
19618       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
19619      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
19620      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
19621      165,    -1,   167,   168,   169,   170,   171,    -1,   173,   174,
19622       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
19623      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
19624      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
19625      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
19626      215,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
19627      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
19628      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
19629      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
19630      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
19631      265,   266,   267,    -1,   269,   270,   271,   272,   273,   274,
19632       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
19633      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
19634      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
19635      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
19636      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
19637      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
19638      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
19639      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
19640      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
19641      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
19642      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
19643      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
19644       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
19645      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
19646      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
19647      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
19648      435,   436,   437,   438,    -1,   440,   441,   442,   443,   444,
19649      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
19650      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
19651      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
19652       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19653       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
19654       27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
19655       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
19656       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
19657       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
19658       67,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
19659       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
19660       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
19661       97,    -1,    -1,    -1,   101,    -1,    -1,   104,   105,   106,
19662      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
19663      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
19664      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
19665      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
19666      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
19667      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
19668      167,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
19669      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
19670      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
19671      197,    -1,   199,   200,   201,   202,   203,   204,   205,   206,
19672      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
19673      217,   218,   219,   220,    -1,    -1,   223,   224,   225,   226,
19674      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
19675      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
19676      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
19677      257,   258,   259,   260,   261,   262,    -1,   264,   265,   266,
19678      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
19679      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
19680      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
19681      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
19682      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
19683      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19684       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
19685      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
19686      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
19687      357,   358,    -1,   360,   361,   362,   363,   364,   365,   366,
19688      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
19689      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
19690      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
19691      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
19692       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
19693      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
19694      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
19695      437,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
19696       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
19697      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
19698      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
19699       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19700       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
19701       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19702       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
19703       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
19704       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
19705       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
19706       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
19707       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
19708       -1,    -1,   101,    -1,    -1,   104,   105,   106,   107,   108,
19709      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
19710      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
19711       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
19712       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
19713      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
19714      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
19715      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
19716       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
19717      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
19718      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
19719      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
19720      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
19721      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
19722      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
19723      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
19724      259,   260,   261,   262,    -1,   264,   265,   266,   267,    -1,
19725      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
19726       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
19727      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
19728      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
19729      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
19730      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
19731      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
19732      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
19733      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
19734       -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
19735      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
19736      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
19737      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
19738      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
19739      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
19740      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
19741      429,   430,    -1,   432,   433,   434,   435,   436,   437,   438,
19742       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
19743       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
19744      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
19745      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19746       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
19747       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
19748       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
19749       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
19750       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
19751       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
19752       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
19753       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
19754       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
19755      101,    -1,    -1,   104,   105,   106,   107,   108,   109,   110,
19756      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
19757      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
19758      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
19759      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
19760      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
19761       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
19762      171,    -1,   173,   174,   175,   176,   177,   178,    -1,   180,
19763      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
19764      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
19765      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
19766      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
19767       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
19768      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
19769      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
19770      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
19771      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
19772      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
19773      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
19774      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
19775       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
19776       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
19777      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
19778      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
19779      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
19780      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
19781      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
19782      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
19783      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
19784      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
19785      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
19786      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
19787      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
19788       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
19789      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
19790      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
19791      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
19792        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19793       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
19794       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
19795       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
19796       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
19797       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
19798       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
19799       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
19800       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
19801       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
19802       -1,   104,   105,   106,   107,   108,   109,   110,   111,   112,
19803      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
19804       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
19805      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
19806       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
19807      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
19808       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
19809      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
19810      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
19811      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
19812      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
19813      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
19814      223,   224,   225,   226,   227,    -1,   229,   230,   231,    -1,
19815       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19816      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
19817      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
19818       -1,   264,   265,   266,   267,    -1,   269,   270,   271,   272,
19819      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
19820       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
19821      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
19822      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
19823      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
19824      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
19825      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
19826      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
19827      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
19828      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
19829      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
19830      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
19831      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
19832       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
19833      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
19834       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
19835      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
19836      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
19837      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
19838      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
19839       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19840       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
19841       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
19842       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
19843       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
19844       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
19845       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
19846       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
19847       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
19848       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,   104,
19849      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
19850      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
19851      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
19852       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
19853      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
19854      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
19855      165,    -1,   167,   168,   169,   170,   171,    -1,   173,   174,
19856       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
19857      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
19858      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
19859      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
19860      215,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
19861      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
19862      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
19863      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
19864      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
19865      265,   266,   267,    -1,   269,   270,   271,   272,   273,   274,
19866       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
19867      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
19868      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
19869      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
19870      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
19871      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
19872      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
19873      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
19874      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
19875      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
19876      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
19877      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
19878       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
19879      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
19880      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
19881      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
19882      435,   436,   437,   438,    -1,   440,   441,   442,   443,   444,
19883      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
19884      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
19885      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
19886       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19887       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
19888       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
19889       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
19890       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
19891       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
19892       67,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
19893       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
19894       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
19895       97,    -1,    -1,    -1,   101,    -1,    -1,   104,   105,   106,
19896      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
19897      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
19898      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
19899      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
19900      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
19901      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
19902      167,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
19903      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
19904      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
19905      197,    -1,   199,   200,   201,   202,   203,   204,   205,   206,
19906      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
19907      217,   218,   219,   220,    -1,    -1,   223,   224,   225,   226,
19908      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
19909      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
19910      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
19911      257,   258,   259,   260,   261,   262,    -1,   264,   265,   266,
19912      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
19913      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
19914      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
19915      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
19916      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
19917      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
19918       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
19919      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
19920      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
19921      357,   358,    -1,   360,   361,   362,   363,   364,   365,   366,
19922      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
19923      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
19924      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
19925      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
19926       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
19927      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
19928      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
19929      437,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
19930       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
19931      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
19932      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
19933       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19934       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
19935       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19936       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
19937       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
19938       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
19939       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
19940       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
19941       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
19942       -1,    -1,   101,    -1,    -1,   104,   105,   106,   107,   108,
19943      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
19944      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
19945       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
19946       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
19947      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
19948      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
19949      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
19950       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
19951      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
19952      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
19953      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
19954      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
19955      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
19956      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
19957      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
19958      259,   260,   261,   262,    -1,   264,   265,   266,   267,    -1,
19959      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
19960       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
19961      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
19962      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
19963      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
19964      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
19965      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
19966      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
19967      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
19968       -1,   360,   361,   362,   363,   364,   365,   366,   367,   368,
19969      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
19970      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
19971      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
19972      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
19973      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
19974      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
19975      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
19976       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
19977       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
19978      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
19979      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
19981       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
19982       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
19983       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
19984       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
19985       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
19986       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
19987       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
19988       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
19989      101,    -1,    -1,   104,   105,   106,   107,   108,   109,   110,
19990      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
19991      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
19992      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
19993      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
19994      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
19995       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
19996      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
19997      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
19998      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
19999      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
20000      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
20001       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
20002      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
20003      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
20004      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
20005      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
20006      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
20007      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
20008      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
20009       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
20010       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
20011      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
20012      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
20013      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
20014      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
20015      361,   362,   363,   364,   365,   366,   367,   368,   369,   370,
20016      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
20017      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
20018      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
20019      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
20020      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
20021      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
20022       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
20023      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
20024      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
20025      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
20026        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
20028       23,    24,    25,    26,    27,    -1,    29,    30,    31,    32,
20029       33,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
20030       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
20031       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
20032       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
20033       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
20034       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
20035       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
20036       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
20037      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
20038       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
20039      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
20040       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
20041      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
20042       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
20043      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
20044      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
20045      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
20046      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
20047      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
20048      223,   224,   225,   226,   227,    -1,   229,   230,   231,    -1,
20049       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20050      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
20051      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
20052       -1,   264,   265,   266,   267,    -1,   269,   270,   271,   272,
20053      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
20054       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
20055      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
20056      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
20057      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20058      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
20059      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
20060      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20061      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
20062      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
20063      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
20064      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
20065      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
20066       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
20067      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
20068       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
20069      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
20070      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
20071      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
20072      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
20073       -1,     6,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20074       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
20075       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
20076       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
20077       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
20078       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
20079       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
20080       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
20081       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
20082       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,    -1,
20083      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
20084      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
20085      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
20086       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
20087      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
20088      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
20089      165,    -1,   167,   168,   169,   170,   171,    -1,   173,   174,
20090       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
20091      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
20092      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
20093      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
20094      215,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
20095      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
20096      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
20097      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
20098      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
20099      265,   266,   267,    -1,   269,   270,   271,   272,   273,   274,
20100       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
20101      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
20102      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
20103      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
20104      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
20105      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
20106      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
20107      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
20108      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
20109       -1,   366,   367,   368,   369,   370,   371,   372,   373,   374,
20110      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
20111      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
20112       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
20113      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
20114      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
20115      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
20116      435,   436,   437,   438,    -1,   440,   441,   442,   443,   444,
20117      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
20118      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
20119      465,   466,   467,   468,   469,   470,     3,    -1,    -1,     6,
20120       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20121       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
20122       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
20123       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
20124       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
20125       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
20126       67,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
20127       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
20128       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
20129       97,    -1,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
20130      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
20131      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
20132      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
20133      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
20134      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
20135      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
20136      167,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
20137      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
20138      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
20139      197,    -1,   199,   200,   201,   202,   203,   204,   205,   206,
20140      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
20141      217,   218,   219,   220,    -1,    -1,   223,   224,   225,   226,
20142      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
20143      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
20144      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
20145      257,   258,   259,   260,   261,   262,    -1,   264,   265,   266,
20146      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
20147      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
20148      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
20149      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
20150      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
20151      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20152       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20153      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
20154      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20155      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
20156      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
20157      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20158      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
20159      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
20160       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
20161      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
20162      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
20163      437,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
20164       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
20165      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
20166      467,   468,   469,   470,     3,    -1,    -1,     6,    -1,    -1,
20167       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20168       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
20169       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20170       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
20171       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
20172       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
20173       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
20174       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
20175       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
20176       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
20177      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
20178      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
20179       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
20180       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
20181      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
20182      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
20183      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
20184       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
20185      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
20186      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
20187      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
20188      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
20189      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
20190      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
20191      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
20192      259,   260,   261,   262,    -1,   264,   265,   266,   267,    -1,
20193      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
20194       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
20195      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
20196      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
20197      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
20198      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
20199      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
20200      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
20201      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
20202       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
20203      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
20204      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
20205      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
20206      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
20207      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
20208      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
20209      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
20210       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
20211       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
20212      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
20213      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20214       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
20215       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
20216       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
20217       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
20218       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
20219       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
20220       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
20221       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
20222       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
20223      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
20224      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
20225      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
20226      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
20227      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
20228      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
20229       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
20230      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
20231      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
20232      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
20233      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
20234      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
20235       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
20236      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
20237      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
20238      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
20239      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
20240      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
20241      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
20242      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
20243       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
20244       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
20245      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
20246      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
20247      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
20248      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
20249      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
20250      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
20251      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
20252      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
20253      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
20254      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
20255      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
20256       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
20257      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
20258      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
20259      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
20260        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20261       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
20262       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
20263       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
20264       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
20265       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
20266       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
20267       73,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
20268       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
20269       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
20270       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
20271      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
20272       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
20273      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
20274       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
20275      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
20276       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
20277      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
20278      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
20279      193,   194,   195,   196,   197,    -1,   199,   200,   201,   202,
20280      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
20281      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
20282      223,   224,   225,   226,   227,    -1,   229,   230,   231,    -1,
20283       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20284      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
20285      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
20286       -1,   264,   265,   266,   267,    -1,   269,   270,   271,   272,
20287      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
20288       -1,    -1,   285,   286,   287,   288,   289,   290,   291,   292,
20289      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
20290      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
20291      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20292      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
20293      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
20294      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20295      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
20296      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
20297      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
20298      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
20299      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
20300       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
20301      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
20302       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
20303      433,   434,   435,   436,   437,   438,    -1,   440,   441,   442,
20304      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
20305      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
20306      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
20307       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20308       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
20309       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
20310       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
20311       45,    46,    47,    48,    49,    50,    51,    52,    53,    -1,
20312       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
20313       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
20314       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
20315       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
20316       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,    -1,
20317      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
20318      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
20319      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
20320       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
20321      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
20322      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
20323      165,    -1,   167,   168,   169,   170,   171,    -1,   173,   174,
20324       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
20325      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
20326      195,   196,   197,    -1,   199,   200,   201,   202,   203,   204,
20327      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
20328      215,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
20329      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
20330      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
20331      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
20332      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
20333      265,   266,   267,    -1,   269,   270,   271,   272,   273,   274,
20334       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
20335      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
20336      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
20337      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
20338      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
20339      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
20340      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
20341      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
20342      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
20343       -1,   366,   367,   368,   369,   370,   371,   372,   373,   374,
20344      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
20345      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
20346       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
20347      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
20348      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
20349      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
20350      435,   436,   437,   438,    -1,   440,   441,   442,   443,   444,
20351      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
20352      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
20353      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
20354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20355       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
20356       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
20357       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
20358       47,    48,    49,    50,    51,    52,    53,    -1,    55,    56,
20359       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
20360       67,    -1,    69,    70,    71,    72,    73,    -1,    75,    -1,
20361       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
20362       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
20363       97,    -1,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
20364      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
20365      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
20366      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
20367      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
20368      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
20369      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
20370      167,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
20371      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
20372      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
20373      197,    -1,   199,   200,   201,   202,   203,   204,   205,   206,
20374      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
20375      217,   218,   219,   220,    -1,    -1,   223,   224,   225,   226,
20376      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
20377      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
20378      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
20379      257,   258,   259,   260,   261,   262,    -1,   264,   265,   266,
20380      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
20381      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
20382      287,   288,   289,   290,   291,   292,   293,   294,   295,   296,
20383      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
20384      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
20385      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20386       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20387      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
20388      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20389      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
20390      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
20391      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20392      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
20393      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
20394       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
20395      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
20396      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
20397      437,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
20398       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
20399      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
20400      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
20401       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20402       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
20403       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20404       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
20405       49,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
20406       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
20407       69,    70,    71,    72,    73,    -1,    75,    -1,    77,    78,
20408       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
20409       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
20410       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
20411      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
20412      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
20413       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
20414       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
20415      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
20416      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
20417      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
20418       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
20419      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
20420      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
20421      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
20422      219,   220,    -1,    -1,   223,   224,   225,   226,   227,    -1,
20423      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
20424      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
20425      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
20426      259,   260,   261,   262,    -1,   264,   265,   266,   267,    -1,
20427      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
20428       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
20429      289,   290,   291,   292,   293,   294,   295,   296,   297,   298,
20430      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
20431      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
20432      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
20433      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
20434      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
20435      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
20436       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
20437      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
20438      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
20439      389,   390,   391,    -1,   393,   394,    -1,   396,   397,   398,
20440      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
20441      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
20442      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
20443      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
20444       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
20445       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
20446      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
20447      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20448       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
20449       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
20450       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
20451       -1,    42,    43,    44,    45,    46,    47,    48,    49,    50,
20452       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
20453       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
20454       71,    72,    73,    -1,    75,    -1,    77,    78,    79,    80,
20455       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
20456       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
20457      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
20458      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
20459      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
20460      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
20461      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
20462      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
20463       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
20464      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
20465      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
20466      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
20467      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
20468      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
20469       -1,    -1,   223,   224,   225,   226,   227,    -1,   229,   230,
20470      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
20471      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
20472      251,   252,   253,   254,   255,   256,   257,   258,   259,   260,
20473      261,   262,    -1,   264,   265,   266,   267,    -1,   269,   270,
20474      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
20475      281,   282,    -1,    -1,   285,   286,   287,   288,   289,   290,
20476      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
20477       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
20478       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
20479      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
20480      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
20481      341,   342,   343,   344,   345,   346,   347,   348,   349,   350,
20482      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
20483      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
20484      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
20485      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
20486      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
20487      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
20488      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
20489      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
20490       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
20491      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
20492      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
20493      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
20494        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20495       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
20496       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
20497       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
20498       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
20499       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
20500       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
20501       73,    -1,    -1,    76,    77,    78,    79,    80,    81,    -1,
20502       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
20503       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
20504       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
20505      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
20506       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
20507      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
20508       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
20509      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
20510      163,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
20511      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
20512      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
20513      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
20514      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
20515       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
20516      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
20517       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20518      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
20519      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
20520       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
20521      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
20522       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
20523      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
20524      303,   304,   305,   306,   307,   308,   309,   310,   311,   312,
20525      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20526      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
20527      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
20528       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20529      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
20530      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
20531      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
20532      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
20533      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
20534       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
20535      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
20536       -1,   424,   425,   426,   427,   428,   429,    -1,    -1,   432,
20537      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
20538      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
20539      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
20540      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
20541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20542       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
20543       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
20544       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
20545       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
20546       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
20547       65,    66,    67,    68,    69,    70,    71,    72,    73,    -1,
20548       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
20549       85,    86,    87,    88,    89,    90,    91,    92,    -1,    -1,
20550       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20551      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
20552      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
20553      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
20554       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
20555      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
20556      155,    -1,   157,   158,   159,   160,    -1,   162,   163,   164,
20557       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
20558       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
20559       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
20560      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
20561      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
20562       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
20563       -1,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
20564      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
20565      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
20566      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
20567      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
20568       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
20569      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
20570      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
20571      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
20572      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
20573      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
20574      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
20575      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
20576      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
20577       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
20578      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
20579      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
20580       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
20581      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
20582      415,   416,   417,   418,   419,   420,   421,   422,    -1,   424,
20583      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
20584      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
20585      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
20586      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
20587      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
20588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20589       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
20590       27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
20591       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
20592       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
20593       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
20594       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
20595       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
20596       87,    88,    89,    90,    91,    92,    93,    -1,    95,    96,
20597       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
20598      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
20599      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
20600      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
20601      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
20602      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
20603      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
20604       -1,   168,   169,   170,   171,   172,   173,   174,    -1,   176,
20605      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
20606      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
20607      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
20608      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
20609      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
20610       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
20611      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
20612      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
20613      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
20614      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
20615      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
20616      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
20617      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
20618      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
20619      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20620      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20621      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
20622      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20623      357,   358,   359,   360,   361,   362,   363,   364,    -1,   366,
20624      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
20625      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20626      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
20627       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
20628       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
20629      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
20630      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
20631      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
20632       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
20633      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
20634      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
20635       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20636       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
20637       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20638       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
20639       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
20640       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
20641       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
20642       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
20643       89,    90,    91,    92,    93,    -1,    95,    96,    97,    -1,
20644       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
20645      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
20646      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
20647       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
20648       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
20649      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
20650      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
20651      169,   170,   171,   172,   173,   174,    -1,   176,   177,   178,
20652       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
20653      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
20654      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
20655      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
20656      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
20657      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
20658      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
20659      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
20660      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
20661      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
20662       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
20663      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
20664      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
20665      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
20666      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
20667      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
20668      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
20669      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
20670      359,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
20671      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
20672      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
20673      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
20674      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
20675      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
20676      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
20677      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
20678       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
20679       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
20680      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
20681      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20682       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
20683       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
20684       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
20685       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
20686       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
20687       -1,    -1,    63,    64,    65,    66,    67,    68,    69,    70,
20688       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
20689       81,    -1,    83,    84,    85,    86,    87,    88,    89,    90,
20690       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
20691       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
20692      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
20693      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
20694      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
20695      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
20696      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
20697       -1,   162,   163,   164,    -1,    -1,    -1,   168,   169,   170,
20698      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
20699      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
20700      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
20701      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
20702      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
20703       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
20704      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
20705      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
20706       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
20707      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
20708      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
20709      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
20710      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
20711       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
20712      311,   312,   313,   314,   315,   316,   317,   318,   319,   320,
20713      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
20714      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
20715      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
20716      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
20717      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
20718       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
20719      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
20720      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
20721      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
20722      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
20723      421,   422,    -1,   424,   425,   426,   427,   428,   429,    -1,
20724       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
20725       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
20726      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
20727      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
20728        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20729       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
20730       23,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
20731       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
20732       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
20733       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
20734       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
20735       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
20736       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
20737       93,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
20738       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
20739      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
20740       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
20741      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
20742       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
20743      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
20744       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
20745      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
20746      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
20747      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
20748      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
20749       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
20750      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
20751       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20752      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
20753      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
20754       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
20755      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
20756       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
20757      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
20758      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
20759      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20760      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20761      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
20762       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20763      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20764      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
20765      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
20766      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
20767      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
20768       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
20769      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
20770       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
20771      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
20772      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
20773      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
20774      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
20775       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20776       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
20777       25,    26,    27,    28,    29,    30,    31,    -1,    -1,    -1,
20778       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
20779       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
20780       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
20781       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
20782       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
20783       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
20784       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20785      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
20786      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
20787      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
20788       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
20789      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
20790      155,    -1,   157,   158,   159,   160,    -1,   162,   163,   164,
20791       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
20792       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
20793       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
20794      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
20795      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
20796       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
20797       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
20798      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
20799      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
20800      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
20801      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
20802       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
20803      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
20804      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
20805      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
20806      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
20807      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
20808      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
20809      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
20810      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
20811       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
20812      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
20813      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
20814      395,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
20815      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
20816      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
20817      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
20818      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
20819      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
20820      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
20821      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
20822       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20823       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
20824       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
20825       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
20826       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
20827       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
20828       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
20829       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
20830       87,    88,    89,    90,    91,    92,    93,    -1,    95,    96,
20831       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
20832      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
20833      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
20834      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
20835      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
20836      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
20837      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
20838       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
20839      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
20840      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
20841      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
20842      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
20843      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
20844       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
20845      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
20846      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
20847      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
20848      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
20849      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
20850      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
20851      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
20852      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
20853      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
20854      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
20855      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
20856      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
20857      357,   358,   359,   360,   361,   362,   363,   364,    -1,   366,
20858      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
20859      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
20860      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
20861       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
20862       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
20863      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
20864      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
20865      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
20866       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
20867      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
20868      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
20869       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20870       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
20871       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20872       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
20873       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
20874       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
20875       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
20876       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
20877       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
20878       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
20879      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
20880      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
20881       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
20882       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
20883      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
20884      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
20885      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
20886       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
20887      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
20888      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
20889      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
20890      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
20891      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
20892      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
20893      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
20894      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
20895      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
20896      279,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
20897      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
20898      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
20899      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
20900      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
20901      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
20902      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
20903      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
20904       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
20905      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
20906      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
20907      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
20908      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
20909      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
20910      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
20911      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
20912       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
20913       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
20914      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
20915      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20916       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
20917       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
20918       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
20919       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
20920       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
20921       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
20922       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
20923       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
20924       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
20925       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
20926      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
20927      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
20928      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
20929      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
20930      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
20931       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
20932      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
20933      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
20934      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
20935      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
20936      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
20937       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
20938      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
20939      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
20940       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
20941      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
20942      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
20943      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
20944      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
20945       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
20946       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
20947      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
20948      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
20949      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
20950      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
20951      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
20952       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
20953      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
20954      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
20955      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
20956      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
20957      421,   422,    -1,    -1,   425,   426,   427,   428,   429,   430,
20958       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
20959       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
20960      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
20961      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
20962        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20963       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
20964       23,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
20965       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
20966       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
20967       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
20968       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
20969       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
20970       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
20971       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
20972       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
20973      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
20974       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
20975      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
20976       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
20977      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
20978       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
20979      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
20980      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
20981      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
20982      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
20983       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
20984      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
20985       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20986      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
20987      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
20988       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
20989      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
20990       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
20991      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
20992      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
20993      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
20994      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
20995      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
20996       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
20997      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
20998      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
20999      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
21000      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
21001      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
21002       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
21003      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
21004       -1,    -1,   425,   426,   427,   428,   429,   430,    -1,   432,
21005      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
21006      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
21007      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21008      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
21009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21010       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
21011       25,    26,    27,    28,    29,    30,    31,    -1,    -1,    -1,
21012       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
21013       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
21014       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
21015       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
21016       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
21017       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
21018       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21019      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
21020      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
21021      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
21022       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
21023      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
21024      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
21025       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
21026       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
21027       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
21028      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
21029      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
21030       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
21031       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
21032      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
21033      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
21034      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
21035      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
21036       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
21037      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
21038      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
21039      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
21040      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21041      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
21042      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
21043      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21044      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
21045       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21046      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
21047      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
21048       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
21049      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
21050      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
21051      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
21052      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
21053      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
21054      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21055      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
21056       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21057       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
21058       27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
21059       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
21060       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
21061       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
21062       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
21063       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
21064       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
21065       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
21066      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
21067      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
21068      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
21069      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
21070      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
21071      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
21072       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
21073      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
21074      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
21075      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
21076      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
21077      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
21078       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
21079      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
21080      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
21081      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
21082      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
21083      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
21084      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
21085      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
21086      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
21087      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21088       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21089      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
21090      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21091      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
21092      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
21093      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21094      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
21095       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
21096       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
21097      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
21098      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
21099      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
21100       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
21101      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
21102      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
21103       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21104       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
21105       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21106       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
21107       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
21108       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
21109       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
21110       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
21111       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
21112       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
21113      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
21114      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
21115       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
21116       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
21117      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
21118      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
21119      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
21120       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
21121      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
21122      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
21123      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
21124      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
21125      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
21126      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
21127      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
21128      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
21129      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
21130       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
21131      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
21132      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
21133      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
21134      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
21135      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21136      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
21137      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21138       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
21139      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
21140      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21141      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
21142      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
21143      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
21144      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
21145      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
21146       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
21147       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
21148      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
21149      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21150       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
21151       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
21152       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
21153       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
21154       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
21155       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
21156       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
21157       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
21158       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
21159       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
21160      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
21161      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
21162      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
21163      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
21164      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
21165       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
21166      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
21167      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
21168      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
21169      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
21170      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
21171       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
21172      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
21173      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
21174       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
21175      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
21176      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
21177      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
21178      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
21179       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
21180       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21181      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
21182      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
21183      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
21184      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
21185      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
21186       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
21187      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21188      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
21189      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
21190      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
21191      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
21192       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
21193       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
21194      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21195      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
21196        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
21198       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
21199       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
21200       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
21201       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
21202       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
21203       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
21204       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
21205       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
21206       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
21207      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
21208       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
21209      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
21210       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
21211      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
21212       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
21213      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
21214      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
21215      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
21216      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
21217       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
21218      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
21219       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
21220      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
21221      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
21222       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
21223      273,   274,    -1,   276,   277,    -1,   279,   280,   281,   282,
21224       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
21225      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
21226      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
21227      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21228      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
21229      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
21230       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21231      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
21232      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
21233      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
21234      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
21235      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
21236       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
21237      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
21238       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
21239      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
21240      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
21241      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21242      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
21243       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21244       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
21245       25,    26,    27,    28,    29,    30,    31,    -1,    -1,    -1,
21246       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
21247       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
21248       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
21249       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
21250       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
21251       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
21252       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21253      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
21254      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
21255      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
21256       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
21257      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
21258      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
21259       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
21260       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
21261       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
21262      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
21263      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
21264       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
21265       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
21266      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
21267      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
21268      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
21269      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
21270       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
21271      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
21272      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
21273      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
21274      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21275      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
21276      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
21277      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21278      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
21279       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21280      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
21281      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
21282       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
21283      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
21284      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
21285      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
21286      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
21287      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
21288      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21289      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
21290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21291       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
21292       27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
21293       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
21294       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
21295       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
21296       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
21297       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
21298       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
21299       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
21300      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
21301      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
21302      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
21303      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
21304      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
21305      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
21306       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
21307      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
21308      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
21309      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
21310      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
21311      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
21312       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
21313      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
21314      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
21315      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
21316      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
21317      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
21318      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
21319      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
21320      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
21321      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21322       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21323      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
21324      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21325      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
21326      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
21327      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21328      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
21329       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
21330       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
21331      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
21332      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
21333      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
21334       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
21335      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
21336      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
21337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21338       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
21339       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21340       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
21341       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
21342       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
21343       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
21344       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
21345       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
21346       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
21347      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
21348      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
21349       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
21350       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
21351      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
21352      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
21353      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
21354       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
21355      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
21356      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
21357      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
21358      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
21359      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
21360      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
21361      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
21362      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
21363      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
21364       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
21365      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
21366      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
21367      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
21368      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
21369      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21370      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
21371      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21372       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
21373      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
21374      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21375      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
21376      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
21377      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
21378      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
21379      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
21380       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
21381       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
21382      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
21383      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21384       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
21385       21,    22,    23,    24,    25,    26,    27,    28,    29,    30,
21386       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
21387       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
21388       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
21389       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
21390       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
21391       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
21392       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
21393       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
21394      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
21395      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
21396      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
21397      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
21398      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
21399       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
21400      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
21401      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
21402      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
21403      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
21404      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
21405       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
21406      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
21407      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
21408       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
21409      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
21410      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
21411      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
21412      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
21413       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
21414       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21415      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
21416      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
21417      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
21418      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
21419      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
21420       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
21421      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21422      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
21423      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
21424      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
21425      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
21426       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
21427       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
21428      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21429      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
21430        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21431       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
21432       23,    24,    25,    26,    27,    28,    29,    30,    31,    -1,
21433       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
21434       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
21435       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
21436       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
21437       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
21438       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
21439       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
21440       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
21441      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
21442       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
21443      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
21444       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
21445      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
21446       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
21447      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
21448      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
21449      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
21450      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
21451       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
21452      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
21453       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
21454      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
21455      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
21456       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
21457      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
21458       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
21459      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
21460      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
21461      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21462      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
21463      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
21464       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21465      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
21466      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
21467      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
21468      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
21469      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
21470       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
21471      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
21472       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
21473      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
21474      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
21475      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21476      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
21477       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21478       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
21479       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
21480       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
21481       45,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
21482       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
21483       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
21484       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
21485       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
21486       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21487      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
21488      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
21489      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
21490       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
21491      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
21492      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
21493       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
21494       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
21495       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
21496      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
21497      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
21498       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
21499       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
21500      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
21501      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
21502      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
21503      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
21504       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
21505      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
21506      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
21507      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
21508      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21509      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
21510      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
21511      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21512      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
21513       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21514      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
21515      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
21516       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
21517      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
21518      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
21519      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
21520      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
21521      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
21522      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21523      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
21524       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21525       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
21526       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
21527       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
21528       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
21529       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
21530       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
21531       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
21532       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
21533       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
21534      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
21535      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
21536      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
21537      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
21538      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
21539      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
21540       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
21541      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
21542      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
21543      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
21544      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
21545      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
21546       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
21547      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
21548      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
21549      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
21550      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
21551      277,    -1,   279,   280,   281,   282,    -1,    -1,   285,   286,
21552      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
21553      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
21554      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
21555      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21556       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21557      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
21558      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21559      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
21560      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
21561      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21562      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
21563       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
21564       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
21565      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
21566      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
21567      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
21568       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
21569      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
21570      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
21571       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21572       -1,    20,    21,    22,    23,    24,    25,    26,    27,    28,
21573       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21574       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
21575       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
21576       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
21577       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
21578       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
21579       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
21580       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
21581      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
21582      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
21583       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
21584       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
21585      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
21586      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
21587      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
21588       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
21589      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
21590      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
21591      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
21592      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
21593      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
21594      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
21595      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
21596      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
21597      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
21598       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
21599      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
21600      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
21601      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
21602      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
21603      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21604      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
21605      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21606       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
21607      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
21608      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21609      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
21610      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
21611      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
21612      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
21613      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
21614       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
21615       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
21616      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
21617      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21618       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
21619       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
21620       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
21621       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
21622       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
21623       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
21624       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
21625       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
21626       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
21627       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
21628      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
21629      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
21630      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
21631      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
21632      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
21633       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
21634      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
21635      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
21636      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
21637      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
21638      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
21639       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
21640      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
21641      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
21642       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
21643      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
21644      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
21645      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
21646      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
21647       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
21648       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21649      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
21650      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
21651      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
21652      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
21653      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
21654       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
21655      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21656      391,    -1,   393,   394,   395,   396,    -1,   398,   399,   400,
21657      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
21658      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
21659      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
21660       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
21661       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
21662      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21663      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
21664        3,    -1,    -1,     6,    -1,    -1,    -1,    -1,    -1,    -1,
21665       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
21666       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
21667       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
21668       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
21669       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
21670       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
21671       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
21672       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
21673       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
21674       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
21675      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
21676       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
21677      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
21678       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
21679      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
21680       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
21681      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
21682      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
21683      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
21684      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
21685       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
21686      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
21687       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
21688      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
21689      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
21690       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
21691      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
21692       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
21693      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
21694      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
21695      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21696      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
21697      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
21698       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21699      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
21700      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
21701      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
21702      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
21703      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
21704       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
21705      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
21706       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
21707      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
21708      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
21709      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21710      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
21711       -1,    -1,    -1,    -1,    -1,    -1,    11,    -1,    -1,    -1,
21712       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
21713       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
21714       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
21715       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
21716       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
21717       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
21718       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
21719       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
21720       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21721      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
21722      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
21723      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
21724       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
21725      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
21726      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
21727       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
21728       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
21729       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
21730      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
21731      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
21732       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
21733       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
21734      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
21735      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
21736      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
21737      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
21738       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
21739      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
21740      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
21741      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
21742      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21743      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
21744      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
21745      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21746      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
21747       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21748      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
21749      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
21750       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
21751      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
21752      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
21753      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
21754      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
21755      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
21756      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21757      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
21758       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21759       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
21760       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
21761       37,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
21762       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
21763       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
21764       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
21765       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
21766       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
21767       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
21768      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
21769      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
21770      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
21771      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
21772      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
21773      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
21774       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
21775      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
21776      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
21777      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
21778      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
21779      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
21780       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
21781      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
21782      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
21783      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
21784      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
21785      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
21786      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
21787      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
21788      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
21789      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
21790       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
21791      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
21792      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
21793      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
21794      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
21795      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
21796      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
21797       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
21798       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
21799      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
21800      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
21801      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
21802       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
21803      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
21804      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
21805       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21806       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
21807       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    37,    -1,
21808       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
21809       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
21810       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
21811       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
21812       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
21813       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
21814       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
21815      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
21816      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
21817       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
21818       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
21819      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
21820      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
21821      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
21822       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
21823      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
21824      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
21825      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
21826      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
21827      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
21828      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
21829      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
21830      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
21831      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
21832       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
21833      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
21834      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
21835      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
21836      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
21837      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
21838      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
21839      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
21840       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
21841      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
21842      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
21843      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
21844      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
21845      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
21846      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
21847      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
21848       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
21849       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
21850      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
21851      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
21853       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
21854       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
21855       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
21856       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
21857       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
21858       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
21859       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
21860       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
21861       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
21862      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
21863      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
21864      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
21865      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
21866      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
21867       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
21868      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
21869      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
21870      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
21871      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
21872      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
21873       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
21874      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
21875      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
21876       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
21877      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
21878      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
21879      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
21880      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
21881       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
21882       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
21883      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
21884      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
21885      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
21886      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
21887      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
21888       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
21889      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
21890      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
21891      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
21892      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
21893      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
21894       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
21895       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
21896      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
21897      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
21898        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21899       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
21900       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
21901       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
21902       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
21903       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
21904       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
21905       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
21906       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
21907       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
21908       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
21909      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
21910       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
21911      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
21912       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
21913      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
21914       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
21915      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
21916      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
21917      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
21918      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
21919       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
21920      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
21921       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
21922      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
21923      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
21924       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
21925      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
21926       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
21927      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
21928      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
21929      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
21930      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
21931      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
21932       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
21933      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
21934      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
21935      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
21936      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
21937      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
21938       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
21939      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
21940       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
21941      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
21942      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
21943      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
21944      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
21945       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21946       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
21947       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
21948       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
21949       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
21950       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
21951       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
21952       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
21953       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
21954       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21955      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
21956      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
21957      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
21958       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
21959      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
21960      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
21961       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
21962       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
21963       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
21964      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
21965      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
21966       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
21967       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
21968      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
21969      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
21970      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
21971      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
21972       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
21973      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
21974      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
21975      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
21976      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
21977      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
21978      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
21979      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
21980      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
21981       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
21982      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
21983      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
21984       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
21985      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
21986      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
21987      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
21988      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
21989      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
21990      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
21991      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
21992       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21993       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
21994       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
21995       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
21996       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
21997       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
21998       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
21999       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
22000       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
22001       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
22002      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
22003      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
22004      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
22005      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
22006      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
22007      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
22008       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
22009      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
22010      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
22011      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
22012      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
22013      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
22014       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
22015      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
22016      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
22017      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
22018      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
22019      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
22020      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
22021      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
22022      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
22023      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22024       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22025      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
22026      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22027      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
22028      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
22029      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22030      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
22031       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
22032       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
22033      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
22034      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
22035      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
22036       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
22037      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
22038      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
22039       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22040       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
22041       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22042       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
22043       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
22044       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
22045       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
22046       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
22047       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
22048       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
22049      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
22050      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
22051       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
22052       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
22053      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
22054      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
22055      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
22056       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
22057      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
22058      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
22059      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
22060      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
22061      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
22062      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
22063      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
22064      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
22065      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
22066       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
22067      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
22068      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
22069      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
22070      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
22071      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22072      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
22073      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22074       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
22075      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
22076      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22077      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
22078      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
22079      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
22080      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
22081      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
22082       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
22083       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
22084      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
22085      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22086       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
22087       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
22088       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
22089       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
22090       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
22091       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
22092       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
22093       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
22094       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
22095       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
22096      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
22097      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
22098      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
22099      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
22100      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
22101       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
22102      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
22103      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
22104      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
22105      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
22106      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
22107       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
22108      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
22109      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
22110       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
22111      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
22112      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
22113      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
22114      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
22115       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
22116       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22117      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
22118      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
22119      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
22120      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
22121      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
22122       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
22123      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22124      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
22125      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
22126      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
22127      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
22128       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
22129       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
22130      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22131      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
22132        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
22134       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
22135       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
22136       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
22137       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
22138       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
22139       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
22140       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
22141       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
22142       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
22143      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
22144       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
22145      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
22146       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
22147      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
22148       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
22149      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
22150      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
22151      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
22152      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
22153       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
22154      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
22155       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
22156      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
22157      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
22158       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
22159      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
22160       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
22161      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
22162      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
22163      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22164      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
22165      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
22166       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22167      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
22168      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
22169      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
22170      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
22171      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
22172       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
22173      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
22174       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
22175      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
22176      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
22177      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22178      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
22179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22180       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
22181       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
22182       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
22183       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
22184       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
22185       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
22186       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
22187       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
22188       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22189      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
22190      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
22191      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
22192       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
22193      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
22194      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
22195       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
22196       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
22197       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
22198      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
22199      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
22200       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
22201       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
22202      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
22203      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
22204      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
22205      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
22206       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
22207      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
22208      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
22209      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
22210      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22211      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
22212      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
22213      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22214      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
22215       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22216      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
22217      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
22218       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
22219      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
22220      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
22221      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
22222      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
22223      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
22224      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22225      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
22226       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22227       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
22228       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
22229       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
22230       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
22231       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
22232       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
22233       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
22234       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
22235       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
22236      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
22237      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
22238      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
22239      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
22240      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
22241      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
22242       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
22243      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
22244      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
22245      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
22246      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
22247      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
22248       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
22249      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
22250      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
22251      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
22252      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
22253      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
22254      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
22255      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
22256      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
22257      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22258       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22259      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
22260      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22261      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
22262      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
22263      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22264      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
22265       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
22266       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
22267      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
22268      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
22269      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
22270       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
22271      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
22272      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
22273       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22274       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
22275       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22276       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
22277       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
22278       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
22279       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
22280       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
22281       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
22282       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
22283      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
22284      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
22285       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
22286       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
22287      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
22288      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
22289      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
22290       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
22291      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
22292      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
22293      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
22294      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
22295      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
22296      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
22297      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
22298      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
22299      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
22300       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
22301      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
22302      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
22303      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
22304      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
22305      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22306      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
22307      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22308       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
22309      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
22310      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22311      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
22312      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
22313      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
22314      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
22315      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
22316       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
22317       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
22318      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
22319      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22320       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
22321       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
22322       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
22323       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
22324       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
22325       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
22326       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
22327       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
22328       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
22329       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
22330      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
22331      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
22332      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
22333      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
22334      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
22335       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
22336      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
22337      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
22338      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
22339      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
22340      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
22341       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
22342      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
22343      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
22344       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
22345      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
22346      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
22347      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
22348      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
22349       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
22350       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22351      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
22352      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
22353      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
22354      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
22355      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
22356       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
22357      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22358      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
22359      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
22360      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
22361      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
22362       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
22363       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
22364      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22365      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
22366        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22367       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
22368       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
22369       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
22370       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
22371       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
22372       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
22373       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
22374       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
22375       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
22376       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
22377      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
22378       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
22379      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
22380       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
22381      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
22382       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
22383      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
22384      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
22385      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
22386      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
22387       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
22388      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
22389       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
22390      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
22391      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
22392       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
22393      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
22394       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
22395      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
22396      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
22397      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22398      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
22399      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
22400       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22401      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
22402      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
22403      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
22404      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
22405      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
22406       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
22407      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
22408       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
22409      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
22410      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
22411      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22412      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
22413       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22414       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
22415       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
22416       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
22417       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
22418       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
22419       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
22420       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
22421       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
22422       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22423      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
22424      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
22425      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
22426       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
22427      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
22428      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
22429       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
22430       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
22431       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
22432      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
22433      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
22434       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
22435       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
22436      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
22437      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
22438      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
22439      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
22440       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
22441      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
22442      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
22443      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
22444      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22445      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
22446      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
22447      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22448      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
22449       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22450      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
22451      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
22452       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
22453      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
22454      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
22455      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
22456      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
22457      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
22458      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22459      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
22460       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22461       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
22462       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
22463       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
22464       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
22465       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
22466       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
22467       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
22468       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
22469       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
22470      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
22471      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
22472      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
22473      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
22474      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
22475      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
22476       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
22477      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
22478      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
22479      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
22480      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
22481      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
22482       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
22483      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
22484      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
22485      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
22486      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
22487      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
22488      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
22489      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
22490      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
22491      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22492       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22493      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
22494      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22495      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
22496      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
22497      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22498      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
22499       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
22500       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
22501      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
22502      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
22503      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
22504       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
22505      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
22506      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
22507       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22508       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
22509       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22510       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
22511       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
22512       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
22513       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
22514       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
22515       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
22516       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
22517      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
22518      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
22519       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
22520       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
22521      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
22522      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
22523      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
22524       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
22525      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
22526      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
22527      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
22528      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
22529      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
22530      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
22531      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
22532      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
22533      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
22534       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
22535      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
22536      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
22537      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
22538      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
22539      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22540      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
22541      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22542       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
22543      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
22544      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22545      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
22546      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
22547      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
22548      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
22549      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
22550       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
22551       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
22552      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
22553      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22554       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
22555       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
22556       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
22557       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
22558       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
22559       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
22560       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
22561       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
22562       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
22563       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
22564      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
22565      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
22566      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
22567      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
22568      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
22569       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
22570      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
22571      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
22572      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
22573      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
22574      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
22575       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
22576      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
22577      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
22578       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
22579      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
22580      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
22581      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
22582      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
22583       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
22584       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22585      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
22586      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
22587      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
22588      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
22589      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
22590       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
22591      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22592      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
22593      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
22594      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
22595      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
22596       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
22597       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
22598      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22599      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
22600        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22601       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
22602       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
22603       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
22604       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
22605       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
22606       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
22607       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
22608       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
22609       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
22610       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
22611      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
22612       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
22613      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
22614       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
22615      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
22616       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
22617      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
22618      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
22619      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
22620      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
22621       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
22622      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
22623       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
22624      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
22625      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
22626       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
22627      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
22628       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
22629      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
22630      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
22631      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22632      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
22633      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
22634       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22635      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
22636      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
22637      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
22638      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
22639      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
22640       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
22641      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
22642       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
22643      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
22644      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
22645      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22646      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
22647       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22648       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
22649       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
22650       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
22651       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
22652       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
22653       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
22654       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
22655       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
22656       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22657      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
22658      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
22659      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
22660       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
22661      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
22662      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
22663       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
22664       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
22665       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
22666      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
22667      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
22668       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
22669       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
22670      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
22671      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
22672      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
22673      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
22674       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
22675      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
22676      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
22677      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
22678      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22679      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
22680      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
22681      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22682      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
22683       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22684      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
22685      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
22686       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
22687      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
22688      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
22689      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
22690      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
22691      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
22692      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22693      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
22694       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22695       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
22696       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
22697       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
22698       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
22699       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
22700       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
22701       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
22702       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
22703       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
22704      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
22705      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
22706      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
22707      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
22708      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
22709      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
22710       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
22711      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
22712      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
22713      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
22714      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
22715      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
22716       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
22717      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
22718      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
22719      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
22720      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
22721      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
22722      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
22723      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
22724      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
22725      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22726       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22727      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
22728      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22729      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
22730      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
22731      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22732      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
22733       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
22734       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
22735      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
22736      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
22737      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
22738       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
22739      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
22740      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
22741       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22742       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
22743       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22744       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
22745       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
22746       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
22747       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
22748       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
22749       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
22750       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
22751      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
22752      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
22753       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
22754       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
22755      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
22756      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
22757      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
22758       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
22759      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
22760      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
22761      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
22762      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
22763      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
22764      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
22765      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
22766      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
22767      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
22768       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
22769      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
22770      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
22771      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
22772      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
22773      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
22774      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
22775      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
22776       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
22777      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
22778      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
22779      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
22780      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
22781      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
22782      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
22783      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
22784       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
22785       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
22786      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
22787      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22788       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
22789       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
22790       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
22791       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
22792       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
22793       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
22794       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
22795       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
22796       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
22797       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
22798      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
22799      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
22800      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
22801      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
22802      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
22803       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
22804      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
22805      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
22806      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
22807      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
22808      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
22809       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
22810      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
22811      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
22812       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
22813      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
22814      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
22815      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
22816      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
22817       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
22818       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
22819      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
22820      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
22821      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
22822      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
22823      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
22824       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
22825      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
22826      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
22827      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
22828      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
22829      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
22830       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
22831       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
22832      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
22833      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
22834        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22835       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
22836       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
22837       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
22838       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
22839       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
22840       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
22841       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
22842       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
22843       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
22844       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
22845      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
22846       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
22847      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
22848       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
22849      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
22850       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
22851      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
22852      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
22853      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
22854      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
22855       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
22856      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
22857       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
22858      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
22859      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
22860       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
22861      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
22862       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
22863      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
22864      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
22865      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
22866      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
22867      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
22868       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
22869      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
22870      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
22871      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
22872      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
22873      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
22874       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
22875      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
22876       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
22877      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
22878      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
22879      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
22880      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
22881       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22882       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
22883       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
22884       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
22885       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
22886       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
22887       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
22888       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
22889       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
22890       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22891      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
22892      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
22893      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
22894       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
22895      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
22896      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
22897       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
22898       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
22899       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
22900      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
22901      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
22902       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
22903       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
22904      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
22905      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
22906      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
22907      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
22908       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
22909      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
22910      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
22911      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
22912      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
22913      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
22914      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
22915      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
22916      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
22917       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
22918      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
22919      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
22920       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
22921      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
22922      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
22923      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
22924      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
22925      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
22926      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
22927      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
22928       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22929       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
22930       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
22931       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
22932       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
22933       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
22934       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
22935       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
22936       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
22937       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
22938      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
22939      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
22940      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
22941      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
22942      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
22943      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
22944       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
22945      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
22946      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
22947      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
22948      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
22949      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
22950       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
22951      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
22952      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
22953      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
22954      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
22955      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
22956      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
22957      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
22958      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
22959      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
22960       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
22961      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
22962      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
22963      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
22964      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
22965      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
22966      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
22967       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
22968       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
22969      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
22970      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
22971      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
22972       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
22973      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
22974      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
22975       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22976       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
22977       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22978       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
22979       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
22980       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
22981       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
22982       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
22983       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
22984       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
22985      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
22986      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
22987       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
22988       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
22989      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
22990      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
22991      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
22992       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
22993      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
22994      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
22995      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
22996      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
22997      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
22998      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
22999      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
23000      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
23001      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
23002       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
23003      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
23004      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
23005      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
23006      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
23007      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23008      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
23009      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23010       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
23011      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
23012      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23013      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
23014      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
23015      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
23016      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
23017      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
23018       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
23019       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
23020      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
23021      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23022       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
23023       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
23024       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
23025       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
23026       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
23027       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
23028       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
23029       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
23030       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
23031       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
23032      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
23033      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
23034      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
23035      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
23036      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
23037       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
23038      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
23039      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
23040      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
23041      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
23042      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
23043       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
23044      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
23045      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
23046       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
23047      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
23048      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
23049      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
23050      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
23051       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
23052       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23053      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
23054      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
23055      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
23056      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
23057      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
23058       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
23059      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23060      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
23061      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
23062      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
23063      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
23064       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
23065       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
23066      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23067      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
23068        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23069       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
23070       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
23071       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
23072       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
23073       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
23074       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
23075       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
23076       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
23077       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
23078       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
23079      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
23080       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
23081      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
23082       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
23083      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
23084       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
23085      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
23086      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
23087      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
23088      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
23089       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
23090      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
23091       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
23092      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
23093      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
23094       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
23095      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
23096       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
23097      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
23098      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
23099      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23100      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
23101      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
23102       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23103      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
23104      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
23105      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
23106      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
23107      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
23108       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
23109      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
23110       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
23111      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
23112      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
23113      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23114      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
23115       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23116       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
23117       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
23118       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
23119       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
23120       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
23121       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
23122       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
23123       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
23124       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23125      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
23126      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
23127      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
23128       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
23129      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
23130      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
23131       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
23132       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
23133       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
23134      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23135      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
23136       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
23137       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
23138      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23139      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
23140      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
23141      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
23142       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
23143      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
23144      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
23145      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
23146      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23147      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
23148      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
23149      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23150      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
23151       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23152      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
23153      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
23154       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
23155      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
23156      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
23157      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
23158      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
23159      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
23160      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23161      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
23162       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23163       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
23164       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
23165       37,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
23166       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
23167       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
23168       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
23169       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
23170       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
23171       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
23172      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
23173      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
23174      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
23175      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
23176      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
23177      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
23178       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
23179      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
23180      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
23181      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
23182      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
23183      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
23184       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
23185      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
23186      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
23187      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
23188      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
23189      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
23190      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
23191      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
23192      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
23193      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23194       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23195      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
23196      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23197      357,   358,    -1,   360,   361,   362,   363,   364,    -1,    -1,
23198      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
23199      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23200      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
23201       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
23202       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
23203      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
23204      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
23205      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
23206       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
23207      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
23208      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
23209       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23210       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
23211       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23212       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
23213       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
23214       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
23215       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
23216       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
23217       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
23218       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
23219      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
23220      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
23221       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
23222       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
23223      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
23224      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
23225      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
23226       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
23227      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
23228      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
23229      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
23230      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
23231      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
23232      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
23233      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
23234      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
23235      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
23236       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
23237      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
23238      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
23239      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
23240      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
23241      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23242      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
23243      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23244       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
23245      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
23246      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23247      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
23248      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
23249      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
23250      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
23251      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
23252       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
23253       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
23254      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
23255      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
23257       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
23258       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
23259       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
23260       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
23261       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
23262       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
23263       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
23264       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
23265       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
23266      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
23267      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
23268      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
23269      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
23270      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
23271       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
23272      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
23273      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
23274      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
23275      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
23276      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
23277       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
23278      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
23279      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
23280       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
23281      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
23282      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
23283      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
23284      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
23285       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
23286       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23287      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
23288      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
23289      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
23290      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
23291      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
23292       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
23293      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23294      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
23295      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
23296      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
23297      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
23298       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
23299       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
23300      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23301      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
23302        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23303       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
23304       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
23305       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
23306       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
23307       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
23308       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
23309       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
23310       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
23311       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
23312       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
23313      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
23314       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
23315      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
23316       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
23317      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
23318       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
23319      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
23320      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
23321      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
23322      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
23323       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
23324      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
23325       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
23326      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
23327      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
23328       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
23329      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
23330       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
23331      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
23332      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
23333      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23334      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
23335      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
23336       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23337      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
23338      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
23339      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
23340      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
23341      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
23342       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
23343      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
23344       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
23345      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
23346      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
23347      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23348      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
23349       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23350       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
23351       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
23352       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
23353       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
23354       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
23355       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
23356       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
23357       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
23358       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23359      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
23360      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
23361      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
23362       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
23363      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
23364      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
23365       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
23366       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
23367       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
23368      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23369      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
23370       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
23371       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
23372      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23373      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
23374      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
23375      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
23376       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
23377      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
23378      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
23379      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
23380      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23381      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
23382      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
23383      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23384      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
23385       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23386      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
23387      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
23388       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
23389      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
23390      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
23391      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
23392      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
23393      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
23394      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23395      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
23396       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23397       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
23398       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
23399       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
23400       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
23401       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
23402       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
23403       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
23404       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
23405       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
23406      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
23407      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
23408      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
23409      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
23410      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
23411      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
23412       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
23413      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
23414      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
23415      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
23416      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
23417      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
23418       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
23419      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
23420      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
23421      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
23422      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
23423      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
23424      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
23425      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
23426      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
23427      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23428       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23429      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
23430      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23431      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
23432      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
23433      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23434      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
23435       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
23436       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
23437      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
23438      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
23439      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
23440       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
23441      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
23442      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
23443       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23444       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
23445       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23446       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
23447       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
23448       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
23449       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
23450       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
23451       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
23452       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
23453      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
23454      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
23455       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
23456       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
23457      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
23458      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
23459      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
23460       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
23461      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
23462      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
23463      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
23464      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
23465      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
23466      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
23467      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
23468      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
23469      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
23470       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
23471      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
23472      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
23473      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
23474      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
23475      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23476      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
23477      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23478       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
23479      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
23480      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23481      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
23482      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
23483      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
23484      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
23485      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
23486       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
23487       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
23488      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
23489      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
23491       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
23492       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
23493       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
23494       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
23495       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
23496       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
23497       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
23498       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
23499       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
23500      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
23501      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
23502      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
23503      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
23504      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
23505       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
23506      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
23507      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
23508      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
23509      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
23510      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
23511       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
23512      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
23513      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
23514       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
23515      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
23516      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
23517      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
23518      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
23519       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
23520       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23521      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
23522      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
23523      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
23524      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
23525      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
23526       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
23527      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23528      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
23529      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
23530      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
23531      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
23532       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
23533       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
23534      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23535      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
23536        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23537       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
23538       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
23539       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
23540       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
23541       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
23542       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
23543       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
23544       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
23545       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
23546       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
23547      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
23548       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
23549      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
23550       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
23551      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
23552       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
23553      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
23554      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
23555      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
23556      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
23557       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
23558      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
23559       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
23560      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
23561      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
23562       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
23563      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
23564       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
23565      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
23566      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
23567      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23568      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
23569      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
23570       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23571      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
23572      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
23573      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
23574      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
23575      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
23576       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
23577      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
23578       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
23579      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
23580      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
23581      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23582      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
23583       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23584       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
23585       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
23586       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
23587       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
23588       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
23589       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
23590       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
23591       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
23592       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23593      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
23594      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
23595      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
23596       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
23597      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
23598      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
23599       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
23600       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
23601       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
23602      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23603      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
23604       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
23605       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
23606      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23607      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
23608      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
23609      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
23610       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
23611      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
23612      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
23613      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
23614      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23615      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
23616      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
23617      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23618      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
23619       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23620      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
23621      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
23622       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
23623      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
23624      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
23625      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
23626      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
23627      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
23628      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23629      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
23630       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23631       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
23632       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
23633       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
23634       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
23635       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
23636       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
23637       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
23638       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
23639       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
23640      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
23641      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
23642      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
23643      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
23644      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
23645      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
23646       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
23647      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
23648      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
23649      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
23650      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
23651      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
23652       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
23653      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
23654      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
23655      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
23656      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
23657      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
23658      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
23659      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
23660      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
23661      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23662       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23663      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
23664      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23665      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
23666      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
23667      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23668      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
23669       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
23670       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
23671      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
23672      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
23673      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
23674       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
23675      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
23676      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
23677       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23678       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
23679       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23680       39,    40,    -1,    42,    43,    44,    -1,    46,    47,    48,
23681       49,    50,    -1,    52,    53,    -1,    55,    56,    57,    58,
23682       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
23683       69,    70,    71,    72,    73,    -1,    -1,    -1,    77,    78,
23684       79,    80,    81,    -1,    83,    84,    85,    -1,    87,    88,
23685       89,    90,    91,    92,    -1,    -1,    95,    96,    97,    -1,
23686       -1,    -1,    -1,    -1,    -1,    -1,   105,   106,   107,   108,
23687      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
23688      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
23689       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
23690       -1,   140,   141,   142,    -1,   144,   145,   146,   147,   148,
23691      149,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
23692      159,   160,    -1,   162,    -1,   164,    -1,    -1,    -1,   168,
23693      169,   170,   171,    -1,   173,   174,    -1,   176,   177,   178,
23694       -1,   180,   181,   182,   183,   184,    -1,   186,   187,   188,
23695      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
23696      199,    -1,   201,   202,   203,   204,   205,   206,   207,    -1,
23697      209,    -1,   211,    -1,    -1,   214,    -1,   216,   217,   218,
23698      219,   220,    -1,    -1,   223,   224,    -1,   226,    -1,    -1,
23699      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
23700      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
23701      249,   250,    -1,   252,   253,   254,   255,   256,   257,   258,
23702      259,   260,   261,   262,    -1,   264,   265,    -1,   267,    -1,
23703      269,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
23704       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,    -1,
23705      289,    -1,   291,   292,   293,   294,   295,   296,   297,   298,
23706      299,   300,    -1,    -1,   303,   304,   305,   306,   307,   308,
23707      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
23708      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
23709      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23710      339,    -1,   341,   342,    -1,   344,   345,   346,   347,   348,
23711      349,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23712       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
23713      369,   370,    -1,   372,   373,   374,   375,    -1,   377,   378,
23714      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23715      389,   390,   391,    -1,   393,   394,    -1,   396,    -1,   398,
23716      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
23717      409,   410,   411,   412,   413,    -1,   415,   416,   417,   418,
23718      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
23719      429,    -1,    -1,   432,   433,   434,   435,   436,   437,   438,
23720       -1,   440,    -1,   442,   443,   444,   445,    -1,    -1,   448,
23721       -1,    -1,   451,   452,   453,   454,   455,   456,   457,   458,
23722      459,   460,   461,   462,   463,   464,   465,   466,   467,   468,
23723      469,   470,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23724       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,
23725       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
23726       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
23727       -1,    42,    43,    44,    -1,    46,    47,    48,    49,    50,
23728       -1,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
23729       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
23730       71,    72,    73,    -1,    -1,    -1,    77,    78,    79,    80,
23731       81,    -1,    83,    84,    85,    -1,    87,    88,    89,    90,
23732       91,    92,    -1,    -1,    95,    96,    97,    -1,    -1,    -1,
23733       -1,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
23734      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
23735      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
23736      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
23737      141,   142,    -1,   144,   145,   146,   147,   148,   149,   150,
23738      151,   152,   153,    -1,   155,    -1,   157,   158,   159,   160,
23739       -1,   162,    -1,   164,    -1,    -1,    -1,   168,   169,   170,
23740      171,    -1,   173,   174,    -1,   176,   177,   178,    -1,   180,
23741      181,   182,   183,   184,    -1,   186,   187,   188,   189,    -1,
23742      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
23743      201,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
23744      211,    -1,    -1,   214,    -1,   216,   217,   218,   219,   220,
23745       -1,    -1,   223,   224,    -1,   226,    -1,    -1,   229,   230,
23746      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
23747      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
23748       -1,   252,   253,   254,   255,   256,   257,   258,   259,   260,
23749      261,   262,    -1,   264,   265,    -1,   267,    -1,   269,   270,
23750      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
23751      281,   282,    -1,    -1,   285,   286,   287,    -1,   289,    -1,
23752      291,   292,   293,   294,   295,   296,   297,   298,   299,   300,
23753       -1,    -1,   303,   304,   305,   306,   307,   308,   309,   310,
23754       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
23755      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
23756      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
23757      341,   342,    -1,   344,   345,   346,   347,   348,   349,   350,
23758      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
23759      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
23760       -1,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
23761      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
23762      391,    -1,   393,   394,    -1,   396,    -1,   398,   399,   400,
23763      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
23764      411,   412,   413,    -1,   415,   416,   417,   418,   419,   420,
23765      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
23766       -1,   432,   433,   434,   435,   436,   437,   438,    -1,   440,
23767       -1,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
23768      451,   452,   453,   454,   455,   456,   457,   458,   459,   460,
23769      461,   462,   463,   464,   465,   466,   467,   468,   469,   470,
23770        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23771       -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    21,    22,
23772       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
23773       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
23774       43,    44,    -1,    46,    47,    48,    49,    50,    -1,    52,
23775       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
23776       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
23777       73,    -1,    -1,    -1,    77,    78,    79,    80,    81,    -1,
23778       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
23779       -1,    -1,    95,    96,    97,    -1,    -1,    -1,    -1,    -1,
23780       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
23781      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
23782       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
23783      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
23784       -1,   144,   145,   146,   147,   148,   149,   150,   151,   152,
23785      153,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
23786       -1,   164,    -1,    -1,    -1,   168,   169,   170,   171,    -1,
23787      173,   174,    -1,   176,   177,   178,    -1,   180,   181,   182,
23788      183,   184,    -1,   186,   187,   188,   189,    -1,   191,   192,
23789      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
23790      203,   204,   205,   206,   207,    -1,   209,    -1,   211,    -1,
23791       -1,   214,    -1,   216,   217,   218,   219,   220,    -1,    -1,
23792      223,   224,    -1,   226,    -1,    -1,   229,   230,   231,    -1,
23793       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
23794      243,   244,   245,   246,   247,   248,   249,   250,    -1,   252,
23795      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
23796       -1,   264,   265,    -1,   267,    -1,   269,   270,   271,   272,
23797      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
23798       -1,    -1,   285,   286,   287,    -1,   289,    -1,   291,   292,
23799      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
23800      303,   304,   305,   306,   307,   308,   309,   310,    -1,   312,
23801      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
23802      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
23803      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
23804       -1,   344,   345,   346,   347,   348,   349,   350,   351,   352,
23805      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
23806      363,   364,    -1,   366,   367,   368,   369,   370,    -1,   372,
23807      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
23808      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
23809      393,   394,    -1,   396,    -1,   398,   399,   400,   401,   402,
23810       -1,   404,   405,   406,    -1,    -1,   409,   410,   411,   412,
23811      413,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
23812       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
23813      433,   434,   435,   436,   437,   438,    -1,   440,    -1,   442,
23814      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
23815      453,   454,   455,   456,   457,   458,   459,   460,   461,   462,
23816      463,   464,   465,   466,   467,   468,   469,   470,     3,    -1,
23817       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23818       -1,    -1,    -1,    -1,    -1,    20,    21,    22,    23,    24,
23819       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
23820       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
23821       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
23822       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
23823       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
23824       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
23825       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
23826       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23827      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
23828      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
23829      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
23830       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
23831      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
23832      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
23833       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
23834       -1,   176,   177,   178,    -1,   180,   181,   182,   183,   184,
23835       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
23836      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23837      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
23838       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
23839       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
23840      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23841      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
23842      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
23843      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
23844       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
23845      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
23846      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
23847      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
23848      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
23849      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
23850      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
23851      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
23852      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
23853       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23854      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
23855      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
23856       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
23857      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
23858      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
23859      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
23860      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
23861      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
23862      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
23863      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
23864       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23865       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
23866       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
23867       -1,    -1,    39,    40,    -1,    42,    43,    44,    -1,    46,
23868       47,    48,    49,    50,    -1,    52,    53,    -1,    55,    56,
23869       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
23870       67,    -1,    69,    70,    71,    72,    73,    -1,    -1,    -1,
23871       77,    78,    79,    80,    81,    -1,    83,    84,    85,    -1,
23872       87,    88,    89,    90,    91,    92,    -1,    -1,    95,    96,
23873       97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   105,   106,
23874      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
23875      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
23876      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
23877      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
23878      147,   148,   149,   150,   151,   152,   153,    -1,   155,    -1,
23879      157,   158,   159,   160,    -1,   162,    -1,   164,    -1,    -1,
23880       -1,   168,   169,   170,   171,    -1,   173,   174,    -1,   176,
23881      177,   178,    -1,   180,   181,   182,   183,   184,    -1,   186,
23882      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
23883      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
23884      207,    -1,   209,    -1,   211,    -1,    -1,   214,    -1,   216,
23885      217,   218,   219,   220,    -1,    -1,   223,   224,    -1,   226,
23886       -1,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
23887      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
23888      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
23889      257,   258,   259,   260,   261,   262,    -1,   264,   265,    -1,
23890      267,    -1,   269,   270,   271,   272,   273,   274,    -1,   276,
23891      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
23892      287,    -1,   289,    -1,   291,   292,   293,   294,   295,   296,
23893      297,   298,   299,   300,    -1,    -1,   303,   304,   305,   306,
23894      307,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
23895      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
23896       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
23897      337,   338,   339,    -1,   341,   342,    -1,   344,   345,   346,
23898      347,   348,   349,   350,   351,   352,   353,   354,   355,   356,
23899      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
23900      367,   368,   369,   370,    -1,   372,   373,   374,   375,    -1,
23901      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
23902      387,   388,   389,   390,   391,    -1,   393,   394,    -1,   396,
23903       -1,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
23904       -1,    -1,   409,   410,   411,   412,   413,    -1,   415,   416,
23905      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
23906      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
23907      437,   438,    -1,   440,    -1,   442,   443,   444,   445,    -1,
23908       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
23909      457,   458,   459,   460,   461,   462,   463,   464,   465,   466,
23910      467,   468,   469,   470,     3,    -1,    -1,    -1,    -1,    -1,
23911       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23912       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
23913       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23914       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
23915       -1,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
23916       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
23917       69,    70,    71,    72,    -1,    -1,    75,    -1,    77,    78,
23918       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
23919       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
23920       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
23921      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
23922      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
23923       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
23924       -1,   140,   141,   142,    -1,   144,   145,   146,   147,    -1,
23925      149,   150,   151,   152,    -1,    -1,   155,    -1,   157,   158,
23926      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
23927      169,   170,   171,    -1,   173,    -1,    -1,    -1,   177,   178,
23928       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
23929      189,   190,   191,   192,   193,   194,   195,   196,   197,    -1,
23930      199,   200,   201,   202,   203,   204,   205,   206,   207,    -1,
23931      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
23932      219,   220,    -1,    -1,   223,    -1,   225,   226,   227,    -1,
23933      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
23934      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
23935      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
23936      259,    -1,    -1,   262,    -1,   264,   265,   266,   267,    -1,
23937       -1,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
23938       -1,   280,   281,   282,    -1,    -1,   285,   286,   287,   288,
23939      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
23940      299,   300,    -1,    -1,   303,   304,    -1,   306,    -1,   308,
23941      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
23942      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
23943      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
23944      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
23945       -1,   350,   351,   352,   353,   354,   355,   356,   357,   358,
23946       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
23947      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
23948      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
23949      389,    -1,   391,    -1,   393,   394,    -1,   396,   397,   398,
23950      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
23951      409,   410,    -1,   412,    -1,    -1,   415,   416,   417,   418,
23952      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
23953      429,    -1,    -1,   432,   433,   434,   435,   436,    -1,   438,
23954      439,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
23955       -1,    -1,   451,   452,   453,   454,   455,   456,     3,    -1,
23956       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,
23957      469,   470,    -1,    -1,    -1,    20,    21,    22,    23,    24,
23958       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
23959       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
23960       -1,    46,    47,    48,    49,    50,    -1,    52,    53,    -1,
23961       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
23962       65,    66,    67,    -1,    69,    70,    71,    72,    73,    -1,
23963       -1,    -1,    77,    78,    79,    80,    81,    -1,    83,    84,
23964       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    -1,
23965       95,    96,    97,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23966      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
23967      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
23968      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
23969       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
23970      145,   146,   147,   148,   149,   150,   151,   152,   153,    -1,
23971      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
23972       -1,    -1,    -1,   168,   169,   170,   171,    -1,   173,   174,
23973       -1,   176,    -1,   178,    -1,   180,   181,   182,   183,   184,
23974       -1,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
23975      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23976      205,   206,   207,    -1,   209,    -1,   211,    -1,    -1,   214,
23977       -1,   216,   217,   218,   219,   220,    -1,    -1,   223,   224,
23978       -1,   226,    -1,    -1,   229,   230,   231,    -1,    -1,   234,
23979      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23980      245,   246,   247,   248,   249,   250,    -1,   252,   253,   254,
23981      255,   256,   257,   258,   259,   260,   261,   262,    -1,   264,
23982      265,    -1,   267,    -1,   269,   270,   271,   272,   273,   274,
23983       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
23984      285,   286,   287,    -1,   289,    -1,   291,   292,   293,   294,
23985      295,   296,   297,    -1,   299,   300,    -1,    -1,   303,   304,
23986      305,   306,   307,   308,   309,   310,    -1,   312,   313,   314,
23987      315,   316,   317,   318,   319,    -1,   321,   322,   323,   324,
23988      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
23989      335,   336,   337,   338,   339,    -1,   341,   342,    -1,   344,
23990      345,   346,   347,   348,   349,    -1,   351,   352,   353,   354,
23991      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
23992       -1,   366,   367,   368,   369,   370,    -1,   372,   373,   374,
23993      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
23994      385,   386,   387,   388,   389,   390,   391,    -1,   393,   394,
23995       -1,   396,    -1,   398,   399,   400,   401,   402,    -1,   404,
23996      405,   406,    -1,    -1,   409,   410,   411,   412,   413,    -1,
23997      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
23998      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
23999      435,   436,   437,   438,    -1,   440,    -1,   442,   443,   444,
24000      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
24001      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
24002      465,   466,   467,   468,   469,   470,     3,    -1,    -1,    -1,
24003       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24004       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
24005       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
24006       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
24007       47,    48,    -1,    50,    51,    52,    53,    -1,    55,    56,
24008       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
24009       67,    -1,    69,    70,    71,    72,    -1,    -1,    75,    -1,
24010       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
24011       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
24012       97,    -1,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
24013      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
24014      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
24015      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
24016      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
24017      147,    -1,   149,   150,   151,   152,    -1,    -1,   155,    -1,
24018      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
24019      167,   168,   169,   170,   171,    -1,   173,    -1,    -1,    -1,
24020      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
24021      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
24022      197,    -1,   199,   200,    -1,   202,   203,   204,   205,   206,
24023      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
24024      217,   218,   219,   220,    -1,    -1,   223,    -1,   225,   226,
24025      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
24026      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
24027      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
24028      257,   258,   259,    -1,    -1,   262,    -1,   264,   265,   266,
24029      267,   268,    -1,   270,   271,   272,   273,   274,    -1,   276,
24030      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
24031       -1,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
24032      297,   298,   299,   300,    -1,    -1,   303,   304,    -1,   306,
24033       -1,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
24034      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
24035       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
24036      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
24037      347,   348,    -1,   350,   351,   352,   353,   354,   355,   356,
24038      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
24039      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
24040      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
24041      387,   388,   389,    -1,   391,    -1,   393,   394,   395,   396,
24042      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
24043       -1,    -1,   409,   410,    -1,   412,    -1,    -1,   415,   416,
24044      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
24045      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
24046       -1,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
24047       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
24048        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24049       -1,   468,   469,   470,    -1,    -1,    -1,    20,    21,    22,
24050       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
24051       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
24052       43,    44,    45,    46,    47,    48,    -1,    50,    51,    52,
24053       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
24054       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
24055       -1,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
24056       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
24057       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
24058       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
24059      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
24060       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
24061      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
24062       -1,   144,   145,   146,   147,    -1,   149,   150,   151,   152,
24063       -1,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
24064       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
24065      173,    -1,    -1,    -1,   177,   178,    -1,   180,   181,   182,
24066      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
24067      193,   194,   195,   196,   197,    -1,   199,   200,    -1,   202,
24068      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
24069      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
24070      223,    -1,   225,   226,   227,    -1,   229,   230,   231,    -1,
24071       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
24072      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
24073      253,   254,   255,   256,   257,   258,   259,   260,    -1,   262,
24074       -1,   264,   265,   266,   267,    -1,    -1,   270,   271,   272,
24075      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
24076       -1,    -1,   285,   286,    -1,   288,   289,   290,    -1,   292,
24077      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
24078      303,   304,    -1,   306,    -1,   308,   309,   310,    -1,   312,
24079      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
24080      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
24081      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
24082      343,   344,   345,   346,   347,   348,    -1,   350,   351,   352,
24083      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
24084      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
24085      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
24086      383,   384,   385,   386,   387,   388,   389,    -1,   391,    -1,
24087      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
24088       -1,   404,   405,   406,    -1,    -1,   409,   410,    -1,   412,
24089       -1,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
24090       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
24091      433,   434,   435,   436,    -1,   438,    -1,   440,   441,   442,
24092      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
24093      453,   454,   455,   456,     3,    -1,    -1,    -1,    -1,    -1,
24094       -1,    -1,    -1,    -1,    -1,   468,   469,   470,    -1,    -1,
24095       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
24096       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24097       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
24098       -1,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
24099       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
24100       69,    70,    71,    72,    -1,    -1,    75,    -1,    77,    78,
24101       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
24102       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
24103       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
24104      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
24105      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
24106       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
24107       -1,   140,   141,   142,    -1,   144,   145,   146,   147,    -1,
24108      149,   150,   151,   152,    -1,    -1,   155,    -1,   157,   158,
24109      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
24110      169,   170,   171,    -1,   173,    -1,    -1,    -1,   177,   178,
24111       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
24112      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
24113      199,   200,    -1,   202,   203,   204,   205,   206,   207,    -1,
24114      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
24115      219,   220,    -1,    -1,   223,    -1,   225,   226,   227,    -1,
24116      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
24117      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
24118      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
24119      259,   260,    -1,   262,    -1,   264,   265,   266,   267,    -1,
24120       -1,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
24121       -1,   280,   281,   282,    -1,    -1,   285,   286,    -1,   288,
24122      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
24123      299,   300,    -1,    -1,   303,   304,    -1,   306,    -1,   308,
24124      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
24125      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
24126      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
24127      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
24128       -1,   350,   351,   352,   353,   354,   355,   356,   357,   358,
24129       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
24130      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
24131      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
24132      389,    -1,   391,    -1,   393,   394,    -1,   396,   397,   398,
24133      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
24134      409,   410,    -1,   412,    -1,    -1,   415,   416,   417,   418,
24135      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
24136      429,    -1,    -1,   432,   433,   434,   435,   436,    -1,   438,
24137       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
24138       -1,    -1,   451,   452,   453,   454,   455,   456,     3,    -1,
24139       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,
24140      469,   470,    -1,    -1,    -1,    20,    21,    22,    23,    24,
24141       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
24142       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
24143       45,    46,    47,    48,    -1,    50,    51,    52,    53,    -1,
24144       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
24145       65,    66,    67,    -1,    69,    70,    71,    72,    -1,    -1,
24146       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
24147       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
24148       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,    -1,
24149      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
24150      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
24151      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
24152       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
24153      145,   146,   147,    -1,   149,   150,   151,   152,    -1,    -1,
24154      155,    -1,   157,   158,   159,   160,   161,   162,    -1,   164,
24155      165,    -1,   167,   168,   169,   170,   171,    -1,   173,    -1,
24156       -1,    -1,   177,   178,    -1,   180,   181,   182,   183,   184,
24157      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
24158      195,   196,   197,    -1,   199,   200,    -1,   202,   203,   204,
24159      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
24160      215,   216,   217,   218,   219,   220,    -1,    -1,   223,    -1,
24161      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
24162      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
24163      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
24164      255,   256,   257,   258,   259,    -1,    -1,   262,    -1,   264,
24165      265,   266,   267,    -1,    -1,   270,   271,   272,   273,   274,
24166       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
24167      285,   286,    -1,   288,   289,   290,    -1,   292,   293,   294,
24168      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
24169       -1,   306,    -1,   308,   309,   310,    -1,   312,   313,   314,
24170      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
24171      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
24172      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
24173      345,   346,   347,   348,    -1,   350,   351,   352,   353,   354,
24174      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
24175       -1,   366,   367,   368,   369,   370,   371,   372,   373,   374,
24176      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
24177      385,   386,   387,   388,   389,    -1,   391,    -1,   393,   394,
24178       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
24179      405,   406,    -1,    -1,   409,   410,    -1,   412,    -1,    -1,
24180      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
24181      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
24182      435,   436,    -1,   438,    -1,   440,   441,   442,   443,   444,
24183      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
24184      455,   456,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24185       -1,    -1,    -1,   468,   469,   470,    -1,    -1,    -1,    20,
24186       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
24187       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
24188       -1,    42,    43,    44,    45,    46,    47,    48,    -1,    50,
24189       51,    52,    53,    -1,    55,    56,    57,    58,    59,    60,
24190       -1,    -1,    63,    64,    65,    66,    67,    -1,    69,    70,
24191       71,    72,    -1,    -1,    75,    -1,    77,    78,    79,    80,
24192       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
24193       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
24194      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
24195      111,   112,   113,    -1,   115,    -1,   117,   118,   119,   120,
24196      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
24197      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
24198      141,   142,    -1,   144,   145,   146,   147,    -1,   149,   150,
24199      151,   152,    -1,    -1,   155,    -1,   157,   158,   159,   160,
24200       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
24201      171,    -1,   173,    -1,    -1,    -1,   177,   178,    -1,   180,
24202      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
24203      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
24204       -1,   202,   203,   204,   205,   206,   207,    -1,   209,    -1,
24205      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
24206       -1,    -1,   223,    -1,   225,   226,   227,    -1,   229,   230,
24207      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
24208      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
24209      251,   252,   253,   254,   255,   256,   257,   258,   259,    -1,
24210       -1,   262,    -1,   264,   265,   266,   267,    -1,    -1,   270,
24211      271,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
24212      281,   282,    -1,    -1,   285,   286,    -1,   288,   289,   290,
24213       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
24214       -1,    -1,   303,   304,    -1,   306,    -1,   308,   309,   310,
24215       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
24216      321,   322,   323,   324,   325,   326,    -1,   328,   329,   330,
24217      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
24218      341,   342,   343,   344,   345,   346,   347,   348,    -1,   350,
24219      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
24220      361,   362,   363,   364,    -1,   366,   367,   368,   369,   370,
24221      371,   372,   373,   374,   375,    -1,   377,   378,   379,   380,
24222      381,   382,   383,   384,   385,   386,   387,   388,   389,    -1,
24223      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
24224      401,   402,    -1,   404,   405,   406,    -1,    -1,   409,   410,
24225       -1,   412,    -1,    -1,   415,   416,   417,   418,   419,   420,
24226      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
24227       -1,   432,   433,   434,   435,   436,    -1,   438,    -1,   440,
24228      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
24229      451,   452,   453,   454,   455,   456,     3,    -1,    -1,    -1,
24230       -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,   469,   470,
24231       -1,    -1,    -1,    20,    21,    22,    23,    24,    25,    26,
24232       27,    -1,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
24233       -1,    -1,    39,    40,    -1,    42,    43,    44,    45,    46,
24234       47,    48,    -1,    50,    51,    52,    53,    -1,    55,    56,
24235       57,    58,    59,    60,    -1,    -1,    63,    64,    65,    66,
24236       67,    -1,    69,    70,    71,    72,    -1,    -1,    75,    -1,
24237       77,    78,    79,    80,    81,    82,    83,    84,    85,    -1,
24238       87,    88,    89,    90,    91,    92,    -1,    94,    95,    96,
24239       97,    -1,    -1,    -1,   101,    -1,    -1,    -1,   105,   106,
24240      107,   108,   109,   110,   111,   112,   113,    -1,   115,    -1,
24241      117,   118,   119,   120,   121,   122,    -1,   124,   125,   126,
24242      127,    -1,    -1,   130,   131,   132,   133,   134,    -1,   136,
24243      137,   138,    -1,   140,   141,   142,    -1,   144,   145,   146,
24244      147,    -1,   149,   150,   151,   152,    -1,    -1,   155,    -1,
24245      157,   158,   159,   160,    -1,   162,    -1,   164,   165,    -1,
24246      167,   168,   169,   170,   171,    -1,   173,    -1,    -1,    -1,
24247      177,   178,    -1,   180,   181,   182,   183,   184,   185,   186,
24248      187,   188,   189,    -1,   191,   192,   193,   194,   195,   196,
24249      197,    -1,   199,   200,    -1,   202,   203,   204,   205,   206,
24250      207,    -1,   209,    -1,   211,   212,   213,   214,   215,   216,
24251      217,   218,   219,   220,    -1,    -1,   223,    -1,   225,   226,
24252      227,    -1,   229,   230,   231,    -1,    -1,   234,   235,   236,
24253      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
24254      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
24255      257,   258,   259,    -1,    -1,   262,    -1,   264,   265,   266,
24256      267,    -1,    -1,   270,   271,   272,   273,   274,    -1,   276,
24257      277,    -1,    -1,   280,   281,   282,    -1,    -1,   285,   286,
24258       -1,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
24259      297,   298,   299,   300,    -1,    -1,   303,   304,    -1,   306,
24260       -1,   308,   309,   310,    -1,   312,   313,   314,   315,   316,
24261      317,   318,   319,   320,   321,   322,   323,   324,   325,   326,
24262       -1,   328,   329,   330,   331,   332,   333,   334,   335,   336,
24263      337,   338,   339,    -1,   341,   342,   343,   344,   345,   346,
24264      347,   348,    -1,   350,   351,   352,   353,   354,   355,   356,
24265      357,   358,    -1,   360,   361,   362,   363,   364,    -1,   366,
24266      367,   368,   369,   370,   371,   372,   373,   374,   375,    -1,
24267      377,   378,   379,   380,   381,   382,   383,   384,   385,   386,
24268      387,   388,   389,    -1,   391,    -1,   393,   394,    -1,   396,
24269      397,   398,   399,   400,   401,   402,    -1,   404,   405,   406,
24270       -1,    -1,   409,   410,    -1,   412,    -1,    -1,   415,   416,
24271      417,   418,   419,   420,   421,   422,    -1,    -1,   425,   426,
24272      427,   428,   429,    -1,    -1,   432,   433,   434,   435,   436,
24273       -1,   438,    -1,   440,   441,   442,   443,   444,   445,    -1,
24274       -1,   448,    -1,    -1,   451,   452,   453,   454,   455,   456,
24275        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24276       -1,   468,   469,   470,    -1,    -1,    -1,    20,    21,    22,
24277       23,    24,    25,    26,    27,    -1,    29,    30,    31,    -1,
24278       -1,    -1,    -1,    -1,    -1,    -1,    39,    40,    -1,    42,
24279       43,    44,    45,    46,    47,    48,    -1,    50,    51,    52,
24280       53,    -1,    55,    56,    57,    58,    59,    60,    -1,    -1,
24281       63,    64,    65,    66,    67,    -1,    69,    70,    71,    72,
24282       -1,    -1,    75,    -1,    77,    78,    79,    80,    81,    82,
24283       83,    84,    85,    -1,    87,    88,    89,    90,    91,    92,
24284       -1,    94,    95,    96,    97,    -1,    -1,    -1,   101,    -1,
24285       -1,    -1,   105,   106,   107,   108,   109,   110,   111,   112,
24286      113,    -1,   115,    -1,   117,   118,   119,   120,   121,   122,
24287       -1,   124,   125,   126,   127,    -1,    -1,   130,   131,   132,
24288      133,   134,    -1,   136,   137,   138,    -1,   140,   141,   142,
24289       -1,   144,   145,   146,   147,    -1,   149,   150,   151,   152,
24290       -1,    -1,   155,    -1,   157,   158,   159,   160,    -1,   162,
24291       -1,   164,   165,    -1,   167,   168,   169,   170,   171,    -1,
24292      173,    -1,    -1,    -1,   177,   178,    -1,   180,   181,   182,
24293      183,   184,   185,   186,   187,   188,   189,    -1,   191,   192,
24294      193,   194,   195,   196,   197,    -1,   199,   200,    -1,   202,
24295      203,   204,   205,   206,   207,    -1,   209,    -1,   211,   212,
24296      213,   214,   215,   216,   217,   218,   219,   220,    -1,    -1,
24297      223,    -1,   225,   226,   227,    -1,   229,   230,   231,    -1,
24298       -1,   234,   235,   236,   237,   238,   239,   240,   241,   242,
24299      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
24300      253,   254,   255,   256,   257,   258,   259,    -1,    -1,   262,
24301       -1,   264,   265,   266,   267,    -1,    -1,   270,   271,   272,
24302      273,   274,    -1,   276,   277,    -1,    -1,   280,   281,   282,
24303       -1,    -1,   285,   286,    -1,   288,   289,   290,    -1,   292,
24304      293,   294,   295,   296,   297,   298,   299,   300,    -1,    -1,
24305      303,   304,    -1,   306,    -1,   308,   309,   310,    -1,   312,
24306      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
24307      323,   324,   325,   326,    -1,   328,   329,   330,   331,   332,
24308      333,   334,   335,   336,   337,   338,   339,    -1,   341,   342,
24309      343,   344,   345,   346,   347,   348,    -1,   350,   351,   352,
24310      353,   354,   355,   356,   357,   358,    -1,   360,   361,   362,
24311      363,   364,    -1,   366,   367,   368,   369,   370,   371,   372,
24312      373,   374,   375,    -1,   377,   378,   379,   380,   381,   382,
24313      383,   384,   385,   386,   387,   388,   389,    -1,   391,    -1,
24314      393,   394,    -1,   396,   397,   398,   399,   400,   401,   402,
24315       -1,   404,   405,   406,    -1,    -1,   409,   410,    -1,   412,
24316       -1,    -1,   415,   416,   417,   418,   419,   420,   421,   422,
24317       -1,    -1,   425,   426,   427,   428,   429,    -1,    -1,   432,
24318      433,   434,   435,   436,    -1,   438,    -1,   440,   441,   442,
24319      443,   444,   445,    -1,    -1,   448,    -1,    -1,   451,   452,
24320      453,   454,   455,   456,     3,    -1,    -1,    -1,    -1,    -1,
24321       -1,    -1,    -1,    -1,    -1,   468,   469,   470,    -1,    -1,
24322       -1,    20,    21,    22,    23,    24,    25,    26,    27,    -1,
24323       29,    30,    31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24324       39,    40,    -1,    42,    43,    44,    45,    46,    47,    48,
24325       -1,    50,    51,    52,    53,    -1,    55,    56,    57,    58,
24326       59,    60,    -1,    -1,    63,    64,    65,    66,    67,    -1,
24327       69,    70,    71,    72,    -1,    -1,    75,    -1,    77,    78,
24328       79,    80,    81,    82,    83,    84,    85,    -1,    87,    88,
24329       89,    90,    91,    92,    -1,    94,    95,    96,    97,    -1,
24330       -1,    -1,   101,    -1,    -1,    -1,   105,   106,   107,   108,
24331      109,   110,   111,   112,   113,    -1,   115,    -1,   117,   118,
24332      119,   120,   121,   122,    -1,   124,   125,   126,   127,    -1,
24333       -1,   130,   131,   132,   133,   134,    -1,   136,   137,   138,
24334       -1,   140,   141,   142,    -1,   144,   145,   146,   147,    -1,
24335      149,   150,   151,   152,    -1,    -1,   155,    -1,   157,   158,
24336      159,   160,    -1,   162,    -1,   164,   165,    -1,   167,   168,
24337      169,   170,   171,    -1,   173,    -1,    -1,    -1,   177,   178,
24338       -1,   180,   181,   182,   183,   184,   185,   186,   187,   188,
24339      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
24340      199,   200,    -1,   202,   203,   204,   205,   206,   207,    -1,
24341      209,    -1,   211,   212,   213,   214,   215,   216,   217,   218,
24342      219,   220,    -1,    -1,   223,    -1,   225,   226,   227,    -1,
24343      229,   230,   231,    -1,    -1,   234,   235,   236,   237,   238,
24344      239,   240,   241,   242,   243,   244,   245,   246,   247,   248,
24345      249,   250,   251,   252,   253,   254,   255,   256,   257,   258,
24346      259,    -1,    -1,   262,    -1,   264,   265,   266,   267,    -1,
24347       -1,   270,   271,   272,   273,   274,    -1,   276,   277,    -1,
24348       -1,   280,   281,   282,    -1,    -1,   285,   286,    -1,   288,
24349      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
24350      299,   300,    -1,    -1,   303,   304,    -1,   306,    -1,   308,
24351      309,   310,    -1,   312,   313,   314,   315,   316,   317,   318,
24352      319,   320,   321,   322,   323,   324,   325,   326,    -1,   328,
24353      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
24354      339,    -1,   341,   342,   343,   344,   345,   346,   347,   348,
24355       -1,   350,   351,   352,   353,   354,   355,   356,   357,   358,
24356       -1,   360,   361,   362,   363,   364,    -1,   366,   367,   368,
24357      369,   370,   371,   372,   373,   374,   375,    -1,   377,   378,
24358      379,   380,   381,   382,   383,   384,   385,   386,   387,   388,
24359      389,    -1,   391,    -1,   393,   394,    -1,   396,   397,   398,
24360      399,   400,   401,   402,    -1,   404,   405,   406,    -1,    -1,
24361      409,   410,    -1,   412,    -1,    -1,   415,   416,   417,   418,
24362      419,   420,   421,   422,    -1,    -1,   425,   426,   427,   428,
24363      429,    -1,    -1,   432,   433,   434,   435,   436,    -1,   438,
24364       -1,   440,   441,   442,   443,   444,   445,    -1,    -1,   448,
24365       -1,    -1,   451,   452,   453,   454,   455,   456,     3,    -1,
24366       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,
24367      469,   470,    -1,    -1,    -1,    20,    21,    22,    23,    24,
24368       25,    26,    27,    -1,    29,    30,    31,    -1,    -1,    -1,
24369       -1,    -1,    -1,    -1,    39,    40,    -1,    42,    43,    44,
24370       45,    46,    47,    48,    -1,    50,    51,    52,    53,    -1,
24371       55,    56,    57,    58,    59,    60,    -1,    -1,    63,    64,
24372       65,    66,    67,    -1,    69,    70,    71,    72,    -1,    -1,
24373       75,    -1,    77,    78,    79,    80,    81,    82,    83,    84,
24374       85,    -1,    87,    88,    89,    90,    91,    92,    -1,    94,
24375       95,    96,    97,    -1,    -1,    -1,   101,    -1,    -1,    -1,
24376      105,   106,   107,   108,   109,   110,   111,   112,   113,    -1,
24377      115,    -1,   117,   118,   119,   120,   121,   122,    -1,   124,
24378      125,   126,   127,    -1,    -1,   130,   131,   132,   133,   134,
24379       -1,   136,   137,   138,    -1,   140,   141,   142,    -1,   144,
24380      145,   146,   147,    -1,   149,   150,   151,   152,    -1,    -1,
24381      155,    -1,   157,   158,   159,   160,    -1,   162,    -1,   164,
24382      165,    -1,   167,   168,   169,   170,   171,    -1,   173,    -1,
24383       -1,    -1,   177,   178,    -1,   180,   181,   182,   183,   184,
24384      185,   186,   187,   188,   189,    -1,   191,   192,   193,   194,
24385      195,   196,   197,    -1,   199,   200,    -1,   202,   203,   204,
24386      205,   206,   207,    -1,   209,    -1,   211,   212,   213,   214,
24387      215,   216,   217,   218,   219,   220,    -1,    -1,   223,    -1,
24388      225,   226,   227,    -1,   229,   230,   231,    -1,    -1,   234,
24389      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
24390      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
24391      255,   256,   257,   258,   259,    -1,    -1,   262,    -1,   264,
24392      265,   266,   267,    -1,    -1,   270,   271,   272,   273,   274,
24393       -1,   276,   277,    -1,    -1,   280,   281,   282,    -1,    -1,
24394      285,   286,    -1,   288,   289,   290,    -1,   292,   293,   294,
24395      295,   296,   297,   298,   299,   300,    -1,    -1,   303,   304,
24396       -1,   306,    -1,   308,   309,   310,    -1,   312,   313,   314,
24397      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
24398      325,   326,    -1,   328,   329,   330,   331,   332,   333,   334,
24399      335,   336,   337,   338,   339,    -1,   341,   342,   343,   344,
24400      345,   346,   347,   348,    -1,   350,   351,   352,   353,   354,
24401      355,   356,   357,   358,    -1,   360,   361,   362,   363,   364,
24402       -1,   366,   367,    -1,   369,   370,   371,   372,   373,   374,
24403      375,    -1,   377,   378,   379,   380,   381,   382,   383,   384,
24404      385,   386,   387,   388,   389,    -1,   391,    -1,   393,   394,
24405       -1,   396,   397,   398,   399,   400,   401,   402,    -1,   404,
24406      405,   406,    -1,    -1,   409,   410,    -1,   412,    -1,    -1,
24407      415,   416,   417,   418,   419,   420,   421,   422,    -1,    -1,
24408      425,   426,   427,   428,   429,    -1,    -1,   432,   433,   434,
24409      435,   436,    -1,   438,    -1,   440,   441,   442,   443,   444,
24410      445,    -1,    -1,   448,    -1,    -1,   451,   452,   453,   454,
24411      455,   456,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
24412       -1,    -1,    -1,   468,   469,   470,    -1,    -1,    -1,    20,
24413       21,    22,    23,    24,    25,    26,    27,    -1,    29,    30,
24414       31,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    39,    40,
24415       -1,    42,    43,    44,    45,    46,    47,    48,    -1,    -1,
24416       51,    -1,    -1,    -1,    55,    56,    57,    58,    59,    60,
24417       -1,    -1,    63,    64,    -1,    -1,    67,    -1,    69,    70,
24418       71,    72,    -1,    -1,    75,    -1,    77,    78,    79,    80,
24419       81,    82,    83,    84,    85,    -1,    87,    88,    89,    90,
24420       91,    92,    -1,    94,    95,    96,    97,    -1,    -1,    -1,
24421      101,    -1,    -1,    -1,   105,   106,   107,   108,   109,   110,
24422       -1,    -1,   113,    -1,   115,    -1,   117,   118,   119,   120,
24423      121,   122,    -1,   124,   125,   126,   127,    -1,    -1,   130,
24424      131,   132,   133,   134,    -1,   136,   137,   138,    -1,   140,
24425      141,   142,    -1,   144,   145,   146,   147,    -1,   149,   150,
24426      151,   152,    -1,    -1,   155,    -1,   157,   158,    -1,   160,
24427       -1,   162,    -1,   164,   165,    -1,   167,   168,   169,   170,
24428      171,    -1,   173,    -1,    -1,    -1,   177,   178,    -1,   180,
24429      181,   182,   183,   184,   185,   186,   187,   188,   189,    -1,
24430      191,   192,   193,   194,   195,   196,   197,    -1,   199,   200,
24431       -1,   202,   203,   204,   205,    -1,    -1,    -1,    -1,    -1,
24432      211,   212,   213,   214,   215,   216,   217,   218,   219,   220,
24433       -1,    -1,   223,    -1,   225,   226,   227,    -1,   229,   230,
24434      231,    -1,    -1,   234,   235,   236,   237,   238,   239,   240,
24435      241,   242,   243,   244,   245,   246,   247,   248,   249,    -1,
24436      251,    -1,   253,   254,   255,   256,   257,   258,   259,    -1,
24437       -1,   262,    -1,   264,   265,   266,   267,    -1,    -1,   270,
24438       -1,   272,   273,   274,    -1,   276,   277,    -1,    -1,   280,
24439      281,   282,    -1,    -1,   285,   286,    -1,   288,   289,   290,
24440       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
24441       -1,    -1,   303,   304,    -1,   306,    -1,   308,   309,   310,
24442       -1,   312,   313,   314,   315,   316,   317,   318,   319,   320,
24443      321,    -1,   323,   324,   325,   326,    -1,   328,   329,   330,
24444      331,   332,   333,   334,   335,   336,   337,   338,   339,    -1,
24445      341,   342,   343,   344,   345,   346,   347,   348,    -1,   350,
24446      351,   352,   353,   354,   355,   356,   357,   358,    -1,   360,
24447      361,   362,   363,   364,    -1,   366,   367,    -1,   369,   370,
24448      371,   372,   373,    -1,   375,    -1,   377,   378,   379,   380,
24449      381,   382,   383,   384,   385,   386,   387,   388,   389,    -1,
24450      391,    -1,   393,   394,    -1,   396,   397,   398,   399,   400,
24451      401,   402,    -1,   404,    -1,    -1,    -1,    -1,   409,   410,
24452       -1,   412,    -1,    -1,   415,   416,   417,   418,   419,   420,
24453      421,   422,    -1,    -1,   425,   426,   427,   428,   429,    -1,
24454       -1,   432,   433,   434,   435,   436,    -1,    -1,    -1,   440,
24455      441,   442,   443,   444,   445,    -1,    -1,   448,    -1,    -1,
24456      451,   452,   453,   454,   455,   456,    -1,    -1,    -1,    -1,
24457       -1,    -1,    -1,    -1,    -1,    -1,    -1,   468,   469,   470
24458 };
24459 
24460   /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
24461      symbol of state STATE-NUM.  */
24462 static const yytype_uint16 yystos[] =
24463 {
24464        0,    20,    30,    32,    33,    48,    57,    69,    71,    72,
24465       78,    80,    91,    93,   110,   113,   127,   129,   133,   139,
24466      147,   149,   156,   172,   189,   229,   230,   235,   247,   265,
24467      301,   309,   323,   329,   330,   332,   337,   342,   345,   352,
24468      358,   359,   366,   370,   380,   395,   415,   426,   432,   437,
24469      450,   473,   487,   494,   495,   496,   497,   498,   504,   505,
24470      507,   508,   509,   510,   512,   516,   528,   533,   534,   537,
24471      538,   539,   558,   561,   562,   577,   621,   622,   623,   626,
24472      629,   630,   631,   639,   645,   647,   649,   650,   653,   656,
24473      657,   661,   670,   674,   675,   676,   677,   680,   682,   683,
24474      684,   685,   693,   695,   715,   719,   721,   722,   732,   734,
24475      741,   742,   745,   746,   747,   748,   749,   757,   759,   763,
24476      768,   772,   773,   781,   782,   785,   790,   804,   831,   834,
24477      835,   836,   841,   844,   846,   848,   850,   851,   856,   857,
24478      860,   862,   863,   867,   868,   869,   872,   873,   876,   877,
24479      878,   885,   887,   888,   889,   895,   897,   898,   904,   905,
24480      906,   909,   910,   911,   912,   914,   915,   917,   918,   920,
24481      921,   923,   935,   941,   944,   946,   948,   957,   959,   965,
24482      970,   974,   975,   976,   977,   978,   979,   983,  1018,   409,
24483      453,   890,    27,    75,    90,   108,   114,   131,   142,   151,
24484      163,   168,   175,   194,   219,   240,   280,   304,   314,   315,
24485      318,   344,   347,   351,   353,   360,   363,   382,   389,   394,
24486      395,   398,   402,   412,   417,   430,   443,   646,   890,     3,
24487       20,    21,    22,    23,    24,    25,    26,    27,    29,    30,
24488       31,    39,    40,    42,    43,    44,    45,    46,    47,    48,
24489       49,    50,    51,    52,    53,    55,    56,    57,    58,    59,
24490       60,    63,    64,    65,    66,    67,    69,    70,    71,    72,
24491       73,    75,    77,    78,    79,    80,    81,    82,    83,    84,
24492       85,    87,    88,    89,    90,    91,    92,    94,    95,    96,
24493       97,   101,   105,   106,   107,   108,   109,   110,   111,   112,
24494      113,   115,   117,   118,   119,   120,   121,   122,   124,   125,
24495      126,   127,   130,   131,   132,   133,   134,   136,   137,   138,
24496      140,   141,   142,   144,   145,   146,   147,   148,   149,   150,
24497      151,   152,   153,   155,   157,   158,   159,   160,   162,   164,
24498      165,   167,   168,   169,   170,   171,   173,   174,   176,   177,
24499      178,   180,   181,   182,   183,   184,   185,   186,   187,   188,
24500      189,   191,   192,   193,   194,   195,   196,   197,   199,   200,
24501      201,   202,   203,   204,   205,   206,   207,   209,   211,   212,
24502      213,   214,   215,   216,   217,   218,   219,   220,   223,   224,
24503      225,   226,   227,   229,   230,   231,   234,   235,   236,   237,
24504      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
24505      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
24506      258,   259,   260,   261,   262,   264,   265,   266,   267,   269,
24507      270,   271,   272,   273,   274,   276,   277,   280,   281,   282,
24508      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
24509      295,   296,   297,   298,   299,   300,   303,   304,   305,   306,
24510      307,   308,   309,   310,   312,   313,   314,   315,   316,   317,
24511      318,   319,   320,   321,   322,   323,   324,   325,   326,   328,
24512      329,   330,   331,   332,   333,   334,   335,   336,   337,   338,
24513      339,   341,   342,   343,   344,   345,   346,   347,   348,   349,
24514      350,   351,   352,   353,   354,   355,   356,   357,   358,   360,
24515      361,   362,   363,   364,   366,   367,   368,   369,   370,   371,
24516      372,   373,   374,   375,   377,   378,   379,   380,   381,   382,
24517      383,   384,   385,   386,   387,   388,   389,   390,   391,   393,
24518      394,   396,   397,   398,   399,   400,   401,   402,   404,   405,
24519      406,   409,   410,   411,   412,   413,   415,   416,   417,   418,
24520      419,   420,   421,   422,   425,   426,   427,   428,   429,   432,
24521      433,   434,   435,   436,   437,   438,   440,   441,   442,   443,
24522      444,   445,   448,   451,   452,   453,   454,   455,   456,   457,
24523      458,   459,   460,   461,   462,   463,   464,   465,   466,   467,
24524      468,   469,   470,  1077,  1152,  1160,  1161,  1164,  1165,  1166,
24525        3,    28,   971,  1146,  1160,  1164,   441,   928,   278,   310,
24526      890,    51,   487,   569,    22,    39,    62,    75,    86,   108,
24527      114,   131,   142,   151,   163,   171,   175,   231,   280,   283,
24528      304,   318,   344,   353,   363,   382,   389,   398,   399,   401,
24529      402,   412,   417,   424,   427,   430,   578,   628,   737,   791,
24530      805,    28,   309,  1146,   971,    28,   303,   361,   399,   401,
24531        6,   218,   842,   843,  1155,    22,    27,    62,    75,    90,
24532      108,   131,   142,   151,   163,   168,   175,   194,   240,   280,
24533      293,   304,   315,   318,   344,   347,   351,   353,   360,   363,
24534      382,   389,   395,   398,   402,   410,   412,   417,   430,   443,
24535      646,   750,   751,   752,   890,  1146,    93,   441,   487,   623,
24536      626,   629,   923,   936,   944,   947,   957,   964,   970,   974,
24537      983,    11,    21,    28,    46,   158,   164,   166,   190,   220,
24538      254,   312,   331,   478,   479,   769,   770,   971,  1154,  1156,
24539       28,    93,   327,   359,   774,   775,   776,  1160,   163,  1160,
24540     1151,  1155,   395,   986,   769,  1160,   337,   366,   370,   409,
24541     1146,   293,   240,   108,   194,   353,   394,   395,   487,   852,
24542      853,   352,  1160,    28,   364,   405,   409,   520,   529,   530,
24543     1160,    25,   172,   774,   775,   310,   890,  1160,   217,    28,
24544      128,   988,   989,    63,    87,   231,   249,   344,   353,   364,
24545      405,   409,   456,   517,   518,   519,   520,    28,   364,   405,
24546      409,   520,   409,   279,  1029,  1144,  1160,   986,   480,  1160,
24547      167,   487,   929,   487,   325,   980,   981,  1146,   980,   975,
24548      976,   979,     0,   490,   487,   928,   143,   208,   284,   423,
24549      990,   991,   975,   977,   978,   119,   204,   429,   491,    34,
24550      894,   821,  1152,   754,  1160,   754,  1147,  1160,   313,   754,
24551      412,  1146,   107,   395,   809,  1152,  1160,  1166,     3,   104,
24552      365,  1157,  1158,  1162,  1164,  1165,  1166,    28,   184,  1144,
24553      272,   443,    10,    17,    18,    19,    70,   155,   474,   475,
24554      476,   478,   479,   480,   481,   482,   483,   838,   840,  1107,
24555     1108,  1160,   184,  1146,   809,  1146,    28,  1157,  1158,   809,
24556     1146,  1146,   184,  1144,  1146,   184,   754,  1146,   337,   366,
24557       28,   184,  1029,  1146,   356,  1146,   754,    28,   238,  1157,
24558     1158,   184,  1144,   218,   116,   214,   263,   321,   891,   892,
24559      893,   487,   485,   489,  1135,  1137,  1144,  1150,  1160,    22,
24560       27,    62,    75,    76,    86,    90,   108,   131,   142,   151,
24561      163,   168,   194,   219,   240,   280,   304,   315,   318,   344,
24562      347,   351,   353,   360,   363,   382,   389,   395,   398,   402,
24563      410,   412,   417,   443,   646,   760,   761,  1155,   894,   943,
24564      947,   957,   964,   974,  1144,   242,   754,   487,   184,   754,
24565      412,  1147,   754,   412,   184,  1146,   107,   395,   399,   401,
24566     1157,  1158,   399,   401,    70,   155,   838,   335,  1146,  1146,
24567     1157,   184,   513,  1160,   184,  1146,   184,   754,  1146,  1146,
24568      356,  1146,   754,   238,  1157,   325,   360,   395,   443,   240,
24569       90,   194,    27,   168,   315,   351,   410,   416,   640,    28,
24570     1146,   972,   527,  1155,  1162,   843,   242,   184,   821,   822,
24571      184,   847,   184,  1147,     3,    50,    52,    53,    65,    66,
24572      111,   112,   132,   159,   184,   206,   207,   209,   250,   252,
24573      271,   322,   368,   374,   405,   406,   438,   756,  1051,  1053,
24574     1055,  1057,  1059,  1061,  1062,  1063,  1065,  1066,  1067,  1069,
24575     1070,  1161,  1164,   412,   107,   395,   184,   808,   809,   184,
24576     1158,  1159,    82,   443,    70,   155,   184,   839,   840,    55,
24577      184,   808,   184,  1159,   184,   808,   184,  1146,   184,  1146,
24578      356,   847,   184,   756,   184,   238,  1159,   218,   184,   753,
24579      754,   184,  1145,  1146,   184,  1146,   894,   487,   945,   578,
24580      936,   437,   923,   937,   938,   939,  1162,   928,   204,   429,
24581     1156,   770,   771,    28,   771,  1156,   771,    28,   771,  1156,
24582      771,   771,   771,  1156,  1154,  1154,   971,   771,   313,   487,
24583      487,   598,   598,   598,   278,   407,   491,   598,   353,  1029,
24584     1030,   491,   886,   530,   518,   520,    28,   520,  1155,   487,
24585      942,    55,   443,   441,   854,   855,    82,   792,   792,  1160,
24586       45,   470,   214,   489,   281,   281,   278,   166,  1155,   407,
24587      894,   161,   764,   278,     5,     8,     9,    10,    12,    36,
24588       50,    52,    53,    61,    62,    65,    66,    73,    75,    98,
24589       99,   100,   101,   102,   103,   104,   111,   112,   114,   148,
24590      153,   154,   159,   174,   176,   206,   207,   209,   224,   232,
24591      233,   250,   252,   261,   263,   268,   269,   271,   280,   291,
24592      305,   322,   349,   365,   374,   390,   405,   406,   411,   413,
24593      414,   424,   430,   438,   458,   459,   460,   461,   463,   464,
24594      465,   466,   471,   478,   479,   480,   487,   975,  1054,  1057,
24595     1060,  1061,  1062,  1064,  1065,  1066,  1069,  1070,  1074,  1076,
24596     1077,  1078,  1080,  1103,  1104,  1105,  1109,  1129,  1134,  1141,
24597     1142,  1152,  1153,  1154,  1155,  1160,  1140,  1141,  1155,    28,
24598      535,  1143,  1144,   364,   517,   114,   526,  1155,   527,  1155,
24599       45,    67,   517,   470,   375,   892,   281,   166,   407,   476,
24600       45,   470,   214,   893,   487,  1144,   480,  1137,  1030,   922,
24601      923,   924,   925,  1162,   165,   930,  1074,  1112,   980,   491,
24602      487,   931,   488,   488,   496,   922,   932,   933,   934,  1144,
24603       28,   128,   987,   987,    55,   987,   156,   161,   228,   275,
24604      994,   996,   997,  1012,  1014,  1015,  1016,   990,   991,   166,
24605      210,  1029,  1031,   487,    64,   259,   294,   333,   366,   487,
24606      819,   294,   329,   333,   366,   489,   755,   294,   333,   366,
24607        3,    85,   137,   234,   294,   301,   333,   366,   398,   400,
24608      450,   528,   531,   899,   900,   901,   902,   786,    24,   133,
24609      294,   333,   366,   434,   544,  1146,    24,   133,   366,   429,
24610      511,   454,   184,  1029,    58,    92,   152,   187,   223,   259,
24611      263,   294,   295,   333,   341,   350,   358,   366,   378,   387,
24612      391,   445,   528,   532,   824,   832,   861,   487,   806,  1137,
24613      333,   511,   190,   148,    24,    30,    43,    72,   126,   133,
24614      136,   162,   196,   259,   263,   273,   282,   294,   333,   336,
24615      337,   366,   434,   540,   542,   543,   664,   861,     5,   478,
24616      479,   637,  1156,    28,   184,  1144,   754,   754,   487,   837,
24617      294,   366,   489,   148,   278,   294,   333,   366,   832,   861,
24618       24,   133,   294,   333,   366,   190,   506,   333,   450,   473,
24619      499,   506,   294,   333,   366,   832,   861,   278,   294,   333,
24620      148,    37,    56,   106,   193,   241,   244,   259,   293,   333,
24621      338,   360,   366,   380,   540,   634,   635,   294,   333,   442,
24622      664,   672,   148,   294,   333,   366,    85,   126,   136,   294,
24623      329,   333,   366,   530,   518,   190,   148,    43,   124,   259,
24624      333,   366,   540,   541,   294,   333,   337,   366,    83,   125,
24625      296,   400,   278,    24,    30,   133,   294,   333,   366,   559,
24626      560,   506,   161,   333,   499,   506,   148,   333,   366,   540,
24627     1146,   226,   116,   279,   455,   491,   891,    28,   128,   439,
24628      480,   488,   814,  1074,  1113,  1114,  1161,  1074,  1136,     3,
24629       28,    32,    33,    34,    35,    36,    37,    38,    41,    54,
24630       61,    62,    68,    74,    76,    86,    93,    98,    99,   100,
24631      102,   103,   104,   114,   116,   123,   128,   129,   135,   139,
24632      143,   154,   156,   161,   163,   166,   172,   175,   179,   190,
24633      198,   208,   210,   221,   222,   228,   232,   233,   263,   268,
24634      275,   278,   279,   283,   284,   302,   311,   327,   340,   359,
24635      365,   376,   392,   395,   403,   407,   408,   414,   423,   424,
24636      430,   431,   439,   446,   447,   449,   450,   480,  1149,  1163,
24637     1164,  1165,  1166,  1167,  1135,   431,   919,   278,   242,   821,
24638      487,  1146,  1051,   412,   107,   395,   809,   272,   443,    70,
24639      155,   840,  1146,   809,   809,  1146,   356,   161,  1146,  1051,
24640      218,   754,  1146,   488,   598,  1146,    68,  1051,   263,   166,
24641      487,   723,  1146,   499,    37,   913,  1146,   263,   499,   454,
24642      184,  1144,   499,   754,   754,   723,   427,   578,   278,   161,
24643      870,   871,   499,   263,    45,   514,   263,   417,   671,   263,
24644      931,    85,   294,   648,    83,   125,   296,   400,    26,    47,
24645      205,   696,    37,   723,   161,   184,   499,   443,   184,  1144,
24646      184,   624,  1144,  1144,   443,   754,   792,  1152,  1152,  1152,
24647     1146,   161,   646,    51,   105,   203,   259,   355,   148,    59,
24648      339,   491,   545,   148,   487,   148,   499,   440,  1068,  1068,
24649     1068,   487,  1056,  1056,   307,   487,  1058,   148,    65,    66,
24650     1068,  1056,  1053,   452,   473,   487,  1071,   487,  1071,   491,
24651      545,    36,  1052,   487,   109,   182,   243,   246,   357,   468,
24652      487,  1072,  1073,   755,  1056,   454,   148,   491,   545,   148,
24653      491,   184,   753,   184,   754,   184,   754,   148,   491,   545,
24654     1159,   148,   545,   148,   148,   545,   148,   545,   148,    83,
24655      125,   296,   400,   161,   148,   545,   148,   161,   184,   184,
24656      527,   148,   491,   545,   148,   491,   545,   148,   278,  1112,
24657      395,   488,   491,   154,   278,   414,   524,   527,   637,   940,
24658      936,   210,  1031,   771,   971,   771,   971,   771,   971,   771,
24659      971,   771,   971,   971,   971,   771,   971,   487,   599,   600,
24660     1160,   599,    28,   108,   131,   163,   168,   218,   219,   315,
24661      347,   353,   360,   395,   398,   417,   777,  1143,  1159,   776,
24662     1146,   190,   491,   960,  1155,  1051,  1115,    37,  1159,   792,
24663      488,   491,  1144,  1146,   226,  1160,   161,   161,   777,  1159,
24664      352,  1160,   527,   278,   487,  1138,   485,   975,  1116,  1074,
24665     1133,   487,   487,   161,   487,   487,   975,   487,   487,   487,
24666      487,   487,   487,   487,  1074,   487,   487,   487,   487,   487,
24667      487,   487,   487,   975,   487,   487,   487,   487,   487,   487,
24668      487,   487,  1074,  1074,  1074,   975,  1074,  1112,  1137,  1155,
24669      487,  1155,     3,    10,    13,    17,    18,    19,    34,    37,
24670       42,    49,    74,   185,   190,   212,   213,   227,   266,   280,
24671      283,   371,   471,   474,   475,   476,   478,   479,   480,   481,
24672      482,   483,  1107,  1109,  1111,   451,  1090,   290,  1074,   210,
24673      491,   984,   487,  1155,  1137,   984,   117,   186,   536,   491,
24674       67,   114,   527,    37,     3,   114,   231,   525,   637,  1070,
24675     1155,  1155,    88,   130,  1086,    97,   114,   521,   522,   524,
24676      637,   114,   521,   226,  1144,    89,   338,   758,   488,   491,
24677      524,   637,   926,   928,   488,   491,   981,  1145,    37,   488,
24678      491,   931,   977,   977,   992,   993,  1074,   977,   158,   254,
24679     1003,   216,   259,   321,   369,   429,    28,   998,  1074,   478,
24680      479,   999,  1000,  1074,  1076,  1012,  1013,   997,   996,   994,
24681      995,   161,  1015,   273,  1017,   994,  1012,  1031,   949,  1144,
24682       37,  1160,  1112,    64,   407,   407,   353,   190,   201,   284,
24683      287,   368,   439,   480,   812,   813,   814,   816,   818,   820,
24684     1051,  1161,   407,   442,   407,   353,  1149,   489,   407,   407,
24685      353,   228,   407,   407,   398,   517,   294,   899,   901,   476,
24686      903,   161,   172,   190,   342,   787,   788,    68,    86,   144,
24687      163,   311,   424,   595,   596,    86,   114,   263,   407,    86,
24688      407,   114,   263,   353,    86,   126,   136,   294,   333,   720,
24689      353,   654,    22,    27,    62,    75,    90,   131,   142,   163,
24690      168,   240,   280,   315,   347,   353,   360,   363,   395,   402,
24691      410,   417,   443,   646,  1146,   148,   333,   366,   540,   278,
24692      637,   358,   223,   407,  1160,   407,   268,   637,   118,   211,
24693      353,   364,   409,   519,   754,   339,   366,   824,   833,   122,
24694      488,   807,   812,   407,   430,   398,  1144,    76,   144,   184,
24695      585,   595,  1160,    76,    86,   858,   298,   278,   349,   351,
24696      412,    86,   858,    31,   336,   349,   351,   412,   349,  1144,
24697      162,   196,   273,   754,   487,   407,   407,   183,   487,   549,
24698      237,   398,   427,   452,   549,    86,   491,   122,     5,     5,
24699      294,   190,   148,   333,   366,   540,   861,   431,   431,   260,
24700     1051,   407,   353,   487,   838,  1146,  1144,   407,   407,   353,
24701      833,   122,   395,   395,   407,   407,   395,   723,   108,   366,
24702      531,   407,   501,   531,   407,   407,   353,   833,   122,  1144,
24703      407,   407,  1144,  1053,   637,    55,   636,   637,   637,   106,
24704      241,   244,    55,   407,   499,   248,   353,   499,   259,   635,
24705      407,   407,   268,  1155,   664,   754,   407,   407,   353,   382,
24706     1155,   407,   318,   407,   318,   723,   398,  1029,   298,   298,
24707       86,   407,   858,   353,   407,   407,   549,   549,   754,   754,
24708      754,   754,  1144,    44,   436,    44,    44,   407,    44,   407,
24709      436,   353,   487,   491,   531,   430,   681,  1158,   407,   501,
24710      531,  1144,   407,   858,   353,   294,   333,   321,   334,   362,
24711      523,   891,  1113,  1113,  1114,   488,    15,    16,   491,   990,
24712      991,   486,   492,  1150,  1160,  1144,   212,  1051,   278,   212,
24713      454,   212,   637,   754,   754,   212,   278,   212,   212,   278,
24714       83,   125,   296,   400,  1051,   278,   212,   212,   212,   407,
24715      166,   407,   563,   417,   487,    37,   148,   754,   724,   725,
24716     1163,    26,   899,  1051,   278,   148,   651,  1146,   263,   298,
24717      487,   500,   737,   431,   325,   443,  1144,    28,   395,   450,
24718      828,   500,   148,  1158,    93,   172,   515,   577,   630,   695,
24719      772,   790,   895,   148,  1155,   672,   673,   148,   278,  1155,
24720     1158,   234,   754,   754,   754,   754,   273,   119,   204,   415,
24721      429,   697,   698,   140,   320,   487,   681,   263,   500,  1144,
24722      263,   632,   634,   263,    37,   273,   298,   487,   598,   598,
24723      184,   627,  1144,   161,   184,   793,  1150,   487,   727,   819,
24724      487,   810,   810,    37,  1051,   218,   450,   452,   973,   355,
24725      822,   821,  1051,  1147,   487,   487,  1112,  1154,   756,  1068,
24726     1068,    36,  1052,   405,   405,  1154,  1154,  1051,   485,   485,
24727     1154,   407,   407,   407,   487,   407,  1154,  1056,   808,   809,
24728     1159,  1158,   148,   545,   148,   431,   148,   431,   839,   840,
24729      545,   808,  1159,   808,  1146,  1146,  1051,   756,  1159,   681,
24730      148,   148,   545,   753,   754,  1145,  1146,  1146,   754,   488,
24731      184,  1144,   936,   938,   949,   366,   971,   971,   971,   971,
24732      971,   971,   599,   488,   491,   488,   169,   316,   348,   361,
24733      396,  1145,   753,   107,   363,   808,  1145,   272,   808,   808,
24734     1145,  1143,  1143,  1145,   753,   407,   450,   783,   143,   228,
24735      678,   679,    22,   146,   349,   369,   961,  1029,   267,   962,
24736      488,   491,   943,   407,  1144,   852,   853,   855,   775,   774,
24737      775,   166,   173,   784,  1160,    27,    76,   108,   131,   142,
24738      163,   168,   219,   240,   315,   318,   344,   347,   353,   360,
24739      389,   395,   398,   417,   443,   646,   765,   766,  1112,  1135,
24740      486,  1112,  1116,  1117,   446,  1130,  1131,  1074,  1112,   487,
24741     1154,  1154,     3,   109,   182,   243,   246,   357,   468,  1118,
24742     1119,  1155,  1112,  1112,  1112,  1154,  1154,  1074,  1074,   838,
24743     1074,  1121,   349,   478,   479,   487,  1075,  1076,  1109,  1123,
24744      488,  1112,  1074,  1112,  1124,  1074,    54,   166,   222,   408,
24745     1074,  1112,  1127,  1112,   248,  1076,  1074,  1084,  1085,  1086,
24746      248,  1074,  1086,   488,   491,  1154,  1072,  1051,  1074,  1074,
24747     1074,  1074,  1163,   405,    41,   392,  1139,   754,  1074,   487,
24748      975,  1128,   128,   130,   154,   255,   256,   257,   258,   262,
24749      263,   268,   273,   414,   425,  1120,  1074,   487,  1074,   407,
24750       49,   185,   190,   227,   371,  1074,  1074,  1074,  1074,  1074,
24751     1074,  1074,  1074,  1074,  1074,    28,    35,   376,  1106,   175,
24752      157,  1091,   349,   487,  1103,   171,   231,   395,   399,   401,
24753      427,   985,  1144,  1142,   166,  1019,  1113,  1019,  1144,   409,
24754      487,  1155,   491,   488,   183,   183,   545,   934,   924,   923,
24755      927,  1074,   488,   240,   263,   982,   934,   932,   491,    38,
24756      123,   431,   802,   349,   350,   478,   479,  1000,  1002,  1076,
24757      369,   216,   279,   491,     5,  1001,  1154,  1001,   349,   350,
24758     1002,  1143,   267,   373,   963,  1013,   995,   431,   958,    37,
24759     1160,   488,  1158,  1146,  1146,   287,    55,  1161,   488,   814,
24760      816,   813,   816,  1161,   284,   488,   491,   755,  1158,  1146,
24761     1146,  1149,  1158,  1146,  1146,  1158,  1147,  1146,   114,   524,
24762     1156,   344,   430,   774,   353,   172,   774,   487,  1146,   431,
24763      794,   216,   216,   431,   487,   620,   184,  1146,   268,  1158,
24764     1146,  1146,  1074,   268,  1146,  1146,    31,   336,   407,   407,
24765     1146,   407,   655,   242,   821,   487,   754,   754,  1051,   412,
24766      107,   395,   809,   443,    70,   155,   840,   809,   809,  1146,
24767      754,  1146,   754,   356,   161,  1051,   754,   218,   178,   259,
24768      294,   333,   435,   658,   659,   660,  1029,   407,   858,   353,
24769      268,   118,   211,  1158,  1146,   278,  1146,   278,   488,   491,
24770     1157,  1159,  1146,   333,   540,   184,   585,   263,  1051,  1146,
24771     1154,  1160,  1144,  1146,   226,  1146,    28,   430,  1146,   184,
24772     1146,   184,  1160,   351,   412,   351,   412,   226,  1146,    28,
24773      430,  1146,   226,   349,  1144,    24,   133,   366,   665,   666,
24774      667,   668,  1163,  1158,  1146,   114,   167,   264,   431,   548,
24775      551,   552,  1163,  1146,    72,   276,  1146,   543,   278,   407,
24776      398,  1144,   407,   858,   353,   122,  1148,  1160,  1148,   491,
24777      488,   491,  1158,  1146,   864,   865,  1163,   278,   333,   407,
24778      689,  1158,  1146,  1146,   278,  1030,  1030,  1158,  1146,  1030,
24779     1147,  1157,     3,    85,   138,   196,   300,   422,   430,   433,
24780      502,  1158,  1146,  1146,   278,   333,  1158,  1146,   333,   366,
24781      540,   634,   637,   754,  1146,   637,   754,  1146,   637,  1158,
24782     1146,   366,  1158,  1146,  1146,  1156,  1158,   828,  1146,   874,
24783      875,  1163,  1146,   333,   366,   540,   541,  1144,  1144,  1146,
24784     1146,  1146,  1146,  1158,  1146,    24,    30,   133,   294,   333,
24785      366,   294,   333,   366,   723,   333,   366,   333,   366,   333,
24786      861,  1043,  1160,   184,   733,  1160,   184,  1160,  1158,  1146,
24787     1146,  1155,  1146,   864,    24,   560,   363,  1157,   333,   366,
24788      540,  1146,  1146,  1146,   407,   407,    81,   421,   321,   491,
24789      990,   990,   990,  1074,  1074,   439,  1114,   488,  1074,  1136,
24790      268,   762,  1155,    37,   131,   754,   762,   762,   212,   431,
24791      431,   762,   754,   762,   762,   754,   218,   754,   762,   762,
24792      762,   317,   564,   564,   194,   395,   694,  1074,  1051,   754,
24793      488,   491,   476,   697,   587,  1163,  1146,    59,   166,   353,
24794      442,   652,   659,   660,   148,   273,   227,   579,   581,   583,
24795      585,   592,   595,    25,   190,   344,   393,   502,   503,   161,
24796     1148,   443,  1144,    37,   690,   396,  1030,   723,   513,  1160,
24797      514,   283,   578,  1146,   163,   754,  1112,   318,  1155,   723,
24798      723,   723,   723,   273,   278,   283,   487,   723,  1041,  1042,
24799     1043,   363,   148,   487,   148,   148,   147,   974,   754,   273,
24800      579,  1160,   431,   615,   450,   550,   263,    37,   598,  1155,
24801      263,   278,     3,   728,   729,   723,   488,   811,   812,   817,
24802       37,   218,   341,   410,   449,   823,   824,   825,   823,   278,
24803      218,   527,   181,   181,   161,   545,    37,   499,   162,   907,
24804      908,  1112,   488,   488,   545,   485,   470,   470,   488,   488,
24805     1154,   486,  1154,   488,   182,   243,  1073,   243,  1073,  1073,
24806     1154,   246,   488,   545,   753,   754,  1148,   754,  1148,   545,
24807      545,   545,   545,   218,   545,   363,   161,   527,   545,   545,
24808      278,   545,   263,   114,   292,   487,   950,   974,   487,   966,
24809      967,   968,  1160,   488,   600,   190,   190,   190,   190,   190,
24810      454,  1145,   637,   638,   175,   778,   779,  1158,    25,   784,
24811      407,   487,   166,   146,   369,   146,   369,   349,   429,   245,
24812     1051,  1158,   450,   625,   792,   792,   166,   278,   778,    55,
24813      545,   821,  1051,   412,   395,   809,   272,   443,   809,   809,
24814     1051,   218,   754,  1146,   488,   486,   486,   491,  1074,   135,
24815     1131,  1132,    37,   488,  1074,   488,   488,   488,   166,   488,
24816      488,   488,   488,   488,   488,   491,   491,   488,   302,  1122,
24817      488,   487,  1075,  1075,  1112,    13,    17,    18,    19,   190,
24818      212,   280,   474,   475,   476,   478,   479,   480,   481,   482,
24819      483,  1109,  1075,   488,   488,   161,   166,  1125,  1126,   488,
24820       37,  1127,  1112,  1127,  1127,   166,   488,   488,  1163,   299,
24821     1088,    37,   488,   491,  1074,  1163,   491,  1074,  1138,  1074,
24822      488,   470,  1075,  1075,   141,  1112,   166,   128,   130,   154,
24823      262,   268,   273,   414,   425,  1120,   487,   262,   141,   838,
24824     1074,   392,  1139,  1074,  1128,  1074,   407,   487,   975,   487,
24825      487,   289,  1095,   487,  1112,   399,   401,   399,   401,  1144,
24826      986,   986,   986,   221,   350,   467,   487,   975,  1020,  1021,
24827     1022,  1029,  1034,  1044,  1077,  1079,  1080,  1160,   447,  1039,
24828      990,  1039,   892,  1154,  1072,   522,   934,   240,   487,   993,
24829      280,  1107,  1110,   472,   803,     5,  1154,  1002,   279,   450,
24830      429,   999,   236,  1020,   447,  1040,  1160,   820,   755,   816,
24831      816,    55,   818,   482,  1159,  1159,   278,  1145,   281,   278,
24832     1074,   596,  1148,   487,   487,   487,   620,   194,   599,   713,
24833      148,   545,   407,  1158,  1146,   527,  1146,  1051,  1146,   454,
24834      754,   754,   754,   754,    83,   125,   296,   400,  1051,  1146,
24835      641,  1146,   178,   435,   407,   407,   641,   658,   664,   333,
24836      366,   540,  1146,  1146,  1146,   202,   268,   151,   812,   293,
24837      366,   407,   263,   148,   282,   662,   713,   366,    24,   133,
24838      337,   338,   366,   544,   553,   554,   664,   859,   358,   148,
24839      545,   148,   545,  1146,  1146,  1146,  1146,   358,   358,   226,
24840      667,   668,   667,   488,   491,   669,  1155,   194,   488,   491,
24841      476,   489,   151,  1158,  1146,   333,   366,   540,  1146,  1146,
24842     1146,   278,   294,   333,   366,    24,   133,   294,   333,   366,
24843     1051,   260,  1051,   488,   491,   476,  1144,   407,  1159,   431,
24844      686,   151,   228,   300,   268,  1155,   300,  1159,   428,   151,
24845      407,   407,   353,   382,   491,   828,   293,   366,    86,   407,
24846      858,   353,   114,   161,   555,   407,   407,   238,   238,   238,
24847      407,   407,   353,   407,   407,   353,   407,   353,   407,   353,
24848      407,   122,   545,  1051,   263,  1155,   366,   859,   148,   545,
24849      407,   407,   488,  1146,   407,   858,   353,   407,  1158,  1146,
24850      488,   488,   488,  1114,   486,  1051,   754,   212,   762,  1148,
24851     1148,   212,   212,  1146,   212,   383,   384,   565,  1155,   565,
24852      178,   488,   488,   166,   723,   725,   260,   280,   478,   479,
24853      637,   726,   816,  1110,  1155,  1167,   278,    68,    74,    86,
24854      114,   116,   170,   198,   263,   268,   311,   327,   424,   588,
24855      589,   591,   147,   446,   499,   527,  1146,   527,   662,  1144,
24856     1144,  1144,   488,   491,  1159,   175,   344,  1159,  1154,   417,
24857     1144,   598,     3,   161,   691,    45,   514,   335,   395,   671,
24858      107,   931,   166,   874,   550,   599,  1144,   698,   730,   731,
24859     1155,   488,   491,  1146,   161,   599,  1144,   624,  1144,  1146,
24860      625,   487,   580,  1144,   488,  1148,   450,   452,   616,   549,
24861       37,   148,   974,   615,   407,   148,  1029,   476,   488,   491,
24862      488,   491,   114,   476,   826,  1155,   527,   395,   815,   816,
24863      161,   827,   825,   119,   204,   359,   429,   883,  1146,   178,
24864      974,  1051,   487,   488,   491,   488,  1154,  1071,  1071,   486,
24865      486,   488,   545,   431,   545,   431,   545,  1146,  1146,   681,
24866      545,   754,   148,   437,   394,   430,   951,   952,   953,  1160,
24867      278,   954,   968,   969,   491,  1019,   476,  1138,   353,   353,
24868      353,   353,   353,  1145,   491,  1158,   450,   491,   780,   281,
24869     1030,   363,   146,   146,   107,   259,  1144,  1146,  1159,   777,
24870      545,  1158,   212,   212,   212,   637,   212,   212,   212,   212,
24871      212,  1116,   403,  1074,   139,  1051,   488,  1074,  1120,  1074,
24872     1074,  1125,   488,  1112,   491,  1051,  1075,  1075,  1075,  1075,
24873      128,   130,   263,   273,  1075,  1075,  1075,  1075,  1075,  1075,
24874     1075,  1075,  1075,  1075,  1074,  1074,  1126,  1125,  1051,   488,
24875      488,   488,  1112,   488,   491,    55,  1076,  1089,   488,  1163,
24876     1085,   308,   388,  1087,   488,   491,   442,  1081,    37,   488,
24877     1155,  1074,    34,    34,  1074,   488,  1074,   166,   487,   262,
24878     1115,  1074,   488,   141,  1075,  1075,   141,   141,  1074,  1074,
24879      991,   447,   487,  1096,  1160,   488,  1112,   491,   986,   986,
24880      986,   986,  1144,  1144,  1144,   975,  1034,  1044,   166,   487,
24881      975,  1021,  1022,    37,  1023,  1024,  1160,   491,    94,   167,
24882      200,   215,   225,   251,   343,  1026,  1024,    37,  1023,  1025,
24883     1160,  1024,   473,  1038,  1137,  1074,   175,  1004,   488,  1004,
24884      488,   943,   487,   803,   158,   220,   279,   450,   404,    97,
24885     1074,   340,   956,   488,   482,   820,   417,   169,   348,   354,
24886      361,   396,   418,   789,   161,   789,   488,   487,   603,   604,
24887      797,  1079,  1160,   599,   599,   713,  1150,   488,   116,   198,
24888      259,   263,   714,  1146,  1146,    37,  1146,   431,   431,   754,
24889      754,   754,   754,   218,   755,  1158,  1146,   407,   858,   353,
24890      407,   202,  1146,    55,   398,  1146,   148,   585,   487,   587,
24891      382,   170,   150,   183,   263,   549,   499,   107,   170,   263,
24892      382,   385,   549,   635,   366,   554,   417,  1146,  1160,   358,
24893      666,  1146,   552,   726,  1163,  1146,   293,   366,   407,   858,
24894      353,   407,   151,   407,   407,   353,   168,   280,   385,   735,
24895      736,   168,   280,   743,   744,   407,   407,   353,   488,   488,
24896      488,   865,   260,   637,   816,   866,  1110,  1155,  1167,   333,
24897     1146,   487,   450,   687,  1146,  1156,  1155,  1155,  1155,  1146,
24898     1146,  1146,  1146,  1156,   875,    55,   398,  1146,  1146,  1146,
24899     1146,   437,  1146,  1146,   161,   161,   335,   161,   184,  1158,
24900     1146,  1146,  1158,  1146,  1146,  1146,  1146,  1146,  1146,  1146,
24901      278,    74,   546,   148,    26,    47,   417,  1160,  1146,  1155,
24902      664,  1146,  1146,  1146,  1146,   990,   488,   212,   762,   212,
24903      212,   762,   762,   212,   762,   499,   431,   570,   571,   641,
24904      713,   450,   452,   754,  1144,   487,   754,  1146,  1075,    31,
24905       55,   590,   117,   186,   116,   268,   216,  1144,   828,   168,
24906      315,   709,   716,   717,  1160,   651,   298,   487,   580,   593,
24907      197,   610,   583,  1159,  1159,  1051,   487,   550,    28,   119,
24908      204,   359,   429,   692,   407,   688,  1158,   184,  1144,   673,
24909      454,   278,  1020,   828,   328,   699,   488,   491,  1043,   662,
24910      681,   488,   632,    37,   273,   298,   487,   945,   582,   584,
24911      586,   595,  1160,   298,   611,   612,   580,   610,   549,   276,
24912      278,   617,   974,   627,   625,   550,  1155,  1150,   794,   726,
24913        3,   729,   817,  1074,  1074,   491,   487,   823,   417,   491,
24914      407,   487,   641,   488,   907,   908,   486,  1148,  1148,   545,
24915      363,   545,   436,   488,   491,  1138,    84,   956,   488,   491,
24916      967,  1040,  1074,  1145,  1145,  1145,  1145,  1145,   637,   172,
24917      779,   488,  1146,   107,   784,   166,   268,   767,  1155,   767,
24918      767,   212,   767,   767,   767,   767,   767,  1074,   488,   488,
24919      488,  1126,   488,  1074,   166,   128,   130,   273,   487,   488,
24920      457,  1083,  1112,   326,   436,    55,  1089,  1076,   448,   448,
24921      488,  1074,   259,  1074,   491,  1082,  1053,  1074,  1074,  1074,
24922     1115,   488,  1074,    34,    34,  1074,  1074,   141,   488,   488,
24923     1074,  1097,  1160,   488,  1074,  1144,  1144,  1144,  1144,  1024,
24924     1025,  1024,   487,   462,  1076,   488,  1160,   487,  1021,   215,
24925      288,  1027,  1021,  1027,   215,  1026,  1027,   215,   397,  1032,
24926      487,  1160,   487,   285,    55,   179,  1011,  1155,  1011,  1155,
24927      488,   838,   404,   273,  1141,   417,   488,   407,   774,   166,
24928      713,  1074,   488,   491,   450,    74,   796,   800,   796,   488,
24929      488,   191,   601,   117,   186,   196,   116,   433,   545,  1051,
24930     1148,  1148,  1146,  1146,  1146,  1146,  1146,  1159,  1146,   585,
24931      663,   667,  1156,   590,   184,   184,   268,   637,   590,   268,
24932     1156,  1160,  1051,   545,   545,   476,    55,   398,  1146,  1146,
24933     1146,  1146,  1146,  1158,  1146,  1146,  1154,  1154,  1051,   491,
24934     1154,  1154,   491,  1158,  1146,  1146,   407,  1074,    68,  1159,
24935     1146,   407,   407,   166,   190,   450,  1145,  1145,   754,  1145,
24936      148,   151,   754,  1155,  1155,  1051,   545,   545,   407,   488,
24937      212,   762,   762,   762,   762,   487,   566,   567,   499,   121,
24938      168,   201,   168,   166,   712,  1074,   263,   589,   114,    37,
24939      828,   598,   431,   619,  1152,    34,   147,   190,   273,   579,
24940      555,   145,   192,   487,   363,   431,   599,    37,  1159,   686,
24941      514,   263,   487,   163,  1146,  1112,   253,   277,   700,   701,
24942      702,   161,   705,  1155,   363,   550,   147,   974,   754,   273,
24943      579,   625,   488,   491,   450,   587,    55,   615,   555,   611,
24944       80,   398,   618,   450,   896,    37,   618,   166,   278,   487,
24945     1155,   814,   829,   830,  1161,  1051,   161,  1144,   166,   407,
24946      849,   199,   642,   545,   488,   545,   545,  1146,   974,   292,
24947      974,   953,   278,   487,   955,   476,   968,   956,   281,   210,
24948      545,   778,   767,   488,  1075,   166,   487,  1115,   487,   488,
24949      491,   488,  1089,   488,   436,   379,   488,   488,   488,  1074,
24950     1074,  1074,   488,   298,  1098,   488,  1035,  1036,  1079,   487,
24951     1088,  1023,   487,  1145,  1021,   278,   431,  1028,  1021,   215,
24952     1021,  1152,  1042,   487,  1042,  1160,    96,   176,   346,   487,
24953     1005,  1006,  1007,  1008,  1009,  1010,  1074,  1074,   449,  1092,
24954     1092,   488,   971,   778,   278,   778,   488,   601,   604,   280,
24955      838,   754,   754,   801,   327,   601,   487,   828,   488,   407,
24956      366,   962,   488,   491,    37,   148,   148,   546,   726,  1159,
24957     1146,   407,   487,   809,   838,   840,   736,   487,   487,   744,
24958     1146,   488,   487,   366,   962,  1146,  1146,   487,   487,   487,
24959      450,   473,   916,   335,   916,   916,   161,  1146,   546,  1146,
24960      762,   572,   573,  1163,    51,    95,   120,   137,   141,   162,
24961      165,   180,   268,   319,   568,   566,  1155,   809,    37,   845,
24962      845,  1144,   713,   488,   183,   487,   619,   239,   602,   194,
24963      487,   717,   709,   487,  1144,   488,   363,    28,    79,    87,
24964      115,   170,   183,   195,   382,   385,   594,   594,  1143,  1146,
24965     1148,   488,   974,   687,   148,   107,   662,   166,   701,   349,
24966      395,   703,   134,   706,   446,   708,  1146,    37,  1146,   625,
24967      580,  1144,   488,   584,   282,  1160,   616,   611,   615,   119,
24968      133,   308,  1146,    60,    68,   231,   974,   754,  1029,   795,
24969      797,   816,   488,   491,   417,  1039,   377,   377,   488,   641,
24970      259,   435,   643,   644,   951,    86,   795,   129,  1074,  1146,
24971      545,  1075,  1115,   488,  1084,  1112,   259,   469,    55,   990,
24972      488,   491,    37,  1037,   114,  1049,  1050,  1075,    77,  1145,
24973      488,  1074,   487,  1021,  1028,   487,   488,  1042,   488,   487,
24974      367,   487,   488,   491,  1093,  1094,  1160,   780,   789,   545,
24975      796,   828,   487,   549,   802,  1144,   828,   599,   619,  1146,
24976      398,   667,   183,   431,   547,   366,   962,  1146,  1115,   161,
24977      739,   739,  1115,  1115,  1074,   398,  1112,  1112,   556,   557,
24978     1162,   753,   754,   753,   754,  1145,   545,   488,   491,   480,
24979      487,   524,   574,   637,   913,  1155,   913,   263,   268,   319,
24980      913,   913,  1039,   845,    40,   188,   161,   259,   597,   487,
24981      633,  1074,   167,   297,   372,   278,   606,   607,   608,   398,
24982      488,  1152,     6,   718,   580,   610,  1146,   488,   662,   155,
24983      738,   550,   896,  1144,   454,  1020,   913,   349,   381,   707,
24984      487,   147,   662,   974,   945,   611,   580,   610,   587,   487,
24985      617,   615,   616,   350,   350,    68,   281,    68,   625,   794,
24986      488,   491,   823,   829,  1051,   129,   450,   450,   435,   641,
24987      436,  1146,   488,   264,   429,   662,   488,   488,   488,   436,
24988     1112,   177,   320,   350,  1099,  1038,  1035,   487,  1075,   488,
24989      491,    37,  1045,  1046,  1160,   488,  1145,  1112,   488,  1112,
24990      487,  1112,  1006,   491,    37,   166,   619,   838,   802,   803,
24991      598,   619,   488,   713,  1146,   633,  1074,   398,   488,   284,
24992      356,   324,   740,   740,   488,   488,   488,  1146,   488,   488,
24993      488,   491,  1154,   916,   573,   524,   575,   576,  1155,  1155,
24994      268,   599,   480,   599,  1155,  1155,   134,   196,   634,   488,
24995      119,   429,   278,   608,   278,   607,  1146,   487,   488,   491,
24996      555,   363,   662,   754,    37,    37,   487,  1146,   704,  1160,
24997     1074,   709,   896,   625,   615,   555,   611,   487,   613,   614,
24998     1079,  1160,   618,   616,   617,   281,   281,   487,   191,   798,
24999      797,    29,   205,   884,   168,   168,   974,  1039,   366,    49,
25000       97,   420,  1074,  1100,  1101,  1100,  1100,   488,  1042,   491,
25001     1050,  1163,   488,   491,   161,  1051,   488,   488,   488,  1005,
25002      488,  1094,  1096,   778,   447,   605,   488,   803,   602,   713,
25003      962,  1146,   809,    55,   962,   407,   556,   754,   488,   491,
25004      599,   349,   488,   386,    59,   259,   339,   366,   609,   609,
25005      488,     6,   363,  1146,   735,   974,   662,   488,  1152,   616,
25006      611,   615,  1074,   488,   491,   800,   800,   617,   618,   795,
25007      487,   550,   264,   487,   879,   881,   885,   947,   957,   964,
25008      974,   809,   809,   966,  1101,   349,   160,   306,   160,   306,
25009      144,  1102,  1102,  1102,   488,  1076,  1046,   285,     3,   114,
25010      263,   268,  1047,  1048,   334,  1033,   488,   545,   487,   713,
25011      606,   962,   754,   487,   576,   708,    23,   114,   268,  1146,
25012      662,   896,   487,   617,   615,   616,   488,   614,   754,   801,
25013      801,   618,   488,   797,   799,   618,   880,   881,   882,   975,
25014      976,   491,   491,  1039,    34,    97,   175,   259,   404,  1088,
25015     1075,  1075,   268,  1048,   487,  1074,   713,  1112,   147,   662,
25016        5,   710,   711,  1154,  1155,  1163,   618,   616,   617,   800,
25017      798,   488,   491,  1039,   488,   490,   407,   166,  1101,   349,
25018      286,    77,  1074,   488,   488,   709,   488,   491,   617,   618,
25019      801,   550,   797,   882,   377,   377,  1045,   488,  1152,   711,
25020      618,   618,   450,   450,   488,   487,  1039,   168,   168,   710,
25021      809,   809,   488
25022 };
25023 
25024   /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
25025 static const yytype_uint16 yyr1[] =
25026 {
25027        0,   493,   494,   495,   495,   496,   496,   496,   496,   496,
25028      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25029      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25030      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25031      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25032      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25033      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25034      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25035      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25036      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25037      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25038      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25039      496,   496,   496,   496,   496,   496,   496,   496,   496,   496,
25040      496,   497,   498,   499,   499,   499,   500,   500,   501,   501,
25041      502,   502,   502,   502,   502,   502,   502,   502,   502,   503,
25042      503,   503,   503,   503,   503,   504,   505,   505,   506,   506,
25043      507,   507,   507,   507,   508,   508,   508,   508,   508,   508,
25044      509,   510,   511,   511,   512,   512,   512,   512,   513,   513,
25045      514,   514,   515,   515,   515,   515,   515,   515,   516,   516,
25046      516,   516,   517,   517,   517,   518,   518,   518,   518,   519,
25047      519,   519,   519,   519,   519,   519,   519,   519,   519,   519,
25048      520,   520,   521,   521,   522,   522,   523,   523,   523,   523,
25049      524,   524,   524,   524,   525,   525,   525,   525,   525,   525,
25050      525,   526,   526,   526,   527,   527,   528,   528,   529,   529,
25051      529,   529,   530,   530,   531,   531,   532,   532,   533,   533,
25052      533,   533,   533,   533,   533,   534,   535,   535,   536,   536,
25053      537,   538,   538,   538,   538,   538,   539,   539,   539,   539,
25054      539,   539,   539,   539,   539,   539,   539,   539,   539,   539,
25055      539,   539,   539,   539,   539,   540,   540,   541,   541,   542,
25056      543,   543,   543,   543,   543,   543,   543,   543,   543,   543,
25057      543,   543,   543,   543,   543,   543,   543,   543,   543,   543,
25058      543,   543,   543,   543,   543,   543,   543,   543,   543,   543,
25059      543,   543,   543,   543,   543,   543,   543,   543,   543,   543,
25060      543,   543,   543,   543,   543,   543,   543,   543,   543,   543,
25061      543,   543,   543,   543,   543,   543,   543,   543,   544,   544,
25062      545,   545,   545,   546,   546,   547,   547,   548,   548,   548,
25063      548,   549,   550,   550,   551,   551,   552,   552,   552,   552,
25064      553,   553,   554,   554,   554,   554,   555,   555,   555,   555,
25065      556,   557,   557,   558,   559,   559,   560,   560,   560,   560,
25066      561,   561,   562,   562,   563,   563,   564,   564,   565,   565,
25067      565,   566,   566,   567,   567,   568,   568,   568,   568,   568,
25068      568,   568,   568,   568,   568,   568,   568,   568,   569,   569,
25069      570,   570,   571,   571,   572,   572,   573,   574,   574,   574,
25070      574,   574,   575,   575,   576,   577,   577,   577,   577,   577,
25071      577,   578,   578,   578,   578,   578,   578,   578,   578,   579,
25072      579,   580,   580,   581,   581,   582,   582,   583,   583,   583,
25073      584,   584,   585,   586,   586,   587,   587,   588,   588,   588,
25074      588,   589,   589,   589,   589,   589,   589,   589,   589,   589,
25075      590,   590,   591,   591,   591,   591,   592,   593,   593,   593,
25076      594,   594,   594,   594,   594,   594,   594,   594,   594,   595,
25077      595,   596,   596,   596,   596,   596,   596,   596,   597,   597,
25078      598,   598,   599,   599,   600,   601,   601,   602,   602,   602,
25079      602,   603,   603,   604,   604,   605,   605,   606,   606,   606,
25080      606,   606,   607,   608,   609,   609,   609,   609,   609,   610,
25081      610,   611,   611,   612,   613,   613,   614,   614,   614,   615,
25082      615,   616,   616,   616,   617,   617,   617,   617,   618,   618,
25083      619,   619,   620,   621,   621,   622,   622,   623,   623,   624,
25084      625,   625,   625,   626,   626,   627,   628,   628,   629,   630,
25085      630,   631,   631,   632,   632,   633,   633,   634,   634,   635,
25086      635,   635,   635,   635,   635,   635,   635,   635,   635,   635,
25087      635,   635,   635,   636,   636,   637,   637,   637,   637,   638,
25088      638,   639,   639,   640,   640,   641,   641,   642,   642,   643,
25089      643,   644,   644,   645,   645,   646,   646,   647,   648,   648,
25090      649,   649,   650,   650,   651,   651,   652,   652,   652,   652,
25091      653,   654,   654,   655,   656,   656,   656,   656,   656,   656,
25092      656,   656,   656,   656,   656,   656,   656,   656,   656,   656,
25093      656,   656,   656,   656,   656,   656,   656,   656,   656,   656,
25094      656,   656,   657,   658,   658,   658,   658,   659,   659,   660,
25095      660,   661,   661,   662,   662,   663,   663,   664,   665,   665,
25096      666,   666,   666,   666,   667,   668,   669,   670,   670,   671,
25097      671,   672,   672,   673,   673,   674,   674,   674,   675,   675,
25098      675,   675,   676,   676,   677,   678,   678,   679,   679,   680,
25099      680,   681,   681,   682,   682,   683,   684,   685,   686,   686,
25100      687,   687,   688,   688,   689,   689,   690,   690,   691,   691,
25101      692,   692,   692,   692,   692,   693,   694,   694,   695,   695,
25102      696,   696,   696,   697,   697,   698,   698,   698,   698,   698,
25103      699,   699,   700,   700,   701,   702,   702,   703,   703,   704,
25104      705,   705,   706,   706,   707,   707,   708,   708,   709,   709,
25105      710,   710,   710,   711,   711,   711,   711,   712,   712,   713,
25106      713,   714,   714,   714,   714,   714,   714,   715,   715,   716,
25107      716,   717,   718,   718,   719,   720,   720,   720,   720,   721,
25108      722,   722,   722,   722,   722,   722,   722,   722,   722,   722,
25109      722,   722,   722,   722,   722,   722,   723,   724,   724,   725,
25110      725,   726,   726,   726,   726,   726,   726,   727,   728,   728,
25111      729,   730,   730,   731,   731,   732,   732,   732,   732,   733,
25112      733,   734,   735,   735,   736,   736,   736,   736,   736,   737,
25113      737,   738,   738,   739,   739,   739,   740,   740,   741,   742,
25114      742,   743,   743,   744,   744,   745,   745,   746,   746,   747,
25115      748,   749,   749,   749,   749,   749,   749,   749,   749,   749,
25116      749,   749,   749,   750,   750,   750,   750,   750,   750,   750,
25117      750,   750,   750,   750,   750,   750,   751,   751,   751,   751,
25118      751,   751,   751,   752,   752,   752,   753,   753,   754,   754,
25119      755,   755,   756,   756,   757,   758,   758,   758,   759,   759,
25120      759,   759,   759,   759,   759,   759,   759,   759,   759,   759,
25121      759,   759,   759,   759,   759,   759,   759,   760,   760,   760,
25122      760,   760,   760,   760,   760,   760,   760,   760,   760,   760,
25123      760,   761,   761,   761,   761,   761,   761,   761,   761,   761,
25124      761,   761,   761,   762,   762,   763,   763,   763,   763,   763,
25125      763,   763,   763,   763,   764,   764,   765,   765,   765,   765,
25126      765,   765,   766,   766,   766,   766,   766,   766,   766,   766,
25127      767,   767,   768,   768,   769,   769,   769,   769,   769,   769,
25128      769,   769,   769,   769,   769,   769,   769,   769,   769,   769,
25129      770,   770,   771,   771,   772,   773,   773,   774,   774,   774,
25130      774,   774,   775,   775,   776,   776,   776,   776,   777,   777,
25131      777,   777,   777,   777,   777,   777,   777,   777,   777,   777,
25132      777,   777,   777,   777,   777,   777,   777,   777,   778,   778,
25133      779,   779,   780,   780,   781,   782,   782,   783,   783,   784,
25134      784,   785,   786,   786,   787,   787,   787,   788,   788,   788,
25135      789,   789,   789,   789,   789,   789,   790,   790,   791,   791,
25136      792,   792,   793,   793,   794,   794,   795,   795,   796,   796,
25137      797,   797,   797,   798,   798,   799,   799,   800,   800,   801,
25138      801,   802,   802,   802,   803,   803,   803,   804,   804,   804,
25139      804,   805,   805,   806,   806,   807,   807,   808,   808,   809,
25140      809,   809,   809,   810,   810,   811,   811,   812,   812,   812,
25141      812,   812,   813,   813,   813,   813,   813,   814,   815,   816,
25142      816,   816,   817,   817,   817,   818,   819,   819,   819,   819,
25143      820,   820,   821,   822,   822,   823,   823,   824,   824,   824,
25144      824,   824,   824,   824,   824,   824,   824,   824,   824,   824,
25145      824,   824,   824,   824,   825,   825,   825,   825,   825,   826,
25146      826,   827,   827,   828,   828,   829,   830,   830,   831,   831,
25147      831,   832,   832,   833,   833,   834,   834,   834,   834,   834,
25148      834,   835,   835,   836,   836,   837,   837,   837,   837,   838,
25149      838,   839,   839,   840,   841,   842,   842,   843,   843,   844,
25150      844,   844,   845,   845,   845,   846,   847,   847,   848,   849,
25151      849,   849,   849,   850,   851,   851,   851,   851,   852,   852,
25152      853,   853,   853,   854,   854,   855,   856,   856,   857,   857,
25153      857,   857,   857,   857,   857,   857,   857,   857,   857,   857,
25154      857,   857,   857,   857,   857,   857,   857,   857,   857,   857,
25155      857,   857,   857,   857,   857,   857,   857,   857,   857,   857,
25156      857,   857,   857,   857,   857,   857,   857,   857,   857,   857,
25157      857,   857,   857,   857,   857,   857,   857,   857,   857,   857,
25158      857,   857,   857,   858,   858,   859,   859,   860,   860,   860,
25159      860,   860,   860,   861,   861,   862,   862,   862,   862,   862,
25160      862,   862,   862,   862,   862,   862,   862,   862,   862,   862,
25161      862,   862,   862,   862,   862,   862,   862,   862,   862,   862,
25162      862,   862,   863,   864,   864,   865,   865,   866,   866,   866,
25163      866,   866,   867,   868,   868,   868,   868,   868,   868,   868,
25164      868,   868,   868,   868,   868,   868,   868,   868,   868,   868,
25165      868,   868,   868,   868,   868,   868,   868,   869,   870,   870,
25166      871,   871,   872,   872,   872,   872,   873,   874,   874,   875,
25167      876,   876,   876,   876,   876,   876,   877,   877,   878,   879,
25168      879,   879,   880,   880,   881,   881,   881,   881,   881,   882,
25169      882,   883,   883,   883,   883,   884,   884,   884,   885,   886,
25170      886,   887,   888,   888,   889,   889,   889,   889,   889,   889,
25171      889,   889,   889,   889,   889,   889,   889,   889,   890,   890,
25172      890,   891,   891,   891,   891,   891,   892,   892,   892,   893,
25173      893,   894,   894,   894,   895,   895,   895,   895,   896,   896,
25174      896,   896,   897,   898,   899,   899,   900,   900,   901,   901,
25175      901,   902,   902,   902,   902,   902,   902,   902,   903,   903,
25176      904,   904,   904,   905,   906,   906,   906,   906,   907,   907,
25177      908,   909,   910,   910,   911,   912,   912,   912,   912,   912,
25178      912,   912,   913,   913,   914,   915,   915,   915,   915,   915,
25179      915,   916,   916,   917,   918,   918,   918,   919,   919,   920,
25180      920,   921,   921,   922,   922,   923,   923,   924,   925,   925,
25181      926,   926,   926,   927,   927,   928,   928,   929,   929,   930,
25182      930,   931,   931,   932,   933,   933,   934,   934,   935,   935,
25183      935,   935,   936,   936,   936,   936,   936,   936,   936,   936,
25184      936,   937,   937,   938,   939,   939,   940,   940,   940,   941,
25185      942,   942,   943,   943,   943,   943,   944,   944,   944,   945,
25186      945,   946,   946,   946,   946,   947,   948,   949,   949,   950,
25187      950,   950,   950,   950,   951,   951,   952,   952,   953,   954,
25188      954,   954,   955,   955,   955,   956,   956,   957,   958,   958,
25189      959,   960,   960,   961,   961,   961,   961,   961,   961,   961,
25190      961,   962,   962,   963,   963,   963,   964,   965,   966,   966,
25191      967,   967,   968,   969,   969,   970,   971,   972,   972,   972,
25192      972,   972,   973,   973,   973,   974,   974,   975,   975,   976,
25193      976,   976,   976,   976,   976,   976,   976,   977,   977,   978,
25194      978,   978,   978,   978,   978,   978,   979,   979,   979,   980,
25195      980,   981,   982,   982,   982,   983,   983,   984,   984,   985,
25196      985,   985,   985,   985,   985,   985,   985,   985,   986,   986,
25197      987,   987,   987,   988,   988,   989,   989,   990,   990,   991,
25198      992,   992,   993,   993,   994,   994,   994,   994,   995,   995,
25199      996,   996,   996,   996,   996,   996,   997,   997,   998,   998,
25200      999,  1000,  1000,  1000,  1001,  1001,  1002,  1002,  1003,  1003,
25201     1004,  1004,  1005,  1005,  1006,  1006,  1006,  1006,  1006,  1007,
25202     1008,  1009,  1010,  1011,  1011,  1012,  1012,  1013,  1013,  1014,
25203     1014,  1015,  1016,  1016,  1016,  1016,  1017,  1017,  1018,  1018,
25204     1019,  1019,  1020,  1020,  1021,  1021,  1021,  1021,  1021,  1021,
25205     1021,  1021,  1021,  1021,  1022,  1022,  1022,  1022,  1022,  1022,
25206     1023,  1023,  1023,  1023,  1024,  1024,  1025,  1025,  1025,  1025,
25207     1025,  1026,  1026,  1026,  1026,  1027,  1027,  1028,  1028,  1029,
25208     1029,  1029,  1029,  1030,  1030,  1031,  1031,  1031,  1032,  1033,
25209     1033,  1034,  1034,  1035,  1036,  1036,  1037,  1037,  1038,  1038,
25210     1039,  1039,  1040,  1040,  1040,  1041,  1041,  1042,  1042,  1043,
25211     1044,  1044,  1045,  1045,  1046,  1046,  1046,  1047,  1047,  1048,
25212     1048,  1048,  1048,  1049,  1049,  1050,  1050,  1051,  1051,  1051,
25213     1051,  1051,  1051,  1052,  1052,  1052,  1053,  1053,  1053,  1053,
25214     1053,  1053,  1053,  1054,  1054,  1054,  1054,  1055,  1055,  1056,
25215     1056,  1057,  1057,  1057,  1057,  1057,  1057,  1057,  1057,  1057,
25216     1057,  1057,  1058,  1058,  1059,  1059,  1060,  1060,  1061,  1062,
25217     1063,  1063,  1064,  1064,  1065,  1066,  1067,  1067,  1067,  1067,
25218     1067,  1067,  1068,  1068,  1069,  1069,  1069,  1069,  1070,  1071,
25219     1071,  1071,  1072,  1072,  1072,  1072,  1072,  1072,  1072,  1072,
25220     1072,  1072,  1072,  1072,  1072,  1072,  1073,  1073,  1074,  1074,
25221     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25222     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25223     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25224     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25225     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25226     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
25227     1074,  1074,  1074,  1074,  1074,  1074,  1075,  1075,  1075,  1075,
25228     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
25229     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
25230     1075,  1076,  1076,  1076,  1076,  1076,  1076,  1076,  1076,  1076,
25231     1076,  1076,  1076,  1076,  1076,  1077,  1077,  1077,  1077,  1077,
25232     1077,  1077,  1078,  1078,  1079,  1079,  1080,  1080,  1080,  1080,
25233     1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
25234     1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
25235     1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
25236     1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,  1080,
25237     1081,  1081,  1082,  1082,  1082,  1082,  1083,  1084,  1084,  1085,
25238     1085,  1086,  1086,  1087,  1087,  1087,  1088,  1088,  1088,  1088,
25239     1089,  1089,  1090,  1090,  1091,  1091,  1092,  1092,  1093,  1093,
25240     1094,  1095,  1095,  1095,  1096,  1097,  1097,  1098,  1098,  1099,
25241     1099,  1099,  1099,  1100,  1100,  1101,  1101,  1101,  1101,  1101,
25242     1102,  1102,  1102,  1102,  1102,  1103,  1103,  1103,  1104,  1104,
25243     1105,  1106,  1106,  1106,  1107,  1107,  1108,  1108,  1108,  1108,
25244     1108,  1108,  1108,  1108,  1108,  1108,  1108,  1108,  1109,  1109,
25245     1110,  1110,  1111,  1111,  1111,  1111,  1111,  1111,  1112,  1112,
25246     1113,  1113,  1114,  1114,  1114,  1115,  1115,  1116,  1116,  1116,
25247     1117,  1117,  1118,  1118,  1119,  1119,  1119,  1119,  1119,  1119,
25248     1119,  1119,  1120,  1120,  1120,  1120,  1121,  1121,  1122,  1123,
25249     1123,  1124,  1124,  1124,  1124,  1124,  1124,  1125,  1126,  1127,
25250     1127,  1127,  1128,  1128,  1129,  1130,  1130,  1131,  1132,  1132,
25251     1133,  1133,  1134,  1134,  1135,  1135,  1135,  1135,  1136,  1136,
25252     1137,  1137,  1138,  1138,  1139,  1139,  1140,  1140,  1141,  1141,
25253     1142,  1142,  1142,  1142,  1143,  1143,  1144,  1144,  1145,  1145,
25254     1146,  1147,  1148,  1149,  1150,  1151,  1152,  1152,  1153,  1153,
25255     1153,  1153,  1153,  1153,  1153,  1153,  1153,  1153,  1153,  1153,
25256     1153,  1154,  1155,  1156,  1156,  1156,  1157,  1158,  1158,  1158,
25257     1159,  1159,  1160,  1160,  1160,  1161,  1161,  1161,  1162,  1162,
25258     1162,  1162,  1163,  1163,  1163,  1163,  1163,  1164,  1164,  1164,
25259     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25260     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25261     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25262     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25263     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25264     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25265     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25266     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25267     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25268     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25269     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25270     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25271     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25272     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25273     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25274     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25275     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25276     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25277     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25278     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25279     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25280     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25281     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25282     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25283     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25284     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25285     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25286     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25287     1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,  1164,
25288     1164,  1164,  1164,  1164,  1164,  1164,  1165,  1165,  1165,  1165,
25289     1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,
25290     1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,
25291     1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,
25292     1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,  1165,
25293     1165,  1165,  1165,  1165,  1165,  1165,  1165,  1166,  1166,  1166,
25294     1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,
25295     1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,  1166,
25296     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25297     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25298     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25299     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25300     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25301     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25302     1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,  1167,
25303     1167,  1167,  1167,  1167,  1167,  1167,  1167
25304 };
25305 
25306   /* YYR2[YYN] -- Number of symbols on the right hand side of rule YYN.  */
25307 static const yytype_uint8 yyr2[] =
25308 {
25309        0,     2,     1,     3,     1,     1,     1,     1,     1,     1,
25310        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25311        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25312        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25313        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25314        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25315        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25316        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25317        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25318        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25319        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25320        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25321        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25322        0,     2,     5,     1,     1,     0,     2,     0,     2,     0,
25323        2,     2,     3,     3,     1,     3,     3,     2,     1,     1,
25324        2,     2,     2,     3,     3,     5,     5,     5,     0,     3,
25325        5,     5,     5,     5,     3,     5,     3,     5,     3,     5,
25326        5,     6,     1,     1,     6,     4,     9,     7,     1,     0,
25327        2,     0,     1,     1,     1,     1,     1,     1,     3,     2,
25328        3,     3,     2,     5,     1,     3,     3,     3,     3,     1,
25329        3,     3,     2,     2,     2,     2,     3,     3,     3,     3,
25330        1,     3,     1,     3,     1,     1,     2,     2,     2,     1,
25331        1,     1,     1,     1,     1,     1,     3,     5,     1,     1,
25332        1,     1,     1,     0,     1,     1,     2,     3,     1,     2,
25333        3,     2,     1,     1,     2,     1,     2,     1,     3,     3,
25334        2,     3,     4,     3,     2,     4,     1,     1,     1,     1,
25335        1,     2,     2,     2,     2,     2,     4,     6,     4,     6,
25336       10,    13,     4,     6,     4,    10,    13,     4,     6,     4,
25337        6,     5,     7,    11,    14,     1,     3,     4,     3,     3,
25338        2,     5,     3,     6,     4,     6,     6,     5,     7,     6,
25339        6,     5,     5,     6,     9,     4,     5,     7,     6,     4,
25340        8,     4,     2,     4,     3,     6,     4,     3,     3,     3,
25341        2,     2,     3,     4,     4,     3,     3,     3,     3,     3,
25342        3,     4,     4,     3,     2,     3,     2,     2,     3,     3,
25343        2,     2,     3,     4,     4,     4,     5,     1,     3,     2,
25344        1,     1,     0,     2,     0,     2,     0,     1,     1,     1,
25345        3,     3,     2,     0,     1,     3,     3,     1,     5,     3,
25346        1,     2,     1,     3,     2,     3,     6,     6,    10,     1,
25347        2,     1,     3,     4,     1,     3,     4,     6,     4,     8,
25348        2,     2,    11,     9,     1,     1,     1,     0,     1,     1,
25349        1,     1,     3,     2,     0,     1,     1,     3,     3,     1,
25350        1,     3,     3,     3,     3,     4,     3,     2,     1,     0,
25351        3,     0,     1,     0,     1,     3,     2,     1,     1,     1,
25352        3,     0,     1,     3,     1,    13,    16,    12,    15,    14,
25353       17,     1,     1,     2,     2,     2,     2,     1,     0,     1,
25354        0,     3,     0,     1,     3,     1,     3,     1,     1,     1,
25355        1,     1,     4,     2,     4,     2,     0,     3,     1,     1,
25356        2,     2,     1,     3,     4,     5,     2,     5,     7,     5,
25357        1,     2,     1,     2,     2,     2,     3,     3,     3,     0,
25358        1,     1,     1,     1,     1,     1,     1,     1,     1,     3,
25359        1,     5,     8,     3,     9,     4,    10,    11,     2,     0,
25360        3,     0,     1,     3,     1,     4,     0,     2,     2,     2,
25361        0,     1,     3,     3,     6,     4,     0,     1,     1,     2,
25362        2,     0,     3,     3,     2,     1,     1,     2,     2,     4,
25363        0,     1,     0,     6,     1,     3,     3,     3,     5,     2,
25364        0,     2,     2,     0,     3,     4,     4,     0,     2,     0,
25365        4,     0,     3,     8,    11,     6,     8,     7,    10,     6,
25366        2,     3,     0,     8,    11,     5,     1,     0,     6,     5,
25367        8,     4,     6,     1,     0,     3,     0,     1,     2,     2,
25368        2,     1,     2,     3,     2,     2,     2,     2,     3,     3,
25369        3,     1,     3,     1,     0,     1,     2,     2,     1,     1,
25370        3,     6,    10,     1,     0,     1,     2,     2,     0,     2,
25371        2,     1,     0,     5,     7,     1,     0,     7,     2,     0,
25372        3,     5,     5,     8,     2,     0,     2,     2,     2,     1,
25373        5,     2,     0,     2,     7,     6,    10,     6,     6,     6,
25374        6,     7,     6,     9,     9,     6,     6,     6,     7,     6,
25375        8,     8,     8,     8,     6,     6,     7,     7,     8,     6,
25376        9,     6,     7,     2,     2,     2,     2,     1,     2,     1,
25377        0,     7,     6,     4,     0,     1,     3,     4,     1,     3,
25378        1,     2,     2,     2,     2,     1,     1,    10,    13,     2,
25379        0,     2,     2,     1,     0,     5,     4,     4,    11,    14,
25380       12,    15,     5,     7,    11,     2,     1,     4,     0,     8,
25381       11,     1,     1,     7,     9,     8,    10,     8,     4,     0,
25382        5,     0,     2,     0,     2,     0,     2,     0,     2,     0,
25383        1,     1,     1,     1,     1,     8,     1,     1,    16,    20,
25384        1,     1,     2,     1,     3,     1,     1,     1,     3,     1,
25385        2,     0,     1,     2,     4,     1,     1,     1,     1,     1,
25386        3,     0,     1,     0,     1,     1,     4,     0,     1,     1,
25387        1,     3,     0,     1,     1,     1,     1,     2,     0,     0,
25388        2,     2,     1,     2,     2,     2,     2,    11,    13,     1,
25389        3,     5,     1,     3,     5,     1,     2,     2,     1,     8,
25390        6,     5,     4,     4,     3,     7,     8,     6,     6,     6,
25391        6,     6,     4,     7,     5,     8,     3,     1,     3,     3,
25392        1,     1,     1,     1,     1,     1,     1,     3,     1,     3,
25393        3,     1,     0,     1,     3,     7,     9,     9,     8,     3,
25394        0,    13,     1,     3,     5,     5,     3,     6,     2,     1,
25395        0,     2,     0,     2,     4,     0,     1,     0,     6,     8,
25396        8,     1,     3,     5,     5,     7,     9,     7,     9,     5,
25397        6,     6,     4,     6,     4,     6,     8,     4,     6,     4,
25398        6,     5,     7,     1,     1,     1,     2,     1,     2,     1,
25399        1,     1,     3,     3,     3,     3,     2,     2,     1,     3,
25400        1,     1,     1,     1,     1,     1,     1,     3,     1,     2,
25401        2,     3,     1,     3,     5,     2,     2,     0,     6,     6,
25402        6,     6,     6,     6,     6,     8,     9,     8,     6,     6,
25403        8,     9,     8,     9,     9,     7,    10,     1,     1,     1,
25404        1,     1,     1,     2,     1,     1,     2,     3,     3,     3,
25405        3,     2,     1,     2,     1,     3,     2,     1,     1,     1,
25406        1,     1,     1,     1,     1,     8,     8,     8,     8,     8,
25407        8,     9,     8,     8,     2,     0,     1,     2,     1,     1,
25408        1,     2,     1,     2,     2,     1,     1,     1,     1,     1,
25409        1,     1,     2,     2,     1,     2,     3,     3,     3,     3,
25410        4,     4,     3,     3,     3,     4,     4,     3,     4,     4,
25411        1,     1,     1,     0,     7,     7,    10,     1,     1,     2,
25412        4,     5,     1,     3,     2,     2,     2,     2,     1,     2,
25413        2,     4,     3,     2,     2,     2,     2,     2,     2,     3,
25414        2,     2,     2,     5,     5,     5,     5,     5,     1,     3,
25415        1,     2,     3,     0,     6,     6,     9,     3,     0,     3,
25416        0,     5,     2,     0,     3,     3,     3,     7,     7,    10,
25417        1,     1,     1,     1,     1,     1,    15,    18,     1,     0,
25418        1,     0,     1,     0,     2,     0,     1,     3,     4,     5,
25419        2,     2,     4,     4,     0,     1,     3,     2,     0,     1,
25420        0,     1,     1,     0,     2,     2,     0,     8,    11,     6,
25421        6,     2,     0,     3,     2,     1,     3,     1,     3,     2,
25422        1,     1,     2,     3,     2,     1,     3,     3,     3,     2,
25423        2,     1,     1,     1,     1,     2,     1,     1,     1,     1,
25424        4,     5,     1,     3,     3,     1,     3,     3,     5,     6,
25425        1,     3,     2,     1,     3,     1,     2,     4,     5,     1,
25426        1,     1,     1,     3,     3,     2,     2,     1,     2,     2,
25427        2,     2,     1,     2,     2,     2,     2,     1,     1,     1,
25428        3,     3,     5,     2,     0,     2,     1,     3,     5,     5,
25429        5,     1,     2,     1,     0,     4,     6,     4,     6,     4,
25430        6,     4,     6,     4,     6,     3,     5,     5,     5,     1,
25431        3,     1,     3,     2,     2,     1,     2,     1,     2,    11,
25432       10,    10,     2,     2,     0,     9,     2,     0,    10,    11,
25433       11,     5,     5,     8,     4,     4,     7,     7,     1,     1,
25434        1,     1,     1,     1,     3,     1,     5,     5,     6,     6,
25435        6,     6,     6,     8,     8,     6,     6,     7,     9,     9,
25436        8,    10,     6,     6,     6,     6,     6,     6,     6,     8,
25437        6,     8,     6,     8,     7,     9,     6,     8,     7,     9,
25438        8,    10,     8,    10,     9,    11,     8,    10,     9,    11,
25439        8,     8,     7,     6,     6,     6,     6,     8,     8,     8,
25440        8,     6,     9,     1,     0,     2,     0,     8,     8,     8,
25441       10,     9,     8,     1,     0,     6,     6,     6,     6,     6,
25442        6,     6,     9,     9,     6,     6,     6,     8,     6,     8,
25443        8,     8,     8,     6,     8,     6,     8,     7,     9,     7,
25444        9,     6,     7,     1,     3,     3,     3,     1,     1,     1,
25445        1,     1,     7,     6,     6,     6,     6,     6,     6,     7,
25446        7,     6,     9,     9,     6,     6,     6,     6,     6,     6,
25447        8,     8,     8,     6,     7,     6,     6,     5,     1,     0,
25448        3,     3,     5,     6,     6,     6,     8,     1,     3,     1,
25449        5,     5,     6,     7,     4,     4,     4,     6,    13,     1,
25450        1,     3,     3,     1,     1,     1,     1,     1,     1,     1,
25451        0,     1,     1,     1,     1,     1,     1,     0,     3,     2,
25452        0,     2,     2,     2,     3,     3,     3,     3,     3,     3,
25453        2,     3,     2,     5,     4,     3,     3,     3,     1,     1,
25454        0,     3,     2,     2,     1,     2,     1,     3,     2,     1,
25455        0,     2,     3,     0,     9,    11,    12,    14,     3,     4,
25456        4,     0,     2,     5,     1,     0,     1,     2,     3,     3,
25457        3,     1,     2,     1,     1,     1,     1,     1,     1,     0,
25458        5,     4,     6,     4,     3,     5,     7,     9,     1,     3,
25459        1,     5,     4,     4,     6,     4,     6,     6,     5,     7,
25460        9,     6,     1,     0,     6,    11,    11,    11,    13,     9,
25461       11,     1,     1,    10,     4,     2,     5,     2,     0,     6,
25462        5,     3,     5,     1,     3,     1,     1,     2,     1,     1,
25463        1,     1,     0,     1,     0,     1,     0,     1,     0,     1,
25464        0,     3,     0,     2,     1,     3,     1,     0,     2,     4,
25465        3,     5,     1,     1,     1,     1,     1,     1,     1,     1,
25466        1,     1,     3,     2,     1,     1,     1,     1,     0,     5,
25467        3,     0,     1,     1,     1,     1,     3,     9,    12,     3,
25468        0,     2,     3,     2,     3,     7,     4,     1,     3,     1,
25469        4,     4,     7,     2,     1,     1,     1,     3,     2,     8,
25470        5,     0,     4,     3,     0,     2,     0,     7,     2,     0,
25471        5,     3,     0,     2,     2,     2,     3,     1,     3,     1,
25472        2,     1,     0,     1,     2,     0,     8,     3,     1,     3,
25473        3,     5,     2,     1,     3,     7,     1,     0,     3,     2,
25474        2,     2,     0,     2,     2,     1,     1,     3,     3,     1,
25475        2,     4,     4,     2,     3,     5,     5,     1,     1,     9,
25476        9,     1,     2,     4,     4,     4,     2,     2,     3,     1,
25477        3,     7,     1,     2,     0,     1,     0,     2,     0,     3,
25478        3,     4,     4,     4,     4,     3,     2,     1,     1,     0,
25479        1,     1,     0,     1,     5,     1,     0,     1,     0,     3,
25480        1,     3,     4,     3,     2,     2,     1,     1,     1,     0,
25481        2,     4,     5,     6,     4,     5,     2,     3,     1,     1,
25482        1,     1,     2,     2,     1,     1,     1,     1,     1,     1,
25483        3,     0,     1,     3,     1,     1,     1,     1,     1,     2,
25484        4,     4,     5,     2,     0,     1,     3,     1,     0,     1,
25485        2,     3,     2,     4,     2,     3,     2,     0,     4,     5,
25486        2,     0,     1,     3,     2,     3,     2,     3,     2,     3,
25487        2,     3,     1,     4,     3,     4,     5,     4,     5,     4,
25488        5,     2,     4,     1,     1,     0,     1,     4,     5,     4,
25489        0,     2,     2,     2,     1,     1,     0,     4,     2,     1,
25490        2,     2,     4,     1,     3,     1,     2,     3,     6,     4,
25491        0,     2,     6,     2,     1,     3,     4,     0,     2,     0,
25492        2,     0,     2,     4,     0,     1,     0,     1,     3,     3,
25493        7,    12,     1,     3,     2,     3,     3,     1,     2,     2,
25494        2,     2,     1,     1,     3,     3,     2,     2,     3,     5,
25495        6,     2,     3,     3,     4,     0,     1,     1,     1,     1,
25496        1,     2,     4,     1,     1,     1,     1,     2,     3,     3,
25497        0,     1,     1,     1,     1,     1,     2,     2,     2,     2,
25498        2,     1,     3,     0,     1,     1,     1,     1,     5,     2,
25499        1,     1,     1,     1,     4,     1,     2,     2,     1,     3,
25500        3,     2,     1,     0,     5,     2,     5,     2,     1,     3,
25501        3,     0,     1,     1,     1,     1,     1,     1,     3,     3,
25502        3,     3,     3,     3,     3,     0,     1,     4,     1,     3,
25503        3,     5,     2,     2,     3,     3,     3,     3,     3,     3,
25504        3,     3,     3,     3,     3,     3,     3,     2,     2,     3,
25505        3,     2,     2,     3,     5,     4,     6,     3,     5,     4,
25506        6,     4,     6,     5,     7,     3,     2,     4,     2,     3,
25507        3,     4,     3,     4,     3,     4,     5,     6,     6,     7,
25508        6,     7,     6,     7,     3,     4,     4,     6,     2,     3,
25509        4,     3,     4,     4,     5,     1,     1,     3,     2,     2,
25510        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
25511        3,     3,     3,     2,     2,     5,     6,     6,     7,     3,
25512        4,     1,     1,     2,     4,     1,     1,     1,     2,     2,
25513        2,     2,     1,     1,     4,     3,     5,     6,     8,     6,
25514        6,     4,     4,     1,     1,     1,     5,     1,     1,     4,
25515        1,     4,     1,     4,     1,     4,     1,     1,     1,     1,
25516        1,     1,     6,     4,     4,     6,     4,     4,     4,     6,
25517        5,     5,     5,     4,     6,     4,     4,     4,     4,     5,
25518        7,     7,     9,     5,     4,     6,     5,     7,     7,     7,
25519        2,     3,     3,     3,     4,     0,     4,     1,     3,     3,
25520        1,     1,     1,     2,     2,     0,     2,     3,     3,     4,
25521        2,     2,     5,     0,     5,     0,     2,     0,     1,     3,
25522        3,     2,     2,     0,     6,     1,     0,     3,     0,     3,
25523        3,     3,     0,     1,     4,     2,     2,     2,     2,     2,
25524        3,     2,     2,     3,     0,     4,     3,     5,     4,     3,
25525        5,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25526        1,     1,     1,     1,     1,     1,     1,     1,     1,     4,
25527        1,     4,     1,     4,     1,     2,     1,     2,     1,     3,
25528        1,     3,     1,     3,     3,     1,     3,     3,     3,     2,
25529        1,     3,     3,     0,     1,     1,     1,     1,     1,     1,
25530        1,     1,     1,     1,     1,     1,     4,     3,     2,     3,
25531        0,     3,     3,     2,     2,     1,     0,     2,     2,     3,
25532        2,     1,     1,     3,     5,     1,     2,     4,     2,     0,
25533        1,     0,     1,     2,     2,     2,     3,     5,     1,     0,
25534        1,     2,     0,     2,     1,     0,     1,     0,     1,     3,
25535        3,     2,     1,     1,     1,     3,     1,     2,     1,     3,
25536        1,     1,     1,     1,     1,     1,     1,     2,     1,     1,
25537        1,     1,     1,     2,     6,     2,     3,     5,     1,     1,
25538        1,     1,     1,     1,     2,     2,     1,     1,     1,     1,
25539        1,     3,     1,     1,     1,     1,     1,     1,     1,     1,
25540        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25541        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25542        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25543        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25544        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25545        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25546        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25547        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25548        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25549        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25550        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25551        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25552        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25553        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25554        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25555        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25556        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25557        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25558        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25559        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25560        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25561        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25562        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25563        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25564        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25565        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25566        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25567        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25568        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25569        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25570        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25571        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25572        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25573        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25574        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25575        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25576        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25577        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25578        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25579        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25580        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25581        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25582        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25583        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25584        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
25585        1,     1,     1,     1,     1,     1,     1
25586 };
25587 
25588 
25589 #define yyerrok         (yyerrstatus = 0)
25590 #define yyclearin       (yychar = YYEMPTY)
25591 #define YYEMPTY         (-2)
25592 #define YYEOF           0
25593 
25594 #define YYACCEPT        goto yyacceptlab
25595 #define YYABORT         goto yyabortlab
25596 #define YYERROR         goto yyerrorlab
25597 
25598 
25599 #define YYRECOVERING()  (!!yyerrstatus)
25600 
25601 #define YYBACKUP(Token, Value)                                  \
25602 do                                                              \
25603   if (yychar == YYEMPTY)                                        \
25604     {                                                           \
25605       yychar = (Token);                                         \
25606       yylval = (Value);                                         \
25607       YYPOPSTACK (yylen);                                       \
25608       yystate = *yyssp;                                         \
25609       goto yybackup;                                            \
25610     }                                                           \
25611   else                                                          \
25612     {                                                           \
25613       yyerror (&yylloc, yyscanner, YY_("syntax error: cannot back up")); \
25614       YYERROR;                                                  \
25615     }                                                           \
25616 while (0)
25617 
25618 /* Error token number */
25619 #define YYTERROR        1
25620 #define YYERRCODE       256
25621 
25622 
25623 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
25624    If N is 0, then set CURRENT to the empty location which ends
25625    the previous symbol: RHS[0] (always defined).  */
25626 
25627 #ifndef YYLLOC_DEFAULT
25628 # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
25629     do                                                                  \
25630       if (N)                                                            \
25631         {                                                               \
25632           (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
25633           (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
25634           (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
25635           (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
25636         }                                                               \
25637       else                                                              \
25638         {                                                               \
25639           (Current).first_line   = (Current).last_line   =              \
25640             YYRHSLOC (Rhs, 0).last_line;                                \
25641           (Current).first_column = (Current).last_column =              \
25642             YYRHSLOC (Rhs, 0).last_column;                              \
25643         }                                                               \
25644     while (0)
25645 #endif
25646 
25647 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
25648 
25649 
25650 /* Enable debugging if requested.  */
25651 #if YYDEBUG
25652 
25653 # ifndef YYFPRINTF
25654 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
25655 #  define YYFPRINTF fprintf
25656 # endif
25657 
25658 # define YYDPRINTF(Args)                        \
25659 do {                                            \
25660   if (yydebug)                                  \
25661     YYFPRINTF Args;                             \
25662 } while (0)
25663 
25664 
25665 /* YY_LOCATION_PRINT -- Print the location on the stream.
25666    This macro was not mandated originally: define only if we know
25667    we won't break user code: when these are the locations we know.  */
25668 
25669 #ifndef YY_LOCATION_PRINT
25670 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
25671 
25672 /* Print *YYLOCP on YYO.  Private, do not rely on its existence. */
25673 
25674 YY_ATTRIBUTE_UNUSED
25675 static unsigned
yy_location_print_(FILE * yyo,YYLTYPE const * const yylocp)25676 yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp)
25677 {
25678   unsigned res = 0;
25679   int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0;
25680   if (0 <= yylocp->first_line)
25681     {
25682       res += YYFPRINTF (yyo, "%d", yylocp->first_line);
25683       if (0 <= yylocp->first_column)
25684         res += YYFPRINTF (yyo, ".%d", yylocp->first_column);
25685     }
25686   if (0 <= yylocp->last_line)
25687     {
25688       if (yylocp->first_line < yylocp->last_line)
25689         {
25690           res += YYFPRINTF (yyo, "-%d", yylocp->last_line);
25691           if (0 <= end_col)
25692             res += YYFPRINTF (yyo, ".%d", end_col);
25693         }
25694       else if (0 <= end_col && yylocp->first_column < end_col)
25695         res += YYFPRINTF (yyo, "-%d", end_col);
25696     }
25697   return res;
25698  }
25699 
25700 #  define YY_LOCATION_PRINT(File, Loc)          \
25701   yy_location_print_ (File, &(Loc))
25702 
25703 # else
25704 #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
25705 # endif
25706 #endif
25707 
25708 
25709 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)                    \
25710 do {                                                                      \
25711   if (yydebug)                                                            \
25712     {                                                                     \
25713       YYFPRINTF (stderr, "%s ", Title);                                   \
25714       yy_symbol_print (stderr,                                            \
25715                   Type, Value, Location, yyscanner); \
25716       YYFPRINTF (stderr, "\n");                                           \
25717     }                                                                     \
25718 } while (0)
25719 
25720 
25721 /*----------------------------------------.
25722 | Print this symbol's value on YYOUTPUT.  |
25723 `----------------------------------------*/
25724 
25725 static void
yy_symbol_value_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,YYLTYPE const * const yylocationp,core_yyscan_t yyscanner)25726 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, core_yyscan_t yyscanner)
25727 {
25728   FILE *yyo = yyoutput;
25729   YYUSE (yyo);
25730   YYUSE (yylocationp);
25731   YYUSE (yyscanner);
25732   if (!yyvaluep)
25733     return;
25734 # ifdef YYPRINT
25735   if (yytype < YYNTOKENS)
25736     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
25737 # endif
25738   YYUSE (yytype);
25739 }
25740 
25741 
25742 /*--------------------------------.
25743 | Print this symbol on YYOUTPUT.  |
25744 `--------------------------------*/
25745 
25746 static void
yy_symbol_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,YYLTYPE const * const yylocationp,core_yyscan_t yyscanner)25747 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, core_yyscan_t yyscanner)
25748 {
25749   YYFPRINTF (yyoutput, "%s %s (",
25750              yytype < YYNTOKENS ? "token" : "nterm", yytname[yytype]);
25751 
25752   YY_LOCATION_PRINT (yyoutput, *yylocationp);
25753   YYFPRINTF (yyoutput, ": ");
25754   yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, yyscanner);
25755   YYFPRINTF (yyoutput, ")");
25756 }
25757 
25758 /*------------------------------------------------------------------.
25759 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
25760 | TOP (included).                                                   |
25761 `------------------------------------------------------------------*/
25762 
25763 static void
yy_stack_print(yytype_int16 * yybottom,yytype_int16 * yytop)25764 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
25765 {
25766   YYFPRINTF (stderr, "Stack now");
25767   for (; yybottom <= yytop; yybottom++)
25768     {
25769       int yybot = *yybottom;
25770       YYFPRINTF (stderr, " %d", yybot);
25771     }
25772   YYFPRINTF (stderr, "\n");
25773 }
25774 
25775 # define YY_STACK_PRINT(Bottom, Top)                            \
25776 do {                                                            \
25777   if (yydebug)                                                  \
25778     yy_stack_print ((Bottom), (Top));                           \
25779 } while (0)
25780 
25781 
25782 /*------------------------------------------------.
25783 | Report that the YYRULE is going to be reduced.  |
25784 `------------------------------------------------*/
25785 
25786 static void
yy_reduce_print(yytype_int16 * yyssp,YYSTYPE * yyvsp,YYLTYPE * yylsp,int yyrule,core_yyscan_t yyscanner)25787 yy_reduce_print (yytype_int16 *yyssp, YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, core_yyscan_t yyscanner)
25788 {
25789   unsigned long int yylno = yyrline[yyrule];
25790   int yynrhs = yyr2[yyrule];
25791   int yyi;
25792   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
25793              yyrule - 1, yylno);
25794   /* The symbols being reduced.  */
25795   for (yyi = 0; yyi < yynrhs; yyi++)
25796     {
25797       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
25798       yy_symbol_print (stderr,
25799                        yystos[yyssp[yyi + 1 - yynrhs]],
25800                        &(yyvsp[(yyi + 1) - (yynrhs)])
25801                        , &(yylsp[(yyi + 1) - (yynrhs)])                       , yyscanner);
25802       YYFPRINTF (stderr, "\n");
25803     }
25804 }
25805 
25806 # define YY_REDUCE_PRINT(Rule)          \
25807 do {                                    \
25808   if (yydebug)                          \
25809     yy_reduce_print (yyssp, yyvsp, yylsp, Rule, yyscanner); \
25810 } while (0)
25811 
25812 /* Nonzero means print parse trace.  It is left uninitialized so that
25813    multiple parsers can coexist.  */
25814 int yydebug;
25815 #else /* !YYDEBUG */
25816 # define YYDPRINTF(Args)
25817 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
25818 # define YY_STACK_PRINT(Bottom, Top)
25819 # define YY_REDUCE_PRINT(Rule)
25820 #endif /* !YYDEBUG */
25821 
25822 
25823 /* YYINITDEPTH -- initial size of the parser's stacks.  */
25824 #ifndef YYINITDEPTH
25825 # define YYINITDEPTH 200
25826 #endif
25827 
25828 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
25829    if the built-in stack extension method is used).
25830 
25831    Do not make this value too large; the results are undefined if
25832    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
25833    evaluated with infinite-precision integer arithmetic.  */
25834 
25835 #ifndef YYMAXDEPTH
25836 # define YYMAXDEPTH 10000
25837 #endif
25838 
25839 
25840 #if YYERROR_VERBOSE
25841 
25842 # ifndef yystrlen
25843 #  if defined __GLIBC__ && defined _STRING_H
25844 #   define yystrlen strlen
25845 #  else
25846 /* Return the length of YYSTR.  */
25847 static YYSIZE_T
yystrlen(const char * yystr)25848 yystrlen (const char *yystr)
25849 {
25850   YYSIZE_T yylen;
25851   for (yylen = 0; yystr[yylen]; yylen++)
25852     continue;
25853   return yylen;
25854 }
25855 #  endif
25856 # endif
25857 
25858 # ifndef yystpcpy
25859 #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
25860 #   define yystpcpy stpcpy
25861 #  else
25862 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
25863    YYDEST.  */
25864 static char *
yystpcpy(char * yydest,const char * yysrc)25865 yystpcpy (char *yydest, const char *yysrc)
25866 {
25867   char *yyd = yydest;
25868   const char *yys = yysrc;
25869 
25870   while ((*yyd++ = *yys++) != '\0')
25871     continue;
25872 
25873   return yyd - 1;
25874 }
25875 #  endif
25876 # endif
25877 
25878 # ifndef yytnamerr
25879 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
25880    quotes and backslashes, so that it's suitable for yyerror.  The
25881    heuristic is that double-quoting is unnecessary unless the string
25882    contains an apostrophe, a comma, or backslash (other than
25883    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
25884    null, do not copy; instead, return the length of what the result
25885    would have been.  */
25886 static YYSIZE_T
yytnamerr(char * yyres,const char * yystr)25887 yytnamerr (char *yyres, const char *yystr)
25888 {
25889   if (*yystr == '"')
25890     {
25891       YYSIZE_T yyn = 0;
25892       char const *yyp = yystr;
25893 
25894       for (;;)
25895         switch (*++yyp)
25896           {
25897           case '\'':
25898           case ',':
25899             goto do_not_strip_quotes;
25900 
25901           case '\\':
25902             if (*++yyp != '\\')
25903               goto do_not_strip_quotes;
25904             /* Fall through.  */
25905           default:
25906             if (yyres)
25907               yyres[yyn] = *yyp;
25908             yyn++;
25909             break;
25910 
25911           case '"':
25912             if (yyres)
25913               yyres[yyn] = '\0';
25914             return yyn;
25915           }
25916     do_not_strip_quotes: ;
25917     }
25918 
25919   if (! yyres)
25920     return yystrlen (yystr);
25921 
25922   return yystpcpy (yyres, yystr) - yyres;
25923 }
25924 # endif
25925 
25926 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
25927    about the unexpected token YYTOKEN for the state stack whose top is
25928    YYSSP.
25929 
25930    Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
25931    not large enough to hold the message.  In that case, also set
25932    *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
25933    required number of bytes is too large to store.  */
25934 static int
yysyntax_error(YYSIZE_T * yymsg_alloc,char ** yymsg,yytype_int16 * yyssp,int yytoken)25935 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
25936                 yytype_int16 *yyssp, int yytoken)
25937 {
25938   YYSIZE_T yysize0 = yytnamerr (YY_NULLPTR, yytname[yytoken]);
25939   YYSIZE_T yysize = yysize0;
25940   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
25941   /* Internationalized format string. */
25942   const char *yyformat = YY_NULLPTR;
25943   /* Arguments of yyformat. */
25944   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
25945   /* Number of reported tokens (one for the "unexpected", one per
25946      "expected"). */
25947   int yycount = 0;
25948 
25949   /* There are many possibilities here to consider:
25950      - If this state is a consistent state with a default action, then
25951        the only way this function was invoked is if the default action
25952        is an error action.  In that case, don't check for expected
25953        tokens because there are none.
25954      - The only way there can be no lookahead present (in yychar) is if
25955        this state is a consistent state with a default action.  Thus,
25956        detecting the absence of a lookahead is sufficient to determine
25957        that there is no unexpected or expected token to report.  In that
25958        case, just report a simple "syntax error".
25959      - Don't assume there isn't a lookahead just because this state is a
25960        consistent state with a default action.  There might have been a
25961        previous inconsistent state, consistent state with a non-default
25962        action, or user semantic action that manipulated yychar.
25963      - Of course, the expected token list depends on states to have
25964        correct lookahead information, and it depends on the parser not
25965        to perform extra reductions after fetching a lookahead from the
25966        scanner and before detecting a syntax error.  Thus, state merging
25967        (from LALR or IELR) and default reductions corrupt the expected
25968        token list.  However, the list is correct for canonical LR with
25969        one exception: it will still contain any token that will not be
25970        accepted due to an error action in a later state.
25971   */
25972   if (yytoken != YYEMPTY)
25973     {
25974       int yyn = yypact[*yyssp];
25975       yyarg[yycount++] = yytname[yytoken];
25976       if (!yypact_value_is_default (yyn))
25977         {
25978           /* Start YYX at -YYN if negative to avoid negative indexes in
25979              YYCHECK.  In other words, skip the first -YYN actions for
25980              this state because they are default actions.  */
25981           int yyxbegin = yyn < 0 ? -yyn : 0;
25982           /* Stay within bounds of both yycheck and yytname.  */
25983           int yychecklim = YYLAST - yyn + 1;
25984           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
25985           int yyx;
25986 
25987           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
25988             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
25989                 && !yytable_value_is_error (yytable[yyx + yyn]))
25990               {
25991                 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
25992                   {
25993                     yycount = 1;
25994                     yysize = yysize0;
25995                     break;
25996                   }
25997                 yyarg[yycount++] = yytname[yyx];
25998                 {
25999                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULLPTR, yytname[yyx]);
26000                   if (! (yysize <= yysize1
26001                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
26002                     return 2;
26003                   yysize = yysize1;
26004                 }
26005               }
26006         }
26007     }
26008 
26009   switch (yycount)
26010     {
26011 # define YYCASE_(N, S)                      \
26012       case N:                               \
26013         yyformat = S;                       \
26014       break
26015       YYCASE_(0, YY_("syntax error"));
26016       YYCASE_(1, YY_("syntax error, unexpected %s"));
26017       YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
26018       YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
26019       YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
26020       YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
26021 # undef YYCASE_
26022     }
26023 
26024   {
26025     YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
26026     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
26027       return 2;
26028     yysize = yysize1;
26029   }
26030 
26031   if (*yymsg_alloc < yysize)
26032     {
26033       *yymsg_alloc = 2 * yysize;
26034       if (! (yysize <= *yymsg_alloc
26035              && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
26036         *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
26037       return 1;
26038     }
26039 
26040   /* Avoid sprintf, as that infringes on the user's name space.
26041      Don't have undefined behavior even if the translation
26042      produced a string with the wrong number of "%s"s.  */
26043   {
26044     char *yyp = *yymsg;
26045     int yyi = 0;
26046     while ((*yyp = *yyformat) != '\0')
26047       if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
26048         {
26049           yyp += yytnamerr (yyp, yyarg[yyi++]);
26050           yyformat += 2;
26051         }
26052       else
26053         {
26054           yyp++;
26055           yyformat++;
26056         }
26057   }
26058   return 0;
26059 }
26060 #endif /* YYERROR_VERBOSE */
26061 
26062 /*-----------------------------------------------.
26063 | Release the memory associated to this symbol.  |
26064 `-----------------------------------------------*/
26065 
26066 static void
yydestruct(const char * yymsg,int yytype,YYSTYPE * yyvaluep,YYLTYPE * yylocationp,core_yyscan_t yyscanner)26067 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, core_yyscan_t yyscanner)
26068 {
26069   YYUSE (yyvaluep);
26070   YYUSE (yylocationp);
26071   YYUSE (yyscanner);
26072   if (!yymsg)
26073     yymsg = "Deleting";
26074   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
26075 
26076   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
26077   YYUSE (yytype);
26078   YY_IGNORE_MAYBE_UNINITIALIZED_END
26079 }
26080 
26081 
26082 
26083 
26084 /*----------.
26085 | yyparse.  |
26086 `----------*/
26087 
26088 int
yyparse(core_yyscan_t yyscanner)26089 yyparse (core_yyscan_t yyscanner)
26090 {
26091 /* The lookahead symbol.  */
26092 int yychar;
26093 
26094 
26095 /* The semantic value of the lookahead symbol.  */
26096 /* Default value used for initialization, for pacifying older GCCs
26097    or non-GCC compilers.  */
26098 YY_INITIAL_VALUE (static YYSTYPE yyval_default;)
26099 YYSTYPE yylval YY_INITIAL_VALUE (= yyval_default);
26100 
26101 /* Location data for the lookahead symbol.  */
26102 static YYLTYPE yyloc_default
26103 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
26104   = { 1, 1, 1, 1 }
26105 # endif
26106 ;
26107 YYLTYPE yylloc = yyloc_default;
26108 
26109     /* Number of syntax errors so far.  */
26110     int yynerrs;
26111 
26112     int yystate;
26113     /* Number of tokens to shift before error messages enabled.  */
26114     int yyerrstatus;
26115 
26116     /* The stacks and their tools:
26117        'yyss': related to states.
26118        'yyvs': related to semantic values.
26119        'yyls': related to locations.
26120 
26121        Refer to the stacks through separate pointers, to allow yyoverflow
26122        to reallocate them elsewhere.  */
26123 
26124     /* The state stack.  */
26125     yytype_int16 yyssa[YYINITDEPTH];
26126     yytype_int16 *yyss;
26127     yytype_int16 *yyssp;
26128 
26129     /* The semantic value stack.  */
26130     YYSTYPE yyvsa[YYINITDEPTH];
26131     YYSTYPE *yyvs;
26132     YYSTYPE *yyvsp;
26133 
26134     /* The location stack.  */
26135     YYLTYPE yylsa[YYINITDEPTH];
26136     YYLTYPE *yyls;
26137     YYLTYPE *yylsp;
26138 
26139     /* The locations where the error started and ended.  */
26140     YYLTYPE yyerror_range[3];
26141 
26142     YYSIZE_T yystacksize;
26143 
26144   int yyn;
26145   int yyresult;
26146   /* Lookahead token as an internal (translated) token number.  */
26147   int yytoken = 0;
26148   /* The variables used to return semantic value and location from the
26149      action routines.  */
26150   YYSTYPE yyval;
26151   YYLTYPE yyloc;
26152 
26153 #if YYERROR_VERBOSE
26154   /* Buffer for error messages, and its allocated size.  */
26155   char yymsgbuf[128];
26156   char *yymsg = yymsgbuf;
26157   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
26158 #endif
26159 
26160 #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
26161 
26162   /* The number of symbols on the RHS of the reduced rule.
26163      Keep to zero when no symbol should be popped.  */
26164   int yylen = 0;
26165 
26166   yyssp = yyss = yyssa;
26167   yyvsp = yyvs = yyvsa;
26168   yylsp = yyls = yylsa;
26169   yystacksize = YYINITDEPTH;
26170 
26171   YYDPRINTF ((stderr, "Starting parse\n"));
26172 
26173   yystate = 0;
26174   yyerrstatus = 0;
26175   yynerrs = 0;
26176   yychar = YYEMPTY; /* Cause a token to be read.  */
26177   yylsp[0] = yylloc;
26178   goto yysetstate;
26179 
26180 /*------------------------------------------------------------.
26181 | yynewstate -- Push a new state, which is found in yystate.  |
26182 `------------------------------------------------------------*/
26183  yynewstate:
26184   /* In all cases, when you get here, the value and location stacks
26185      have just been pushed.  So pushing a state here evens the stacks.  */
26186   yyssp++;
26187 
26188  yysetstate:
26189   *yyssp = yystate;
26190 
26191   if (yyss + yystacksize - 1 <= yyssp)
26192     {
26193       /* Get the current used size of the three stacks, in elements.  */
26194       YYSIZE_T yysize = yyssp - yyss + 1;
26195 
26196 #ifdef yyoverflow
26197       {
26198         /* Give user a chance to reallocate the stack.  Use copies of
26199            these so that the &'s don't force the real ones into
26200            memory.  */
26201         YYSTYPE *yyvs1 = yyvs;
26202         yytype_int16 *yyss1 = yyss;
26203         YYLTYPE *yyls1 = yyls;
26204 
26205         /* Each stack pointer address is followed by the size of the
26206            data in use in that stack, in bytes.  This used to be a
26207            conditional around just the two extra args, but that might
26208            be undefined if yyoverflow is a macro.  */
26209         yyoverflow (YY_("memory exhausted"),
26210                     &yyss1, yysize * sizeof (*yyssp),
26211                     &yyvs1, yysize * sizeof (*yyvsp),
26212                     &yyls1, yysize * sizeof (*yylsp),
26213                     &yystacksize);
26214 
26215         yyls = yyls1;
26216         yyss = yyss1;
26217         yyvs = yyvs1;
26218       }
26219 #else /* no yyoverflow */
26220 # ifndef YYSTACK_RELOCATE
26221       goto yyexhaustedlab;
26222 # else
26223       /* Extend the stack our own way.  */
26224       if (YYMAXDEPTH <= yystacksize)
26225         goto yyexhaustedlab;
26226       yystacksize *= 2;
26227       if (YYMAXDEPTH < yystacksize)
26228         yystacksize = YYMAXDEPTH;
26229 
26230       {
26231         yytype_int16 *yyss1 = yyss;
26232         union yyalloc *yyptr =
26233           (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
26234         if (! yyptr)
26235           goto yyexhaustedlab;
26236         YYSTACK_RELOCATE (yyss_alloc, yyss);
26237         YYSTACK_RELOCATE (yyvs_alloc, yyvs);
26238         YYSTACK_RELOCATE (yyls_alloc, yyls);
26239 #  undef YYSTACK_RELOCATE
26240         if (yyss1 != yyssa)
26241           YYSTACK_FREE (yyss1);
26242       }
26243 # endif
26244 #endif /* no yyoverflow */
26245 
26246       yyssp = yyss + yysize - 1;
26247       yyvsp = yyvs + yysize - 1;
26248       yylsp = yyls + yysize - 1;
26249 
26250       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
26251                   (unsigned long int) yystacksize));
26252 
26253       if (yyss + yystacksize - 1 <= yyssp)
26254         YYABORT;
26255     }
26256 
26257   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
26258 
26259   if (yystate == YYFINAL)
26260     YYACCEPT;
26261 
26262   goto yybackup;
26263 
26264 /*-----------.
26265 | yybackup.  |
26266 `-----------*/
26267 yybackup:
26268 
26269   /* Do appropriate processing given the current state.  Read a
26270      lookahead token if we need one and don't already have one.  */
26271 
26272   /* First try to decide what to do without reference to lookahead token.  */
26273   yyn = yypact[yystate];
26274   if (yypact_value_is_default (yyn))
26275     goto yydefault;
26276 
26277   /* Not known => get a lookahead token if don't already have one.  */
26278 
26279   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
26280   if (yychar == YYEMPTY)
26281     {
26282       YYDPRINTF ((stderr, "Reading a token: "));
26283       yychar = yylex (&yylval, &yylloc, yyscanner);
26284     }
26285 
26286   if (yychar <= YYEOF)
26287     {
26288       yychar = yytoken = YYEOF;
26289       YYDPRINTF ((stderr, "Now at end of input.\n"));
26290     }
26291   else
26292     {
26293       yytoken = YYTRANSLATE (yychar);
26294       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
26295     }
26296 
26297   /* If the proper action on seeing token YYTOKEN is to reduce or to
26298      detect an error, take that action.  */
26299   yyn += yytoken;
26300   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
26301     goto yydefault;
26302   yyn = yytable[yyn];
26303   if (yyn <= 0)
26304     {
26305       if (yytable_value_is_error (yyn))
26306         goto yyerrlab;
26307       yyn = -yyn;
26308       goto yyreduce;
26309     }
26310 
26311   /* Count tokens shifted since error; after three, turn off error
26312      status.  */
26313   if (yyerrstatus)
26314     yyerrstatus--;
26315 
26316   /* Shift the lookahead token.  */
26317   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
26318 
26319   /* Discard the shifted token.  */
26320   yychar = YYEMPTY;
26321 
26322   yystate = yyn;
26323   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
26324   *++yyvsp = yylval;
26325   YY_IGNORE_MAYBE_UNINITIALIZED_END
26326   *++yylsp = yylloc;
26327   goto yynewstate;
26328 
26329 
26330 /*-----------------------------------------------------------.
26331 | yydefault -- do the default action for the current state.  |
26332 `-----------------------------------------------------------*/
26333 yydefault:
26334   yyn = yydefact[yystate];
26335   if (yyn == 0)
26336     goto yyerrlab;
26337   goto yyreduce;
26338 
26339 
26340 /*-----------------------------.
26341 | yyreduce -- Do a reduction.  |
26342 `-----------------------------*/
26343 yyreduce:
26344   /* yyn is the number of a rule to reduce with.  */
26345   yylen = yyr2[yyn];
26346 
26347   /* If YYLEN is nonzero, implement the default value of the action:
26348      '$$ = $1'.
26349 
26350      Otherwise, the following line sets YYVAL to garbage.
26351      This behavior is undocumented and Bison
26352      users should not rely upon it.  Assigning to YYVAL
26353      unconditionally makes the parser a bit smaller, and it avoids a
26354      GCC warning that YYVAL may be used uninitialized.  */
26355   yyval = yyvsp[1-yylen];
26356 
26357   /* Default location.  */
26358   YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
26359   YY_REDUCE_PRINT (yyn);
26360   switch (yyn)
26361     {
26362         case 2:
26363 #line 844 "gram_minimal.y" /* yacc.c:1646  */
26364     {
26365 				pg_yyget_extra(yyscanner)->parsetree = (yyvsp[0].list);
26366 			}
26367 #line 26368 "gram_minimal.c" /* yacc.c:1646  */
26368     break;
26369 
26370   case 3:
26371 #line 860 "gram_minimal.y" /* yacc.c:1646  */
26372     {
26373 					if ((yyvsp[-2].list) != NIL)
26374 					{
26375 						/* update length of previous stmt */
26376 						updateRawStmtEnd(llast_node(RawStmt, (yyvsp[-2].list)), (yylsp[-1]));
26377 					}
26378 					if ((yyvsp[0].node) != NULL)
26379 						(yyval.list) = lappend((yyvsp[-2].list), makeRawStmt((yyvsp[0].node), (yylsp[-1]) + 1));
26380 					else
26381 						(yyval.list) = (yyvsp[-2].list);
26382 				}
26383 #line 26384 "gram_minimal.c" /* yacc.c:1646  */
26384     break;
26385 
26386   case 4:
26387 #line 872 "gram_minimal.y" /* yacc.c:1646  */
26388     {
26389 					if ((yyvsp[0].node) != NULL)
26390 						(yyval.list) = list_make1(makeRawStmt((yyvsp[0].node), 0));
26391 					else
26392 						(yyval.list) = NIL;
26393 				}
26394 #line 26395 "gram_minimal.c" /* yacc.c:1646  */
26395     break;
26396 
26397   case 130:
26398 #line 1007 "gram_minimal.y" /* yacc.c:1646  */
26399     { (yyval.node) = NULL; }
26400 #line 26401 "gram_minimal.c" /* yacc.c:1646  */
26401     break;
26402 
26403   case 131:
26404 #line 1017 "gram_minimal.y" /* yacc.c:1646  */
26405     {
26406 					CallStmt *n = makeNode(CallStmt);
26407 					n->funccall = castNode(FuncCall, (yyvsp[0].node));
26408 					(yyval.node) = (Node *)n;
26409 				}
26410 #line 26411 "gram_minimal.c" /* yacc.c:1646  */
26411     break;
26412 
26413   case 132:
26414 #line 1032 "gram_minimal.y" /* yacc.c:1646  */
26415     {
26416 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
26417 					n->stmt_type = ROLESTMT_ROLE;
26418 					n->role = (yyvsp[-2].str);
26419 					n->options = (yyvsp[0].list);
26420 					(yyval.node) = (Node *)n;
26421 				}
26422 #line 26423 "gram_minimal.c" /* yacc.c:1646  */
26423     break;
26424 
26425   case 133:
26426 #line 1042 "gram_minimal.y" /* yacc.c:1646  */
26427     {}
26428 #line 26429 "gram_minimal.c" /* yacc.c:1646  */
26429     break;
26430 
26431   case 134:
26432 #line 1043 "gram_minimal.y" /* yacc.c:1646  */
26433     {}
26434 #line 26435 "gram_minimal.c" /* yacc.c:1646  */
26435     break;
26436 
26437   case 135:
26438 #line 1044 "gram_minimal.y" /* yacc.c:1646  */
26439     {}
26440 #line 26441 "gram_minimal.c" /* yacc.c:1646  */
26441     break;
26442 
26443   case 136:
26444 #line 1053 "gram_minimal.y" /* yacc.c:1646  */
26445     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
26446 #line 26447 "gram_minimal.c" /* yacc.c:1646  */
26447     break;
26448 
26449   case 137:
26450 #line 1054 "gram_minimal.y" /* yacc.c:1646  */
26451     { (yyval.list) = NIL; }
26452 #line 26453 "gram_minimal.c" /* yacc.c:1646  */
26453     break;
26454 
26455   case 138:
26456 #line 1058 "gram_minimal.y" /* yacc.c:1646  */
26457     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
26458 #line 26459 "gram_minimal.c" /* yacc.c:1646  */
26459     break;
26460 
26461   case 139:
26462 #line 1059 "gram_minimal.y" /* yacc.c:1646  */
26463     { (yyval.list) = NIL; }
26464 #line 26465 "gram_minimal.c" /* yacc.c:1646  */
26465     break;
26466 
26467   case 140:
26468 #line 1064 "gram_minimal.y" /* yacc.c:1646  */
26469     {
26470 					(yyval.defelt) = makeDefElem("password",
26471 									 (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
26472 				}
26473 #line 26474 "gram_minimal.c" /* yacc.c:1646  */
26474     break;
26475 
26476   case 141:
26477 #line 1069 "gram_minimal.y" /* yacc.c:1646  */
26478     {
26479 					(yyval.defelt) = makeDefElem("password", NULL, (yylsp[-1]));
26480 				}
26481 #line 26482 "gram_minimal.c" /* yacc.c:1646  */
26482     break;
26483 
26484   case 142:
26485 #line 1073 "gram_minimal.y" /* yacc.c:1646  */
26486     {
26487 					/*
26488 					 * These days, passwords are always stored in encrypted
26489 					 * form, so there is no difference between PASSWORD and
26490 					 * ENCRYPTED PASSWORD.
26491 					 */
26492 					(yyval.defelt) = makeDefElem("password",
26493 									 (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
26494 				}
26495 #line 26496 "gram_minimal.c" /* yacc.c:1646  */
26496     break;
26497 
26498   case 143:
26499 #line 1083 "gram_minimal.y" /* yacc.c:1646  */
26500     {
26501 					ereport(ERROR,
26502 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
26503 							 errmsg("UNENCRYPTED PASSWORD is no longer supported"),
26504 							 errhint("Remove UNENCRYPTED to store the password in encrypted form instead."),
26505 							 parser_errposition((yylsp[-2]))));
26506 				}
26507 #line 26508 "gram_minimal.c" /* yacc.c:1646  */
26508     break;
26509 
26510   case 144:
26511 #line 1091 "gram_minimal.y" /* yacc.c:1646  */
26512     {
26513 					(yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(true), (yylsp[0]));
26514 				}
26515 #line 26516 "gram_minimal.c" /* yacc.c:1646  */
26516     break;
26517 
26518   case 145:
26519 #line 1095 "gram_minimal.y" /* yacc.c:1646  */
26520     {
26521 					(yyval.defelt) = makeDefElem("connectionlimit", (Node *)makeInteger((yyvsp[0].ival)), (yylsp[-2]));
26522 				}
26523 #line 26524 "gram_minimal.c" /* yacc.c:1646  */
26524     break;
26525 
26526   case 146:
26527 #line 1099 "gram_minimal.y" /* yacc.c:1646  */
26528     {
26529 					(yyval.defelt) = makeDefElem("validUntil", (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
26530 				}
26531 #line 26532 "gram_minimal.c" /* yacc.c:1646  */
26532     break;
26533 
26534   case 147:
26535 #line 1104 "gram_minimal.y" /* yacc.c:1646  */
26536     {
26537 					(yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[0].list), (yylsp[-1]));
26538 				}
26539 #line 26540 "gram_minimal.c" /* yacc.c:1646  */
26540     break;
26541 
26542   case 148:
26543 #line 1108 "gram_minimal.y" /* yacc.c:1646  */
26544     {
26545 					/*
26546 					 * We handle identifiers that aren't parser keywords with
26547 					 * the following special-case codes, to avoid bloating the
26548 					 * size of the main parser.
26549 					 */
26550 					if (strcmp((yyvsp[0].str), "superuser") == 0)
26551 						(yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(true), (yylsp[0]));
26552 					else if (strcmp((yyvsp[0].str), "nosuperuser") == 0)
26553 						(yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(false), (yylsp[0]));
26554 					else if (strcmp((yyvsp[0].str), "createrole") == 0)
26555 						(yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(true), (yylsp[0]));
26556 					else if (strcmp((yyvsp[0].str), "nocreaterole") == 0)
26557 						(yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(false), (yylsp[0]));
26558 					else if (strcmp((yyvsp[0].str), "replication") == 0)
26559 						(yyval.defelt) = makeDefElem("isreplication", (Node *)makeInteger(true), (yylsp[0]));
26560 					else if (strcmp((yyvsp[0].str), "noreplication") == 0)
26561 						(yyval.defelt) = makeDefElem("isreplication", (Node *)makeInteger(false), (yylsp[0]));
26562 					else if (strcmp((yyvsp[0].str), "createdb") == 0)
26563 						(yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(true), (yylsp[0]));
26564 					else if (strcmp((yyvsp[0].str), "nocreatedb") == 0)
26565 						(yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(false), (yylsp[0]));
26566 					else if (strcmp((yyvsp[0].str), "login") == 0)
26567 						(yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(true), (yylsp[0]));
26568 					else if (strcmp((yyvsp[0].str), "nologin") == 0)
26569 						(yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(false), (yylsp[0]));
26570 					else if (strcmp((yyvsp[0].str), "bypassrls") == 0)
26571 						(yyval.defelt) = makeDefElem("bypassrls", (Node *)makeInteger(true), (yylsp[0]));
26572 					else if (strcmp((yyvsp[0].str), "nobypassrls") == 0)
26573 						(yyval.defelt) = makeDefElem("bypassrls", (Node *)makeInteger(false), (yylsp[0]));
26574 					else if (strcmp((yyvsp[0].str), "noinherit") == 0)
26575 					{
26576 						/*
26577 						 * Note that INHERIT is a keyword, so it's handled by main parser, but
26578 						 * NOINHERIT is handled here.
26579 						 */
26580 						(yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(false), (yylsp[0]));
26581 					}
26582 					else
26583 						ereport(ERROR,
26584 								(errcode(ERRCODE_SYNTAX_ERROR),
26585 								 errmsg("unrecognized role option \"%s\"", (yyvsp[0].str)),
26586 									 parser_errposition((yylsp[0]))));
26587 				}
26588 #line 26589 "gram_minimal.c" /* yacc.c:1646  */
26589     break;
26590 
26591   case 149:
26592 #line 1155 "gram_minimal.y" /* yacc.c:1646  */
26593     { (yyval.defelt) = (yyvsp[0].defelt); }
26594 #line 26595 "gram_minimal.c" /* yacc.c:1646  */
26595     break;
26596 
26597   case 150:
26598 #line 1158 "gram_minimal.y" /* yacc.c:1646  */
26599     {
26600 					(yyval.defelt) = makeDefElem("sysid", (Node *)makeInteger((yyvsp[0].ival)), (yylsp[-1]));
26601 				}
26602 #line 26603 "gram_minimal.c" /* yacc.c:1646  */
26603     break;
26604 
26605   case 151:
26606 #line 1162 "gram_minimal.y" /* yacc.c:1646  */
26607     {
26608 					(yyval.defelt) = makeDefElem("adminmembers", (Node *)(yyvsp[0].list), (yylsp[-1]));
26609 				}
26610 #line 26611 "gram_minimal.c" /* yacc.c:1646  */
26611     break;
26612 
26613   case 152:
26614 #line 1166 "gram_minimal.y" /* yacc.c:1646  */
26615     {
26616 					(yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[0].list), (yylsp[-1]));
26617 				}
26618 #line 26619 "gram_minimal.c" /* yacc.c:1646  */
26619     break;
26620 
26621   case 153:
26622 #line 1170 "gram_minimal.y" /* yacc.c:1646  */
26623     {
26624 					(yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[0].list), (yylsp[-2]));
26625 				}
26626 #line 26627 "gram_minimal.c" /* yacc.c:1646  */
26627     break;
26628 
26629   case 154:
26630 #line 1174 "gram_minimal.y" /* yacc.c:1646  */
26631     {
26632 					(yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[0].list), (yylsp[-2]));
26633 				}
26634 #line 26635 "gram_minimal.c" /* yacc.c:1646  */
26635     break;
26636 
26637   case 155:
26638 #line 1188 "gram_minimal.y" /* yacc.c:1646  */
26639     {
26640 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
26641 					n->stmt_type = ROLESTMT_USER;
26642 					n->role = (yyvsp[-2].str);
26643 					n->options = (yyvsp[0].list);
26644 					(yyval.node) = (Node *)n;
26645 				}
26646 #line 26647 "gram_minimal.c" /* yacc.c:1646  */
26647     break;
26648 
26649   case 156:
26650 #line 1206 "gram_minimal.y" /* yacc.c:1646  */
26651     {
26652 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
26653 					n->role = (yyvsp[-2].rolespec);
26654 					n->action = +1;	/* add, if there are members */
26655 					n->options = (yyvsp[0].list);
26656 					(yyval.node) = (Node *)n;
26657 				 }
26658 #line 26659 "gram_minimal.c" /* yacc.c:1646  */
26659     break;
26660 
26661   case 157:
26662 #line 1214 "gram_minimal.y" /* yacc.c:1646  */
26663     {
26664 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
26665 					n->role = (yyvsp[-2].rolespec);
26666 					n->action = +1;	/* add, if there are members */
26667 					n->options = (yyvsp[0].list);
26668 					(yyval.node) = (Node *)n;
26669 				 }
26670 #line 26671 "gram_minimal.c" /* yacc.c:1646  */
26671     break;
26672 
26673   case 158:
26674 #line 1224 "gram_minimal.y" /* yacc.c:1646  */
26675     { (yyval.str) = NULL; }
26676 #line 26677 "gram_minimal.c" /* yacc.c:1646  */
26677     break;
26678 
26679   case 159:
26680 #line 1225 "gram_minimal.y" /* yacc.c:1646  */
26681     { (yyval.str) = (yyvsp[0].str); }
26682 #line 26683 "gram_minimal.c" /* yacc.c:1646  */
26683     break;
26684 
26685   case 160:
26686 #line 1230 "gram_minimal.y" /* yacc.c:1646  */
26687     {
26688 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
26689 					n->role = (yyvsp[-2].rolespec);
26690 					n->database = (yyvsp[-1].str);
26691 					n->setstmt = (yyvsp[0].vsetstmt);
26692 					(yyval.node) = (Node *)n;
26693 				}
26694 #line 26695 "gram_minimal.c" /* yacc.c:1646  */
26695     break;
26696 
26697   case 161:
26698 #line 1238 "gram_minimal.y" /* yacc.c:1646  */
26699     {
26700 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
26701 					n->role = NULL;
26702 					n->database = (yyvsp[-1].str);
26703 					n->setstmt = (yyvsp[0].vsetstmt);
26704 					(yyval.node) = (Node *)n;
26705 				}
26706 #line 26707 "gram_minimal.c" /* yacc.c:1646  */
26707     break;
26708 
26709   case 162:
26710 #line 1246 "gram_minimal.y" /* yacc.c:1646  */
26711     {
26712 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
26713 					n->role = (yyvsp[-2].rolespec);
26714 					n->database = (yyvsp[-1].str);
26715 					n->setstmt = (yyvsp[0].vsetstmt);
26716 					(yyval.node) = (Node *)n;
26717 				}
26718 #line 26719 "gram_minimal.c" /* yacc.c:1646  */
26719     break;
26720 
26721   case 163:
26722 #line 1254 "gram_minimal.y" /* yacc.c:1646  */
26723     {
26724 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
26725 					n->role = NULL;
26726 					n->database = (yyvsp[-1].str);
26727 					n->setstmt = (yyvsp[0].vsetstmt);
26728 					(yyval.node) = (Node *)n;
26729 				}
26730 #line 26731 "gram_minimal.c" /* yacc.c:1646  */
26731     break;
26732 
26733   case 164:
26734 #line 1275 "gram_minimal.y" /* yacc.c:1646  */
26735     {
26736 					DropRoleStmt *n = makeNode(DropRoleStmt);
26737 					n->missing_ok = false;
26738 					n->roles = (yyvsp[0].list);
26739 					(yyval.node) = (Node *)n;
26740 				}
26741 #line 26742 "gram_minimal.c" /* yacc.c:1646  */
26742     break;
26743 
26744   case 165:
26745 #line 1282 "gram_minimal.y" /* yacc.c:1646  */
26746     {
26747 					DropRoleStmt *n = makeNode(DropRoleStmt);
26748 					n->missing_ok = true;
26749 					n->roles = (yyvsp[0].list);
26750 					(yyval.node) = (Node *)n;
26751 				}
26752 #line 26753 "gram_minimal.c" /* yacc.c:1646  */
26753     break;
26754 
26755   case 166:
26756 #line 1289 "gram_minimal.y" /* yacc.c:1646  */
26757     {
26758 					DropRoleStmt *n = makeNode(DropRoleStmt);
26759 					n->missing_ok = false;
26760 					n->roles = (yyvsp[0].list);
26761 					(yyval.node) = (Node *)n;
26762 				}
26763 #line 26764 "gram_minimal.c" /* yacc.c:1646  */
26764     break;
26765 
26766   case 167:
26767 #line 1296 "gram_minimal.y" /* yacc.c:1646  */
26768     {
26769 					DropRoleStmt *n = makeNode(DropRoleStmt);
26770 					n->roles = (yyvsp[0].list);
26771 					n->missing_ok = true;
26772 					(yyval.node) = (Node *)n;
26773 				}
26774 #line 26775 "gram_minimal.c" /* yacc.c:1646  */
26775     break;
26776 
26777   case 168:
26778 #line 1303 "gram_minimal.y" /* yacc.c:1646  */
26779     {
26780 					DropRoleStmt *n = makeNode(DropRoleStmt);
26781 					n->missing_ok = false;
26782 					n->roles = (yyvsp[0].list);
26783 					(yyval.node) = (Node *)n;
26784 				}
26785 #line 26786 "gram_minimal.c" /* yacc.c:1646  */
26786     break;
26787 
26788   case 169:
26789 #line 1310 "gram_minimal.y" /* yacc.c:1646  */
26790     {
26791 					DropRoleStmt *n = makeNode(DropRoleStmt);
26792 					n->missing_ok = true;
26793 					n->roles = (yyvsp[0].list);
26794 					(yyval.node) = (Node *)n;
26795 				}
26796 #line 26797 "gram_minimal.c" /* yacc.c:1646  */
26797     break;
26798 
26799   case 170:
26800 #line 1327 "gram_minimal.y" /* yacc.c:1646  */
26801     {
26802 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
26803 					n->stmt_type = ROLESTMT_GROUP;
26804 					n->role = (yyvsp[-2].str);
26805 					n->options = (yyvsp[0].list);
26806 					(yyval.node) = (Node *)n;
26807 				}
26808 #line 26809 "gram_minimal.c" /* yacc.c:1646  */
26809     break;
26810 
26811   case 171:
26812 #line 1345 "gram_minimal.y" /* yacc.c:1646  */
26813     {
26814 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
26815 					n->role = (yyvsp[-3].rolespec);
26816 					n->action = (yyvsp[-2].ival);
26817 					n->options = list_make1(makeDefElem("rolemembers",
26818 														(Node *)(yyvsp[0].list), (yylsp[0])));
26819 					(yyval.node) = (Node *)n;
26820 				}
26821 #line 26822 "gram_minimal.c" /* yacc.c:1646  */
26822     break;
26823 
26824   case 172:
26825 #line 1355 "gram_minimal.y" /* yacc.c:1646  */
26826     { (yyval.ival) = +1; }
26827 #line 26828 "gram_minimal.c" /* yacc.c:1646  */
26828     break;
26829 
26830   case 173:
26831 #line 1356 "gram_minimal.y" /* yacc.c:1646  */
26832     { (yyval.ival) = -1; }
26833 #line 26834 "gram_minimal.c" /* yacc.c:1646  */
26834     break;
26835 
26836   case 174:
26837 #line 1368 "gram_minimal.y" /* yacc.c:1646  */
26838     {
26839 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
26840 					/* One can omit the schema name or the authorization id. */
26841 					n->schemaname = (yyvsp[-3].str);
26842 					n->authrole = (yyvsp[-1].rolespec);
26843 					n->schemaElts = (yyvsp[0].list);
26844 					n->if_not_exists = false;
26845 					(yyval.node) = (Node *)n;
26846 				}
26847 #line 26848 "gram_minimal.c" /* yacc.c:1646  */
26848     break;
26849 
26850   case 175:
26851 #line 1378 "gram_minimal.y" /* yacc.c:1646  */
26852     {
26853 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
26854 					/* ...but not both */
26855 					n->schemaname = (yyvsp[-1].str);
26856 					n->authrole = NULL;
26857 					n->schemaElts = (yyvsp[0].list);
26858 					n->if_not_exists = false;
26859 					(yyval.node) = (Node *)n;
26860 				}
26861 #line 26862 "gram_minimal.c" /* yacc.c:1646  */
26862     break;
26863 
26864   case 176:
26865 #line 1388 "gram_minimal.y" /* yacc.c:1646  */
26866     {
26867 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
26868 					/* schema name can be omitted here, too */
26869 					n->schemaname = (yyvsp[-3].str);
26870 					n->authrole = (yyvsp[-1].rolespec);
26871 					if ((yyvsp[0].list) != NIL)
26872 						ereport(ERROR,
26873 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
26874 								 errmsg("CREATE SCHEMA IF NOT EXISTS cannot include schema elements"),
26875 								 parser_errposition((yylsp[0]))));
26876 					n->schemaElts = (yyvsp[0].list);
26877 					n->if_not_exists = true;
26878 					(yyval.node) = (Node *)n;
26879 				}
26880 #line 26881 "gram_minimal.c" /* yacc.c:1646  */
26881     break;
26882 
26883   case 177:
26884 #line 1403 "gram_minimal.y" /* yacc.c:1646  */
26885     {
26886 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
26887 					/* ...but not here */
26888 					n->schemaname = (yyvsp[-1].str);
26889 					n->authrole = NULL;
26890 					if ((yyvsp[0].list) != NIL)
26891 						ereport(ERROR,
26892 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
26893 								 errmsg("CREATE SCHEMA IF NOT EXISTS cannot include schema elements"),
26894 								 parser_errposition((yylsp[0]))));
26895 					n->schemaElts = (yyvsp[0].list);
26896 					n->if_not_exists = true;
26897 					(yyval.node) = (Node *)n;
26898 				}
26899 #line 26900 "gram_minimal.c" /* yacc.c:1646  */
26900     break;
26901 
26902   case 178:
26903 #line 1420 "gram_minimal.y" /* yacc.c:1646  */
26904     { (yyval.str) = (yyvsp[0].str); }
26905 #line 26906 "gram_minimal.c" /* yacc.c:1646  */
26906     break;
26907 
26908   case 179:
26909 #line 1421 "gram_minimal.y" /* yacc.c:1646  */
26910     { (yyval.str) = NULL; }
26911 #line 26912 "gram_minimal.c" /* yacc.c:1646  */
26912     break;
26913 
26914   case 180:
26915 #line 1426 "gram_minimal.y" /* yacc.c:1646  */
26916     {
26917 					if ((yyloc) < 0)			/* see comments for YYLLOC_DEFAULT */
26918 						(yyloc) = (yylsp[0]);
26919 					(yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node));
26920 				}
26921 #line 26922 "gram_minimal.c" /* yacc.c:1646  */
26922     break;
26923 
26924   case 181:
26925 #line 1432 "gram_minimal.y" /* yacc.c:1646  */
26926     { (yyval.list) = NIL; }
26927 #line 26928 "gram_minimal.c" /* yacc.c:1646  */
26928     break;
26929 
26930   case 188:
26931 #line 1460 "gram_minimal.y" /* yacc.c:1646  */
26932     {
26933 					VariableSetStmt *n = (yyvsp[0].vsetstmt);
26934 					n->type = T_PgpoolVariableSetStmt; /* Hack to keep changes minumum */
26935 					n->is_local = false;
26936 					(yyval.node) = (Node *) n;
26937 				}
26938 #line 26939 "gram_minimal.c" /* yacc.c:1646  */
26939     break;
26940 
26941   case 189:
26942 #line 1467 "gram_minimal.y" /* yacc.c:1646  */
26943     {
26944 					VariableSetStmt *n = (yyvsp[0].vsetstmt);
26945 					n->is_local = false;
26946 					(yyval.node) = (Node *) n;
26947 				}
26948 #line 26949 "gram_minimal.c" /* yacc.c:1646  */
26949     break;
26950 
26951   case 190:
26952 #line 1473 "gram_minimal.y" /* yacc.c:1646  */
26953     {
26954 					VariableSetStmt *n = (yyvsp[0].vsetstmt);
26955 					n->is_local = true;
26956 					(yyval.node) = (Node *) n;
26957 				}
26958 #line 26959 "gram_minimal.c" /* yacc.c:1646  */
26959     break;
26960 
26961   case 191:
26962 #line 1479 "gram_minimal.y" /* yacc.c:1646  */
26963     {
26964 					VariableSetStmt *n = (yyvsp[0].vsetstmt);
26965 					n->is_local = false;
26966 					(yyval.node) = (Node *) n;
26967 				}
26968 #line 26969 "gram_minimal.c" /* yacc.c:1646  */
26969     break;
26970 
26971   case 192:
26972 #line 1488 "gram_minimal.y" /* yacc.c:1646  */
26973     {
26974 					VariableSetStmt *n = makeNode(VariableSetStmt);
26975 					n->kind = VAR_SET_MULTI;
26976 					n->name = "TRANSACTION";
26977 					n->args = (yyvsp[0].list);
26978 					(yyval.vsetstmt) = n;
26979 				}
26980 #line 26981 "gram_minimal.c" /* yacc.c:1646  */
26981     break;
26982 
26983   case 193:
26984 #line 1496 "gram_minimal.y" /* yacc.c:1646  */
26985     {
26986 					VariableSetStmt *n = makeNode(VariableSetStmt);
26987 					n->kind = VAR_SET_MULTI;
26988 					n->name = "SESSION CHARACTERISTICS";
26989 					n->args = (yyvsp[0].list);
26990 					(yyval.vsetstmt) = n;
26991 				}
26992 #line 26993 "gram_minimal.c" /* yacc.c:1646  */
26993     break;
26994 
26995   case 195:
26996 #line 1508 "gram_minimal.y" /* yacc.c:1646  */
26997     {
26998 					VariableSetStmt *n = makeNode(VariableSetStmt);
26999 					n->kind = VAR_SET_VALUE;
27000 					n->name = (yyvsp[-2].str);
27001 					n->args = (yyvsp[0].list);
27002 					(yyval.vsetstmt) = n;
27003 				}
27004 #line 27005 "gram_minimal.c" /* yacc.c:1646  */
27005     break;
27006 
27007   case 196:
27008 #line 1516 "gram_minimal.y" /* yacc.c:1646  */
27009     {
27010 					VariableSetStmt *n = makeNode(VariableSetStmt);
27011 					n->kind = VAR_SET_VALUE;
27012 					n->name = (yyvsp[-2].str);
27013 					n->args = (yyvsp[0].list);
27014 					(yyval.vsetstmt) = n;
27015 				}
27016 #line 27017 "gram_minimal.c" /* yacc.c:1646  */
27017     break;
27018 
27019   case 197:
27020 #line 1524 "gram_minimal.y" /* yacc.c:1646  */
27021     {
27022 					VariableSetStmt *n = makeNode(VariableSetStmt);
27023 					n->kind = VAR_SET_DEFAULT;
27024 					n->name = (yyvsp[-2].str);
27025 					(yyval.vsetstmt) = n;
27026 				}
27027 #line 27028 "gram_minimal.c" /* yacc.c:1646  */
27028     break;
27029 
27030   case 198:
27031 #line 1531 "gram_minimal.y" /* yacc.c:1646  */
27032     {
27033 					VariableSetStmt *n = makeNode(VariableSetStmt);
27034 					n->kind = VAR_SET_DEFAULT;
27035 					n->name = (yyvsp[-2].str);
27036 					(yyval.vsetstmt) = n;
27037 				}
27038 #line 27039 "gram_minimal.c" /* yacc.c:1646  */
27039     break;
27040 
27041   case 199:
27042 #line 1540 "gram_minimal.y" /* yacc.c:1646  */
27043     {(yyval.vsetstmt) = (yyvsp[0].vsetstmt);}
27044 #line 27045 "gram_minimal.c" /* yacc.c:1646  */
27045     break;
27046 
27047   case 200:
27048 #line 1542 "gram_minimal.y" /* yacc.c:1646  */
27049     {
27050 					VariableSetStmt *n = makeNode(VariableSetStmt);
27051 					n->kind = VAR_SET_CURRENT;
27052 					n->name = (yyvsp[-2].str);
27053 					(yyval.vsetstmt) = n;
27054 				}
27055 #line 27056 "gram_minimal.c" /* yacc.c:1646  */
27056     break;
27057 
27058   case 201:
27059 #line 1550 "gram_minimal.y" /* yacc.c:1646  */
27060     {
27061 					VariableSetStmt *n = makeNode(VariableSetStmt);
27062 					n->kind = VAR_SET_VALUE;
27063 					n->name = "timezone";
27064 					if ((yyvsp[0].node) != NULL)
27065 						n->args = list_make1((yyvsp[0].node));
27066 					else
27067 						n->kind = VAR_SET_DEFAULT;
27068 					(yyval.vsetstmt) = n;
27069 				}
27070 #line 27071 "gram_minimal.c" /* yacc.c:1646  */
27071     break;
27072 
27073   case 202:
27074 #line 1561 "gram_minimal.y" /* yacc.c:1646  */
27075     {
27076 					ereport(ERROR,
27077 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
27078 							 errmsg("current database cannot be changed"),
27079 							 parser_errposition((yylsp[0]))));
27080 					(yyval.vsetstmt) = NULL; /*not reached*/
27081 				}
27082 #line 27083 "gram_minimal.c" /* yacc.c:1646  */
27083     break;
27084 
27085   case 203:
27086 #line 1569 "gram_minimal.y" /* yacc.c:1646  */
27087     {
27088 					VariableSetStmt *n = makeNode(VariableSetStmt);
27089 					n->kind = VAR_SET_VALUE;
27090 					n->name = "search_path";
27091 					n->args = list_make1(makeStringConst((yyvsp[0].str), (yylsp[0])));
27092 					(yyval.vsetstmt) = n;
27093 				}
27094 #line 27095 "gram_minimal.c" /* yacc.c:1646  */
27095     break;
27096 
27097   case 204:
27098 #line 1577 "gram_minimal.y" /* yacc.c:1646  */
27099     {
27100 					VariableSetStmt *n = makeNode(VariableSetStmt);
27101 					n->kind = VAR_SET_VALUE;
27102 					n->name = "client_encoding";
27103 					if ((yyvsp[0].str) != NULL)
27104 						n->args = list_make1(makeStringConst((yyvsp[0].str), (yylsp[0])));
27105 					else
27106 						n->kind = VAR_SET_DEFAULT;
27107 					(yyval.vsetstmt) = n;
27108 				}
27109 #line 27110 "gram_minimal.c" /* yacc.c:1646  */
27110     break;
27111 
27112   case 205:
27113 #line 1588 "gram_minimal.y" /* yacc.c:1646  */
27114     {
27115 					VariableSetStmt *n = makeNode(VariableSetStmt);
27116 					n->kind = VAR_SET_VALUE;
27117 					n->name = "role";
27118 					n->args = list_make1(makeStringConst((yyvsp[0].str), (yylsp[0])));
27119 					(yyval.vsetstmt) = n;
27120 				}
27121 #line 27122 "gram_minimal.c" /* yacc.c:1646  */
27122     break;
27123 
27124   case 206:
27125 #line 1596 "gram_minimal.y" /* yacc.c:1646  */
27126     {
27127 					VariableSetStmt *n = makeNode(VariableSetStmt);
27128 					n->kind = VAR_SET_VALUE;
27129 					n->name = "session_authorization";
27130 					n->args = list_make1(makeStringConst((yyvsp[0].str), (yylsp[0])));
27131 					(yyval.vsetstmt) = n;
27132 				}
27133 #line 27134 "gram_minimal.c" /* yacc.c:1646  */
27134     break;
27135 
27136   case 207:
27137 #line 1604 "gram_minimal.y" /* yacc.c:1646  */
27138     {
27139 					VariableSetStmt *n = makeNode(VariableSetStmt);
27140 					n->kind = VAR_SET_DEFAULT;
27141 					n->name = "session_authorization";
27142 					(yyval.vsetstmt) = n;
27143 				}
27144 #line 27145 "gram_minimal.c" /* yacc.c:1646  */
27145     break;
27146 
27147   case 208:
27148 #line 1611 "gram_minimal.y" /* yacc.c:1646  */
27149     {
27150 					VariableSetStmt *n = makeNode(VariableSetStmt);
27151 					n->kind = VAR_SET_VALUE;
27152 					n->name = "xmloption";
27153 					n->args = list_make1(makeStringConst((yyvsp[0].ival) == XMLOPTION_DOCUMENT ? "DOCUMENT" : "CONTENT", (yylsp[0])));
27154 					(yyval.vsetstmt) = n;
27155 				}
27156 #line 27157 "gram_minimal.c" /* yacc.c:1646  */
27157     break;
27158 
27159   case 209:
27160 #line 1620 "gram_minimal.y" /* yacc.c:1646  */
27161     {
27162 					VariableSetStmt *n = makeNode(VariableSetStmt);
27163 					n->kind = VAR_SET_MULTI;
27164 					n->name = "TRANSACTION SNAPSHOT";
27165 					n->args = list_make1(makeStringConst((yyvsp[0].str), (yylsp[0])));
27166 					(yyval.vsetstmt) = n;
27167 				}
27168 #line 27169 "gram_minimal.c" /* yacc.c:1646  */
27169     break;
27170 
27171   case 210:
27172 #line 1629 "gram_minimal.y" /* yacc.c:1646  */
27173     { (yyval.str) = (yyvsp[0].str); }
27174 #line 27175 "gram_minimal.c" /* yacc.c:1646  */
27175     break;
27176 
27177   case 211:
27178 #line 1631 "gram_minimal.y" /* yacc.c:1646  */
27179     { (yyval.str) = psprintf("%s.%s", (yyvsp[-2].str), (yyvsp[0].str)); }
27180 #line 27181 "gram_minimal.c" /* yacc.c:1646  */
27181     break;
27182 
27183   case 212:
27184 #line 1634 "gram_minimal.y" /* yacc.c:1646  */
27185     { (yyval.list) = list_make1((yyvsp[0].node)); }
27186 #line 27187 "gram_minimal.c" /* yacc.c:1646  */
27187     break;
27188 
27189   case 213:
27190 #line 1635 "gram_minimal.y" /* yacc.c:1646  */
27191     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
27192 #line 27193 "gram_minimal.c" /* yacc.c:1646  */
27193     break;
27194 
27195   case 214:
27196 #line 1639 "gram_minimal.y" /* yacc.c:1646  */
27197     { (yyval.node) = makeStringConst((yyvsp[0].str), (yylsp[0])); }
27198 #line 27199 "gram_minimal.c" /* yacc.c:1646  */
27199     break;
27200 
27201   case 215:
27202 #line 1641 "gram_minimal.y" /* yacc.c:1646  */
27203     { (yyval.node) = makeAConst((yyvsp[0].value), (yylsp[0])); }
27204 #line 27205 "gram_minimal.c" /* yacc.c:1646  */
27205     break;
27206 
27207   case 216:
27208 #line 1644 "gram_minimal.y" /* yacc.c:1646  */
27209     { (yyval.str) = "read uncommitted"; }
27210 #line 27211 "gram_minimal.c" /* yacc.c:1646  */
27211     break;
27212 
27213   case 217:
27214 #line 1645 "gram_minimal.y" /* yacc.c:1646  */
27215     { (yyval.str) = "read committed"; }
27216 #line 27217 "gram_minimal.c" /* yacc.c:1646  */
27217     break;
27218 
27219   case 218:
27220 #line 1646 "gram_minimal.y" /* yacc.c:1646  */
27221     { (yyval.str) = "repeatable read"; }
27222 #line 27223 "gram_minimal.c" /* yacc.c:1646  */
27223     break;
27224 
27225   case 219:
27226 #line 1647 "gram_minimal.y" /* yacc.c:1646  */
27227     { (yyval.str) = "serializable"; }
27228 #line 27229 "gram_minimal.c" /* yacc.c:1646  */
27229     break;
27230 
27231   case 220:
27232 #line 1651 "gram_minimal.y" /* yacc.c:1646  */
27233     { (yyval.str) = "true"; }
27234 #line 27235 "gram_minimal.c" /* yacc.c:1646  */
27235     break;
27236 
27237   case 221:
27238 #line 1652 "gram_minimal.y" /* yacc.c:1646  */
27239     { (yyval.str) = "false"; }
27240 #line 27241 "gram_minimal.c" /* yacc.c:1646  */
27241     break;
27242 
27243   case 222:
27244 #line 1653 "gram_minimal.y" /* yacc.c:1646  */
27245     { (yyval.str) = "on"; }
27246 #line 27247 "gram_minimal.c" /* yacc.c:1646  */
27247     break;
27248 
27249   case 223:
27250 #line 1659 "gram_minimal.y" /* yacc.c:1646  */
27251     { (yyval.str) = (yyvsp[0].str); }
27252 #line 27253 "gram_minimal.c" /* yacc.c:1646  */
27253     break;
27254 
27255   case 224:
27256 #line 1672 "gram_minimal.y" /* yacc.c:1646  */
27257     {
27258 					(yyval.node) = makeStringConst((yyvsp[0].str), (yylsp[0]));
27259 				}
27260 #line 27261 "gram_minimal.c" /* yacc.c:1646  */
27261     break;
27262 
27263   case 225:
27264 #line 1676 "gram_minimal.y" /* yacc.c:1646  */
27265     {
27266 					(yyval.node) = makeStringConst((yyvsp[0].str), (yylsp[0]));
27267 				}
27268 #line 27269 "gram_minimal.c" /* yacc.c:1646  */
27269     break;
27270 
27271   case 226:
27272 #line 1680 "gram_minimal.y" /* yacc.c:1646  */
27273     {
27274 					TypeName *t = (yyvsp[-2].typnam);
27275 					if ((yyvsp[0].list) != NIL)
27276 					{
27277 						A_Const *n = (A_Const *) linitial((yyvsp[0].list));
27278 						if ((n->val.val.ival & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0)
27279 							ereport(ERROR,
27280 									(errcode(ERRCODE_SYNTAX_ERROR),
27281 									 errmsg("time zone interval must be HOUR or HOUR TO MINUTE"),
27282 									 parser_errposition((yylsp[0]))));
27283 					}
27284 					t->typmods = (yyvsp[0].list);
27285 					(yyval.node) = makeStringConstCast((yyvsp[-1].str), (yylsp[-1]), t);
27286 				}
27287 #line 27288 "gram_minimal.c" /* yacc.c:1646  */
27288     break;
27289 
27290   case 227:
27291 #line 1695 "gram_minimal.y" /* yacc.c:1646  */
27292     {
27293 					TypeName *t = (yyvsp[-4].typnam);
27294 					t->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
27295 											makeIntConst((yyvsp[-2].ival), (yylsp[-2])));
27296 					(yyval.node) = makeStringConstCast((yyvsp[0].str), (yylsp[0]), t);
27297 				}
27298 #line 27299 "gram_minimal.c" /* yacc.c:1646  */
27299     break;
27300 
27301   case 228:
27302 #line 1701 "gram_minimal.y" /* yacc.c:1646  */
27303     { (yyval.node) = makeAConst((yyvsp[0].value), (yylsp[0])); }
27304 #line 27305 "gram_minimal.c" /* yacc.c:1646  */
27305     break;
27306 
27307   case 229:
27308 #line 1702 "gram_minimal.y" /* yacc.c:1646  */
27309     { (yyval.node) = NULL; }
27310 #line 27311 "gram_minimal.c" /* yacc.c:1646  */
27311     break;
27312 
27313   case 230:
27314 #line 1703 "gram_minimal.y" /* yacc.c:1646  */
27315     { (yyval.node) = NULL; }
27316 #line 27317 "gram_minimal.c" /* yacc.c:1646  */
27317     break;
27318 
27319   case 231:
27320 #line 1707 "gram_minimal.y" /* yacc.c:1646  */
27321     { (yyval.str) = (yyvsp[0].str); }
27322 #line 27323 "gram_minimal.c" /* yacc.c:1646  */
27323     break;
27324 
27325   case 232:
27326 #line 1708 "gram_minimal.y" /* yacc.c:1646  */
27327     { (yyval.str) = NULL; }
27328 #line 27329 "gram_minimal.c" /* yacc.c:1646  */
27329     break;
27330 
27331   case 233:
27332 #line 1709 "gram_minimal.y" /* yacc.c:1646  */
27333     { (yyval.str) = NULL; }
27334 #line 27335 "gram_minimal.c" /* yacc.c:1646  */
27335     break;
27336 
27337   case 234:
27338 #line 1713 "gram_minimal.y" /* yacc.c:1646  */
27339     { (yyval.str) = (yyvsp[0].str); }
27340 #line 27341 "gram_minimal.c" /* yacc.c:1646  */
27341     break;
27342 
27343   case 235:
27344 #line 1714 "gram_minimal.y" /* yacc.c:1646  */
27345     { (yyval.str) = (yyvsp[0].str); }
27346 #line 27347 "gram_minimal.c" /* yacc.c:1646  */
27347     break;
27348 
27349   case 236:
27350 #line 1718 "gram_minimal.y" /* yacc.c:1646  */
27351     { (yyval.node) = (Node *) (yyvsp[0].vsetstmt); }
27352 #line 27353 "gram_minimal.c" /* yacc.c:1646  */
27353     break;
27354 
27355   case 237:
27356 #line 1720 "gram_minimal.y" /* yacc.c:1646  */
27357     {
27358 					VariableSetStmt *n = (yyvsp[0].vsetstmt);
27359 					n->type = T_PgpoolVariableSetStmt; /* Hack to keep the changes minumum */
27360 					(yyval.node) = (Node *) n;
27361 				}
27362 #line 27363 "gram_minimal.c" /* yacc.c:1646  */
27363     break;
27364 
27365   case 238:
27366 #line 1728 "gram_minimal.y" /* yacc.c:1646  */
27367     { (yyval.vsetstmt) = (yyvsp[0].vsetstmt); }
27368 #line 27369 "gram_minimal.c" /* yacc.c:1646  */
27369     break;
27370 
27371   case 239:
27372 #line 1730 "gram_minimal.y" /* yacc.c:1646  */
27373     {
27374 					VariableSetStmt *n = makeNode(VariableSetStmt);
27375 					n->kind = VAR_RESET;
27376 					n->name = "timezone";
27377 					(yyval.vsetstmt) = n;
27378 				}
27379 #line 27380 "gram_minimal.c" /* yacc.c:1646  */
27380     break;
27381 
27382   case 240:
27383 #line 1737 "gram_minimal.y" /* yacc.c:1646  */
27384     {
27385 					VariableSetStmt *n = makeNode(VariableSetStmt);
27386 					n->kind = VAR_RESET;
27387 					n->name = "transaction_isolation";
27388 					(yyval.vsetstmt) = n;
27389 				}
27390 #line 27391 "gram_minimal.c" /* yacc.c:1646  */
27391     break;
27392 
27393   case 241:
27394 #line 1744 "gram_minimal.y" /* yacc.c:1646  */
27395     {
27396 					VariableSetStmt *n = makeNode(VariableSetStmt);
27397 					n->kind = VAR_RESET;
27398 					n->name = "session_authorization";
27399 					(yyval.vsetstmt) = n;
27400 				}
27401 #line 27402 "gram_minimal.c" /* yacc.c:1646  */
27402     break;
27403 
27404   case 242:
27405 #line 1754 "gram_minimal.y" /* yacc.c:1646  */
27406     {
27407 					VariableSetStmt *n = makeNode(VariableSetStmt);
27408 					n->kind = VAR_RESET;
27409 					n->name = (yyvsp[0].str);
27410 					(yyval.vsetstmt) = n;
27411 				}
27412 #line 27413 "gram_minimal.c" /* yacc.c:1646  */
27413     break;
27414 
27415   case 243:
27416 #line 1761 "gram_minimal.y" /* yacc.c:1646  */
27417     {
27418 					VariableSetStmt *n = makeNode(VariableSetStmt);
27419 					n->kind = VAR_RESET_ALL;
27420 					(yyval.vsetstmt) = n;
27421 				}
27422 #line 27423 "gram_minimal.c" /* yacc.c:1646  */
27423     break;
27424 
27425   case 244:
27426 #line 1770 "gram_minimal.y" /* yacc.c:1646  */
27427     { (yyval.vsetstmt) = (yyvsp[0].vsetstmt); }
27428 #line 27429 "gram_minimal.c" /* yacc.c:1646  */
27429     break;
27430 
27431   case 245:
27432 #line 1771 "gram_minimal.y" /* yacc.c:1646  */
27433     { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[0].node); }
27434 #line 27435 "gram_minimal.c" /* yacc.c:1646  */
27435     break;
27436 
27437   case 246:
27438 #line 1776 "gram_minimal.y" /* yacc.c:1646  */
27439     { (yyval.vsetstmt) = (yyvsp[0].vsetstmt); }
27440 #line 27441 "gram_minimal.c" /* yacc.c:1646  */
27441     break;
27442 
27443   case 247:
27444 #line 1777 "gram_minimal.y" /* yacc.c:1646  */
27445     { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[0].node); }
27446 #line 27447 "gram_minimal.c" /* yacc.c:1646  */
27447     break;
27448 
27449   case 248:
27450 #line 1784 "gram_minimal.y" /* yacc.c:1646  */
27451     {
27452 				VariableShowStmt *n = (VariableShowStmt *)newNode(sizeof(VariableShowStmt),T_PgpoolVariableShowStmt);
27453 				n->name = (yyvsp[0].str);
27454 				(yyval.node) = (Node *) n;
27455 			}
27456 #line 27457 "gram_minimal.c" /* yacc.c:1646  */
27457     break;
27458 
27459   case 249:
27460 #line 1790 "gram_minimal.y" /* yacc.c:1646  */
27461     {
27462 				VariableShowStmt *n = (VariableShowStmt *)newNode(sizeof(VariableShowStmt),T_PgpoolVariableShowStmt);
27463 				n->name = "all";
27464 				(yyval.node) = (Node *) n;
27465 			}
27466 #line 27467 "gram_minimal.c" /* yacc.c:1646  */
27467     break;
27468 
27469   case 250:
27470 #line 1796 "gram_minimal.y" /* yacc.c:1646  */
27471     {
27472 					VariableShowStmt *n = makeNode(VariableShowStmt);
27473 					n->name = (yyvsp[0].str);
27474 					(yyval.node) = (Node *) n;
27475 				}
27476 #line 27477 "gram_minimal.c" /* yacc.c:1646  */
27477     break;
27478 
27479   case 251:
27480 #line 1802 "gram_minimal.y" /* yacc.c:1646  */
27481     {
27482 					VariableShowStmt *n = makeNode(VariableShowStmt);
27483 					n->name = "timezone";
27484 					(yyval.node) = (Node *) n;
27485 				}
27486 #line 27487 "gram_minimal.c" /* yacc.c:1646  */
27487     break;
27488 
27489   case 252:
27490 #line 1808 "gram_minimal.y" /* yacc.c:1646  */
27491     {
27492 					VariableShowStmt *n = makeNode(VariableShowStmt);
27493 					n->name = "transaction_isolation";
27494 					(yyval.node) = (Node *) n;
27495 				}
27496 #line 27497 "gram_minimal.c" /* yacc.c:1646  */
27497     break;
27498 
27499   case 253:
27500 #line 1814 "gram_minimal.y" /* yacc.c:1646  */
27501     {
27502 					VariableShowStmt *n = makeNode(VariableShowStmt);
27503 					n->name = "session_authorization";
27504 					(yyval.node) = (Node *) n;
27505 				}
27506 #line 27507 "gram_minimal.c" /* yacc.c:1646  */
27507     break;
27508 
27509   case 254:
27510 #line 1820 "gram_minimal.y" /* yacc.c:1646  */
27511     {
27512 					VariableShowStmt *n = makeNode(VariableShowStmt);
27513 					n->name = "all";
27514 					(yyval.node) = (Node *) n;
27515 				}
27516 #line 27517 "gram_minimal.c" /* yacc.c:1646  */
27517     break;
27518 
27519   case 255:
27520 #line 1830 "gram_minimal.y" /* yacc.c:1646  */
27521     {
27522 					ConstraintsSetStmt *n = makeNode(ConstraintsSetStmt);
27523 					n->constraints = (yyvsp[-1].list);
27524 					n->deferred = (yyvsp[0].boolean);
27525 					(yyval.node) = (Node *) n;
27526 				}
27527 #line 27528 "gram_minimal.c" /* yacc.c:1646  */
27528     break;
27529 
27530   case 256:
27531 #line 1839 "gram_minimal.y" /* yacc.c:1646  */
27532     { (yyval.list) = NIL; }
27533 #line 27534 "gram_minimal.c" /* yacc.c:1646  */
27534     break;
27535 
27536   case 257:
27537 #line 1840 "gram_minimal.y" /* yacc.c:1646  */
27538     { (yyval.list) = (yyvsp[0].list); }
27539 #line 27540 "gram_minimal.c" /* yacc.c:1646  */
27540     break;
27541 
27542   case 258:
27543 #line 1844 "gram_minimal.y" /* yacc.c:1646  */
27544     { (yyval.boolean) = true; }
27545 #line 27546 "gram_minimal.c" /* yacc.c:1646  */
27546     break;
27547 
27548   case 259:
27549 #line 1845 "gram_minimal.y" /* yacc.c:1646  */
27550     { (yyval.boolean) = false; }
27551 #line 27552 "gram_minimal.c" /* yacc.c:1646  */
27552     break;
27553 
27554   case 260:
27555 #line 1854 "gram_minimal.y" /* yacc.c:1646  */
27556     {
27557 					CheckPointStmt *n = makeNode(CheckPointStmt);
27558 					(yyval.node) = (Node *)n;
27559 				}
27560 #line 27561 "gram_minimal.c" /* yacc.c:1646  */
27561     break;
27562 
27563   case 261:
27564 #line 1869 "gram_minimal.y" /* yacc.c:1646  */
27565     {
27566 					DiscardStmt *n = makeNode(DiscardStmt);
27567 					n->target = DISCARD_ALL;
27568 					(yyval.node) = (Node *) n;
27569 				}
27570 #line 27571 "gram_minimal.c" /* yacc.c:1646  */
27571     break;
27572 
27573   case 262:
27574 #line 1875 "gram_minimal.y" /* yacc.c:1646  */
27575     {
27576 					DiscardStmt *n = makeNode(DiscardStmt);
27577 					n->target = DISCARD_TEMP;
27578 					(yyval.node) = (Node *) n;
27579 				}
27580 #line 27581 "gram_minimal.c" /* yacc.c:1646  */
27581     break;
27582 
27583   case 263:
27584 #line 1881 "gram_minimal.y" /* yacc.c:1646  */
27585     {
27586 					DiscardStmt *n = makeNode(DiscardStmt);
27587 					n->target = DISCARD_TEMP;
27588 					(yyval.node) = (Node *) n;
27589 				}
27590 #line 27591 "gram_minimal.c" /* yacc.c:1646  */
27591     break;
27592 
27593   case 264:
27594 #line 1887 "gram_minimal.y" /* yacc.c:1646  */
27595     {
27596 					DiscardStmt *n = makeNode(DiscardStmt);
27597 					n->target = DISCARD_PLANS;
27598 					(yyval.node) = (Node *) n;
27599 				}
27600 #line 27601 "gram_minimal.c" /* yacc.c:1646  */
27601     break;
27602 
27603   case 265:
27604 #line 1893 "gram_minimal.y" /* yacc.c:1646  */
27605     {
27606 					DiscardStmt *n = makeNode(DiscardStmt);
27607 					n->target = DISCARD_SEQUENCES;
27608 					(yyval.node) = (Node *) n;
27609 				}
27610 #line 27611 "gram_minimal.c" /* yacc.c:1646  */
27611     break;
27612 
27613   case 266:
27614 #line 1912 "gram_minimal.y" /* yacc.c:1646  */
27615     {
27616 					AlterTableStmt *n = makeNode(AlterTableStmt);
27617 					n->relation = (yyvsp[-1].range);
27618 					n->cmds = (yyvsp[0].list);
27619 					n->relkind = OBJECT_TABLE;
27620 					n->missing_ok = false;
27621 					(yyval.node) = (Node *)n;
27622 				}
27623 #line 27624 "gram_minimal.c" /* yacc.c:1646  */
27624     break;
27625 
27626   case 267:
27627 #line 1921 "gram_minimal.y" /* yacc.c:1646  */
27628     {
27629 					AlterTableStmt *n = makeNode(AlterTableStmt);
27630 					n->relation = (yyvsp[-1].range);
27631 					n->cmds = (yyvsp[0].list);
27632 					n->relkind = OBJECT_TABLE;
27633 					n->missing_ok = true;
27634 					(yyval.node) = (Node *)n;
27635 				}
27636 #line 27637 "gram_minimal.c" /* yacc.c:1646  */
27637     break;
27638 
27639   case 268:
27640 #line 1930 "gram_minimal.y" /* yacc.c:1646  */
27641     {
27642 					AlterTableStmt *n = makeNode(AlterTableStmt);
27643 					n->relation = (yyvsp[-1].range);
27644 					n->cmds = list_make1((yyvsp[0].node));
27645 					n->relkind = OBJECT_TABLE;
27646 					n->missing_ok = false;
27647 					(yyval.node) = (Node *)n;
27648 				}
27649 #line 27650 "gram_minimal.c" /* yacc.c:1646  */
27650     break;
27651 
27652   case 269:
27653 #line 1939 "gram_minimal.y" /* yacc.c:1646  */
27654     {
27655 					AlterTableStmt *n = makeNode(AlterTableStmt);
27656 					n->relation = (yyvsp[-1].range);
27657 					n->cmds = list_make1((yyvsp[0].node));
27658 					n->relkind = OBJECT_TABLE;
27659 					n->missing_ok = true;
27660 					(yyval.node) = (Node *)n;
27661 				}
27662 #line 27663 "gram_minimal.c" /* yacc.c:1646  */
27663     break;
27664 
27665   case 270:
27666 #line 1948 "gram_minimal.y" /* yacc.c:1646  */
27667     {
27668 					AlterTableMoveAllStmt *n =
27669 						makeNode(AlterTableMoveAllStmt);
27670 					n->orig_tablespacename = (yyvsp[-4].str);
27671 					n->objtype = OBJECT_TABLE;
27672 					n->roles = NIL;
27673 					n->new_tablespacename = (yyvsp[-1].str);
27674 					n->nowait = (yyvsp[0].boolean);
27675 					(yyval.node) = (Node *)n;
27676 				}
27677 #line 27678 "gram_minimal.c" /* yacc.c:1646  */
27678     break;
27679 
27680   case 271:
27681 #line 1959 "gram_minimal.y" /* yacc.c:1646  */
27682     {
27683 					AlterTableMoveAllStmt *n =
27684 						makeNode(AlterTableMoveAllStmt);
27685 					n->orig_tablespacename = (yyvsp[-7].str);
27686 					n->objtype = OBJECT_TABLE;
27687 					n->roles = (yyvsp[-4].list);
27688 					n->new_tablespacename = (yyvsp[-1].str);
27689 					n->nowait = (yyvsp[0].boolean);
27690 					(yyval.node) = (Node *)n;
27691 				}
27692 #line 27693 "gram_minimal.c" /* yacc.c:1646  */
27693     break;
27694 
27695   case 272:
27696 #line 1970 "gram_minimal.y" /* yacc.c:1646  */
27697     {
27698 					AlterTableStmt *n = makeNode(AlterTableStmt);
27699 					n->relation = (yyvsp[-1].range);
27700 					n->cmds = (yyvsp[0].list);
27701 					n->relkind = OBJECT_INDEX;
27702 					n->missing_ok = false;
27703 					(yyval.node) = (Node *)n;
27704 				}
27705 #line 27706 "gram_minimal.c" /* yacc.c:1646  */
27706     break;
27707 
27708   case 273:
27709 #line 1979 "gram_minimal.y" /* yacc.c:1646  */
27710     {
27711 					AlterTableStmt *n = makeNode(AlterTableStmt);
27712 					n->relation = (yyvsp[-1].range);
27713 					n->cmds = (yyvsp[0].list);
27714 					n->relkind = OBJECT_INDEX;
27715 					n->missing_ok = true;
27716 					(yyval.node) = (Node *)n;
27717 				}
27718 #line 27719 "gram_minimal.c" /* yacc.c:1646  */
27719     break;
27720 
27721   case 274:
27722 #line 1988 "gram_minimal.y" /* yacc.c:1646  */
27723     {
27724 					AlterTableStmt *n = makeNode(AlterTableStmt);
27725 					n->relation = (yyvsp[-1].range);
27726 					n->cmds = list_make1((yyvsp[0].node));
27727 					n->relkind = OBJECT_INDEX;
27728 					n->missing_ok = false;
27729 					(yyval.node) = (Node *)n;
27730 				}
27731 #line 27732 "gram_minimal.c" /* yacc.c:1646  */
27732     break;
27733 
27734   case 275:
27735 #line 1997 "gram_minimal.y" /* yacc.c:1646  */
27736     {
27737 					AlterTableMoveAllStmt *n =
27738 						makeNode(AlterTableMoveAllStmt);
27739 					n->orig_tablespacename = (yyvsp[-4].str);
27740 					n->objtype = OBJECT_INDEX;
27741 					n->roles = NIL;
27742 					n->new_tablespacename = (yyvsp[-1].str);
27743 					n->nowait = (yyvsp[0].boolean);
27744 					(yyval.node) = (Node *)n;
27745 				}
27746 #line 27747 "gram_minimal.c" /* yacc.c:1646  */
27747     break;
27748 
27749   case 276:
27750 #line 2008 "gram_minimal.y" /* yacc.c:1646  */
27751     {
27752 					AlterTableMoveAllStmt *n =
27753 						makeNode(AlterTableMoveAllStmt);
27754 					n->orig_tablespacename = (yyvsp[-7].str);
27755 					n->objtype = OBJECT_INDEX;
27756 					n->roles = (yyvsp[-4].list);
27757 					n->new_tablespacename = (yyvsp[-1].str);
27758 					n->nowait = (yyvsp[0].boolean);
27759 					(yyval.node) = (Node *)n;
27760 				}
27761 #line 27762 "gram_minimal.c" /* yacc.c:1646  */
27762     break;
27763 
27764   case 277:
27765 #line 2019 "gram_minimal.y" /* yacc.c:1646  */
27766     {
27767 					AlterTableStmt *n = makeNode(AlterTableStmt);
27768 					n->relation = (yyvsp[-1].range);
27769 					n->cmds = (yyvsp[0].list);
27770 					n->relkind = OBJECT_SEQUENCE;
27771 					n->missing_ok = false;
27772 					(yyval.node) = (Node *)n;
27773 				}
27774 #line 27775 "gram_minimal.c" /* yacc.c:1646  */
27775     break;
27776 
27777   case 278:
27778 #line 2028 "gram_minimal.y" /* yacc.c:1646  */
27779     {
27780 					AlterTableStmt *n = makeNode(AlterTableStmt);
27781 					n->relation = (yyvsp[-1].range);
27782 					n->cmds = (yyvsp[0].list);
27783 					n->relkind = OBJECT_SEQUENCE;
27784 					n->missing_ok = true;
27785 					(yyval.node) = (Node *)n;
27786 				}
27787 #line 27788 "gram_minimal.c" /* yacc.c:1646  */
27788     break;
27789 
27790   case 279:
27791 #line 2037 "gram_minimal.y" /* yacc.c:1646  */
27792     {
27793 					AlterTableStmt *n = makeNode(AlterTableStmt);
27794 					n->relation = (yyvsp[-1].range);
27795 					n->cmds = (yyvsp[0].list);
27796 					n->relkind = OBJECT_VIEW;
27797 					n->missing_ok = false;
27798 					(yyval.node) = (Node *)n;
27799 				}
27800 #line 27801 "gram_minimal.c" /* yacc.c:1646  */
27801     break;
27802 
27803   case 280:
27804 #line 2046 "gram_minimal.y" /* yacc.c:1646  */
27805     {
27806 					AlterTableStmt *n = makeNode(AlterTableStmt);
27807 					n->relation = (yyvsp[-1].range);
27808 					n->cmds = (yyvsp[0].list);
27809 					n->relkind = OBJECT_VIEW;
27810 					n->missing_ok = true;
27811 					(yyval.node) = (Node *)n;
27812 				}
27813 #line 27814 "gram_minimal.c" /* yacc.c:1646  */
27814     break;
27815 
27816   case 281:
27817 #line 2055 "gram_minimal.y" /* yacc.c:1646  */
27818     {
27819 					AlterTableStmt *n = makeNode(AlterTableStmt);
27820 					n->relation = (yyvsp[-1].range);
27821 					n->cmds = (yyvsp[0].list);
27822 					n->relkind = OBJECT_MATVIEW;
27823 					n->missing_ok = false;
27824 					(yyval.node) = (Node *)n;
27825 				}
27826 #line 27827 "gram_minimal.c" /* yacc.c:1646  */
27827     break;
27828 
27829   case 282:
27830 #line 2064 "gram_minimal.y" /* yacc.c:1646  */
27831     {
27832 					AlterTableStmt *n = makeNode(AlterTableStmt);
27833 					n->relation = (yyvsp[-1].range);
27834 					n->cmds = (yyvsp[0].list);
27835 					n->relkind = OBJECT_MATVIEW;
27836 					n->missing_ok = true;
27837 					(yyval.node) = (Node *)n;
27838 				}
27839 #line 27840 "gram_minimal.c" /* yacc.c:1646  */
27840     break;
27841 
27842   case 283:
27843 #line 2073 "gram_minimal.y" /* yacc.c:1646  */
27844     {
27845 					AlterTableMoveAllStmt *n =
27846 						makeNode(AlterTableMoveAllStmt);
27847 					n->orig_tablespacename = (yyvsp[-4].str);
27848 					n->objtype = OBJECT_MATVIEW;
27849 					n->roles = NIL;
27850 					n->new_tablespacename = (yyvsp[-1].str);
27851 					n->nowait = (yyvsp[0].boolean);
27852 					(yyval.node) = (Node *)n;
27853 				}
27854 #line 27855 "gram_minimal.c" /* yacc.c:1646  */
27855     break;
27856 
27857   case 284:
27858 #line 2084 "gram_minimal.y" /* yacc.c:1646  */
27859     {
27860 					AlterTableMoveAllStmt *n =
27861 						makeNode(AlterTableMoveAllStmt);
27862 					n->orig_tablespacename = (yyvsp[-7].str);
27863 					n->objtype = OBJECT_MATVIEW;
27864 					n->roles = (yyvsp[-4].list);
27865 					n->new_tablespacename = (yyvsp[-1].str);
27866 					n->nowait = (yyvsp[0].boolean);
27867 					(yyval.node) = (Node *)n;
27868 				}
27869 #line 27870 "gram_minimal.c" /* yacc.c:1646  */
27870     break;
27871 
27872   case 285:
27873 #line 2097 "gram_minimal.y" /* yacc.c:1646  */
27874     { (yyval.list) = list_make1((yyvsp[0].node)); }
27875 #line 27876 "gram_minimal.c" /* yacc.c:1646  */
27876     break;
27877 
27878   case 286:
27879 #line 2098 "gram_minimal.y" /* yacc.c:1646  */
27880     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
27881 #line 27882 "gram_minimal.c" /* yacc.c:1646  */
27882     break;
27883 
27884   case 287:
27885 #line 2104 "gram_minimal.y" /* yacc.c:1646  */
27886     {
27887 					AlterTableCmd *n = makeNode(AlterTableCmd);
27888 					PartitionCmd *cmd = makeNode(PartitionCmd);
27889 
27890 					n->subtype = AT_AttachPartition;
27891 					cmd->name = (yyvsp[-1].range);
27892 					cmd->bound = (yyvsp[0].partboundspec);
27893 					n->def = (Node *) cmd;
27894 
27895 					(yyval.node) = (Node *) n;
27896 				}
27897 #line 27898 "gram_minimal.c" /* yacc.c:1646  */
27898     break;
27899 
27900   case 288:
27901 #line 2117 "gram_minimal.y" /* yacc.c:1646  */
27902     {
27903 					AlterTableCmd *n = makeNode(AlterTableCmd);
27904 					PartitionCmd *cmd = makeNode(PartitionCmd);
27905 
27906 					n->subtype = AT_DetachPartition;
27907 					cmd->name = (yyvsp[0].range);
27908 					cmd->bound = NULL;
27909 					n->def = (Node *) cmd;
27910 
27911 					(yyval.node) = (Node *) n;
27912 				}
27913 #line 27914 "gram_minimal.c" /* yacc.c:1646  */
27914     break;
27915 
27916   case 289:
27917 #line 2133 "gram_minimal.y" /* yacc.c:1646  */
27918     {
27919 					AlterTableCmd *n = makeNode(AlterTableCmd);
27920 					PartitionCmd *cmd = makeNode(PartitionCmd);
27921 
27922 					n->subtype = AT_AttachPartition;
27923 					cmd->name = (yyvsp[0].range);
27924 					cmd->bound = NULL;
27925 					n->def = (Node *) cmd;
27926 
27927 					(yyval.node) = (Node *) n;
27928 				}
27929 #line 27930 "gram_minimal.c" /* yacc.c:1646  */
27930     break;
27931 
27932   case 290:
27933 #line 2149 "gram_minimal.y" /* yacc.c:1646  */
27934     {
27935 					AlterTableCmd *n = makeNode(AlterTableCmd);
27936 					n->subtype = AT_AddColumn;
27937 					n->def = (yyvsp[0].node);
27938 					n->missing_ok = false;
27939 					(yyval.node) = (Node *)n;
27940 				}
27941 #line 27942 "gram_minimal.c" /* yacc.c:1646  */
27942     break;
27943 
27944   case 291:
27945 #line 2158 "gram_minimal.y" /* yacc.c:1646  */
27946     {
27947 					AlterTableCmd *n = makeNode(AlterTableCmd);
27948 					n->subtype = AT_AddColumn;
27949 					n->def = (yyvsp[0].node);
27950 					n->missing_ok = true;
27951 					(yyval.node) = (Node *)n;
27952 				}
27953 #line 27954 "gram_minimal.c" /* yacc.c:1646  */
27954     break;
27955 
27956   case 292:
27957 #line 2167 "gram_minimal.y" /* yacc.c:1646  */
27958     {
27959 					AlterTableCmd *n = makeNode(AlterTableCmd);
27960 					n->subtype = AT_AddColumn;
27961 					n->def = (yyvsp[0].node);
27962 					n->missing_ok = false;
27963 					(yyval.node) = (Node *)n;
27964 				}
27965 #line 27966 "gram_minimal.c" /* yacc.c:1646  */
27966     break;
27967 
27968   case 293:
27969 #line 2176 "gram_minimal.y" /* yacc.c:1646  */
27970     {
27971 					AlterTableCmd *n = makeNode(AlterTableCmd);
27972 					n->subtype = AT_AddColumn;
27973 					n->def = (yyvsp[0].node);
27974 					n->missing_ok = true;
27975 					(yyval.node) = (Node *)n;
27976 				}
27977 #line 27978 "gram_minimal.c" /* yacc.c:1646  */
27978     break;
27979 
27980   case 294:
27981 #line 2185 "gram_minimal.y" /* yacc.c:1646  */
27982     {
27983 					AlterTableCmd *n = makeNode(AlterTableCmd);
27984 					n->subtype = AT_ColumnDefault;
27985 					n->name = (yyvsp[-1].str);
27986 					n->def = (yyvsp[0].node);
27987 					(yyval.node) = (Node *)n;
27988 				}
27989 #line 27990 "gram_minimal.c" /* yacc.c:1646  */
27990     break;
27991 
27992   case 295:
27993 #line 2194 "gram_minimal.y" /* yacc.c:1646  */
27994     {
27995 					AlterTableCmd *n = makeNode(AlterTableCmd);
27996 					n->subtype = AT_DropNotNull;
27997 					n->name = (yyvsp[-3].str);
27998 					(yyval.node) = (Node *)n;
27999 				}
28000 #line 28001 "gram_minimal.c" /* yacc.c:1646  */
28001     break;
28002 
28003   case 296:
28004 #line 2202 "gram_minimal.y" /* yacc.c:1646  */
28005     {
28006 					AlterTableCmd *n = makeNode(AlterTableCmd);
28007 					n->subtype = AT_SetNotNull;
28008 					n->name = (yyvsp[-3].str);
28009 					(yyval.node) = (Node *)n;
28010 				}
28011 #line 28012 "gram_minimal.c" /* yacc.c:1646  */
28012     break;
28013 
28014   case 297:
28015 #line 2210 "gram_minimal.y" /* yacc.c:1646  */
28016     {
28017 					AlterTableCmd *n = makeNode(AlterTableCmd);
28018 					n->subtype = AT_DropExpression;
28019 					n->name = (yyvsp[-2].str);
28020 					(yyval.node) = (Node *)n;
28021 				}
28022 #line 28023 "gram_minimal.c" /* yacc.c:1646  */
28023     break;
28024 
28025   case 298:
28026 #line 2218 "gram_minimal.y" /* yacc.c:1646  */
28027     {
28028 					AlterTableCmd *n = makeNode(AlterTableCmd);
28029 					n->subtype = AT_DropExpression;
28030 					n->name = (yyvsp[-4].str);
28031 					n->missing_ok = true;
28032 					(yyval.node) = (Node *)n;
28033 				}
28034 #line 28035 "gram_minimal.c" /* yacc.c:1646  */
28035     break;
28036 
28037   case 299:
28038 #line 2227 "gram_minimal.y" /* yacc.c:1646  */
28039     {
28040 					AlterTableCmd *n = makeNode(AlterTableCmd);
28041 					n->subtype = AT_SetStatistics;
28042 					n->name = (yyvsp[-3].str);
28043 					n->def = (Node *) makeInteger((yyvsp[0].ival));
28044 					(yyval.node) = (Node *)n;
28045 				}
28046 #line 28047 "gram_minimal.c" /* yacc.c:1646  */
28047     break;
28048 
28049   case 300:
28050 #line 2236 "gram_minimal.y" /* yacc.c:1646  */
28051     {
28052 					AlterTableCmd *n = makeNode(AlterTableCmd);
28053 
28054 					if ((yyvsp[-3].ival) <= 0 || (yyvsp[-3].ival) > PG_INT16_MAX)
28055 						ereport(ERROR,
28056 								(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
28057 								 errmsg("column number must be in range from 1 to %d", PG_INT16_MAX),
28058 								 parser_errposition((yylsp[-3]))));
28059 
28060 					n->subtype = AT_SetStatistics;
28061 					n->num = (int16) (yyvsp[-3].ival);
28062 					n->def = (Node *) makeInteger((yyvsp[0].ival));
28063 					(yyval.node) = (Node *)n;
28064 				}
28065 #line 28066 "gram_minimal.c" /* yacc.c:1646  */
28066     break;
28067 
28068   case 301:
28069 #line 2252 "gram_minimal.y" /* yacc.c:1646  */
28070     {
28071 					AlterTableCmd *n = makeNode(AlterTableCmd);
28072 					n->subtype = AT_SetOptions;
28073 					n->name = (yyvsp[-2].str);
28074 					n->def = (Node *) (yyvsp[0].list);
28075 					(yyval.node) = (Node *)n;
28076 				}
28077 #line 28078 "gram_minimal.c" /* yacc.c:1646  */
28078     break;
28079 
28080   case 302:
28081 #line 2261 "gram_minimal.y" /* yacc.c:1646  */
28082     {
28083 					AlterTableCmd *n = makeNode(AlterTableCmd);
28084 					n->subtype = AT_ResetOptions;
28085 					n->name = (yyvsp[-2].str);
28086 					n->def = (Node *) (yyvsp[0].list);
28087 					(yyval.node) = (Node *)n;
28088 				}
28089 #line 28090 "gram_minimal.c" /* yacc.c:1646  */
28090     break;
28091 
28092   case 303:
28093 #line 2270 "gram_minimal.y" /* yacc.c:1646  */
28094     {
28095 					AlterTableCmd *n = makeNode(AlterTableCmd);
28096 					n->subtype = AT_SetStorage;
28097 					n->name = (yyvsp[-3].str);
28098 					n->def = (Node *) makeString((yyvsp[0].str));
28099 					(yyval.node) = (Node *)n;
28100 				}
28101 #line 28102 "gram_minimal.c" /* yacc.c:1646  */
28102     break;
28103 
28104   case 304:
28105 #line 2279 "gram_minimal.y" /* yacc.c:1646  */
28106     {
28107 					AlterTableCmd *n = makeNode(AlterTableCmd);
28108 					Constraint *c = makeNode(Constraint);
28109 
28110 					c->contype = CONSTR_IDENTITY;
28111 					c->generated_when = (yyvsp[-3].ival);
28112 					c->options = (yyvsp[0].list);
28113 					c->location = (yylsp[-4]);
28114 
28115 					n->subtype = AT_AddIdentity;
28116 					n->name = (yyvsp[-6].str);
28117 					n->def = (Node *) c;
28118 
28119 					(yyval.node) = (Node *)n;
28120 				}
28121 #line 28122 "gram_minimal.c" /* yacc.c:1646  */
28122     break;
28123 
28124   case 305:
28125 #line 2296 "gram_minimal.y" /* yacc.c:1646  */
28126     {
28127 					AlterTableCmd *n = makeNode(AlterTableCmd);
28128 					n->subtype = AT_SetIdentity;
28129 					n->name = (yyvsp[-1].str);
28130 					n->def = (Node *) (yyvsp[0].list);
28131 					(yyval.node) = (Node *)n;
28132 				}
28133 #line 28134 "gram_minimal.c" /* yacc.c:1646  */
28134     break;
28135 
28136   case 306:
28137 #line 2305 "gram_minimal.y" /* yacc.c:1646  */
28138     {
28139 					AlterTableCmd *n = makeNode(AlterTableCmd);
28140 					n->subtype = AT_DropIdentity;
28141 					n->name = (yyvsp[-2].str);
28142 					n->missing_ok = false;
28143 					(yyval.node) = (Node *)n;
28144 				}
28145 #line 28146 "gram_minimal.c" /* yacc.c:1646  */
28146     break;
28147 
28148   case 307:
28149 #line 2314 "gram_minimal.y" /* yacc.c:1646  */
28150     {
28151 					AlterTableCmd *n = makeNode(AlterTableCmd);
28152 					n->subtype = AT_DropIdentity;
28153 					n->name = (yyvsp[-4].str);
28154 					n->missing_ok = true;
28155 					(yyval.node) = (Node *)n;
28156 				}
28157 #line 28158 "gram_minimal.c" /* yacc.c:1646  */
28158     break;
28159 
28160   case 308:
28161 #line 2323 "gram_minimal.y" /* yacc.c:1646  */
28162     {
28163 					AlterTableCmd *n = makeNode(AlterTableCmd);
28164 					n->subtype = AT_DropColumn;
28165 					n->name = (yyvsp[-1].str);
28166 					n->behavior = (yyvsp[0].dbehavior);
28167 					n->missing_ok = true;
28168 					(yyval.node) = (Node *)n;
28169 				}
28170 #line 28171 "gram_minimal.c" /* yacc.c:1646  */
28171     break;
28172 
28173   case 309:
28174 #line 2333 "gram_minimal.y" /* yacc.c:1646  */
28175     {
28176 					AlterTableCmd *n = makeNode(AlterTableCmd);
28177 					n->subtype = AT_DropColumn;
28178 					n->name = (yyvsp[-1].str);
28179 					n->behavior = (yyvsp[0].dbehavior);
28180 					n->missing_ok = false;
28181 					(yyval.node) = (Node *)n;
28182 				}
28183 #line 28184 "gram_minimal.c" /* yacc.c:1646  */
28184     break;
28185 
28186   case 310:
28187 #line 2346 "gram_minimal.y" /* yacc.c:1646  */
28188     {
28189 					AlterTableCmd *n = makeNode(AlterTableCmd);
28190 					ColumnDef *def = makeNode(ColumnDef);
28191 					n->subtype = AT_AlterColumnType;
28192 					n->name = (yyvsp[-5].str);
28193 					n->def = (Node *) def;
28194 					/* We only use these fields of the ColumnDef node */
28195 					def->typeName = (yyvsp[-2].typnam);
28196 					def->collClause = (CollateClause *) (yyvsp[-1].node);
28197 					def->raw_default = (yyvsp[0].node);
28198 					def->location = (yylsp[-5]);
28199 					(yyval.node) = (Node *)n;
28200 				}
28201 #line 28202 "gram_minimal.c" /* yacc.c:1646  */
28202     break;
28203 
28204   case 311:
28205 #line 2361 "gram_minimal.y" /* yacc.c:1646  */
28206     {
28207 					AlterTableCmd *n = makeNode(AlterTableCmd);
28208 					n->subtype = AT_AlterColumnGenericOptions;
28209 					n->name = (yyvsp[-1].str);
28210 					n->def = (Node *) (yyvsp[0].list);
28211 					(yyval.node) = (Node *)n;
28212 				}
28213 #line 28214 "gram_minimal.c" /* yacc.c:1646  */
28214     break;
28215 
28216   case 312:
28217 #line 2370 "gram_minimal.y" /* yacc.c:1646  */
28218     {
28219 					AlterTableCmd *n = makeNode(AlterTableCmd);
28220 					n->subtype = AT_AddConstraint;
28221 					n->def = (yyvsp[0].node);
28222 					n->missing_ok = false;
28223 					(yyval.node) = (Node *)n;
28224 				}
28225 #line 28226 "gram_minimal.c" /* yacc.c:1646  */
28226     break;
28227 
28228   case 313:
28229 #line 2379 "gram_minimal.y" /* yacc.c:1646  */
28230     {
28231 					AlterTableCmd *n = makeNode(AlterTableCmd);
28232 					Constraint *c = makeNode(Constraint);
28233 					n->subtype = AT_AlterConstraint;
28234 					n->def = (Node *) c;
28235 					c->contype = CONSTR_FOREIGN; /* others not supported, yet */
28236 					c->conname = (yyvsp[-1].str);
28237 					processCASbits((yyvsp[0].ival), (yylsp[0]), "ALTER CONSTRAINT statement",
28238 									&c->deferrable,
28239 									&c->initdeferred,
28240 									NULL, NULL, yyscanner);
28241 					(yyval.node) = (Node *)n;
28242 				}
28243 #line 28244 "gram_minimal.c" /* yacc.c:1646  */
28244     break;
28245 
28246   case 314:
28247 #line 2394 "gram_minimal.y" /* yacc.c:1646  */
28248     {
28249 					AlterTableCmd *n = makeNode(AlterTableCmd);
28250 					n->subtype = AT_ValidateConstraint;
28251 					n->name = (yyvsp[0].str);
28252 					(yyval.node) = (Node *)n;
28253 				}
28254 #line 28255 "gram_minimal.c" /* yacc.c:1646  */
28255     break;
28256 
28257   case 315:
28258 #line 2402 "gram_minimal.y" /* yacc.c:1646  */
28259     {
28260 					AlterTableCmd *n = makeNode(AlterTableCmd);
28261 					n->subtype = AT_DropConstraint;
28262 					n->name = (yyvsp[-1].str);
28263 					n->behavior = (yyvsp[0].dbehavior);
28264 					n->missing_ok = true;
28265 					(yyval.node) = (Node *)n;
28266 				}
28267 #line 28268 "gram_minimal.c" /* yacc.c:1646  */
28268     break;
28269 
28270   case 316:
28271 #line 2412 "gram_minimal.y" /* yacc.c:1646  */
28272     {
28273 					AlterTableCmd *n = makeNode(AlterTableCmd);
28274 					n->subtype = AT_DropConstraint;
28275 					n->name = (yyvsp[-1].str);
28276 					n->behavior = (yyvsp[0].dbehavior);
28277 					n->missing_ok = false;
28278 					(yyval.node) = (Node *)n;
28279 				}
28280 #line 28281 "gram_minimal.c" /* yacc.c:1646  */
28281     break;
28282 
28283   case 317:
28284 #line 2422 "gram_minimal.y" /* yacc.c:1646  */
28285     {
28286 					AlterTableCmd *n = makeNode(AlterTableCmd);
28287 					n->subtype = AT_DropOids;
28288 					(yyval.node) = (Node *)n;
28289 				}
28290 #line 28291 "gram_minimal.c" /* yacc.c:1646  */
28291     break;
28292 
28293   case 318:
28294 #line 2429 "gram_minimal.y" /* yacc.c:1646  */
28295     {
28296 					AlterTableCmd *n = makeNode(AlterTableCmd);
28297 					n->subtype = AT_ClusterOn;
28298 					n->name = (yyvsp[0].str);
28299 					(yyval.node) = (Node *)n;
28300 				}
28301 #line 28302 "gram_minimal.c" /* yacc.c:1646  */
28302     break;
28303 
28304   case 319:
28305 #line 2437 "gram_minimal.y" /* yacc.c:1646  */
28306     {
28307 					AlterTableCmd *n = makeNode(AlterTableCmd);
28308 					n->subtype = AT_DropCluster;
28309 					n->name = NULL;
28310 					(yyval.node) = (Node *)n;
28311 				}
28312 #line 28313 "gram_minimal.c" /* yacc.c:1646  */
28313     break;
28314 
28315   case 320:
28316 #line 2445 "gram_minimal.y" /* yacc.c:1646  */
28317     {
28318 					AlterTableCmd *n = makeNode(AlterTableCmd);
28319 					n->subtype = AT_SetLogged;
28320 					(yyval.node) = (Node *)n;
28321 				}
28322 #line 28323 "gram_minimal.c" /* yacc.c:1646  */
28323     break;
28324 
28325   case 321:
28326 #line 2452 "gram_minimal.y" /* yacc.c:1646  */
28327     {
28328 					AlterTableCmd *n = makeNode(AlterTableCmd);
28329 					n->subtype = AT_SetUnLogged;
28330 					(yyval.node) = (Node *)n;
28331 				}
28332 #line 28333 "gram_minimal.c" /* yacc.c:1646  */
28333     break;
28334 
28335   case 322:
28336 #line 2459 "gram_minimal.y" /* yacc.c:1646  */
28337     {
28338 					AlterTableCmd *n = makeNode(AlterTableCmd);
28339 					n->subtype = AT_EnableTrig;
28340 					n->name = (yyvsp[0].str);
28341 					(yyval.node) = (Node *)n;
28342 				}
28343 #line 28344 "gram_minimal.c" /* yacc.c:1646  */
28344     break;
28345 
28346   case 323:
28347 #line 2467 "gram_minimal.y" /* yacc.c:1646  */
28348     {
28349 					AlterTableCmd *n = makeNode(AlterTableCmd);
28350 					n->subtype = AT_EnableAlwaysTrig;
28351 					n->name = (yyvsp[0].str);
28352 					(yyval.node) = (Node *)n;
28353 				}
28354 #line 28355 "gram_minimal.c" /* yacc.c:1646  */
28355     break;
28356 
28357   case 324:
28358 #line 2475 "gram_minimal.y" /* yacc.c:1646  */
28359     {
28360 					AlterTableCmd *n = makeNode(AlterTableCmd);
28361 					n->subtype = AT_EnableReplicaTrig;
28362 					n->name = (yyvsp[0].str);
28363 					(yyval.node) = (Node *)n;
28364 				}
28365 #line 28366 "gram_minimal.c" /* yacc.c:1646  */
28366     break;
28367 
28368   case 325:
28369 #line 2483 "gram_minimal.y" /* yacc.c:1646  */
28370     {
28371 					AlterTableCmd *n = makeNode(AlterTableCmd);
28372 					n->subtype = AT_EnableTrigAll;
28373 					(yyval.node) = (Node *)n;
28374 				}
28375 #line 28376 "gram_minimal.c" /* yacc.c:1646  */
28376     break;
28377 
28378   case 326:
28379 #line 2490 "gram_minimal.y" /* yacc.c:1646  */
28380     {
28381 					AlterTableCmd *n = makeNode(AlterTableCmd);
28382 					n->subtype = AT_EnableTrigUser;
28383 					(yyval.node) = (Node *)n;
28384 				}
28385 #line 28386 "gram_minimal.c" /* yacc.c:1646  */
28386     break;
28387 
28388   case 327:
28389 #line 2497 "gram_minimal.y" /* yacc.c:1646  */
28390     {
28391 					AlterTableCmd *n = makeNode(AlterTableCmd);
28392 					n->subtype = AT_DisableTrig;
28393 					n->name = (yyvsp[0].str);
28394 					(yyval.node) = (Node *)n;
28395 				}
28396 #line 28397 "gram_minimal.c" /* yacc.c:1646  */
28397     break;
28398 
28399   case 328:
28400 #line 2505 "gram_minimal.y" /* yacc.c:1646  */
28401     {
28402 					AlterTableCmd *n = makeNode(AlterTableCmd);
28403 					n->subtype = AT_DisableTrigAll;
28404 					(yyval.node) = (Node *)n;
28405 				}
28406 #line 28407 "gram_minimal.c" /* yacc.c:1646  */
28407     break;
28408 
28409   case 329:
28410 #line 2512 "gram_minimal.y" /* yacc.c:1646  */
28411     {
28412 					AlterTableCmd *n = makeNode(AlterTableCmd);
28413 					n->subtype = AT_DisableTrigUser;
28414 					(yyval.node) = (Node *)n;
28415 				}
28416 #line 28417 "gram_minimal.c" /* yacc.c:1646  */
28417     break;
28418 
28419   case 330:
28420 #line 2519 "gram_minimal.y" /* yacc.c:1646  */
28421     {
28422 					AlterTableCmd *n = makeNode(AlterTableCmd);
28423 					n->subtype = AT_EnableRule;
28424 					n->name = (yyvsp[0].str);
28425 					(yyval.node) = (Node *)n;
28426 				}
28427 #line 28428 "gram_minimal.c" /* yacc.c:1646  */
28428     break;
28429 
28430   case 331:
28431 #line 2527 "gram_minimal.y" /* yacc.c:1646  */
28432     {
28433 					AlterTableCmd *n = makeNode(AlterTableCmd);
28434 					n->subtype = AT_EnableAlwaysRule;
28435 					n->name = (yyvsp[0].str);
28436 					(yyval.node) = (Node *)n;
28437 				}
28438 #line 28439 "gram_minimal.c" /* yacc.c:1646  */
28439     break;
28440 
28441   case 332:
28442 #line 2535 "gram_minimal.y" /* yacc.c:1646  */
28443     {
28444 					AlterTableCmd *n = makeNode(AlterTableCmd);
28445 					n->subtype = AT_EnableReplicaRule;
28446 					n->name = (yyvsp[0].str);
28447 					(yyval.node) = (Node *)n;
28448 				}
28449 #line 28450 "gram_minimal.c" /* yacc.c:1646  */
28450     break;
28451 
28452   case 333:
28453 #line 2543 "gram_minimal.y" /* yacc.c:1646  */
28454     {
28455 					AlterTableCmd *n = makeNode(AlterTableCmd);
28456 					n->subtype = AT_DisableRule;
28457 					n->name = (yyvsp[0].str);
28458 					(yyval.node) = (Node *)n;
28459 				}
28460 #line 28461 "gram_minimal.c" /* yacc.c:1646  */
28461     break;
28462 
28463   case 334:
28464 #line 2551 "gram_minimal.y" /* yacc.c:1646  */
28465     {
28466 					AlterTableCmd *n = makeNode(AlterTableCmd);
28467 					n->subtype = AT_AddInherit;
28468 					n->def = (Node *) (yyvsp[0].range);
28469 					(yyval.node) = (Node *)n;
28470 				}
28471 #line 28472 "gram_minimal.c" /* yacc.c:1646  */
28472     break;
28473 
28474   case 335:
28475 #line 2559 "gram_minimal.y" /* yacc.c:1646  */
28476     {
28477 					AlterTableCmd *n = makeNode(AlterTableCmd);
28478 					n->subtype = AT_DropInherit;
28479 					n->def = (Node *) (yyvsp[0].range);
28480 					(yyval.node) = (Node *)n;
28481 				}
28482 #line 28483 "gram_minimal.c" /* yacc.c:1646  */
28483     break;
28484 
28485   case 336:
28486 #line 2567 "gram_minimal.y" /* yacc.c:1646  */
28487     {
28488 					AlterTableCmd *n = makeNode(AlterTableCmd);
28489 					TypeName *def = makeTypeNameFromNameList((yyvsp[0].list));
28490 					def->location = (yylsp[0]);
28491 					n->subtype = AT_AddOf;
28492 					n->def = (Node *) def;
28493 					(yyval.node) = (Node *)n;
28494 				}
28495 #line 28496 "gram_minimal.c" /* yacc.c:1646  */
28496     break;
28497 
28498   case 337:
28499 #line 2577 "gram_minimal.y" /* yacc.c:1646  */
28500     {
28501 					AlterTableCmd *n = makeNode(AlterTableCmd);
28502 					n->subtype = AT_DropOf;
28503 					(yyval.node) = (Node *)n;
28504 				}
28505 #line 28506 "gram_minimal.c" /* yacc.c:1646  */
28506     break;
28507 
28508   case 338:
28509 #line 2584 "gram_minimal.y" /* yacc.c:1646  */
28510     {
28511 					AlterTableCmd *n = makeNode(AlterTableCmd);
28512 					n->subtype = AT_ChangeOwner;
28513 					n->newowner = (yyvsp[0].rolespec);
28514 					(yyval.node) = (Node *)n;
28515 				}
28516 #line 28517 "gram_minimal.c" /* yacc.c:1646  */
28517     break;
28518 
28519   case 339:
28520 #line 2592 "gram_minimal.y" /* yacc.c:1646  */
28521     {
28522 					AlterTableCmd *n = makeNode(AlterTableCmd);
28523 					n->subtype = AT_SetTableSpace;
28524 					n->name = (yyvsp[0].str);
28525 					(yyval.node) = (Node *)n;
28526 				}
28527 #line 28528 "gram_minimal.c" /* yacc.c:1646  */
28528     break;
28529 
28530   case 340:
28531 #line 2600 "gram_minimal.y" /* yacc.c:1646  */
28532     {
28533 					AlterTableCmd *n = makeNode(AlterTableCmd);
28534 					n->subtype = AT_SetRelOptions;
28535 					n->def = (Node *)(yyvsp[0].list);
28536 					(yyval.node) = (Node *)n;
28537 				}
28538 #line 28539 "gram_minimal.c" /* yacc.c:1646  */
28539     break;
28540 
28541   case 341:
28542 #line 2608 "gram_minimal.y" /* yacc.c:1646  */
28543     {
28544 					AlterTableCmd *n = makeNode(AlterTableCmd);
28545 					n->subtype = AT_ResetRelOptions;
28546 					n->def = (Node *)(yyvsp[0].list);
28547 					(yyval.node) = (Node *)n;
28548 				}
28549 #line 28550 "gram_minimal.c" /* yacc.c:1646  */
28550     break;
28551 
28552   case 342:
28553 #line 2616 "gram_minimal.y" /* yacc.c:1646  */
28554     {
28555 					AlterTableCmd *n = makeNode(AlterTableCmd);
28556 					n->subtype = AT_ReplicaIdentity;
28557 					n->def = (yyvsp[0].node);
28558 					(yyval.node) = (Node *)n;
28559 				}
28560 #line 28561 "gram_minimal.c" /* yacc.c:1646  */
28561     break;
28562 
28563   case 343:
28564 #line 2624 "gram_minimal.y" /* yacc.c:1646  */
28565     {
28566 					AlterTableCmd *n = makeNode(AlterTableCmd);
28567 					n->subtype = AT_EnableRowSecurity;
28568 					(yyval.node) = (Node *)n;
28569 				}
28570 #line 28571 "gram_minimal.c" /* yacc.c:1646  */
28571     break;
28572 
28573   case 344:
28574 #line 2631 "gram_minimal.y" /* yacc.c:1646  */
28575     {
28576 					AlterTableCmd *n = makeNode(AlterTableCmd);
28577 					n->subtype = AT_DisableRowSecurity;
28578 					(yyval.node) = (Node *)n;
28579 				}
28580 #line 28581 "gram_minimal.c" /* yacc.c:1646  */
28581     break;
28582 
28583   case 345:
28584 #line 2638 "gram_minimal.y" /* yacc.c:1646  */
28585     {
28586 					AlterTableCmd *n = makeNode(AlterTableCmd);
28587 					n->subtype = AT_ForceRowSecurity;
28588 					(yyval.node) = (Node *)n;
28589 				}
28590 #line 28591 "gram_minimal.c" /* yacc.c:1646  */
28591     break;
28592 
28593   case 346:
28594 #line 2645 "gram_minimal.y" /* yacc.c:1646  */
28595     {
28596 					AlterTableCmd *n = makeNode(AlterTableCmd);
28597 					n->subtype = AT_NoForceRowSecurity;
28598 					(yyval.node) = (Node *)n;
28599 				}
28600 #line 28601 "gram_minimal.c" /* yacc.c:1646  */
28601     break;
28602 
28603   case 347:
28604 #line 2651 "gram_minimal.y" /* yacc.c:1646  */
28605     {
28606 					AlterTableCmd *n = makeNode(AlterTableCmd);
28607 					n->subtype = AT_GenericOptions;
28608 					n->def = (Node *)(yyvsp[0].list);
28609 					(yyval.node) = (Node *) n;
28610 				}
28611 #line 28612 "gram_minimal.c" /* yacc.c:1646  */
28612     break;
28613 
28614   case 348:
28615 #line 2660 "gram_minimal.y" /* yacc.c:1646  */
28616     { (yyval.node) = (yyvsp[0].node); }
28617 #line 28618 "gram_minimal.c" /* yacc.c:1646  */
28618     break;
28619 
28620   case 349:
28621 #line 2661 "gram_minimal.y" /* yacc.c:1646  */
28622     { (yyval.node) = NULL; }
28623 #line 28624 "gram_minimal.c" /* yacc.c:1646  */
28624     break;
28625 
28626   case 350:
28627 #line 2665 "gram_minimal.y" /* yacc.c:1646  */
28628     { (yyval.dbehavior) = DROP_CASCADE; }
28629 #line 28630 "gram_minimal.c" /* yacc.c:1646  */
28630     break;
28631 
28632   case 351:
28633 #line 2666 "gram_minimal.y" /* yacc.c:1646  */
28634     { (yyval.dbehavior) = DROP_RESTRICT; }
28635 #line 28636 "gram_minimal.c" /* yacc.c:1646  */
28636     break;
28637 
28638   case 352:
28639 #line 2667 "gram_minimal.y" /* yacc.c:1646  */
28640     { (yyval.dbehavior) = DROP_RESTRICT; /* default */ }
28641 #line 28642 "gram_minimal.c" /* yacc.c:1646  */
28642     break;
28643 
28644   case 353:
28645 #line 2672 "gram_minimal.y" /* yacc.c:1646  */
28646     {
28647 					CollateClause *n = makeNode(CollateClause);
28648 					n->arg = NULL;
28649 					n->collname = (yyvsp[0].list);
28650 					n->location = (yylsp[-1]);
28651 					(yyval.node) = (Node *) n;
28652 				}
28653 #line 28654 "gram_minimal.c" /* yacc.c:1646  */
28654     break;
28655 
28656   case 354:
28657 #line 2679 "gram_minimal.y" /* yacc.c:1646  */
28658     { (yyval.node) = NULL; }
28659 #line 28660 "gram_minimal.c" /* yacc.c:1646  */
28660     break;
28661 
28662   case 355:
28663 #line 2683 "gram_minimal.y" /* yacc.c:1646  */
28664     { (yyval.node) = (yyvsp[0].node); }
28665 #line 28666 "gram_minimal.c" /* yacc.c:1646  */
28666     break;
28667 
28668   case 356:
28669 #line 2684 "gram_minimal.y" /* yacc.c:1646  */
28670     { (yyval.node) = NULL; }
28671 #line 28672 "gram_minimal.c" /* yacc.c:1646  */
28672     break;
28673 
28674   case 357:
28675 #line 2689 "gram_minimal.y" /* yacc.c:1646  */
28676     {
28677 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
28678 					n->identity_type = REPLICA_IDENTITY_NOTHING;
28679 					n->name = NULL;
28680 					(yyval.node) = (Node *) n;
28681 				}
28682 #line 28683 "gram_minimal.c" /* yacc.c:1646  */
28683     break;
28684 
28685   case 358:
28686 #line 2696 "gram_minimal.y" /* yacc.c:1646  */
28687     {
28688 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
28689 					n->identity_type = REPLICA_IDENTITY_FULL;
28690 					n->name = NULL;
28691 					(yyval.node) = (Node *) n;
28692 				}
28693 #line 28694 "gram_minimal.c" /* yacc.c:1646  */
28694     break;
28695 
28696   case 359:
28697 #line 2703 "gram_minimal.y" /* yacc.c:1646  */
28698     {
28699 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
28700 					n->identity_type = REPLICA_IDENTITY_DEFAULT;
28701 					n->name = NULL;
28702 					(yyval.node) = (Node *) n;
28703 				}
28704 #line 28705 "gram_minimal.c" /* yacc.c:1646  */
28705     break;
28706 
28707   case 360:
28708 #line 2710 "gram_minimal.y" /* yacc.c:1646  */
28709     {
28710 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
28711 					n->identity_type = REPLICA_IDENTITY_INDEX;
28712 					n->name = (yyvsp[0].str);
28713 					(yyval.node) = (Node *) n;
28714 				}
28715 #line 28716 "gram_minimal.c" /* yacc.c:1646  */
28716     break;
28717 
28718   case 361:
28719 #line 2719 "gram_minimal.y" /* yacc.c:1646  */
28720     { (yyval.list) = (yyvsp[-1].list); }
28721 #line 28722 "gram_minimal.c" /* yacc.c:1646  */
28722     break;
28723 
28724   case 362:
28725 #line 2722 "gram_minimal.y" /* yacc.c:1646  */
28726     { (yyval.list) = (yyvsp[0].list); }
28727 #line 28728 "gram_minimal.c" /* yacc.c:1646  */
28728     break;
28729 
28730   case 363:
28731 #line 2723 "gram_minimal.y" /* yacc.c:1646  */
28732     { (yyval.list) = NIL; }
28733 #line 28734 "gram_minimal.c" /* yacc.c:1646  */
28734     break;
28735 
28736   case 364:
28737 #line 2727 "gram_minimal.y" /* yacc.c:1646  */
28738     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
28739 #line 28740 "gram_minimal.c" /* yacc.c:1646  */
28740     break;
28741 
28742   case 365:
28743 #line 2728 "gram_minimal.y" /* yacc.c:1646  */
28744     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
28745 #line 28746 "gram_minimal.c" /* yacc.c:1646  */
28746     break;
28747 
28748   case 366:
28749 #line 2734 "gram_minimal.y" /* yacc.c:1646  */
28750     {
28751 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *) (yyvsp[0].node), (yylsp[-2]));
28752 				}
28753 #line 28754 "gram_minimal.c" /* yacc.c:1646  */
28754     break;
28755 
28756   case 367:
28757 #line 2738 "gram_minimal.y" /* yacc.c:1646  */
28758     {
28759 					(yyval.defelt) = makeDefElem((yyvsp[0].str), NULL, (yylsp[0]));
28760 				}
28761 #line 28762 "gram_minimal.c" /* yacc.c:1646  */
28762     break;
28763 
28764   case 368:
28765 #line 2742 "gram_minimal.y" /* yacc.c:1646  */
28766     {
28767 					(yyval.defelt) = makeDefElemExtended((yyvsp[-4].str), (yyvsp[-2].str), (Node *) (yyvsp[0].node),
28768 											 DEFELEM_UNSPEC, (yylsp[-4]));
28769 				}
28770 #line 28771 "gram_minimal.c" /* yacc.c:1646  */
28771     break;
28772 
28773   case 369:
28774 #line 2747 "gram_minimal.y" /* yacc.c:1646  */
28775     {
28776 					(yyval.defelt) = makeDefElemExtended((yyvsp[-2].str), (yyvsp[0].str), NULL, DEFELEM_UNSPEC, (yylsp[-2]));
28777 				}
28778 #line 28779 "gram_minimal.c" /* yacc.c:1646  */
28779     break;
28780 
28781   case 370:
28782 #line 2754 "gram_minimal.y" /* yacc.c:1646  */
28783     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
28784 #line 28785 "gram_minimal.c" /* yacc.c:1646  */
28785     break;
28786 
28787   case 371:
28788 #line 2756 "gram_minimal.y" /* yacc.c:1646  */
28789     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
28790 #line 28791 "gram_minimal.c" /* yacc.c:1646  */
28791     break;
28792 
28793   case 372:
28794 #line 2761 "gram_minimal.y" /* yacc.c:1646  */
28795     {
28796 					(yyval.defelt) = makeDefElem("restart", NULL, (yylsp[0]));
28797 				}
28798 #line 28799 "gram_minimal.c" /* yacc.c:1646  */
28799     break;
28800 
28801   case 373:
28802 #line 2765 "gram_minimal.y" /* yacc.c:1646  */
28803     {
28804 					(yyval.defelt) = makeDefElem("restart", (Node *)(yyvsp[0].value), (yylsp[-2]));
28805 				}
28806 #line 28807 "gram_minimal.c" /* yacc.c:1646  */
28807     break;
28808 
28809   case 374:
28810 #line 2769 "gram_minimal.y" /* yacc.c:1646  */
28811     {
28812 					if (strcmp((yyvsp[0].defelt)->defname, "as") == 0 ||
28813 						strcmp((yyvsp[0].defelt)->defname, "restart") == 0 ||
28814 						strcmp((yyvsp[0].defelt)->defname, "owned_by") == 0)
28815 						ereport(ERROR,
28816 								(errcode(ERRCODE_SYNTAX_ERROR),
28817 								 errmsg("sequence option \"%s\" not supported here", (yyvsp[0].defelt)->defname),
28818 								 parser_errposition((yylsp[0]))));
28819 					(yyval.defelt) = (yyvsp[0].defelt);
28820 				}
28821 #line 28822 "gram_minimal.c" /* yacc.c:1646  */
28822     break;
28823 
28824   case 375:
28825 #line 2780 "gram_minimal.y" /* yacc.c:1646  */
28826     {
28827 					(yyval.defelt) = makeDefElem("generated", (Node *) makeInteger((yyvsp[0].ival)), (yylsp[-2]));
28828 				}
28829 #line 28830 "gram_minimal.c" /* yacc.c:1646  */
28830     break;
28831 
28832   case 376:
28833 #line 2788 "gram_minimal.y" /* yacc.c:1646  */
28834     {
28835 					ListCell   *lc;
28836 					PartitionBoundSpec *n = makeNode(PartitionBoundSpec);
28837 
28838 					n->strategy = PARTITION_STRATEGY_HASH;
28839 					n->modulus = n->remainder = -1;
28840 
28841 					foreach (lc, (yyvsp[-1].list))
28842 					{
28843 						DefElem    *opt = lfirst_node(DefElem, lc);
28844 
28845 						if (strcmp(opt->defname, "modulus") == 0)
28846 						{
28847 							if (n->modulus != -1)
28848 								ereport(ERROR,
28849 										(errcode(ERRCODE_DUPLICATE_OBJECT),
28850 										 errmsg("modulus for hash partition provided more than once"),
28851 										 parser_errposition(opt->location)));
28852 							n->modulus = defGetInt32(opt);
28853 						}
28854 						else if (strcmp(opt->defname, "remainder") == 0)
28855 						{
28856 							if (n->remainder != -1)
28857 								ereport(ERROR,
28858 										(errcode(ERRCODE_DUPLICATE_OBJECT),
28859 										 errmsg("remainder for hash partition provided more than once"),
28860 										 parser_errposition(opt->location)));
28861 							n->remainder = defGetInt32(opt);
28862 						}
28863 						else
28864 							ereport(ERROR,
28865 									(errcode(ERRCODE_SYNTAX_ERROR),
28866 									 errmsg("unrecognized hash partition bound specification \"%s\"",
28867 											opt->defname),
28868 									 parser_errposition(opt->location)));
28869 					}
28870 
28871 					if (n->modulus == -1)
28872 						ereport(ERROR,
28873 								(errcode(ERRCODE_SYNTAX_ERROR),
28874 								 errmsg("modulus for hash partition must be specified")));
28875 					if (n->remainder == -1)
28876 						ereport(ERROR,
28877 								(errcode(ERRCODE_SYNTAX_ERROR),
28878 								 errmsg("remainder for hash partition must be specified")));
28879 
28880 					n->location = (yylsp[-3]);
28881 
28882 					(yyval.partboundspec) = n;
28883 				}
28884 #line 28885 "gram_minimal.c" /* yacc.c:1646  */
28885     break;
28886 
28887   case 377:
28888 #line 2841 "gram_minimal.y" /* yacc.c:1646  */
28889     {
28890 					PartitionBoundSpec *n = makeNode(PartitionBoundSpec);
28891 
28892 					n->strategy = PARTITION_STRATEGY_LIST;
28893 					n->is_default = false;
28894 					n->listdatums = (yyvsp[-1].list);
28895 					n->location = (yylsp[-3]);
28896 
28897 					(yyval.partboundspec) = n;
28898 				}
28899 #line 28900 "gram_minimal.c" /* yacc.c:1646  */
28900     break;
28901 
28902   case 378:
28903 #line 2854 "gram_minimal.y" /* yacc.c:1646  */
28904     {
28905 					PartitionBoundSpec *n = makeNode(PartitionBoundSpec);
28906 
28907 					n->strategy = PARTITION_STRATEGY_RANGE;
28908 					n->is_default = false;
28909 					n->lowerdatums = (yyvsp[-5].list);
28910 					n->upperdatums = (yyvsp[-1].list);
28911 					n->location = (yylsp[-7]);
28912 
28913 					(yyval.partboundspec) = n;
28914 				}
28915 #line 28916 "gram_minimal.c" /* yacc.c:1646  */
28916     break;
28917 
28918   case 379:
28919 #line 2868 "gram_minimal.y" /* yacc.c:1646  */
28920     {
28921 					PartitionBoundSpec *n = makeNode(PartitionBoundSpec);
28922 
28923 					n->is_default = true;
28924 					n->location = (yylsp[0]);
28925 
28926 					(yyval.partboundspec) = n;
28927 				}
28928 #line 28929 "gram_minimal.c" /* yacc.c:1646  */
28929     break;
28930 
28931   case 380:
28932 #line 2880 "gram_minimal.y" /* yacc.c:1646  */
28933     {
28934 				(yyval.defelt) = makeDefElem((yyvsp[-1].str), (Node *)makeInteger((yyvsp[0].ival)), (yylsp[-1]));
28935 			}
28936 #line 28937 "gram_minimal.c" /* yacc.c:1646  */
28937     break;
28938 
28939   case 381:
28940 #line 2887 "gram_minimal.y" /* yacc.c:1646  */
28941     {
28942 				(yyval.list) = list_make1((yyvsp[0].defelt));
28943 			}
28944 #line 28945 "gram_minimal.c" /* yacc.c:1646  */
28945     break;
28946 
28947   case 382:
28948 #line 2891 "gram_minimal.y" /* yacc.c:1646  */
28949     {
28950 				(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
28951 			}
28952 #line 28953 "gram_minimal.c" /* yacc.c:1646  */
28953     break;
28954 
28955   case 383:
28956 #line 2905 "gram_minimal.y" /* yacc.c:1646  */
28957     {
28958 					AlterTableStmt *n = makeNode(AlterTableStmt);
28959 
28960 					/* can't use qualified_name, sigh */
28961 					n->relation = makeRangeVarFromAnyName((yyvsp[-1].list), (yylsp[-1]), yyscanner);
28962 					n->cmds = (yyvsp[0].list);
28963 					n->relkind = OBJECT_TYPE;
28964 					(yyval.node) = (Node *)n;
28965 				}
28966 #line 28967 "gram_minimal.c" /* yacc.c:1646  */
28967     break;
28968 
28969   case 384:
28970 #line 2917 "gram_minimal.y" /* yacc.c:1646  */
28971     { (yyval.list) = list_make1((yyvsp[0].node)); }
28972 #line 28973 "gram_minimal.c" /* yacc.c:1646  */
28973     break;
28974 
28975   case 385:
28976 #line 2918 "gram_minimal.y" /* yacc.c:1646  */
28977     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
28978 #line 28979 "gram_minimal.c" /* yacc.c:1646  */
28979     break;
28980 
28981   case 386:
28982 #line 2924 "gram_minimal.y" /* yacc.c:1646  */
28983     {
28984 					AlterTableCmd *n = makeNode(AlterTableCmd);
28985 					n->subtype = AT_AddColumn;
28986 					n->def = (yyvsp[-1].node);
28987 					n->behavior = (yyvsp[0].dbehavior);
28988 					(yyval.node) = (Node *)n;
28989 				}
28990 #line 28991 "gram_minimal.c" /* yacc.c:1646  */
28991     break;
28992 
28993   case 387:
28994 #line 2933 "gram_minimal.y" /* yacc.c:1646  */
28995     {
28996 					AlterTableCmd *n = makeNode(AlterTableCmd);
28997 					n->subtype = AT_DropColumn;
28998 					n->name = (yyvsp[-1].str);
28999 					n->behavior = (yyvsp[0].dbehavior);
29000 					n->missing_ok = true;
29001 					(yyval.node) = (Node *)n;
29002 				}
29003 #line 29004 "gram_minimal.c" /* yacc.c:1646  */
29004     break;
29005 
29006   case 388:
29007 #line 2943 "gram_minimal.y" /* yacc.c:1646  */
29008     {
29009 					AlterTableCmd *n = makeNode(AlterTableCmd);
29010 					n->subtype = AT_DropColumn;
29011 					n->name = (yyvsp[-1].str);
29012 					n->behavior = (yyvsp[0].dbehavior);
29013 					n->missing_ok = false;
29014 					(yyval.node) = (Node *)n;
29015 				}
29016 #line 29017 "gram_minimal.c" /* yacc.c:1646  */
29017     break;
29018 
29019   case 389:
29020 #line 2953 "gram_minimal.y" /* yacc.c:1646  */
29021     {
29022 					AlterTableCmd *n = makeNode(AlterTableCmd);
29023 					ColumnDef *def = makeNode(ColumnDef);
29024 					n->subtype = AT_AlterColumnType;
29025 					n->name = (yyvsp[-5].str);
29026 					n->def = (Node *) def;
29027 					n->behavior = (yyvsp[0].dbehavior);
29028 					/* We only use these fields of the ColumnDef node */
29029 					def->typeName = (yyvsp[-2].typnam);
29030 					def->collClause = (CollateClause *) (yyvsp[-1].node);
29031 					def->raw_default = NULL;
29032 					def->location = (yylsp[-5]);
29033 					(yyval.node) = (Node *)n;
29034 				}
29035 #line 29036 "gram_minimal.c" /* yacc.c:1646  */
29036     break;
29037 
29038   case 390:
29039 #line 2979 "gram_minimal.y" /* yacc.c:1646  */
29040     {
29041 					ClosePortalStmt *n = makeNode(ClosePortalStmt);
29042 					n->portalname = (yyvsp[0].str);
29043 					(yyval.node) = (Node *)n;
29044 				}
29045 #line 29046 "gram_minimal.c" /* yacc.c:1646  */
29046     break;
29047 
29048   case 391:
29049 #line 2985 "gram_minimal.y" /* yacc.c:1646  */
29050     {
29051 					ClosePortalStmt *n = makeNode(ClosePortalStmt);
29052 					n->portalname = NULL;
29053 					(yyval.node) = (Node *)n;
29054 				}
29055 #line 29056 "gram_minimal.c" /* yacc.c:1646  */
29056     break;
29057 
29058   case 392:
29059 #line 3020 "gram_minimal.y" /* yacc.c:1646  */
29060     {
29061 					CopyStmt *n = makeNode(CopyStmt);
29062 					n->relation = (yyvsp[-8].range);
29063 					n->query = NULL;
29064 					n->attlist = (yyvsp[-7].list);
29065 					n->is_from = (yyvsp[-6].boolean);
29066 					n->is_program = (yyvsp[-5].boolean);
29067 					n->filename = (yyvsp[-4].str);
29068 					n->whereClause = (yyvsp[0].node);
29069 
29070 					if (n->is_program && n->filename == NULL)
29071 						ereport(ERROR,
29072 								(errcode(ERRCODE_SYNTAX_ERROR),
29073 								 errmsg("STDIN/STDOUT not allowed with PROGRAM"),
29074 								 parser_errposition((yylsp[-3]))));
29075 
29076 					if (!n->is_from && n->whereClause != NULL)
29077 						ereport(ERROR,
29078 								(errcode(ERRCODE_SYNTAX_ERROR),
29079 								 errmsg("WHERE clause not allowed with COPY TO"),
29080 								 parser_errposition((yylsp[0]))));
29081 
29082 					n->options = NIL;
29083 					/* Concatenate user-supplied flags */
29084 					if ((yyvsp[-9].defelt))
29085 						n->options = lappend(n->options, (yyvsp[-9].defelt));
29086 					if ((yyvsp[-3].defelt))
29087 						n->options = lappend(n->options, (yyvsp[-3].defelt));
29088 					if ((yyvsp[-1].list))
29089 						n->options = list_concat(n->options, (yyvsp[-1].list));
29090 					(yyval.node) = (Node *)n;
29091 				}
29092 #line 29093 "gram_minimal.c" /* yacc.c:1646  */
29093     break;
29094 
29095   case 393:
29096 #line 3053 "gram_minimal.y" /* yacc.c:1646  */
29097     {
29098 					CopyStmt *n = makeNode(CopyStmt);
29099 					n->relation = NULL;
29100 					n->query = (yyvsp[-6].node);
29101 					n->attlist = NIL;
29102 					n->is_from = false;
29103 					n->is_program = (yyvsp[-3].boolean);
29104 					n->filename = (yyvsp[-2].str);
29105 					n->options = (yyvsp[0].list);
29106 
29107 					if (n->is_program && n->filename == NULL)
29108 						ereport(ERROR,
29109 								(errcode(ERRCODE_SYNTAX_ERROR),
29110 								 errmsg("STDIN/STDOUT not allowed with PROGRAM"),
29111 								 parser_errposition((yylsp[-4]))));
29112 
29113 					(yyval.node) = (Node *)n;
29114 				}
29115 #line 29116 "gram_minimal.c" /* yacc.c:1646  */
29116     break;
29117 
29118   case 394:
29119 #line 3074 "gram_minimal.y" /* yacc.c:1646  */
29120     { (yyval.boolean) = true; }
29121 #line 29122 "gram_minimal.c" /* yacc.c:1646  */
29122     break;
29123 
29124   case 395:
29125 #line 3075 "gram_minimal.y" /* yacc.c:1646  */
29126     { (yyval.boolean) = false; }
29127 #line 29128 "gram_minimal.c" /* yacc.c:1646  */
29128     break;
29129 
29130   case 396:
29131 #line 3079 "gram_minimal.y" /* yacc.c:1646  */
29132     { (yyval.boolean) = true; }
29133 #line 29134 "gram_minimal.c" /* yacc.c:1646  */
29134     break;
29135 
29136   case 397:
29137 #line 3080 "gram_minimal.y" /* yacc.c:1646  */
29138     { (yyval.boolean) = false; }
29139 #line 29140 "gram_minimal.c" /* yacc.c:1646  */
29140     break;
29141 
29142   case 398:
29143 #line 3089 "gram_minimal.y" /* yacc.c:1646  */
29144     { (yyval.str) = (yyvsp[0].str); }
29145 #line 29146 "gram_minimal.c" /* yacc.c:1646  */
29146     break;
29147 
29148   case 399:
29149 #line 3090 "gram_minimal.y" /* yacc.c:1646  */
29150     { (yyval.str) = NULL; }
29151 #line 29152 "gram_minimal.c" /* yacc.c:1646  */
29152     break;
29153 
29154   case 400:
29155 #line 3091 "gram_minimal.y" /* yacc.c:1646  */
29156     { (yyval.str) = NULL; }
29157 #line 29158 "gram_minimal.c" /* yacc.c:1646  */
29158     break;
29159 
29160   case 401:
29161 #line 3094 "gram_minimal.y" /* yacc.c:1646  */
29162     { (yyval.list) = (yyvsp[0].list); }
29163 #line 29164 "gram_minimal.c" /* yacc.c:1646  */
29164     break;
29165 
29166   case 402:
29167 #line 3095 "gram_minimal.y" /* yacc.c:1646  */
29168     { (yyval.list) = (yyvsp[-1].list); }
29169 #line 29170 "gram_minimal.c" /* yacc.c:1646  */
29170     break;
29171 
29172   case 403:
29173 #line 3100 "gram_minimal.y" /* yacc.c:1646  */
29174     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
29175 #line 29176 "gram_minimal.c" /* yacc.c:1646  */
29176     break;
29177 
29178   case 404:
29179 #line 3101 "gram_minimal.y" /* yacc.c:1646  */
29180     { (yyval.list) = NIL; }
29181 #line 29182 "gram_minimal.c" /* yacc.c:1646  */
29182     break;
29183 
29184   case 405:
29185 #line 3106 "gram_minimal.y" /* yacc.c:1646  */
29186     {
29187 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("binary"), (yylsp[0]));
29188 				}
29189 #line 29190 "gram_minimal.c" /* yacc.c:1646  */
29190     break;
29191 
29192   case 406:
29193 #line 3110 "gram_minimal.y" /* yacc.c:1646  */
29194     {
29195 					(yyval.defelt) = makeDefElem("freeze", (Node *)makeInteger(true), (yylsp[0]));
29196 				}
29197 #line 29198 "gram_minimal.c" /* yacc.c:1646  */
29198     break;
29199 
29200   case 407:
29201 #line 3114 "gram_minimal.y" /* yacc.c:1646  */
29202     {
29203 					(yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
29204 				}
29205 #line 29206 "gram_minimal.c" /* yacc.c:1646  */
29206     break;
29207 
29208   case 408:
29209 #line 3118 "gram_minimal.y" /* yacc.c:1646  */
29210     {
29211 					(yyval.defelt) = makeDefElem("null", (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
29212 				}
29213 #line 29214 "gram_minimal.c" /* yacc.c:1646  */
29214     break;
29215 
29216   case 409:
29217 #line 3122 "gram_minimal.y" /* yacc.c:1646  */
29218     {
29219 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("csv"), (yylsp[0]));
29220 				}
29221 #line 29222 "gram_minimal.c" /* yacc.c:1646  */
29222     break;
29223 
29224   case 410:
29225 #line 3126 "gram_minimal.y" /* yacc.c:1646  */
29226     {
29227 					(yyval.defelt) = makeDefElem("header", (Node *)makeInteger(true), (yylsp[0]));
29228 				}
29229 #line 29230 "gram_minimal.c" /* yacc.c:1646  */
29230     break;
29231 
29232   case 411:
29233 #line 3130 "gram_minimal.y" /* yacc.c:1646  */
29234     {
29235 					(yyval.defelt) = makeDefElem("quote", (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
29236 				}
29237 #line 29238 "gram_minimal.c" /* yacc.c:1646  */
29238     break;
29239 
29240   case 412:
29241 #line 3134 "gram_minimal.y" /* yacc.c:1646  */
29242     {
29243 					(yyval.defelt) = makeDefElem("escape", (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
29244 				}
29245 #line 29246 "gram_minimal.c" /* yacc.c:1646  */
29246     break;
29247 
29248   case 413:
29249 #line 3138 "gram_minimal.y" /* yacc.c:1646  */
29250     {
29251 					(yyval.defelt) = makeDefElem("force_quote", (Node *)(yyvsp[0].list), (yylsp[-2]));
29252 				}
29253 #line 29254 "gram_minimal.c" /* yacc.c:1646  */
29254     break;
29255 
29256   case 414:
29257 #line 3142 "gram_minimal.y" /* yacc.c:1646  */
29258     {
29259 					(yyval.defelt) = makeDefElem("force_quote", (Node *)makeNode(A_Star), (yylsp[-2]));
29260 				}
29261 #line 29262 "gram_minimal.c" /* yacc.c:1646  */
29262     break;
29263 
29264   case 415:
29265 #line 3146 "gram_minimal.y" /* yacc.c:1646  */
29266     {
29267 					(yyval.defelt) = makeDefElem("force_not_null", (Node *)(yyvsp[0].list), (yylsp[-3]));
29268 				}
29269 #line 29270 "gram_minimal.c" /* yacc.c:1646  */
29270     break;
29271 
29272   case 416:
29273 #line 3150 "gram_minimal.y" /* yacc.c:1646  */
29274     {
29275 					(yyval.defelt) = makeDefElem("force_null", (Node *)(yyvsp[0].list), (yylsp[-2]));
29276 				}
29277 #line 29278 "gram_minimal.c" /* yacc.c:1646  */
29278     break;
29279 
29280   case 417:
29281 #line 3154 "gram_minimal.y" /* yacc.c:1646  */
29282     {
29283 					(yyval.defelt) = makeDefElem("encoding", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
29284 				}
29285 #line 29286 "gram_minimal.c" /* yacc.c:1646  */
29286     break;
29287 
29288   case 418:
29289 #line 3163 "gram_minimal.y" /* yacc.c:1646  */
29290     {
29291 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("binary"), (yylsp[0]));
29292 				}
29293 #line 29294 "gram_minimal.c" /* yacc.c:1646  */
29294     break;
29295 
29296   case 419:
29297 #line 3166 "gram_minimal.y" /* yacc.c:1646  */
29298     { (yyval.defelt) = NULL; }
29299 #line 29300 "gram_minimal.c" /* yacc.c:1646  */
29300     break;
29301 
29302   case 420:
29303 #line 3171 "gram_minimal.y" /* yacc.c:1646  */
29304     {
29305 					(yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
29306 				}
29307 #line 29308 "gram_minimal.c" /* yacc.c:1646  */
29308     break;
29309 
29310   case 421:
29311 #line 3174 "gram_minimal.y" /* yacc.c:1646  */
29312     { (yyval.defelt) = NULL; }
29313 #line 29314 "gram_minimal.c" /* yacc.c:1646  */
29314     break;
29315 
29316   case 422:
29317 #line 3178 "gram_minimal.y" /* yacc.c:1646  */
29318     {}
29319 #line 29320 "gram_minimal.c" /* yacc.c:1646  */
29320     break;
29321 
29322   case 423:
29323 #line 3179 "gram_minimal.y" /* yacc.c:1646  */
29324     {}
29325 #line 29326 "gram_minimal.c" /* yacc.c:1646  */
29326     break;
29327 
29328   case 424:
29329 #line 3185 "gram_minimal.y" /* yacc.c:1646  */
29330     {
29331 					(yyval.list) = list_make1((yyvsp[0].defelt));
29332 				}
29333 #line 29334 "gram_minimal.c" /* yacc.c:1646  */
29334     break;
29335 
29336   case 425:
29337 #line 3189 "gram_minimal.y" /* yacc.c:1646  */
29338     {
29339 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
29340 				}
29341 #line 29342 "gram_minimal.c" /* yacc.c:1646  */
29342     break;
29343 
29344   case 426:
29345 #line 3196 "gram_minimal.y" /* yacc.c:1646  */
29346     {
29347 					(yyval.defelt) = makeDefElem((yyvsp[-1].str), (yyvsp[0].node), (yylsp[-1]));
29348 				}
29349 #line 29350 "gram_minimal.c" /* yacc.c:1646  */
29350     break;
29351 
29352   case 427:
29353 #line 3202 "gram_minimal.y" /* yacc.c:1646  */
29354     { (yyval.node) = (Node *) makeString((yyvsp[0].str)); }
29355 #line 29356 "gram_minimal.c" /* yacc.c:1646  */
29356     break;
29357 
29358   case 428:
29359 #line 3203 "gram_minimal.y" /* yacc.c:1646  */
29360     { (yyval.node) = (Node *) (yyvsp[0].value); }
29361 #line 29362 "gram_minimal.c" /* yacc.c:1646  */
29362     break;
29363 
29364   case 429:
29365 #line 3204 "gram_minimal.y" /* yacc.c:1646  */
29366     { (yyval.node) = (Node *) makeNode(A_Star); }
29367 #line 29368 "gram_minimal.c" /* yacc.c:1646  */
29368     break;
29369 
29370   case 430:
29371 #line 3205 "gram_minimal.y" /* yacc.c:1646  */
29372     { (yyval.node) = (Node *) (yyvsp[-1].list); }
29373 #line 29374 "gram_minimal.c" /* yacc.c:1646  */
29374     break;
29375 
29376   case 431:
29377 #line 3206 "gram_minimal.y" /* yacc.c:1646  */
29378     { (yyval.node) = NULL; }
29379 #line 29380 "gram_minimal.c" /* yacc.c:1646  */
29380     break;
29381 
29382   case 432:
29383 #line 3211 "gram_minimal.y" /* yacc.c:1646  */
29384     {
29385 					(yyval.list) = list_make1((yyvsp[0].node));
29386 				}
29387 #line 29388 "gram_minimal.c" /* yacc.c:1646  */
29388     break;
29389 
29390   case 433:
29391 #line 3215 "gram_minimal.y" /* yacc.c:1646  */
29392     {
29393 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
29394 				}
29395 #line 29396 "gram_minimal.c" /* yacc.c:1646  */
29396     break;
29397 
29398   case 434:
29399 #line 3222 "gram_minimal.y" /* yacc.c:1646  */
29400     { (yyval.node) = (Node *) makeString((yyvsp[0].str)); }
29401 #line 29402 "gram_minimal.c" /* yacc.c:1646  */
29402     break;
29403 
29404   case 435:
29405 #line 3236 "gram_minimal.y" /* yacc.c:1646  */
29406     {
29407 					CreateStmt *n = makeNode(CreateStmt);
29408 					(yyvsp[-9].range)->relpersistence = (yyvsp[-11].ival);
29409 					n->relation = (yyvsp[-9].range);
29410 					n->tableElts = (yyvsp[-7].list);
29411 					n->inhRelations = (yyvsp[-5].list);
29412 					n->partspec = (yyvsp[-4].partspec);
29413 					n->ofTypename = NULL;
29414 					n->constraints = NIL;
29415 					n->accessMethod = (yyvsp[-3].str);
29416 					n->options = (yyvsp[-2].list);
29417 					n->oncommit = (yyvsp[-1].oncommit);
29418 					n->tablespacename = (yyvsp[0].str);
29419 					n->if_not_exists = false;
29420 					(yyval.node) = (Node *)n;
29421 				}
29422 #line 29423 "gram_minimal.c" /* yacc.c:1646  */
29423     break;
29424 
29425   case 436:
29426 #line 3255 "gram_minimal.y" /* yacc.c:1646  */
29427     {
29428 					CreateStmt *n = makeNode(CreateStmt);
29429 					(yyvsp[-9].range)->relpersistence = (yyvsp[-14].ival);
29430 					n->relation = (yyvsp[-9].range);
29431 					n->tableElts = (yyvsp[-7].list);
29432 					n->inhRelations = (yyvsp[-5].list);
29433 					n->partspec = (yyvsp[-4].partspec);
29434 					n->ofTypename = NULL;
29435 					n->constraints = NIL;
29436 					n->accessMethod = (yyvsp[-3].str);
29437 					n->options = (yyvsp[-2].list);
29438 					n->oncommit = (yyvsp[-1].oncommit);
29439 					n->tablespacename = (yyvsp[0].str);
29440 					n->if_not_exists = true;
29441 					(yyval.node) = (Node *)n;
29442 				}
29443 #line 29444 "gram_minimal.c" /* yacc.c:1646  */
29444     break;
29445 
29446   case 437:
29447 #line 3274 "gram_minimal.y" /* yacc.c:1646  */
29448     {
29449 					CreateStmt *n = makeNode(CreateStmt);
29450 					(yyvsp[-8].range)->relpersistence = (yyvsp[-10].ival);
29451 					n->relation = (yyvsp[-8].range);
29452 					n->tableElts = (yyvsp[-5].list);
29453 					n->inhRelations = NIL;
29454 					n->partspec = (yyvsp[-4].partspec);
29455 					n->ofTypename = makeTypeNameFromNameList((yyvsp[-6].list));
29456 					n->ofTypename->location = (yylsp[-6]);
29457 					n->constraints = NIL;
29458 					n->accessMethod = (yyvsp[-3].str);
29459 					n->options = (yyvsp[-2].list);
29460 					n->oncommit = (yyvsp[-1].oncommit);
29461 					n->tablespacename = (yyvsp[0].str);
29462 					n->if_not_exists = false;
29463 					(yyval.node) = (Node *)n;
29464 				}
29465 #line 29466 "gram_minimal.c" /* yacc.c:1646  */
29466     break;
29467 
29468   case 438:
29469 #line 3294 "gram_minimal.y" /* yacc.c:1646  */
29470     {
29471 					CreateStmt *n = makeNode(CreateStmt);
29472 					(yyvsp[-8].range)->relpersistence = (yyvsp[-13].ival);
29473 					n->relation = (yyvsp[-8].range);
29474 					n->tableElts = (yyvsp[-5].list);
29475 					n->inhRelations = NIL;
29476 					n->partspec = (yyvsp[-4].partspec);
29477 					n->ofTypename = makeTypeNameFromNameList((yyvsp[-6].list));
29478 					n->ofTypename->location = (yylsp[-6]);
29479 					n->constraints = NIL;
29480 					n->accessMethod = (yyvsp[-3].str);
29481 					n->options = (yyvsp[-2].list);
29482 					n->oncommit = (yyvsp[-1].oncommit);
29483 					n->tablespacename = (yyvsp[0].str);
29484 					n->if_not_exists = true;
29485 					(yyval.node) = (Node *)n;
29486 				}
29487 #line 29488 "gram_minimal.c" /* yacc.c:1646  */
29488     break;
29489 
29490   case 439:
29491 #line 3314 "gram_minimal.y" /* yacc.c:1646  */
29492     {
29493 					CreateStmt *n = makeNode(CreateStmt);
29494 					(yyvsp[-10].range)->relpersistence = (yyvsp[-12].ival);
29495 					n->relation = (yyvsp[-10].range);
29496 					n->tableElts = (yyvsp[-6].list);
29497 					n->inhRelations = list_make1((yyvsp[-7].range));
29498 					n->partbound = (yyvsp[-5].partboundspec);
29499 					n->partspec = (yyvsp[-4].partspec);
29500 					n->ofTypename = NULL;
29501 					n->constraints = NIL;
29502 					n->accessMethod = (yyvsp[-3].str);
29503 					n->options = (yyvsp[-2].list);
29504 					n->oncommit = (yyvsp[-1].oncommit);
29505 					n->tablespacename = (yyvsp[0].str);
29506 					n->if_not_exists = false;
29507 					(yyval.node) = (Node *)n;
29508 				}
29509 #line 29510 "gram_minimal.c" /* yacc.c:1646  */
29510     break;
29511 
29512   case 440:
29513 #line 3334 "gram_minimal.y" /* yacc.c:1646  */
29514     {
29515 					CreateStmt *n = makeNode(CreateStmt);
29516 					(yyvsp[-10].range)->relpersistence = (yyvsp[-15].ival);
29517 					n->relation = (yyvsp[-10].range);
29518 					n->tableElts = (yyvsp[-6].list);
29519 					n->inhRelations = list_make1((yyvsp[-7].range));
29520 					n->partbound = (yyvsp[-5].partboundspec);
29521 					n->partspec = (yyvsp[-4].partspec);
29522 					n->ofTypename = NULL;
29523 					n->constraints = NIL;
29524 					n->accessMethod = (yyvsp[-3].str);
29525 					n->options = (yyvsp[-2].list);
29526 					n->oncommit = (yyvsp[-1].oncommit);
29527 					n->tablespacename = (yyvsp[0].str);
29528 					n->if_not_exists = true;
29529 					(yyval.node) = (Node *)n;
29530 				}
29531 #line 29532 "gram_minimal.c" /* yacc.c:1646  */
29532     break;
29533 
29534   case 441:
29535 #line 3364 "gram_minimal.y" /* yacc.c:1646  */
29536     { (yyval.ival) = RELPERSISTENCE_TEMP; }
29537 #line 29538 "gram_minimal.c" /* yacc.c:1646  */
29538     break;
29539 
29540   case 442:
29541 #line 3365 "gram_minimal.y" /* yacc.c:1646  */
29542     { (yyval.ival) = RELPERSISTENCE_TEMP; }
29543 #line 29544 "gram_minimal.c" /* yacc.c:1646  */
29544     break;
29545 
29546   case 443:
29547 #line 3366 "gram_minimal.y" /* yacc.c:1646  */
29548     { (yyval.ival) = RELPERSISTENCE_TEMP; }
29549 #line 29550 "gram_minimal.c" /* yacc.c:1646  */
29550     break;
29551 
29552   case 444:
29553 #line 3367 "gram_minimal.y" /* yacc.c:1646  */
29554     { (yyval.ival) = RELPERSISTENCE_TEMP; }
29555 #line 29556 "gram_minimal.c" /* yacc.c:1646  */
29556     break;
29557 
29558   case 445:
29559 #line 3369 "gram_minimal.y" /* yacc.c:1646  */
29560     {
29561 					ereport(WARNING,
29562 							(errmsg("GLOBAL is deprecated in temporary table creation"),
29563 							 parser_errposition((yylsp[-1]))));
29564 					(yyval.ival) = RELPERSISTENCE_TEMP;
29565 				}
29566 #line 29567 "gram_minimal.c" /* yacc.c:1646  */
29567     break;
29568 
29569   case 446:
29570 #line 3376 "gram_minimal.y" /* yacc.c:1646  */
29571     {
29572 					ereport(WARNING,
29573 							(errmsg("GLOBAL is deprecated in temporary table creation"),
29574 							 parser_errposition((yylsp[-1]))));
29575 					(yyval.ival) = RELPERSISTENCE_TEMP;
29576 				}
29577 #line 29578 "gram_minimal.c" /* yacc.c:1646  */
29578     break;
29579 
29580   case 447:
29581 #line 3382 "gram_minimal.y" /* yacc.c:1646  */
29582     { (yyval.ival) = RELPERSISTENCE_UNLOGGED; }
29583 #line 29584 "gram_minimal.c" /* yacc.c:1646  */
29584     break;
29585 
29586   case 448:
29587 #line 3383 "gram_minimal.y" /* yacc.c:1646  */
29588     { (yyval.ival) = RELPERSISTENCE_PERMANENT; }
29589 #line 29590 "gram_minimal.c" /* yacc.c:1646  */
29590     break;
29591 
29592   case 449:
29593 #line 3387 "gram_minimal.y" /* yacc.c:1646  */
29594     { (yyval.list) = (yyvsp[0].list); }
29595 #line 29596 "gram_minimal.c" /* yacc.c:1646  */
29596     break;
29597 
29598   case 450:
29599 #line 3388 "gram_minimal.y" /* yacc.c:1646  */
29600     { (yyval.list) = NIL; }
29601 #line 29602 "gram_minimal.c" /* yacc.c:1646  */
29602     break;
29603 
29604   case 451:
29605 #line 3392 "gram_minimal.y" /* yacc.c:1646  */
29606     { (yyval.list) = (yyvsp[-1].list); }
29607 #line 29608 "gram_minimal.c" /* yacc.c:1646  */
29608     break;
29609 
29610   case 452:
29611 #line 3393 "gram_minimal.y" /* yacc.c:1646  */
29612     { (yyval.list) = NIL; }
29613 #line 29614 "gram_minimal.c" /* yacc.c:1646  */
29614     break;
29615 
29616   case 453:
29617 #line 3398 "gram_minimal.y" /* yacc.c:1646  */
29618     {
29619 					(yyval.list) = list_make1((yyvsp[0].node));
29620 				}
29621 #line 29622 "gram_minimal.c" /* yacc.c:1646  */
29622     break;
29623 
29624   case 454:
29625 #line 3402 "gram_minimal.y" /* yacc.c:1646  */
29626     {
29627 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
29628 				}
29629 #line 29630 "gram_minimal.c" /* yacc.c:1646  */
29630     break;
29631 
29632   case 455:
29633 #line 3409 "gram_minimal.y" /* yacc.c:1646  */
29634     {
29635 					(yyval.list) = list_make1((yyvsp[0].node));
29636 				}
29637 #line 29638 "gram_minimal.c" /* yacc.c:1646  */
29638     break;
29639 
29640   case 456:
29641 #line 3413 "gram_minimal.y" /* yacc.c:1646  */
29642     {
29643 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
29644 				}
29645 #line 29646 "gram_minimal.c" /* yacc.c:1646  */
29646     break;
29647 
29648   case 457:
29649 #line 3419 "gram_minimal.y" /* yacc.c:1646  */
29650     { (yyval.node) = (yyvsp[0].node); }
29651 #line 29652 "gram_minimal.c" /* yacc.c:1646  */
29652     break;
29653 
29654   case 458:
29655 #line 3420 "gram_minimal.y" /* yacc.c:1646  */
29656     { (yyval.node) = (yyvsp[0].node); }
29657 #line 29658 "gram_minimal.c" /* yacc.c:1646  */
29658     break;
29659 
29660   case 459:
29661 #line 3421 "gram_minimal.y" /* yacc.c:1646  */
29662     { (yyval.node) = (yyvsp[0].node); }
29663 #line 29664 "gram_minimal.c" /* yacc.c:1646  */
29664     break;
29665 
29666   case 460:
29667 #line 3425 "gram_minimal.y" /* yacc.c:1646  */
29668     { (yyval.node) = (yyvsp[0].node); }
29669 #line 29670 "gram_minimal.c" /* yacc.c:1646  */
29670     break;
29671 
29672   case 461:
29673 #line 3426 "gram_minimal.y" /* yacc.c:1646  */
29674     { (yyval.node) = (yyvsp[0].node); }
29675 #line 29676 "gram_minimal.c" /* yacc.c:1646  */
29676     break;
29677 
29678   case 462:
29679 #line 3430 "gram_minimal.y" /* yacc.c:1646  */
29680     {
29681 					ColumnDef *n = makeNode(ColumnDef);
29682 					n->colname = (yyvsp[-3].str);
29683 					n->typeName = (yyvsp[-2].typnam);
29684 					n->inhcount = 0;
29685 					n->is_local = true;
29686 					n->is_not_null = false;
29687 					n->is_from_type = false;
29688 					n->storage = 0;
29689 					n->raw_default = NULL;
29690 					n->cooked_default = NULL;
29691 					n->collOid = InvalidOid;
29692 					n->fdwoptions = (yyvsp[-1].list);
29693 					SplitColQualList((yyvsp[0].list), &n->constraints, &n->collClause,
29694 									 yyscanner);
29695 					n->location = (yylsp[-3]);
29696 					(yyval.node) = (Node *)n;
29697 				}
29698 #line 29699 "gram_minimal.c" /* yacc.c:1646  */
29699     break;
29700 
29701   case 463:
29702 #line 3451 "gram_minimal.y" /* yacc.c:1646  */
29703     {
29704 					ColumnDef *n = makeNode(ColumnDef);
29705 					n->colname = (yyvsp[-1].str);
29706 					n->typeName = NULL;
29707 					n->inhcount = 0;
29708 					n->is_local = true;
29709 					n->is_not_null = false;
29710 					n->is_from_type = false;
29711 					n->storage = 0;
29712 					n->raw_default = NULL;
29713 					n->cooked_default = NULL;
29714 					n->collOid = InvalidOid;
29715 					SplitColQualList((yyvsp[0].list), &n->constraints, &n->collClause,
29716 									 yyscanner);
29717 					n->location = (yylsp[-1]);
29718 					(yyval.node) = (Node *)n;
29719 				}
29720 #line 29721 "gram_minimal.c" /* yacc.c:1646  */
29721     break;
29722 
29723   case 464:
29724 #line 3469 "gram_minimal.y" /* yacc.c:1646  */
29725     {
29726 					ColumnDef *n = makeNode(ColumnDef);
29727 					n->colname = (yyvsp[-3].str);
29728 					n->typeName = NULL;
29729 					n->inhcount = 0;
29730 					n->is_local = true;
29731 					n->is_not_null = false;
29732 					n->is_from_type = false;
29733 					n->storage = 0;
29734 					n->raw_default = NULL;
29735 					n->cooked_default = NULL;
29736 					n->collOid = InvalidOid;
29737 					SplitColQualList((yyvsp[0].list), &n->constraints, &n->collClause,
29738 									 yyscanner);
29739 					n->location = (yylsp[-3]);
29740 					(yyval.node) = (Node *)n;
29741 				}
29742 #line 29743 "gram_minimal.c" /* yacc.c:1646  */
29743     break;
29744 
29745   case 465:
29746 #line 3489 "gram_minimal.y" /* yacc.c:1646  */
29747     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
29748 #line 29749 "gram_minimal.c" /* yacc.c:1646  */
29749     break;
29750 
29751   case 466:
29752 #line 3490 "gram_minimal.y" /* yacc.c:1646  */
29753     { (yyval.list) = NIL; }
29754 #line 29755 "gram_minimal.c" /* yacc.c:1646  */
29755     break;
29756 
29757   case 467:
29758 #line 3495 "gram_minimal.y" /* yacc.c:1646  */
29759     {
29760 					Constraint *n = castNode(Constraint, (yyvsp[0].node));
29761 					n->conname = (yyvsp[-1].str);
29762 					n->location = (yylsp[-2]);
29763 					(yyval.node) = (Node *) n;
29764 				}
29765 #line 29766 "gram_minimal.c" /* yacc.c:1646  */
29766     break;
29767 
29768   case 468:
29769 #line 3501 "gram_minimal.y" /* yacc.c:1646  */
29770     { (yyval.node) = (yyvsp[0].node); }
29771 #line 29772 "gram_minimal.c" /* yacc.c:1646  */
29772     break;
29773 
29774   case 469:
29775 #line 3502 "gram_minimal.y" /* yacc.c:1646  */
29776     { (yyval.node) = (yyvsp[0].node); }
29777 #line 29778 "gram_minimal.c" /* yacc.c:1646  */
29778     break;
29779 
29780   case 470:
29781 #line 3504 "gram_minimal.y" /* yacc.c:1646  */
29782     {
29783 					/*
29784 					 * Note: the CollateClause is momentarily included in
29785 					 * the list built by ColQualList, but we split it out
29786 					 * again in SplitColQualList.
29787 					 */
29788 					CollateClause *n = makeNode(CollateClause);
29789 					n->arg = NULL;
29790 					n->collname = (yyvsp[0].list);
29791 					n->location = (yylsp[-1]);
29792 					(yyval.node) = (Node *) n;
29793 				}
29794 #line 29795 "gram_minimal.c" /* yacc.c:1646  */
29795     break;
29796 
29797   case 471:
29798 #line 3535 "gram_minimal.y" /* yacc.c:1646  */
29799     {
29800 					Constraint *n = makeNode(Constraint);
29801 					n->contype = CONSTR_NOTNULL;
29802 					n->location = (yylsp[-1]);
29803 					(yyval.node) = (Node *)n;
29804 				}
29805 #line 29806 "gram_minimal.c" /* yacc.c:1646  */
29806     break;
29807 
29808   case 472:
29809 #line 3542 "gram_minimal.y" /* yacc.c:1646  */
29810     {
29811 					Constraint *n = makeNode(Constraint);
29812 					n->contype = CONSTR_NULL;
29813 					n->location = (yylsp[0]);
29814 					(yyval.node) = (Node *)n;
29815 				}
29816 #line 29817 "gram_minimal.c" /* yacc.c:1646  */
29817     break;
29818 
29819   case 473:
29820 #line 3549 "gram_minimal.y" /* yacc.c:1646  */
29821     {
29822 					Constraint *n = makeNode(Constraint);
29823 					n->contype = CONSTR_UNIQUE;
29824 					n->location = (yylsp[-2]);
29825 					n->keys = NULL;
29826 					n->options = (yyvsp[-1].list);
29827 					n->indexname = NULL;
29828 					n->indexspace = (yyvsp[0].str);
29829 					(yyval.node) = (Node *)n;
29830 				}
29831 #line 29832 "gram_minimal.c" /* yacc.c:1646  */
29832     break;
29833 
29834   case 474:
29835 #line 3560 "gram_minimal.y" /* yacc.c:1646  */
29836     {
29837 					Constraint *n = makeNode(Constraint);
29838 					n->contype = CONSTR_PRIMARY;
29839 					n->location = (yylsp[-3]);
29840 					n->keys = NULL;
29841 					n->options = (yyvsp[-1].list);
29842 					n->indexname = NULL;
29843 					n->indexspace = (yyvsp[0].str);
29844 					(yyval.node) = (Node *)n;
29845 				}
29846 #line 29847 "gram_minimal.c" /* yacc.c:1646  */
29847     break;
29848 
29849   case 475:
29850 #line 3571 "gram_minimal.y" /* yacc.c:1646  */
29851     {
29852 					Constraint *n = makeNode(Constraint);
29853 					n->contype = CONSTR_CHECK;
29854 					n->location = (yylsp[-4]);
29855 					n->is_no_inherit = (yyvsp[0].boolean);
29856 					n->raw_expr = (yyvsp[-2].node);
29857 					n->cooked_expr = NULL;
29858 					n->skip_validation = false;
29859 					n->initially_valid = true;
29860 					(yyval.node) = (Node *)n;
29861 				}
29862 #line 29863 "gram_minimal.c" /* yacc.c:1646  */
29863     break;
29864 
29865   case 476:
29866 #line 3583 "gram_minimal.y" /* yacc.c:1646  */
29867     {
29868 					Constraint *n = makeNode(Constraint);
29869 					n->contype = CONSTR_DEFAULT;
29870 					n->location = (yylsp[-1]);
29871 					n->raw_expr = (yyvsp[0].node);
29872 					n->cooked_expr = NULL;
29873 					n->skip_validation = false;
29874 					n->initially_valid = true;
29875 					(yyval.node) = (Node *)n;
29876 				}
29877 #line 29878 "gram_minimal.c" /* yacc.c:1646  */
29878     break;
29879 
29880   case 477:
29881 #line 3594 "gram_minimal.y" /* yacc.c:1646  */
29882     {
29883 					Constraint *n = makeNode(Constraint);
29884 					n->contype = CONSTR_IDENTITY;
29885 					n->generated_when = (yyvsp[-3].ival);
29886 					n->options = (yyvsp[0].list);
29887 					n->location = (yylsp[-4]);
29888 					(yyval.node) = (Node *)n;
29889 				}
29890 #line 29891 "gram_minimal.c" /* yacc.c:1646  */
29891     break;
29892 
29893   case 478:
29894 #line 3603 "gram_minimal.y" /* yacc.c:1646  */
29895     {
29896 					Constraint *n = makeNode(Constraint);
29897 					n->contype = CONSTR_GENERATED;
29898 					n->generated_when = (yyvsp[-5].ival);
29899 					n->raw_expr = (yyvsp[-2].node);
29900 					n->cooked_expr = NULL;
29901 					n->location = (yylsp[-6]);
29902 
29903 					/*
29904 					 * Can't do this in the grammar because of shift/reduce
29905 					 * conflicts.  (IDENTITY allows both ALWAYS and BY
29906 					 * DEFAULT, but generated columns only allow ALWAYS.)  We
29907 					 * can also give a more useful error message and location.
29908 					 */
29909 					if ((yyvsp[-5].ival) != ATTRIBUTE_IDENTITY_ALWAYS)
29910 						ereport(ERROR,
29911 								(errcode(ERRCODE_SYNTAX_ERROR),
29912 								 errmsg("for a generated column, GENERATED ALWAYS must be specified"),
29913 								 parser_errposition((yylsp[-5]))));
29914 
29915 					(yyval.node) = (Node *)n;
29916 				}
29917 #line 29918 "gram_minimal.c" /* yacc.c:1646  */
29918     break;
29919 
29920   case 479:
29921 #line 3626 "gram_minimal.y" /* yacc.c:1646  */
29922     {
29923 					Constraint *n = makeNode(Constraint);
29924 					n->contype = CONSTR_FOREIGN;
29925 					n->location = (yylsp[-4]);
29926 					n->pktable			= (yyvsp[-3].range);
29927 					n->fk_attrs			= NIL;
29928 					n->pk_attrs			= (yyvsp[-2].list);
29929 					n->fk_matchtype		= (yyvsp[-1].ival);
29930 					n->fk_upd_action	= (char) ((yyvsp[0].ival) >> 8);
29931 					n->fk_del_action	= (char) ((yyvsp[0].ival) & 0xFF);
29932 					n->skip_validation  = false;
29933 					n->initially_valid  = true;
29934 					(yyval.node) = (Node *)n;
29935 				}
29936 #line 29937 "gram_minimal.c" /* yacc.c:1646  */
29937     break;
29938 
29939   case 480:
29940 #line 3643 "gram_minimal.y" /* yacc.c:1646  */
29941     { (yyval.ival) = ATTRIBUTE_IDENTITY_ALWAYS; }
29942 #line 29943 "gram_minimal.c" /* yacc.c:1646  */
29943     break;
29944 
29945   case 481:
29946 #line 3644 "gram_minimal.y" /* yacc.c:1646  */
29947     { (yyval.ival) = ATTRIBUTE_IDENTITY_BY_DEFAULT; }
29948 #line 29949 "gram_minimal.c" /* yacc.c:1646  */
29949     break;
29950 
29951   case 482:
29952 #line 3664 "gram_minimal.y" /* yacc.c:1646  */
29953     {
29954 					Constraint *n = makeNode(Constraint);
29955 					n->contype = CONSTR_ATTR_DEFERRABLE;
29956 					n->location = (yylsp[0]);
29957 					(yyval.node) = (Node *)n;
29958 				}
29959 #line 29960 "gram_minimal.c" /* yacc.c:1646  */
29960     break;
29961 
29962   case 483:
29963 #line 3671 "gram_minimal.y" /* yacc.c:1646  */
29964     {
29965 					Constraint *n = makeNode(Constraint);
29966 					n->contype = CONSTR_ATTR_NOT_DEFERRABLE;
29967 					n->location = (yylsp[-1]);
29968 					(yyval.node) = (Node *)n;
29969 				}
29970 #line 29971 "gram_minimal.c" /* yacc.c:1646  */
29971     break;
29972 
29973   case 484:
29974 #line 3678 "gram_minimal.y" /* yacc.c:1646  */
29975     {
29976 					Constraint *n = makeNode(Constraint);
29977 					n->contype = CONSTR_ATTR_DEFERRED;
29978 					n->location = (yylsp[-1]);
29979 					(yyval.node) = (Node *)n;
29980 				}
29981 #line 29982 "gram_minimal.c" /* yacc.c:1646  */
29982     break;
29983 
29984   case 485:
29985 #line 3685 "gram_minimal.y" /* yacc.c:1646  */
29986     {
29987 					Constraint *n = makeNode(Constraint);
29988 					n->contype = CONSTR_ATTR_IMMEDIATE;
29989 					n->location = (yylsp[-1]);
29990 					(yyval.node) = (Node *)n;
29991 				}
29992 #line 29993 "gram_minimal.c" /* yacc.c:1646  */
29993     break;
29994 
29995   case 486:
29996 #line 3696 "gram_minimal.y" /* yacc.c:1646  */
29997     {
29998 					TableLikeClause *n = makeNode(TableLikeClause);
29999 					n->relation = (yyvsp[-1].range);
30000 					n->options = (yyvsp[0].ival);
30001 					(yyval.node) = (Node *)n;
30002 				}
30003 #line 30004 "gram_minimal.c" /* yacc.c:1646  */
30004     break;
30005 
30006   case 487:
30007 #line 3705 "gram_minimal.y" /* yacc.c:1646  */
30008     { (yyval.ival) = (yyvsp[-2].ival) | (yyvsp[0].ival); }
30009 #line 30010 "gram_minimal.c" /* yacc.c:1646  */
30010     break;
30011 
30012   case 488:
30013 #line 3706 "gram_minimal.y" /* yacc.c:1646  */
30014     { (yyval.ival) = (yyvsp[-2].ival) & ~(yyvsp[0].ival); }
30015 #line 30016 "gram_minimal.c" /* yacc.c:1646  */
30016     break;
30017 
30018   case 489:
30019 #line 3707 "gram_minimal.y" /* yacc.c:1646  */
30020     { (yyval.ival) = 0; }
30021 #line 30022 "gram_minimal.c" /* yacc.c:1646  */
30022     break;
30023 
30024   case 490:
30025 #line 3711 "gram_minimal.y" /* yacc.c:1646  */
30026     { (yyval.ival) = CREATE_TABLE_LIKE_COMMENTS; }
30027 #line 30028 "gram_minimal.c" /* yacc.c:1646  */
30028     break;
30029 
30030   case 491:
30031 #line 3712 "gram_minimal.y" /* yacc.c:1646  */
30032     { (yyval.ival) = CREATE_TABLE_LIKE_CONSTRAINTS; }
30033 #line 30034 "gram_minimal.c" /* yacc.c:1646  */
30034     break;
30035 
30036   case 492:
30037 #line 3713 "gram_minimal.y" /* yacc.c:1646  */
30038     { (yyval.ival) = CREATE_TABLE_LIKE_DEFAULTS; }
30039 #line 30040 "gram_minimal.c" /* yacc.c:1646  */
30040     break;
30041 
30042   case 493:
30043 #line 3714 "gram_minimal.y" /* yacc.c:1646  */
30044     { (yyval.ival) = CREATE_TABLE_LIKE_IDENTITY; }
30045 #line 30046 "gram_minimal.c" /* yacc.c:1646  */
30046     break;
30047 
30048   case 494:
30049 #line 3715 "gram_minimal.y" /* yacc.c:1646  */
30050     { (yyval.ival) = CREATE_TABLE_LIKE_GENERATED; }
30051 #line 30052 "gram_minimal.c" /* yacc.c:1646  */
30052     break;
30053 
30054   case 495:
30055 #line 3716 "gram_minimal.y" /* yacc.c:1646  */
30056     { (yyval.ival) = CREATE_TABLE_LIKE_INDEXES; }
30057 #line 30058 "gram_minimal.c" /* yacc.c:1646  */
30058     break;
30059 
30060   case 496:
30061 #line 3717 "gram_minimal.y" /* yacc.c:1646  */
30062     { (yyval.ival) = CREATE_TABLE_LIKE_STATISTICS; }
30063 #line 30064 "gram_minimal.c" /* yacc.c:1646  */
30064     break;
30065 
30066   case 497:
30067 #line 3718 "gram_minimal.y" /* yacc.c:1646  */
30068     { (yyval.ival) = CREATE_TABLE_LIKE_STORAGE; }
30069 #line 30070 "gram_minimal.c" /* yacc.c:1646  */
30070     break;
30071 
30072   case 498:
30073 #line 3719 "gram_minimal.y" /* yacc.c:1646  */
30074     { (yyval.ival) = CREATE_TABLE_LIKE_ALL; }
30075 #line 30076 "gram_minimal.c" /* yacc.c:1646  */
30076     break;
30077 
30078   case 499:
30079 #line 3729 "gram_minimal.y" /* yacc.c:1646  */
30080     {
30081 					Constraint *n = castNode(Constraint, (yyvsp[0].node));
30082 					n->conname = (yyvsp[-1].str);
30083 					n->location = (yylsp[-2]);
30084 					(yyval.node) = (Node *) n;
30085 				}
30086 #line 30087 "gram_minimal.c" /* yacc.c:1646  */
30087     break;
30088 
30089   case 500:
30090 #line 3735 "gram_minimal.y" /* yacc.c:1646  */
30091     { (yyval.node) = (yyvsp[0].node); }
30092 #line 30093 "gram_minimal.c" /* yacc.c:1646  */
30093     break;
30094 
30095   case 501:
30096 #line 3740 "gram_minimal.y" /* yacc.c:1646  */
30097     {
30098 					Constraint *n = makeNode(Constraint);
30099 					n->contype = CONSTR_CHECK;
30100 					n->location = (yylsp[-4]);
30101 					n->raw_expr = (yyvsp[-2].node);
30102 					n->cooked_expr = NULL;
30103 					processCASbits((yyvsp[0].ival), (yylsp[0]), "CHECK",
30104 								   NULL, NULL, &n->skip_validation,
30105 								   &n->is_no_inherit, yyscanner);
30106 					n->initially_valid = !n->skip_validation;
30107 					(yyval.node) = (Node *)n;
30108 				}
30109 #line 30110 "gram_minimal.c" /* yacc.c:1646  */
30110     break;
30111 
30112   case 502:
30113 #line 3754 "gram_minimal.y" /* yacc.c:1646  */
30114     {
30115 					Constraint *n = makeNode(Constraint);
30116 					n->contype = CONSTR_UNIQUE;
30117 					n->location = (yylsp[-7]);
30118 					n->keys = (yyvsp[-5].list);
30119 					n->including = (yyvsp[-3].list);
30120 					n->options = (yyvsp[-2].list);
30121 					n->indexname = NULL;
30122 					n->indexspace = (yyvsp[-1].str);
30123 					processCASbits((yyvsp[0].ival), (yylsp[0]), "UNIQUE",
30124 								   &n->deferrable, &n->initdeferred, NULL,
30125 								   NULL, yyscanner);
30126 					(yyval.node) = (Node *)n;
30127 				}
30128 #line 30129 "gram_minimal.c" /* yacc.c:1646  */
30129     break;
30130 
30131   case 503:
30132 #line 3769 "gram_minimal.y" /* yacc.c:1646  */
30133     {
30134 					Constraint *n = makeNode(Constraint);
30135 					n->contype = CONSTR_UNIQUE;
30136 					n->location = (yylsp[-2]);
30137 					n->keys = NIL;
30138 					n->including = NIL;
30139 					n->options = NIL;
30140 					n->indexname = (yyvsp[-1].str);
30141 					n->indexspace = NULL;
30142 					processCASbits((yyvsp[0].ival), (yylsp[0]), "UNIQUE",
30143 								   &n->deferrable, &n->initdeferred, NULL,
30144 								   NULL, yyscanner);
30145 					(yyval.node) = (Node *)n;
30146 				}
30147 #line 30148 "gram_minimal.c" /* yacc.c:1646  */
30148     break;
30149 
30150   case 504:
30151 #line 3785 "gram_minimal.y" /* yacc.c:1646  */
30152     {
30153 					Constraint *n = makeNode(Constraint);
30154 					n->contype = CONSTR_PRIMARY;
30155 					n->location = (yylsp[-8]);
30156 					n->keys = (yyvsp[-5].list);
30157 					n->including = (yyvsp[-3].list);
30158 					n->options = (yyvsp[-2].list);
30159 					n->indexname = NULL;
30160 					n->indexspace = (yyvsp[-1].str);
30161 					processCASbits((yyvsp[0].ival), (yylsp[0]), "PRIMARY KEY",
30162 								   &n->deferrable, &n->initdeferred, NULL,
30163 								   NULL, yyscanner);
30164 					(yyval.node) = (Node *)n;
30165 				}
30166 #line 30167 "gram_minimal.c" /* yacc.c:1646  */
30167     break;
30168 
30169   case 505:
30170 #line 3800 "gram_minimal.y" /* yacc.c:1646  */
30171     {
30172 					Constraint *n = makeNode(Constraint);
30173 					n->contype = CONSTR_PRIMARY;
30174 					n->location = (yylsp[-3]);
30175 					n->keys = NIL;
30176 					n->including = NIL;
30177 					n->options = NIL;
30178 					n->indexname = (yyvsp[-1].str);
30179 					n->indexspace = NULL;
30180 					processCASbits((yyvsp[0].ival), (yylsp[0]), "PRIMARY KEY",
30181 								   &n->deferrable, &n->initdeferred, NULL,
30182 								   NULL, yyscanner);
30183 					(yyval.node) = (Node *)n;
30184 				}
30185 #line 30186 "gram_minimal.c" /* yacc.c:1646  */
30186     break;
30187 
30188   case 506:
30189 #line 3817 "gram_minimal.y" /* yacc.c:1646  */
30190     {
30191 					Constraint *n = makeNode(Constraint);
30192 					n->contype = CONSTR_EXCLUSION;
30193 					n->location = (yylsp[-9]);
30194 					n->access_method	= (yyvsp[-8].str);
30195 					n->exclusions		= (yyvsp[-6].list);
30196 					n->including		= (yyvsp[-4].list);
30197 					n->options			= (yyvsp[-3].list);
30198 					n->indexname		= NULL;
30199 					n->indexspace		= (yyvsp[-2].str);
30200 					n->where_clause		= (yyvsp[-1].node);
30201 					processCASbits((yyvsp[0].ival), (yylsp[0]), "EXCLUDE",
30202 								   &n->deferrable, &n->initdeferred, NULL,
30203 								   NULL, yyscanner);
30204 					(yyval.node) = (Node *)n;
30205 				}
30206 #line 30207 "gram_minimal.c" /* yacc.c:1646  */
30207     break;
30208 
30209   case 507:
30210 #line 3835 "gram_minimal.y" /* yacc.c:1646  */
30211     {
30212 					Constraint *n = makeNode(Constraint);
30213 					n->contype = CONSTR_FOREIGN;
30214 					n->location = (yylsp[-10]);
30215 					n->pktable			= (yyvsp[-4].range);
30216 					n->fk_attrs			= (yyvsp[-7].list);
30217 					n->pk_attrs			= (yyvsp[-3].list);
30218 					n->fk_matchtype		= (yyvsp[-2].ival);
30219 					n->fk_upd_action	= (char) ((yyvsp[-1].ival) >> 8);
30220 					n->fk_del_action	= (char) ((yyvsp[-1].ival) & 0xFF);
30221 					processCASbits((yyvsp[0].ival), (yylsp[0]), "FOREIGN KEY",
30222 								   &n->deferrable, &n->initdeferred,
30223 								   &n->skip_validation, NULL,
30224 								   yyscanner);
30225 					n->initially_valid = !n->skip_validation;
30226 					(yyval.node) = (Node *)n;
30227 				}
30228 #line 30229 "gram_minimal.c" /* yacc.c:1646  */
30229     break;
30230 
30231   case 508:
30232 #line 3854 "gram_minimal.y" /* yacc.c:1646  */
30233     {  (yyval.boolean) = true; }
30234 #line 30235 "gram_minimal.c" /* yacc.c:1646  */
30235     break;
30236 
30237   case 509:
30238 #line 3855 "gram_minimal.y" /* yacc.c:1646  */
30239     {  (yyval.boolean) = false; }
30240 #line 30241 "gram_minimal.c" /* yacc.c:1646  */
30241     break;
30242 
30243   case 510:
30244 #line 3859 "gram_minimal.y" /* yacc.c:1646  */
30245     { (yyval.list) = (yyvsp[-1].list); }
30246 #line 30247 "gram_minimal.c" /* yacc.c:1646  */
30247     break;
30248 
30249   case 511:
30250 #line 3860 "gram_minimal.y" /* yacc.c:1646  */
30251     { (yyval.list) = NIL; }
30252 #line 30253 "gram_minimal.c" /* yacc.c:1646  */
30253     break;
30254 
30255   case 512:
30256 #line 3864 "gram_minimal.y" /* yacc.c:1646  */
30257     { (yyval.list) = list_make1((yyvsp[0].node)); }
30258 #line 30259 "gram_minimal.c" /* yacc.c:1646  */
30259     break;
30260 
30261   case 513:
30262 #line 3865 "gram_minimal.y" /* yacc.c:1646  */
30263     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
30264 #line 30265 "gram_minimal.c" /* yacc.c:1646  */
30265     break;
30266 
30267   case 514:
30268 #line 3869 "gram_minimal.y" /* yacc.c:1646  */
30269     {
30270 					(yyval.node) = (Node *) makeString((yyvsp[0].str));
30271 				}
30272 #line 30273 "gram_minimal.c" /* yacc.c:1646  */
30273     break;
30274 
30275   case 515:
30276 #line 3874 "gram_minimal.y" /* yacc.c:1646  */
30277     { (yyval.list) = (yyvsp[-1].list); }
30278 #line 30279 "gram_minimal.c" /* yacc.c:1646  */
30279     break;
30280 
30281   case 516:
30282 #line 3875 "gram_minimal.y" /* yacc.c:1646  */
30283     { (yyval.list) = NIL; }
30284 #line 30285 "gram_minimal.c" /* yacc.c:1646  */
30285     break;
30286 
30287   case 517:
30288 #line 3879 "gram_minimal.y" /* yacc.c:1646  */
30289     {
30290 				(yyval.ival) = FKCONSTR_MATCH_FULL;
30291 			}
30292 #line 30293 "gram_minimal.c" /* yacc.c:1646  */
30293     break;
30294 
30295   case 518:
30296 #line 3883 "gram_minimal.y" /* yacc.c:1646  */
30297     {
30298 				ereport(ERROR,
30299 						(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
30300 						 errmsg("MATCH PARTIAL not yet implemented"),
30301 						 parser_errposition((yylsp[-1]))));
30302 				(yyval.ival) = FKCONSTR_MATCH_PARTIAL;
30303 			}
30304 #line 30305 "gram_minimal.c" /* yacc.c:1646  */
30305     break;
30306 
30307   case 519:
30308 #line 3891 "gram_minimal.y" /* yacc.c:1646  */
30309     {
30310 				(yyval.ival) = FKCONSTR_MATCH_SIMPLE;
30311 			}
30312 #line 30313 "gram_minimal.c" /* yacc.c:1646  */
30313     break;
30314 
30315   case 520:
30316 #line 3895 "gram_minimal.y" /* yacc.c:1646  */
30317     {
30318 				(yyval.ival) = FKCONSTR_MATCH_SIMPLE;
30319 			}
30320 #line 30321 "gram_minimal.c" /* yacc.c:1646  */
30321     break;
30322 
30323   case 521:
30324 #line 3901 "gram_minimal.y" /* yacc.c:1646  */
30325     { (yyval.list) = list_make1((yyvsp[0].list)); }
30326 #line 30327 "gram_minimal.c" /* yacc.c:1646  */
30327     break;
30328 
30329   case 522:
30330 #line 3903 "gram_minimal.y" /* yacc.c:1646  */
30331     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].list)); }
30332 #line 30333 "gram_minimal.c" /* yacc.c:1646  */
30333     break;
30334 
30335   case 523:
30336 #line 3907 "gram_minimal.y" /* yacc.c:1646  */
30337     {
30338 				(yyval.list) = list_make2((yyvsp[-2].ielem), (yyvsp[0].list));
30339 			}
30340 #line 30341 "gram_minimal.c" /* yacc.c:1646  */
30341     break;
30342 
30343   case 524:
30344 #line 3912 "gram_minimal.y" /* yacc.c:1646  */
30345     {
30346 				(yyval.list) = list_make2((yyvsp[-5].ielem), (yyvsp[-1].list));
30347 			}
30348 #line 30349 "gram_minimal.c" /* yacc.c:1646  */
30349     break;
30350 
30351   case 525:
30352 #line 3918 "gram_minimal.y" /* yacc.c:1646  */
30353     { (yyval.node) = (yyvsp[-1].node); }
30354 #line 30355 "gram_minimal.c" /* yacc.c:1646  */
30355     break;
30356 
30357   case 526:
30358 #line 3919 "gram_minimal.y" /* yacc.c:1646  */
30359     { (yyval.node) = NULL; }
30360 #line 30361 "gram_minimal.c" /* yacc.c:1646  */
30361     break;
30362 
30363   case 527:
30364 #line 3930 "gram_minimal.y" /* yacc.c:1646  */
30365     { (yyval.ival) = ((yyvsp[0].ival) << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); }
30366 #line 30367 "gram_minimal.c" /* yacc.c:1646  */
30367     break;
30368 
30369   case 528:
30370 #line 3932 "gram_minimal.y" /* yacc.c:1646  */
30371     { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | ((yyvsp[0].ival) & 0xFF); }
30372 #line 30373 "gram_minimal.c" /* yacc.c:1646  */
30373     break;
30374 
30375   case 529:
30376 #line 3934 "gram_minimal.y" /* yacc.c:1646  */
30377     { (yyval.ival) = ((yyvsp[-1].ival) << 8) | ((yyvsp[0].ival) & 0xFF); }
30378 #line 30379 "gram_minimal.c" /* yacc.c:1646  */
30379     break;
30380 
30381   case 530:
30382 #line 3936 "gram_minimal.y" /* yacc.c:1646  */
30383     { (yyval.ival) = ((yyvsp[0].ival) << 8) | ((yyvsp[-1].ival) & 0xFF); }
30384 #line 30385 "gram_minimal.c" /* yacc.c:1646  */
30385     break;
30386 
30387   case 531:
30388 #line 3938 "gram_minimal.y" /* yacc.c:1646  */
30389     { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); }
30390 #line 30391 "gram_minimal.c" /* yacc.c:1646  */
30391     break;
30392 
30393   case 532:
30394 #line 3941 "gram_minimal.y" /* yacc.c:1646  */
30395     { (yyval.ival) = (yyvsp[0].ival); }
30396 #line 30397 "gram_minimal.c" /* yacc.c:1646  */
30397     break;
30398 
30399   case 533:
30400 #line 3944 "gram_minimal.y" /* yacc.c:1646  */
30401     { (yyval.ival) = (yyvsp[0].ival); }
30402 #line 30403 "gram_minimal.c" /* yacc.c:1646  */
30403     break;
30404 
30405   case 534:
30406 #line 3948 "gram_minimal.y" /* yacc.c:1646  */
30407     { (yyval.ival) = FKCONSTR_ACTION_NOACTION; }
30408 #line 30409 "gram_minimal.c" /* yacc.c:1646  */
30409     break;
30410 
30411   case 535:
30412 #line 3949 "gram_minimal.y" /* yacc.c:1646  */
30413     { (yyval.ival) = FKCONSTR_ACTION_RESTRICT; }
30414 #line 30415 "gram_minimal.c" /* yacc.c:1646  */
30415     break;
30416 
30417   case 536:
30418 #line 3950 "gram_minimal.y" /* yacc.c:1646  */
30419     { (yyval.ival) = FKCONSTR_ACTION_CASCADE; }
30420 #line 30421 "gram_minimal.c" /* yacc.c:1646  */
30421     break;
30422 
30423   case 537:
30424 #line 3951 "gram_minimal.y" /* yacc.c:1646  */
30425     { (yyval.ival) = FKCONSTR_ACTION_SETNULL; }
30426 #line 30427 "gram_minimal.c" /* yacc.c:1646  */
30427     break;
30428 
30429   case 538:
30430 #line 3952 "gram_minimal.y" /* yacc.c:1646  */
30431     { (yyval.ival) = FKCONSTR_ACTION_SETDEFAULT; }
30432 #line 30433 "gram_minimal.c" /* yacc.c:1646  */
30433     break;
30434 
30435   case 539:
30436 #line 3955 "gram_minimal.y" /* yacc.c:1646  */
30437     { (yyval.list) = (yyvsp[-1].list); }
30438 #line 30439 "gram_minimal.c" /* yacc.c:1646  */
30439     break;
30440 
30441   case 540:
30442 #line 3956 "gram_minimal.y" /* yacc.c:1646  */
30443     { (yyval.list) = NIL; }
30444 #line 30445 "gram_minimal.c" /* yacc.c:1646  */
30445     break;
30446 
30447   case 541:
30448 #line 3960 "gram_minimal.y" /* yacc.c:1646  */
30449     { (yyval.partspec) = (yyvsp[0].partspec); }
30450 #line 30451 "gram_minimal.c" /* yacc.c:1646  */
30451     break;
30452 
30453   case 542:
30454 #line 3961 "gram_minimal.y" /* yacc.c:1646  */
30455     { (yyval.partspec) = NULL; }
30456 #line 30457 "gram_minimal.c" /* yacc.c:1646  */
30457     break;
30458 
30459   case 543:
30460 #line 3965 "gram_minimal.y" /* yacc.c:1646  */
30461     {
30462 					PartitionSpec *n = makeNode(PartitionSpec);
30463 
30464 					n->strategy = (yyvsp[-3].str);
30465 					n->partParams = (yyvsp[-1].list);
30466 					n->location = (yylsp[-5]);
30467 
30468 					(yyval.partspec) = n;
30469 				}
30470 #line 30471 "gram_minimal.c" /* yacc.c:1646  */
30471     break;
30472 
30473   case 544:
30474 #line 3976 "gram_minimal.y" /* yacc.c:1646  */
30475     { (yyval.list) = list_make1((yyvsp[0].partelem)); }
30476 #line 30477 "gram_minimal.c" /* yacc.c:1646  */
30477     break;
30478 
30479   case 545:
30480 #line 3977 "gram_minimal.y" /* yacc.c:1646  */
30481     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].partelem)); }
30482 #line 30483 "gram_minimal.c" /* yacc.c:1646  */
30483     break;
30484 
30485   case 546:
30486 #line 3981 "gram_minimal.y" /* yacc.c:1646  */
30487     {
30488 					PartitionElem *n = makeNode(PartitionElem);
30489 
30490 					n->name = (yyvsp[-2].str);
30491 					n->expr = NULL;
30492 					n->collation = (yyvsp[-1].list);
30493 					n->opclass = (yyvsp[0].list);
30494 					n->location = (yylsp[-2]);
30495 					(yyval.partelem) = n;
30496 				}
30497 #line 30498 "gram_minimal.c" /* yacc.c:1646  */
30498     break;
30499 
30500   case 547:
30501 #line 3992 "gram_minimal.y" /* yacc.c:1646  */
30502     {
30503 					PartitionElem *n = makeNode(PartitionElem);
30504 
30505 					n->name = NULL;
30506 					n->expr = (yyvsp[-2].node);
30507 					n->collation = (yyvsp[-1].list);
30508 					n->opclass = (yyvsp[0].list);
30509 					n->location = (yylsp[-2]);
30510 					(yyval.partelem) = n;
30511 				}
30512 #line 30513 "gram_minimal.c" /* yacc.c:1646  */
30513     break;
30514 
30515   case 548:
30516 #line 4003 "gram_minimal.y" /* yacc.c:1646  */
30517     {
30518 					PartitionElem *n = makeNode(PartitionElem);
30519 
30520 					n->name = NULL;
30521 					n->expr = (yyvsp[-3].node);
30522 					n->collation = (yyvsp[-1].list);
30523 					n->opclass = (yyvsp[0].list);
30524 					n->location = (yylsp[-4]);
30525 					(yyval.partelem) = n;
30526 				}
30527 #line 30528 "gram_minimal.c" /* yacc.c:1646  */
30528     break;
30529 
30530   case 549:
30531 #line 4016 "gram_minimal.y" /* yacc.c:1646  */
30532     { (yyval.str) = (yyvsp[0].str); }
30533 #line 30534 "gram_minimal.c" /* yacc.c:1646  */
30534     break;
30535 
30536   case 550:
30537 #line 4017 "gram_minimal.y" /* yacc.c:1646  */
30538     { (yyval.str) = NULL; }
30539 #line 30540 "gram_minimal.c" /* yacc.c:1646  */
30540     break;
30541 
30542   case 551:
30543 #line 4022 "gram_minimal.y" /* yacc.c:1646  */
30544     { (yyval.list) = (yyvsp[0].list); }
30545 #line 30546 "gram_minimal.c" /* yacc.c:1646  */
30546     break;
30547 
30548   case 552:
30549 #line 4023 "gram_minimal.y" /* yacc.c:1646  */
30550     { (yyval.list) = NIL; }
30551 #line 30552 "gram_minimal.c" /* yacc.c:1646  */
30552     break;
30553 
30554   case 553:
30555 #line 4024 "gram_minimal.y" /* yacc.c:1646  */
30556     { (yyval.list) = NIL; }
30557 #line 30558 "gram_minimal.c" /* yacc.c:1646  */
30558     break;
30559 
30560   case 554:
30561 #line 4027 "gram_minimal.y" /* yacc.c:1646  */
30562     { (yyval.oncommit) = ONCOMMIT_DROP; }
30563 #line 30564 "gram_minimal.c" /* yacc.c:1646  */
30564     break;
30565 
30566   case 555:
30567 #line 4028 "gram_minimal.y" /* yacc.c:1646  */
30568     { (yyval.oncommit) = ONCOMMIT_DELETE_ROWS; }
30569 #line 30570 "gram_minimal.c" /* yacc.c:1646  */
30570     break;
30571 
30572   case 556:
30573 #line 4029 "gram_minimal.y" /* yacc.c:1646  */
30574     { (yyval.oncommit) = ONCOMMIT_PRESERVE_ROWS; }
30575 #line 30576 "gram_minimal.c" /* yacc.c:1646  */
30576     break;
30577 
30578   case 557:
30579 #line 4030 "gram_minimal.y" /* yacc.c:1646  */
30580     { (yyval.oncommit) = ONCOMMIT_NOOP; }
30581 #line 30582 "gram_minimal.c" /* yacc.c:1646  */
30582     break;
30583 
30584   case 558:
30585 #line 4033 "gram_minimal.y" /* yacc.c:1646  */
30586     { (yyval.str) = (yyvsp[0].str); }
30587 #line 30588 "gram_minimal.c" /* yacc.c:1646  */
30588     break;
30589 
30590   case 559:
30591 #line 4034 "gram_minimal.y" /* yacc.c:1646  */
30592     { (yyval.str) = NULL; }
30593 #line 30594 "gram_minimal.c" /* yacc.c:1646  */
30594     break;
30595 
30596   case 560:
30597 #line 4037 "gram_minimal.y" /* yacc.c:1646  */
30598     { (yyval.str) = (yyvsp[0].str); }
30599 #line 30600 "gram_minimal.c" /* yacc.c:1646  */
30600     break;
30601 
30602   case 561:
30603 #line 4038 "gram_minimal.y" /* yacc.c:1646  */
30604     { (yyval.str) = NULL; }
30605 #line 30606 "gram_minimal.c" /* yacc.c:1646  */
30606     break;
30607 
30608   case 562:
30609 #line 4041 "gram_minimal.y" /* yacc.c:1646  */
30610     { (yyval.str) = (yyvsp[0].str); }
30611 #line 30612 "gram_minimal.c" /* yacc.c:1646  */
30612     break;
30613 
30614   case 563:
30615 #line 4061 "gram_minimal.y" /* yacc.c:1646  */
30616     {
30617 					CreateStatsStmt *n = makeNode(CreateStatsStmt);
30618 					n->defnames = (yyvsp[-5].list);
30619 					n->stat_types = (yyvsp[-4].list);
30620 					n->exprs = (yyvsp[-2].list);
30621 					n->relations = (yyvsp[0].list);
30622 					n->stxcomment = NULL;
30623 					n->if_not_exists = false;
30624 					(yyval.node) = (Node *)n;
30625 				}
30626 #line 30627 "gram_minimal.c" /* yacc.c:1646  */
30627     break;
30628 
30629   case 564:
30630 #line 4073 "gram_minimal.y" /* yacc.c:1646  */
30631     {
30632 					CreateStatsStmt *n = makeNode(CreateStatsStmt);
30633 					n->defnames = (yyvsp[-5].list);
30634 					n->stat_types = (yyvsp[-4].list);
30635 					n->exprs = (yyvsp[-2].list);
30636 					n->relations = (yyvsp[0].list);
30637 					n->stxcomment = NULL;
30638 					n->if_not_exists = true;
30639 					(yyval.node) = (Node *)n;
30640 				}
30641 #line 30642 "gram_minimal.c" /* yacc.c:1646  */
30642     break;
30643 
30644   case 565:
30645 #line 4096 "gram_minimal.y" /* yacc.c:1646  */
30646     {
30647 					AlterStatsStmt *n = makeNode(AlterStatsStmt);
30648 					n->defnames = (yyvsp[-3].list);
30649 					n->missing_ok = false;
30650 					n->stxstattarget = (yyvsp[0].ival);
30651 					(yyval.node) = (Node *)n;
30652 				}
30653 #line 30654 "gram_minimal.c" /* yacc.c:1646  */
30654     break;
30655 
30656   case 566:
30657 #line 4104 "gram_minimal.y" /* yacc.c:1646  */
30658     {
30659 					AlterStatsStmt *n = makeNode(AlterStatsStmt);
30660 					n->defnames = (yyvsp[-3].list);
30661 					n->missing_ok = true;
30662 					n->stxstattarget = (yyvsp[0].ival);
30663 					(yyval.node) = (Node *)n;
30664 				}
30665 #line 30666 "gram_minimal.c" /* yacc.c:1646  */
30666     break;
30667 
30668   case 567:
30669 #line 4125 "gram_minimal.y" /* yacc.c:1646  */
30670     {
30671 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
30672 					ctas->query = (yyvsp[-1].node);
30673 					ctas->into = (yyvsp[-3].into);
30674 					ctas->relkind = OBJECT_TABLE;
30675 					ctas->is_select_into = false;
30676 					ctas->if_not_exists = false;
30677 					/* cram additional flags into the IntoClause */
30678 					(yyvsp[-3].into)->rel->relpersistence = (yyvsp[-5].ival);
30679 					(yyvsp[-3].into)->skipData = !((yyvsp[0].boolean));
30680 					(yyval.node) = (Node *) ctas;
30681 				}
30682 #line 30683 "gram_minimal.c" /* yacc.c:1646  */
30683     break;
30684 
30685   case 568:
30686 #line 4138 "gram_minimal.y" /* yacc.c:1646  */
30687     {
30688 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
30689 					ctas->query = (yyvsp[-1].node);
30690 					ctas->into = (yyvsp[-3].into);
30691 					ctas->relkind = OBJECT_TABLE;
30692 					ctas->is_select_into = false;
30693 					ctas->if_not_exists = true;
30694 					/* cram additional flags into the IntoClause */
30695 					(yyvsp[-3].into)->rel->relpersistence = (yyvsp[-8].ival);
30696 					(yyvsp[-3].into)->skipData = !((yyvsp[0].boolean));
30697 					(yyval.node) = (Node *) ctas;
30698 				}
30699 #line 30700 "gram_minimal.c" /* yacc.c:1646  */
30700     break;
30701 
30702   case 569:
30703 #line 4155 "gram_minimal.y" /* yacc.c:1646  */
30704     {
30705 					(yyval.into) = makeNode(IntoClause);
30706 					(yyval.into)->rel = (yyvsp[-5].range);
30707 					(yyval.into)->colNames = (yyvsp[-4].list);
30708 					(yyval.into)->accessMethod = (yyvsp[-3].str);
30709 					(yyval.into)->options = (yyvsp[-2].list);
30710 					(yyval.into)->onCommit = (yyvsp[-1].oncommit);
30711 					(yyval.into)->tableSpaceName = (yyvsp[0].str);
30712 					(yyval.into)->viewQuery = NULL;
30713 					(yyval.into)->skipData = false;		/* might get changed later */
30714 				}
30715 #line 30716 "gram_minimal.c" /* yacc.c:1646  */
30716     break;
30717 
30718   case 570:
30719 #line 4169 "gram_minimal.y" /* yacc.c:1646  */
30720     { (yyval.boolean) = true; }
30721 #line 30722 "gram_minimal.c" /* yacc.c:1646  */
30722     break;
30723 
30724   case 571:
30725 #line 4170 "gram_minimal.y" /* yacc.c:1646  */
30726     { (yyval.boolean) = false; }
30727 #line 30728 "gram_minimal.c" /* yacc.c:1646  */
30728     break;
30729 
30730   case 572:
30731 #line 4171 "gram_minimal.y" /* yacc.c:1646  */
30732     { (yyval.boolean) = true; }
30733 #line 30734 "gram_minimal.c" /* yacc.c:1646  */
30734     break;
30735 
30736   case 573:
30737 #line 4184 "gram_minimal.y" /* yacc.c:1646  */
30738     {
30739 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
30740 					ctas->query = (yyvsp[-1].node);
30741 					ctas->into = (yyvsp[-3].into);
30742 					ctas->relkind = OBJECT_MATVIEW;
30743 					ctas->is_select_into = false;
30744 					ctas->if_not_exists = false;
30745 					/* cram additional flags into the IntoClause */
30746 					(yyvsp[-3].into)->rel->relpersistence = (yyvsp[-6].ival);
30747 					(yyvsp[-3].into)->skipData = !((yyvsp[0].boolean));
30748 					(yyval.node) = (Node *) ctas;
30749 				}
30750 #line 30751 "gram_minimal.c" /* yacc.c:1646  */
30751     break;
30752 
30753   case 574:
30754 #line 4197 "gram_minimal.y" /* yacc.c:1646  */
30755     {
30756 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
30757 					ctas->query = (yyvsp[-1].node);
30758 					ctas->into = (yyvsp[-3].into);
30759 					ctas->relkind = OBJECT_MATVIEW;
30760 					ctas->is_select_into = false;
30761 					ctas->if_not_exists = true;
30762 					/* cram additional flags into the IntoClause */
30763 					(yyvsp[-3].into)->rel->relpersistence = (yyvsp[-9].ival);
30764 					(yyvsp[-3].into)->skipData = !((yyvsp[0].boolean));
30765 					(yyval.node) = (Node *) ctas;
30766 				}
30767 #line 30768 "gram_minimal.c" /* yacc.c:1646  */
30768     break;
30769 
30770   case 575:
30771 #line 4213 "gram_minimal.y" /* yacc.c:1646  */
30772     {
30773 					(yyval.into) = makeNode(IntoClause);
30774 					(yyval.into)->rel = (yyvsp[-4].range);
30775 					(yyval.into)->colNames = (yyvsp[-3].list);
30776 					(yyval.into)->accessMethod = (yyvsp[-2].str);
30777 					(yyval.into)->options = (yyvsp[-1].list);
30778 					(yyval.into)->onCommit = ONCOMMIT_NOOP;
30779 					(yyval.into)->tableSpaceName = (yyvsp[0].str);
30780 					(yyval.into)->viewQuery = NULL;		/* filled at analysis time */
30781 					(yyval.into)->skipData = false;		/* might get changed later */
30782 				}
30783 #line 30784 "gram_minimal.c" /* yacc.c:1646  */
30784     break;
30785 
30786   case 576:
30787 #line 4226 "gram_minimal.y" /* yacc.c:1646  */
30788     { (yyval.ival) = RELPERSISTENCE_UNLOGGED; }
30789 #line 30790 "gram_minimal.c" /* yacc.c:1646  */
30790     break;
30791 
30792   case 577:
30793 #line 4227 "gram_minimal.y" /* yacc.c:1646  */
30794     { (yyval.ival) = RELPERSISTENCE_PERMANENT; }
30795 #line 30796 "gram_minimal.c" /* yacc.c:1646  */
30796     break;
30797 
30798   case 578:
30799 #line 4240 "gram_minimal.y" /* yacc.c:1646  */
30800     {
30801 					RefreshMatViewStmt *n = makeNode(RefreshMatViewStmt);
30802 					n->concurrent = (yyvsp[-2].boolean);
30803 					n->relation = (yyvsp[-1].range);
30804 					n->skipData = !((yyvsp[0].boolean));
30805 					(yyval.node) = (Node *) n;
30806 				}
30807 #line 30808 "gram_minimal.c" /* yacc.c:1646  */
30808     break;
30809 
30810   case 579:
30811 #line 4260 "gram_minimal.y" /* yacc.c:1646  */
30812     {
30813 					CreateSeqStmt *n = makeNode(CreateSeqStmt);
30814 					(yyvsp[-1].range)->relpersistence = (yyvsp[-3].ival);
30815 					n->sequence = (yyvsp[-1].range);
30816 					n->options = (yyvsp[0].list);
30817 					n->ownerId = InvalidOid;
30818 					n->if_not_exists = false;
30819 					(yyval.node) = (Node *)n;
30820 				}
30821 #line 30822 "gram_minimal.c" /* yacc.c:1646  */
30822     break;
30823 
30824   case 580:
30825 #line 4270 "gram_minimal.y" /* yacc.c:1646  */
30826     {
30827 					CreateSeqStmt *n = makeNode(CreateSeqStmt);
30828 					(yyvsp[-1].range)->relpersistence = (yyvsp[-6].ival);
30829 					n->sequence = (yyvsp[-1].range);
30830 					n->options = (yyvsp[0].list);
30831 					n->ownerId = InvalidOid;
30832 					n->if_not_exists = true;
30833 					(yyval.node) = (Node *)n;
30834 				}
30835 #line 30836 "gram_minimal.c" /* yacc.c:1646  */
30836     break;
30837 
30838   case 581:
30839 #line 4283 "gram_minimal.y" /* yacc.c:1646  */
30840     {
30841 					AlterSeqStmt *n = makeNode(AlterSeqStmt);
30842 					n->sequence = (yyvsp[-1].range);
30843 					n->options = (yyvsp[0].list);
30844 					n->missing_ok = false;
30845 					(yyval.node) = (Node *)n;
30846 				}
30847 #line 30848 "gram_minimal.c" /* yacc.c:1646  */
30848     break;
30849 
30850   case 582:
30851 #line 4291 "gram_minimal.y" /* yacc.c:1646  */
30852     {
30853 					AlterSeqStmt *n = makeNode(AlterSeqStmt);
30854 					n->sequence = (yyvsp[-1].range);
30855 					n->options = (yyvsp[0].list);
30856 					n->missing_ok = true;
30857 					(yyval.node) = (Node *)n;
30858 				}
30859 #line 30860 "gram_minimal.c" /* yacc.c:1646  */
30860     break;
30861 
30862   case 583:
30863 #line 4301 "gram_minimal.y" /* yacc.c:1646  */
30864     { (yyval.list) = (yyvsp[0].list); }
30865 #line 30866 "gram_minimal.c" /* yacc.c:1646  */
30866     break;
30867 
30868   case 584:
30869 #line 4302 "gram_minimal.y" /* yacc.c:1646  */
30870     { (yyval.list) = NIL; }
30871 #line 30872 "gram_minimal.c" /* yacc.c:1646  */
30872     break;
30873 
30874   case 585:
30875 #line 4305 "gram_minimal.y" /* yacc.c:1646  */
30876     { (yyval.list) = (yyvsp[-1].list); }
30877 #line 30878 "gram_minimal.c" /* yacc.c:1646  */
30878     break;
30879 
30880   case 586:
30881 #line 4306 "gram_minimal.y" /* yacc.c:1646  */
30882     { (yyval.list) = NIL; }
30883 #line 30884 "gram_minimal.c" /* yacc.c:1646  */
30884     break;
30885 
30886   case 587:
30887 #line 4309 "gram_minimal.y" /* yacc.c:1646  */
30888     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
30889 #line 30890 "gram_minimal.c" /* yacc.c:1646  */
30890     break;
30891 
30892   case 588:
30893 #line 4310 "gram_minimal.y" /* yacc.c:1646  */
30894     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
30895 #line 30896 "gram_minimal.c" /* yacc.c:1646  */
30896     break;
30897 
30898   case 589:
30899 #line 4314 "gram_minimal.y" /* yacc.c:1646  */
30900     {
30901 					(yyval.defelt) = makeDefElem("as", (Node *)(yyvsp[0].typnam), (yylsp[-1]));
30902 				}
30903 #line 30904 "gram_minimal.c" /* yacc.c:1646  */
30904     break;
30905 
30906   case 590:
30907 #line 4318 "gram_minimal.y" /* yacc.c:1646  */
30908     {
30909 					(yyval.defelt) = makeDefElem("cache", (Node *)(yyvsp[0].value), (yylsp[-1]));
30910 				}
30911 #line 30912 "gram_minimal.c" /* yacc.c:1646  */
30912     break;
30913 
30914   case 591:
30915 #line 4322 "gram_minimal.y" /* yacc.c:1646  */
30916     {
30917 					(yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(true), (yylsp[0]));
30918 				}
30919 #line 30920 "gram_minimal.c" /* yacc.c:1646  */
30920     break;
30921 
30922   case 592:
30923 #line 4326 "gram_minimal.y" /* yacc.c:1646  */
30924     {
30925 					(yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(false), (yylsp[-1]));
30926 				}
30927 #line 30928 "gram_minimal.c" /* yacc.c:1646  */
30928     break;
30929 
30930   case 593:
30931 #line 4330 "gram_minimal.y" /* yacc.c:1646  */
30932     {
30933 					(yyval.defelt) = makeDefElem("increment", (Node *)(yyvsp[0].value), (yylsp[-2]));
30934 				}
30935 #line 30936 "gram_minimal.c" /* yacc.c:1646  */
30936     break;
30937 
30938   case 594:
30939 #line 4334 "gram_minimal.y" /* yacc.c:1646  */
30940     {
30941 					(yyval.defelt) = makeDefElem("maxvalue", (Node *)(yyvsp[0].value), (yylsp[-1]));
30942 				}
30943 #line 30944 "gram_minimal.c" /* yacc.c:1646  */
30944     break;
30945 
30946   case 595:
30947 #line 4338 "gram_minimal.y" /* yacc.c:1646  */
30948     {
30949 					(yyval.defelt) = makeDefElem("minvalue", (Node *)(yyvsp[0].value), (yylsp[-1]));
30950 				}
30951 #line 30952 "gram_minimal.c" /* yacc.c:1646  */
30952     break;
30953 
30954   case 596:
30955 #line 4342 "gram_minimal.y" /* yacc.c:1646  */
30956     {
30957 					(yyval.defelt) = makeDefElem("maxvalue", NULL, (yylsp[-1]));
30958 				}
30959 #line 30960 "gram_minimal.c" /* yacc.c:1646  */
30960     break;
30961 
30962   case 597:
30963 #line 4346 "gram_minimal.y" /* yacc.c:1646  */
30964     {
30965 					(yyval.defelt) = makeDefElem("minvalue", NULL, (yylsp[-1]));
30966 				}
30967 #line 30968 "gram_minimal.c" /* yacc.c:1646  */
30968     break;
30969 
30970   case 598:
30971 #line 4350 "gram_minimal.y" /* yacc.c:1646  */
30972     {
30973 					(yyval.defelt) = makeDefElem("owned_by", (Node *)(yyvsp[0].list), (yylsp[-2]));
30974 				}
30975 #line 30976 "gram_minimal.c" /* yacc.c:1646  */
30976     break;
30977 
30978   case 599:
30979 #line 4354 "gram_minimal.y" /* yacc.c:1646  */
30980     {
30981 					/* not documented, only used by pg_dump */
30982 					(yyval.defelt) = makeDefElem("sequence_name", (Node *)(yyvsp[0].list), (yylsp[-2]));
30983 				}
30984 #line 30985 "gram_minimal.c" /* yacc.c:1646  */
30985     break;
30986 
30987   case 600:
30988 #line 4359 "gram_minimal.y" /* yacc.c:1646  */
30989     {
30990 					(yyval.defelt) = makeDefElem("start", (Node *)(yyvsp[0].value), (yylsp[-2]));
30991 				}
30992 #line 30993 "gram_minimal.c" /* yacc.c:1646  */
30993     break;
30994 
30995   case 601:
30996 #line 4363 "gram_minimal.y" /* yacc.c:1646  */
30997     {
30998 					(yyval.defelt) = makeDefElem("restart", NULL, (yylsp[0]));
30999 				}
31000 #line 31001 "gram_minimal.c" /* yacc.c:1646  */
31001     break;
31002 
31003   case 602:
31004 #line 4367 "gram_minimal.y" /* yacc.c:1646  */
31005     {
31006 					(yyval.defelt) = makeDefElem("restart", (Node *)(yyvsp[0].value), (yylsp[-2]));
31007 				}
31008 #line 31009 "gram_minimal.c" /* yacc.c:1646  */
31009     break;
31010 
31011   case 603:
31012 #line 4372 "gram_minimal.y" /* yacc.c:1646  */
31013     {}
31014 #line 31015 "gram_minimal.c" /* yacc.c:1646  */
31015     break;
31016 
31017   case 604:
31018 #line 4373 "gram_minimal.y" /* yacc.c:1646  */
31019     {}
31020 #line 31021 "gram_minimal.c" /* yacc.c:1646  */
31021     break;
31022 
31023   case 605:
31024 #line 4377 "gram_minimal.y" /* yacc.c:1646  */
31025     { (yyval.value) = makeFloat((yyvsp[0].str)); }
31026 #line 31027 "gram_minimal.c" /* yacc.c:1646  */
31027     break;
31028 
31029   case 606:
31030 #line 4378 "gram_minimal.y" /* yacc.c:1646  */
31031     { (yyval.value) = makeFloat((yyvsp[0].str)); }
31032 #line 31033 "gram_minimal.c" /* yacc.c:1646  */
31033     break;
31034 
31035   case 607:
31036 #line 4380 "gram_minimal.y" /* yacc.c:1646  */
31037     {
31038 					(yyval.value) = makeFloat((yyvsp[0].str));
31039 					doNegateFloat((yyval.value));
31040 				}
31041 #line 31042 "gram_minimal.c" /* yacc.c:1646  */
31042     break;
31043 
31044   case 608:
31045 #line 4384 "gram_minimal.y" /* yacc.c:1646  */
31046     { (yyval.value) = makeInteger((yyvsp[0].ival)); }
31047 #line 31048 "gram_minimal.c" /* yacc.c:1646  */
31048     break;
31049 
31050   case 609:
31051 #line 4387 "gram_minimal.y" /* yacc.c:1646  */
31052     { (yyval.list) = list_make1((yyvsp[0].value)); }
31053 #line 31054 "gram_minimal.c" /* yacc.c:1646  */
31054     break;
31055 
31056   case 610:
31057 #line 4388 "gram_minimal.y" /* yacc.c:1646  */
31058     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].value)); }
31059 #line 31060 "gram_minimal.c" /* yacc.c:1646  */
31060     break;
31061 
31062   case 611:
31063 #line 4401 "gram_minimal.y" /* yacc.c:1646  */
31064     {
31065 				/*
31066 				 * We now interpret parameterless CREATE LANGUAGE as
31067 				 * CREATE EXTENSION.  "OR REPLACE" is silently translated
31068 				 * to "IF NOT EXISTS", which isn't quite the same, but
31069 				 * seems more useful than throwing an error.  We just
31070 				 * ignore TRUSTED, as the previous code would have too.
31071 				 */
31072 				CreateExtensionStmt *n = makeNode(CreateExtensionStmt);
31073 				n->if_not_exists = (yyvsp[-4].boolean);
31074 				n->extname = (yyvsp[0].str);
31075 				n->options = NIL;
31076 				(yyval.node) = (Node *)n;
31077 			}
31078 #line 31079 "gram_minimal.c" /* yacc.c:1646  */
31079     break;
31080 
31081   case 612:
31082 #line 4417 "gram_minimal.y" /* yacc.c:1646  */
31083     {
31084 				CreatePLangStmt *n = makeNode(CreatePLangStmt);
31085 				n->replace = (yyvsp[-8].boolean);
31086 				n->plname = (yyvsp[-4].str);
31087 				n->plhandler = (yyvsp[-2].list);
31088 				n->plinline = (yyvsp[-1].list);
31089 				n->plvalidator = (yyvsp[0].list);
31090 				n->pltrusted = (yyvsp[-7].boolean);
31091 				(yyval.node) = (Node *)n;
31092 			}
31093 #line 31094 "gram_minimal.c" /* yacc.c:1646  */
31094     break;
31095 
31096   case 613:
31097 #line 4430 "gram_minimal.y" /* yacc.c:1646  */
31098     { (yyval.boolean) = true; }
31099 #line 31100 "gram_minimal.c" /* yacc.c:1646  */
31100     break;
31101 
31102   case 614:
31103 #line 4431 "gram_minimal.y" /* yacc.c:1646  */
31104     { (yyval.boolean) = false; }
31105 #line 31106 "gram_minimal.c" /* yacc.c:1646  */
31106     break;
31107 
31108   case 615:
31109 #line 4439 "gram_minimal.y" /* yacc.c:1646  */
31110     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
31111 #line 31112 "gram_minimal.c" /* yacc.c:1646  */
31112     break;
31113 
31114   case 616:
31115 #line 4440 "gram_minimal.y" /* yacc.c:1646  */
31116     { (yyval.list) = lcons(makeString((yyvsp[-1].str)), (yyvsp[0].list)); }
31117 #line 31118 "gram_minimal.c" /* yacc.c:1646  */
31118     break;
31119 
31120   case 617:
31121 #line 4444 "gram_minimal.y" /* yacc.c:1646  */
31122     { (yyval.list) = (yyvsp[0].list); }
31123 #line 31124 "gram_minimal.c" /* yacc.c:1646  */
31124     break;
31125 
31126   case 618:
31127 #line 4445 "gram_minimal.y" /* yacc.c:1646  */
31128     { (yyval.list) = NIL; }
31129 #line 31130 "gram_minimal.c" /* yacc.c:1646  */
31130     break;
31131 
31132   case 619:
31133 #line 4449 "gram_minimal.y" /* yacc.c:1646  */
31134     { (yyval.list) = (yyvsp[0].list); }
31135 #line 31136 "gram_minimal.c" /* yacc.c:1646  */
31136     break;
31137 
31138   case 620:
31139 #line 4450 "gram_minimal.y" /* yacc.c:1646  */
31140     { (yyval.list) = NIL; }
31141 #line 31142 "gram_minimal.c" /* yacc.c:1646  */
31142     break;
31143 
31144   case 621:
31145 #line 4454 "gram_minimal.y" /* yacc.c:1646  */
31146     { (yyval.list) = (yyvsp[0].list); }
31147 #line 31148 "gram_minimal.c" /* yacc.c:1646  */
31148     break;
31149 
31150   case 622:
31151 #line 4455 "gram_minimal.y" /* yacc.c:1646  */
31152     { (yyval.list) = NIL; }
31153 #line 31154 "gram_minimal.c" /* yacc.c:1646  */
31154     break;
31155 
31156   case 623:
31157 #line 4460 "gram_minimal.y" /* yacc.c:1646  */
31158     {
31159 					DropStmt *n = makeNode(DropStmt);
31160 					n->removeType = OBJECT_LANGUAGE;
31161 					n->objects = list_make1(makeString((yyvsp[-1].str)));
31162 					n->behavior = (yyvsp[0].dbehavior);
31163 					n->missing_ok = false;
31164 					n->concurrent = false;
31165 					(yyval.node) = (Node *)n;
31166 				}
31167 #line 31168 "gram_minimal.c" /* yacc.c:1646  */
31168     break;
31169 
31170   case 624:
31171 #line 4470 "gram_minimal.y" /* yacc.c:1646  */
31172     {
31173 					DropStmt *n = makeNode(DropStmt);
31174 					n->removeType = OBJECT_LANGUAGE;
31175 					n->objects = list_make1(makeString((yyvsp[-1].str)));
31176 					n->behavior = (yyvsp[0].dbehavior);
31177 					n->missing_ok = true;
31178 					n->concurrent = false;
31179 					(yyval.node) = (Node *)n;
31180 				}
31181 #line 31182 "gram_minimal.c" /* yacc.c:1646  */
31182     break;
31183 
31184   case 625:
31185 #line 4482 "gram_minimal.y" /* yacc.c:1646  */
31186     {}
31187 #line 31188 "gram_minimal.c" /* yacc.c:1646  */
31188     break;
31189 
31190   case 626:
31191 #line 4483 "gram_minimal.y" /* yacc.c:1646  */
31192     {}
31193 #line 31194 "gram_minimal.c" /* yacc.c:1646  */
31194     break;
31195 
31196   case 627:
31197 #line 4494 "gram_minimal.y" /* yacc.c:1646  */
31198     {
31199 					CreateTableSpaceStmt *n = makeNode(CreateTableSpaceStmt);
31200 					n->tablespacename = (yyvsp[-4].str);
31201 					n->owner = (yyvsp[-3].rolespec);
31202 					n->location = (yyvsp[-1].str);
31203 					n->options = (yyvsp[0].list);
31204 					(yyval.node) = (Node *) n;
31205 				}
31206 #line 31207 "gram_minimal.c" /* yacc.c:1646  */
31207     break;
31208 
31209   case 628:
31210 #line 4504 "gram_minimal.y" /* yacc.c:1646  */
31211     { (yyval.rolespec) = (yyvsp[0].rolespec); }
31212 #line 31213 "gram_minimal.c" /* yacc.c:1646  */
31213     break;
31214 
31215   case 629:
31216 #line 4505 "gram_minimal.y" /* yacc.c:1646  */
31217     { (yyval.rolespec) = NULL; }
31218 #line 31219 "gram_minimal.c" /* yacc.c:1646  */
31219     break;
31220 
31221   case 630:
31222 #line 4519 "gram_minimal.y" /* yacc.c:1646  */
31223     {
31224 					DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt);
31225 					n->tablespacename = (yyvsp[0].str);
31226 					n->missing_ok = false;
31227 					(yyval.node) = (Node *) n;
31228 				}
31229 #line 31230 "gram_minimal.c" /* yacc.c:1646  */
31230     break;
31231 
31232   case 631:
31233 #line 4526 "gram_minimal.y" /* yacc.c:1646  */
31234     {
31235 					DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt);
31236 					n->tablespacename = (yyvsp[0].str);
31237 					n->missing_ok = true;
31238 					(yyval.node) = (Node *) n;
31239 				}
31240 #line 31241 "gram_minimal.c" /* yacc.c:1646  */
31241     break;
31242 
31243   case 632:
31244 #line 4543 "gram_minimal.y" /* yacc.c:1646  */
31245     {
31246 					CreateExtensionStmt *n = makeNode(CreateExtensionStmt);
31247 					n->extname = (yyvsp[-2].str);
31248 					n->if_not_exists = false;
31249 					n->options = (yyvsp[0].list);
31250 					(yyval.node) = (Node *) n;
31251 				}
31252 #line 31253 "gram_minimal.c" /* yacc.c:1646  */
31253     break;
31254 
31255   case 633:
31256 #line 4551 "gram_minimal.y" /* yacc.c:1646  */
31257     {
31258 					CreateExtensionStmt *n = makeNode(CreateExtensionStmt);
31259 					n->extname = (yyvsp[-2].str);
31260 					n->if_not_exists = true;
31261 					n->options = (yyvsp[0].list);
31262 					(yyval.node) = (Node *) n;
31263 				}
31264 #line 31265 "gram_minimal.c" /* yacc.c:1646  */
31265     break;
31266 
31267   case 634:
31268 #line 4562 "gram_minimal.y" /* yacc.c:1646  */
31269     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
31270 #line 31271 "gram_minimal.c" /* yacc.c:1646  */
31271     break;
31272 
31273   case 635:
31274 #line 4564 "gram_minimal.y" /* yacc.c:1646  */
31275     { (yyval.list) = NIL; }
31276 #line 31277 "gram_minimal.c" /* yacc.c:1646  */
31277     break;
31278 
31279   case 636:
31280 #line 4569 "gram_minimal.y" /* yacc.c:1646  */
31281     {
31282 					(yyval.defelt) = makeDefElem("schema", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
31283 				}
31284 #line 31285 "gram_minimal.c" /* yacc.c:1646  */
31285     break;
31286 
31287   case 637:
31288 #line 4573 "gram_minimal.y" /* yacc.c:1646  */
31289     {
31290 					(yyval.defelt) = makeDefElem("new_version", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
31291 				}
31292 #line 31293 "gram_minimal.c" /* yacc.c:1646  */
31293     break;
31294 
31295   case 638:
31296 #line 4577 "gram_minimal.y" /* yacc.c:1646  */
31297     {
31298 					ereport(ERROR,
31299 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
31300 							 errmsg("CREATE EXTENSION ... FROM is no longer supported"),
31301 							 parser_errposition((yylsp[-1]))));
31302 				}
31303 #line 31304 "gram_minimal.c" /* yacc.c:1646  */
31304     break;
31305 
31306   case 639:
31307 #line 4584 "gram_minimal.y" /* yacc.c:1646  */
31308     {
31309 					(yyval.defelt) = makeDefElem("cascade", (Node *)makeInteger(true), (yylsp[0]));
31310 				}
31311 #line 31312 "gram_minimal.c" /* yacc.c:1646  */
31312     break;
31313 
31314   case 640:
31315 #line 4596 "gram_minimal.y" /* yacc.c:1646  */
31316     {
31317 					AlterExtensionStmt *n = makeNode(AlterExtensionStmt);
31318 					n->extname = (yyvsp[-2].str);
31319 					n->options = (yyvsp[0].list);
31320 					(yyval.node) = (Node *) n;
31321 				}
31322 #line 31323 "gram_minimal.c" /* yacc.c:1646  */
31323     break;
31324 
31325   case 641:
31326 #line 4606 "gram_minimal.y" /* yacc.c:1646  */
31327     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
31328 #line 31329 "gram_minimal.c" /* yacc.c:1646  */
31329     break;
31330 
31331   case 642:
31332 #line 4608 "gram_minimal.y" /* yacc.c:1646  */
31333     { (yyval.list) = NIL; }
31334 #line 31335 "gram_minimal.c" /* yacc.c:1646  */
31335     break;
31336 
31337   case 643:
31338 #line 4613 "gram_minimal.y" /* yacc.c:1646  */
31339     {
31340 					(yyval.defelt) = makeDefElem("new_version", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
31341 				}
31342 #line 31343 "gram_minimal.c" /* yacc.c:1646  */
31343     break;
31344 
31345   case 644:
31346 #line 4626 "gram_minimal.y" /* yacc.c:1646  */
31347     {
31348 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31349 					n->extname = (yyvsp[-4].str);
31350 					n->action = (yyvsp[-3].ival);
31351 					n->objtype = OBJECT_ACCESS_METHOD;
31352 					n->object = (Node *) makeString((yyvsp[0].str));
31353 					(yyval.node) = (Node *)n;
31354 				}
31355 #line 31356 "gram_minimal.c" /* yacc.c:1646  */
31356     break;
31357 
31358   case 645:
31359 #line 4635 "gram_minimal.y" /* yacc.c:1646  */
31360     {
31361 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31362 					n->extname = (yyvsp[-3].str);
31363 					n->action = (yyvsp[-2].ival);
31364 					n->objtype = OBJECT_AGGREGATE;
31365 					n->object = (Node *) (yyvsp[0].objwithargs);
31366 					(yyval.node) = (Node *)n;
31367 				}
31368 #line 31369 "gram_minimal.c" /* yacc.c:1646  */
31369     break;
31370 
31371   case 646:
31372 #line 4644 "gram_minimal.y" /* yacc.c:1646  */
31373     {
31374 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31375 					n->extname = (yyvsp[-7].str);
31376 					n->action = (yyvsp[-6].ival);
31377 					n->objtype = OBJECT_CAST;
31378 					n->object = (Node *) list_make2((yyvsp[-3].typnam), (yyvsp[-1].typnam));
31379 					(yyval.node) = (Node *) n;
31380 				}
31381 #line 31382 "gram_minimal.c" /* yacc.c:1646  */
31382     break;
31383 
31384   case 647:
31385 #line 4653 "gram_minimal.y" /* yacc.c:1646  */
31386     {
31387 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31388 					n->extname = (yyvsp[-3].str);
31389 					n->action = (yyvsp[-2].ival);
31390 					n->objtype = OBJECT_COLLATION;
31391 					n->object = (Node *) (yyvsp[0].list);
31392 					(yyval.node) = (Node *)n;
31393 				}
31394 #line 31395 "gram_minimal.c" /* yacc.c:1646  */
31395     break;
31396 
31397   case 648:
31398 #line 4662 "gram_minimal.y" /* yacc.c:1646  */
31399     {
31400 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31401 					n->extname = (yyvsp[-3].str);
31402 					n->action = (yyvsp[-2].ival);
31403 					n->objtype = OBJECT_CONVERSION;
31404 					n->object = (Node *) (yyvsp[0].list);
31405 					(yyval.node) = (Node *)n;
31406 				}
31407 #line 31408 "gram_minimal.c" /* yacc.c:1646  */
31408     break;
31409 
31410   case 649:
31411 #line 4671 "gram_minimal.y" /* yacc.c:1646  */
31412     {
31413 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31414 					n->extname = (yyvsp[-3].str);
31415 					n->action = (yyvsp[-2].ival);
31416 					n->objtype = OBJECT_DOMAIN;
31417 					n->object = (Node *) (yyvsp[0].typnam);
31418 					(yyval.node) = (Node *)n;
31419 				}
31420 #line 31421 "gram_minimal.c" /* yacc.c:1646  */
31421     break;
31422 
31423   case 650:
31424 #line 4680 "gram_minimal.y" /* yacc.c:1646  */
31425     {
31426 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31427 					n->extname = (yyvsp[-3].str);
31428 					n->action = (yyvsp[-2].ival);
31429 					n->objtype = OBJECT_FUNCTION;
31430 					n->object = (Node *) (yyvsp[0].objwithargs);
31431 					(yyval.node) = (Node *)n;
31432 				}
31433 #line 31434 "gram_minimal.c" /* yacc.c:1646  */
31434     break;
31435 
31436   case 651:
31437 #line 4689 "gram_minimal.y" /* yacc.c:1646  */
31438     {
31439 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31440 					n->extname = (yyvsp[-4].str);
31441 					n->action = (yyvsp[-3].ival);
31442 					n->objtype = OBJECT_LANGUAGE;
31443 					n->object = (Node *) makeString((yyvsp[0].str));
31444 					(yyval.node) = (Node *)n;
31445 				}
31446 #line 31447 "gram_minimal.c" /* yacc.c:1646  */
31447     break;
31448 
31449   case 652:
31450 #line 4698 "gram_minimal.y" /* yacc.c:1646  */
31451     {
31452 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31453 					n->extname = (yyvsp[-3].str);
31454 					n->action = (yyvsp[-2].ival);
31455 					n->objtype = OBJECT_OPERATOR;
31456 					n->object = (Node *) (yyvsp[0].objwithargs);
31457 					(yyval.node) = (Node *)n;
31458 				}
31459 #line 31460 "gram_minimal.c" /* yacc.c:1646  */
31460     break;
31461 
31462   case 653:
31463 #line 4707 "gram_minimal.y" /* yacc.c:1646  */
31464     {
31465 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31466 					n->extname = (yyvsp[-6].str);
31467 					n->action = (yyvsp[-5].ival);
31468 					n->objtype = OBJECT_OPCLASS;
31469 					n->object = (Node *) lcons(makeString((yyvsp[0].str)), (yyvsp[-2].list));
31470 					(yyval.node) = (Node *)n;
31471 				}
31472 #line 31473 "gram_minimal.c" /* yacc.c:1646  */
31473     break;
31474 
31475   case 654:
31476 #line 4716 "gram_minimal.y" /* yacc.c:1646  */
31477     {
31478 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31479 					n->extname = (yyvsp[-6].str);
31480 					n->action = (yyvsp[-5].ival);
31481 					n->objtype = OBJECT_OPFAMILY;
31482 					n->object = (Node *) lcons(makeString((yyvsp[0].str)), (yyvsp[-2].list));
31483 					(yyval.node) = (Node *)n;
31484 				}
31485 #line 31486 "gram_minimal.c" /* yacc.c:1646  */
31486     break;
31487 
31488   case 655:
31489 #line 4725 "gram_minimal.y" /* yacc.c:1646  */
31490     {
31491 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31492 					n->extname = (yyvsp[-3].str);
31493 					n->action = (yyvsp[-2].ival);
31494 					n->objtype = OBJECT_PROCEDURE;
31495 					n->object = (Node *) (yyvsp[0].objwithargs);
31496 					(yyval.node) = (Node *)n;
31497 				}
31498 #line 31499 "gram_minimal.c" /* yacc.c:1646  */
31499     break;
31500 
31501   case 656:
31502 #line 4734 "gram_minimal.y" /* yacc.c:1646  */
31503     {
31504 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31505 					n->extname = (yyvsp[-3].str);
31506 					n->action = (yyvsp[-2].ival);
31507 					n->objtype = OBJECT_ROUTINE;
31508 					n->object = (Node *) (yyvsp[0].objwithargs);
31509 					(yyval.node) = (Node *)n;
31510 				}
31511 #line 31512 "gram_minimal.c" /* yacc.c:1646  */
31512     break;
31513 
31514   case 657:
31515 #line 4743 "gram_minimal.y" /* yacc.c:1646  */
31516     {
31517 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31518 					n->extname = (yyvsp[-3].str);
31519 					n->action = (yyvsp[-2].ival);
31520 					n->objtype = OBJECT_SCHEMA;
31521 					n->object = (Node *) makeString((yyvsp[0].str));
31522 					(yyval.node) = (Node *)n;
31523 				}
31524 #line 31525 "gram_minimal.c" /* yacc.c:1646  */
31525     break;
31526 
31527   case 658:
31528 #line 4752 "gram_minimal.y" /* yacc.c:1646  */
31529     {
31530 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31531 					n->extname = (yyvsp[-4].str);
31532 					n->action = (yyvsp[-3].ival);
31533 					n->objtype = OBJECT_EVENT_TRIGGER;
31534 					n->object = (Node *) makeString((yyvsp[0].str));
31535 					(yyval.node) = (Node *)n;
31536 				}
31537 #line 31538 "gram_minimal.c" /* yacc.c:1646  */
31538     break;
31539 
31540   case 659:
31541 #line 4761 "gram_minimal.y" /* yacc.c:1646  */
31542     {
31543 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31544 					n->extname = (yyvsp[-3].str);
31545 					n->action = (yyvsp[-2].ival);
31546 					n->objtype = OBJECT_TABLE;
31547 					n->object = (Node *) (yyvsp[0].list);
31548 					(yyval.node) = (Node *)n;
31549 				}
31550 #line 31551 "gram_minimal.c" /* yacc.c:1646  */
31551     break;
31552 
31553   case 660:
31554 #line 4770 "gram_minimal.y" /* yacc.c:1646  */
31555     {
31556 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31557 					n->extname = (yyvsp[-5].str);
31558 					n->action = (yyvsp[-4].ival);
31559 					n->objtype = OBJECT_TSPARSER;
31560 					n->object = (Node *) (yyvsp[0].list);
31561 					(yyval.node) = (Node *)n;
31562 				}
31563 #line 31564 "gram_minimal.c" /* yacc.c:1646  */
31564     break;
31565 
31566   case 661:
31567 #line 4779 "gram_minimal.y" /* yacc.c:1646  */
31568     {
31569 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31570 					n->extname = (yyvsp[-5].str);
31571 					n->action = (yyvsp[-4].ival);
31572 					n->objtype = OBJECT_TSDICTIONARY;
31573 					n->object = (Node *) (yyvsp[0].list);
31574 					(yyval.node) = (Node *)n;
31575 				}
31576 #line 31577 "gram_minimal.c" /* yacc.c:1646  */
31577     break;
31578 
31579   case 662:
31580 #line 4788 "gram_minimal.y" /* yacc.c:1646  */
31581     {
31582 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31583 					n->extname = (yyvsp[-5].str);
31584 					n->action = (yyvsp[-4].ival);
31585 					n->objtype = OBJECT_TSTEMPLATE;
31586 					n->object = (Node *) (yyvsp[0].list);
31587 					(yyval.node) = (Node *)n;
31588 				}
31589 #line 31590 "gram_minimal.c" /* yacc.c:1646  */
31590     break;
31591 
31592   case 663:
31593 #line 4797 "gram_minimal.y" /* yacc.c:1646  */
31594     {
31595 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31596 					n->extname = (yyvsp[-5].str);
31597 					n->action = (yyvsp[-4].ival);
31598 					n->objtype = OBJECT_TSCONFIGURATION;
31599 					n->object = (Node *) (yyvsp[0].list);
31600 					(yyval.node) = (Node *)n;
31601 				}
31602 #line 31603 "gram_minimal.c" /* yacc.c:1646  */
31603     break;
31604 
31605   case 664:
31606 #line 4806 "gram_minimal.y" /* yacc.c:1646  */
31607     {
31608 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31609 					n->extname = (yyvsp[-3].str);
31610 					n->action = (yyvsp[-2].ival);
31611 					n->objtype = OBJECT_SEQUENCE;
31612 					n->object = (Node *) (yyvsp[0].list);
31613 					(yyval.node) = (Node *)n;
31614 				}
31615 #line 31616 "gram_minimal.c" /* yacc.c:1646  */
31616     break;
31617 
31618   case 665:
31619 #line 4815 "gram_minimal.y" /* yacc.c:1646  */
31620     {
31621 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31622 					n->extname = (yyvsp[-3].str);
31623 					n->action = (yyvsp[-2].ival);
31624 					n->objtype = OBJECT_VIEW;
31625 					n->object = (Node *) (yyvsp[0].list);
31626 					(yyval.node) = (Node *)n;
31627 				}
31628 #line 31629 "gram_minimal.c" /* yacc.c:1646  */
31629     break;
31630 
31631   case 666:
31632 #line 4824 "gram_minimal.y" /* yacc.c:1646  */
31633     {
31634 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31635 					n->extname = (yyvsp[-4].str);
31636 					n->action = (yyvsp[-3].ival);
31637 					n->objtype = OBJECT_MATVIEW;
31638 					n->object = (Node *) (yyvsp[0].list);
31639 					(yyval.node) = (Node *)n;
31640 				}
31641 #line 31642 "gram_minimal.c" /* yacc.c:1646  */
31642     break;
31643 
31644   case 667:
31645 #line 4833 "gram_minimal.y" /* yacc.c:1646  */
31646     {
31647 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31648 					n->extname = (yyvsp[-4].str);
31649 					n->action = (yyvsp[-3].ival);
31650 					n->objtype = OBJECT_FOREIGN_TABLE;
31651 					n->object = (Node *) (yyvsp[0].list);
31652 					(yyval.node) = (Node *)n;
31653 				}
31654 #line 31655 "gram_minimal.c" /* yacc.c:1646  */
31655     break;
31656 
31657   case 668:
31658 #line 4842 "gram_minimal.y" /* yacc.c:1646  */
31659     {
31660 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31661 					n->extname = (yyvsp[-5].str);
31662 					n->action = (yyvsp[-4].ival);
31663 					n->objtype = OBJECT_FDW;
31664 					n->object = (Node *) makeString((yyvsp[0].str));
31665 					(yyval.node) = (Node *)n;
31666 				}
31667 #line 31668 "gram_minimal.c" /* yacc.c:1646  */
31668     break;
31669 
31670   case 669:
31671 #line 4851 "gram_minimal.y" /* yacc.c:1646  */
31672     {
31673 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31674 					n->extname = (yyvsp[-3].str);
31675 					n->action = (yyvsp[-2].ival);
31676 					n->objtype = OBJECT_FOREIGN_SERVER;
31677 					n->object = (Node *) makeString((yyvsp[0].str));
31678 					(yyval.node) = (Node *)n;
31679 				}
31680 #line 31681 "gram_minimal.c" /* yacc.c:1646  */
31681     break;
31682 
31683   case 670:
31684 #line 4860 "gram_minimal.y" /* yacc.c:1646  */
31685     {
31686 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31687 					n->extname = (yyvsp[-6].str);
31688 					n->action = (yyvsp[-5].ival);
31689 					n->objtype = OBJECT_TRANSFORM;
31690 					n->object = (Node *) list_make2((yyvsp[-2].typnam), makeString((yyvsp[0].str)));
31691 					(yyval.node) = (Node *)n;
31692 				}
31693 #line 31694 "gram_minimal.c" /* yacc.c:1646  */
31694     break;
31695 
31696   case 671:
31697 #line 4869 "gram_minimal.y" /* yacc.c:1646  */
31698     {
31699 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
31700 					n->extname = (yyvsp[-3].str);
31701 					n->action = (yyvsp[-2].ival);
31702 					n->objtype = OBJECT_TYPE;
31703 					n->object = (Node *) (yyvsp[0].typnam);
31704 					(yyval.node) = (Node *)n;
31705 				}
31706 #line 31707 "gram_minimal.c" /* yacc.c:1646  */
31707     break;
31708 
31709   case 672:
31710 #line 4887 "gram_minimal.y" /* yacc.c:1646  */
31711     {
31712 					CreateFdwStmt *n = makeNode(CreateFdwStmt);
31713 					n->fdwname = (yyvsp[-2].str);
31714 					n->func_options = (yyvsp[-1].list);
31715 					n->options = (yyvsp[0].list);
31716 					(yyval.node) = (Node *) n;
31717 				}
31718 #line 31719 "gram_minimal.c" /* yacc.c:1646  */
31719     break;
31720 
31721   case 673:
31722 #line 4897 "gram_minimal.y" /* yacc.c:1646  */
31723     { (yyval.defelt) = makeDefElem("handler", (Node *)(yyvsp[0].list), (yylsp[-1])); }
31724 #line 31725 "gram_minimal.c" /* yacc.c:1646  */
31725     break;
31726 
31727   case 674:
31728 #line 4898 "gram_minimal.y" /* yacc.c:1646  */
31729     { (yyval.defelt) = makeDefElem("handler", NULL, (yylsp[-1])); }
31730 #line 31731 "gram_minimal.c" /* yacc.c:1646  */
31731     break;
31732 
31733   case 675:
31734 #line 4899 "gram_minimal.y" /* yacc.c:1646  */
31735     { (yyval.defelt) = makeDefElem("validator", (Node *)(yyvsp[0].list), (yylsp[-1])); }
31736 #line 31737 "gram_minimal.c" /* yacc.c:1646  */
31737     break;
31738 
31739   case 676:
31740 #line 4900 "gram_minimal.y" /* yacc.c:1646  */
31741     { (yyval.defelt) = makeDefElem("validator", NULL, (yylsp[-1])); }
31742 #line 31743 "gram_minimal.c" /* yacc.c:1646  */
31743     break;
31744 
31745   case 677:
31746 #line 4904 "gram_minimal.y" /* yacc.c:1646  */
31747     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
31748 #line 31749 "gram_minimal.c" /* yacc.c:1646  */
31749     break;
31750 
31751   case 678:
31752 #line 4905 "gram_minimal.y" /* yacc.c:1646  */
31753     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
31754 #line 31755 "gram_minimal.c" /* yacc.c:1646  */
31755     break;
31756 
31757   case 679:
31758 #line 4909 "gram_minimal.y" /* yacc.c:1646  */
31759     { (yyval.list) = (yyvsp[0].list); }
31760 #line 31761 "gram_minimal.c" /* yacc.c:1646  */
31761     break;
31762 
31763   case 680:
31764 #line 4910 "gram_minimal.y" /* yacc.c:1646  */
31765     { (yyval.list) = NIL; }
31766 #line 31767 "gram_minimal.c" /* yacc.c:1646  */
31767     break;
31768 
31769   case 681:
31770 #line 4921 "gram_minimal.y" /* yacc.c:1646  */
31771     {
31772 					AlterFdwStmt *n = makeNode(AlterFdwStmt);
31773 					n->fdwname = (yyvsp[-2].str);
31774 					n->func_options = (yyvsp[-1].list);
31775 					n->options = (yyvsp[0].list);
31776 					(yyval.node) = (Node *) n;
31777 				}
31778 #line 31779 "gram_minimal.c" /* yacc.c:1646  */
31779     break;
31780 
31781   case 682:
31782 #line 4929 "gram_minimal.y" /* yacc.c:1646  */
31783     {
31784 					AlterFdwStmt *n = makeNode(AlterFdwStmt);
31785 					n->fdwname = (yyvsp[-1].str);
31786 					n->func_options = (yyvsp[0].list);
31787 					n->options = NIL;
31788 					(yyval.node) = (Node *) n;
31789 				}
31790 #line 31791 "gram_minimal.c" /* yacc.c:1646  */
31791     break;
31792 
31793   case 683:
31794 #line 4940 "gram_minimal.y" /* yacc.c:1646  */
31795     { (yyval.list) = (yyvsp[-1].list); }
31796 #line 31797 "gram_minimal.c" /* yacc.c:1646  */
31797     break;
31798 
31799   case 684:
31800 #line 4941 "gram_minimal.y" /* yacc.c:1646  */
31801     { (yyval.list) = NIL; }
31802 #line 31803 "gram_minimal.c" /* yacc.c:1646  */
31803     break;
31804 
31805   case 685:
31806 #line 4946 "gram_minimal.y" /* yacc.c:1646  */
31807     {
31808 					(yyval.list) = list_make1((yyvsp[0].defelt));
31809 				}
31810 #line 31811 "gram_minimal.c" /* yacc.c:1646  */
31811     break;
31812 
31813   case 686:
31814 #line 4950 "gram_minimal.y" /* yacc.c:1646  */
31815     {
31816 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
31817 				}
31818 #line 31819 "gram_minimal.c" /* yacc.c:1646  */
31819     break;
31820 
31821   case 687:
31822 #line 4957 "gram_minimal.y" /* yacc.c:1646  */
31823     { (yyval.list) = (yyvsp[-1].list); }
31824 #line 31825 "gram_minimal.c" /* yacc.c:1646  */
31825     break;
31826 
31827   case 688:
31828 #line 4962 "gram_minimal.y" /* yacc.c:1646  */
31829     {
31830 					(yyval.list) = list_make1((yyvsp[0].defelt));
31831 				}
31832 #line 31833 "gram_minimal.c" /* yacc.c:1646  */
31833     break;
31834 
31835   case 689:
31836 #line 4966 "gram_minimal.y" /* yacc.c:1646  */
31837     {
31838 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
31839 				}
31840 #line 31841 "gram_minimal.c" /* yacc.c:1646  */
31841     break;
31842 
31843   case 690:
31844 #line 4973 "gram_minimal.y" /* yacc.c:1646  */
31845     {
31846 					(yyval.defelt) = (yyvsp[0].defelt);
31847 				}
31848 #line 31849 "gram_minimal.c" /* yacc.c:1646  */
31849     break;
31850 
31851   case 691:
31852 #line 4977 "gram_minimal.y" /* yacc.c:1646  */
31853     {
31854 					(yyval.defelt) = (yyvsp[0].defelt);
31855 					(yyval.defelt)->defaction = DEFELEM_SET;
31856 				}
31857 #line 31858 "gram_minimal.c" /* yacc.c:1646  */
31858     break;
31859 
31860   case 692:
31861 #line 4982 "gram_minimal.y" /* yacc.c:1646  */
31862     {
31863 					(yyval.defelt) = (yyvsp[0].defelt);
31864 					(yyval.defelt)->defaction = DEFELEM_ADD;
31865 				}
31866 #line 31867 "gram_minimal.c" /* yacc.c:1646  */
31867     break;
31868 
31869   case 693:
31870 #line 4987 "gram_minimal.y" /* yacc.c:1646  */
31871     {
31872 					(yyval.defelt) = makeDefElemExtended(NULL, (yyvsp[0].str), NULL, DEFELEM_DROP, (yylsp[0]));
31873 				}
31874 #line 31875 "gram_minimal.c" /* yacc.c:1646  */
31875     break;
31876 
31877   case 694:
31878 #line 4994 "gram_minimal.y" /* yacc.c:1646  */
31879     {
31880 					(yyval.defelt) = makeDefElem((yyvsp[-1].str), (yyvsp[0].node), (yylsp[-1]));
31881 				}
31882 #line 31883 "gram_minimal.c" /* yacc.c:1646  */
31883     break;
31884 
31885   case 695:
31886 #line 5000 "gram_minimal.y" /* yacc.c:1646  */
31887     { (yyval.str) = (yyvsp[0].str); }
31888 #line 31889 "gram_minimal.c" /* yacc.c:1646  */
31889     break;
31890 
31891   case 696:
31892 #line 5005 "gram_minimal.y" /* yacc.c:1646  */
31893     { (yyval.node) = (Node *) makeString((yyvsp[0].str)); }
31894 #line 31895 "gram_minimal.c" /* yacc.c:1646  */
31895     break;
31896 
31897   case 697:
31898 #line 5017 "gram_minimal.y" /* yacc.c:1646  */
31899     {
31900 					CreateForeignServerStmt *n = makeNode(CreateForeignServerStmt);
31901 					n->servername = (yyvsp[-7].str);
31902 					n->servertype = (yyvsp[-6].str);
31903 					n->version = (yyvsp[-5].str);
31904 					n->fdwname = (yyvsp[-1].str);
31905 					n->options = (yyvsp[0].list);
31906 					n->if_not_exists = false;
31907 					(yyval.node) = (Node *) n;
31908 				}
31909 #line 31910 "gram_minimal.c" /* yacc.c:1646  */
31910     break;
31911 
31912   case 698:
31913 #line 5029 "gram_minimal.y" /* yacc.c:1646  */
31914     {
31915 					CreateForeignServerStmt *n = makeNode(CreateForeignServerStmt);
31916 					n->servername = (yyvsp[-7].str);
31917 					n->servertype = (yyvsp[-6].str);
31918 					n->version = (yyvsp[-5].str);
31919 					n->fdwname = (yyvsp[-1].str);
31920 					n->options = (yyvsp[0].list);
31921 					n->if_not_exists = true;
31922 					(yyval.node) = (Node *) n;
31923 				}
31924 #line 31925 "gram_minimal.c" /* yacc.c:1646  */
31925     break;
31926 
31927   case 699:
31928 #line 5042 "gram_minimal.y" /* yacc.c:1646  */
31929     { (yyval.str) = (yyvsp[0].str); }
31930 #line 31931 "gram_minimal.c" /* yacc.c:1646  */
31931     break;
31932 
31933   case 700:
31934 #line 5043 "gram_minimal.y" /* yacc.c:1646  */
31935     { (yyval.str) = NULL; }
31936 #line 31937 "gram_minimal.c" /* yacc.c:1646  */
31937     break;
31938 
31939   case 701:
31940 #line 5048 "gram_minimal.y" /* yacc.c:1646  */
31941     { (yyval.str) = (yyvsp[0].str); }
31942 #line 31943 "gram_minimal.c" /* yacc.c:1646  */
31943     break;
31944 
31945   case 702:
31946 #line 5049 "gram_minimal.y" /* yacc.c:1646  */
31947     { (yyval.str) = NULL; }
31948 #line 31949 "gram_minimal.c" /* yacc.c:1646  */
31949     break;
31950 
31951   case 703:
31952 #line 5053 "gram_minimal.y" /* yacc.c:1646  */
31953     { (yyval.str) = (yyvsp[0].str); }
31954 #line 31955 "gram_minimal.c" /* yacc.c:1646  */
31955     break;
31956 
31957   case 704:
31958 #line 5054 "gram_minimal.y" /* yacc.c:1646  */
31959     { (yyval.str) = NULL; }
31960 #line 31961 "gram_minimal.c" /* yacc.c:1646  */
31961     break;
31962 
31963   case 705:
31964 #line 5065 "gram_minimal.y" /* yacc.c:1646  */
31965     {
31966 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
31967 					n->servername = (yyvsp[-2].str);
31968 					n->version = (yyvsp[-1].str);
31969 					n->options = (yyvsp[0].list);
31970 					n->has_version = true;
31971 					(yyval.node) = (Node *) n;
31972 				}
31973 #line 31974 "gram_minimal.c" /* yacc.c:1646  */
31974     break;
31975 
31976   case 706:
31977 #line 5074 "gram_minimal.y" /* yacc.c:1646  */
31978     {
31979 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
31980 					n->servername = (yyvsp[-1].str);
31981 					n->version = (yyvsp[0].str);
31982 					n->has_version = true;
31983 					(yyval.node) = (Node *) n;
31984 				}
31985 #line 31986 "gram_minimal.c" /* yacc.c:1646  */
31986     break;
31987 
31988   case 707:
31989 #line 5082 "gram_minimal.y" /* yacc.c:1646  */
31990     {
31991 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
31992 					n->servername = (yyvsp[-1].str);
31993 					n->options = (yyvsp[0].list);
31994 					(yyval.node) = (Node *) n;
31995 				}
31996 #line 31997 "gram_minimal.c" /* yacc.c:1646  */
31997     break;
31998 
31999   case 708:
32000 #line 5101 "gram_minimal.y" /* yacc.c:1646  */
32001     {
32002 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
32003 					(yyvsp[-7].range)->relpersistence = RELPERSISTENCE_PERMANENT;
32004 					n->base.relation = (yyvsp[-7].range);
32005 					n->base.tableElts = (yyvsp[-5].list);
32006 					n->base.inhRelations = (yyvsp[-3].list);
32007 					n->base.ofTypename = NULL;
32008 					n->base.constraints = NIL;
32009 					n->base.options = NIL;
32010 					n->base.oncommit = ONCOMMIT_NOOP;
32011 					n->base.tablespacename = NULL;
32012 					n->base.if_not_exists = false;
32013 					/* FDW-specific data */
32014 					n->servername = (yyvsp[-1].str);
32015 					n->options = (yyvsp[0].list);
32016 					(yyval.node) = (Node *) n;
32017 				}
32018 #line 32019 "gram_minimal.c" /* yacc.c:1646  */
32019     break;
32020 
32021   case 709:
32022 #line 5121 "gram_minimal.y" /* yacc.c:1646  */
32023     {
32024 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
32025 					(yyvsp[-7].range)->relpersistence = RELPERSISTENCE_PERMANENT;
32026 					n->base.relation = (yyvsp[-7].range);
32027 					n->base.tableElts = (yyvsp[-5].list);
32028 					n->base.inhRelations = (yyvsp[-3].list);
32029 					n->base.ofTypename = NULL;
32030 					n->base.constraints = NIL;
32031 					n->base.options = NIL;
32032 					n->base.oncommit = ONCOMMIT_NOOP;
32033 					n->base.tablespacename = NULL;
32034 					n->base.if_not_exists = true;
32035 					/* FDW-specific data */
32036 					n->servername = (yyvsp[-1].str);
32037 					n->options = (yyvsp[0].list);
32038 					(yyval.node) = (Node *) n;
32039 				}
32040 #line 32041 "gram_minimal.c" /* yacc.c:1646  */
32041     break;
32042 
32043   case 710:
32044 #line 5141 "gram_minimal.y" /* yacc.c:1646  */
32045     {
32046 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
32047 					(yyvsp[-8].range)->relpersistence = RELPERSISTENCE_PERMANENT;
32048 					n->base.relation = (yyvsp[-8].range);
32049 					n->base.inhRelations = list_make1((yyvsp[-5].range));
32050 					n->base.tableElts = (yyvsp[-4].list);
32051 					n->base.partbound = (yyvsp[-3].partboundspec);
32052 					n->base.ofTypename = NULL;
32053 					n->base.constraints = NIL;
32054 					n->base.options = NIL;
32055 					n->base.oncommit = ONCOMMIT_NOOP;
32056 					n->base.tablespacename = NULL;
32057 					n->base.if_not_exists = false;
32058 					/* FDW-specific data */
32059 					n->servername = (yyvsp[-1].str);
32060 					n->options = (yyvsp[0].list);
32061 					(yyval.node) = (Node *) n;
32062 				}
32063 #line 32064 "gram_minimal.c" /* yacc.c:1646  */
32064     break;
32065 
32066   case 711:
32067 #line 5162 "gram_minimal.y" /* yacc.c:1646  */
32068     {
32069 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
32070 					(yyvsp[-8].range)->relpersistence = RELPERSISTENCE_PERMANENT;
32071 					n->base.relation = (yyvsp[-8].range);
32072 					n->base.inhRelations = list_make1((yyvsp[-5].range));
32073 					n->base.tableElts = (yyvsp[-4].list);
32074 					n->base.partbound = (yyvsp[-3].partboundspec);
32075 					n->base.ofTypename = NULL;
32076 					n->base.constraints = NIL;
32077 					n->base.options = NIL;
32078 					n->base.oncommit = ONCOMMIT_NOOP;
32079 					n->base.tablespacename = NULL;
32080 					n->base.if_not_exists = true;
32081 					/* FDW-specific data */
32082 					n->servername = (yyvsp[-1].str);
32083 					n->options = (yyvsp[0].list);
32084 					(yyval.node) = (Node *) n;
32085 				}
32086 #line 32087 "gram_minimal.c" /* yacc.c:1646  */
32087     break;
32088 
32089   case 712:
32090 #line 5191 "gram_minimal.y" /* yacc.c:1646  */
32091     {
32092 					AlterTableStmt *n = makeNode(AlterTableStmt);
32093 					n->relation = (yyvsp[-1].range);
32094 					n->cmds = (yyvsp[0].list);
32095 					n->relkind = OBJECT_FOREIGN_TABLE;
32096 					n->missing_ok = false;
32097 					(yyval.node) = (Node *)n;
32098 				}
32099 #line 32100 "gram_minimal.c" /* yacc.c:1646  */
32100     break;
32101 
32102   case 713:
32103 #line 5200 "gram_minimal.y" /* yacc.c:1646  */
32104     {
32105 					AlterTableStmt *n = makeNode(AlterTableStmt);
32106 					n->relation = (yyvsp[-1].range);
32107 					n->cmds = (yyvsp[0].list);
32108 					n->relkind = OBJECT_FOREIGN_TABLE;
32109 					n->missing_ok = true;
32110 					(yyval.node) = (Node *)n;
32111 				}
32112 #line 32113 "gram_minimal.c" /* yacc.c:1646  */
32113     break;
32114 
32115   case 714:
32116 #line 5222 "gram_minimal.y" /* yacc.c:1646  */
32117     {
32118 				ImportForeignSchemaStmt *n = makeNode(ImportForeignSchemaStmt);
32119 				n->server_name = (yyvsp[-3].str);
32120 				n->remote_schema = (yyvsp[-7].str);
32121 				n->local_schema = (yyvsp[-1].str);
32122 				n->list_type = (yyvsp[-6].importqual)->type;
32123 				n->table_list = (yyvsp[-6].importqual)->table_names;
32124 				n->options = (yyvsp[0].list);
32125 				(yyval.node) = (Node *) n;
32126 			}
32127 #line 32128 "gram_minimal.c" /* yacc.c:1646  */
32128     break;
32129 
32130   case 715:
32131 #line 5235 "gram_minimal.y" /* yacc.c:1646  */
32132     { (yyval.ival) = FDW_IMPORT_SCHEMA_LIMIT_TO; }
32133 #line 32134 "gram_minimal.c" /* yacc.c:1646  */
32134     break;
32135 
32136   case 716:
32137 #line 5236 "gram_minimal.y" /* yacc.c:1646  */
32138     { (yyval.ival) = FDW_IMPORT_SCHEMA_EXCEPT; }
32139 #line 32140 "gram_minimal.c" /* yacc.c:1646  */
32140     break;
32141 
32142   case 717:
32143 #line 5241 "gram_minimal.y" /* yacc.c:1646  */
32144     {
32145 				ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual));
32146 				n->type = (yyvsp[-3].ival);
32147 				n->table_names = (yyvsp[-1].list);
32148 				(yyval.importqual) = n;
32149 			}
32150 #line 32151 "gram_minimal.c" /* yacc.c:1646  */
32151     break;
32152 
32153   case 718:
32154 #line 5248 "gram_minimal.y" /* yacc.c:1646  */
32155     {
32156 				ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual));
32157 				n->type = FDW_IMPORT_SCHEMA_ALL;
32158 				n->table_names = NIL;
32159 				(yyval.importqual) = n;
32160 			}
32161 #line 32162 "gram_minimal.c" /* yacc.c:1646  */
32162     break;
32163 
32164   case 719:
32165 #line 5264 "gram_minimal.y" /* yacc.c:1646  */
32166     {
32167 					CreateUserMappingStmt *n = makeNode(CreateUserMappingStmt);
32168 					n->user = (yyvsp[-3].rolespec);
32169 					n->servername = (yyvsp[-1].str);
32170 					n->options = (yyvsp[0].list);
32171 					n->if_not_exists = false;
32172 					(yyval.node) = (Node *) n;
32173 				}
32174 #line 32175 "gram_minimal.c" /* yacc.c:1646  */
32175     break;
32176 
32177   case 720:
32178 #line 5273 "gram_minimal.y" /* yacc.c:1646  */
32179     {
32180 					CreateUserMappingStmt *n = makeNode(CreateUserMappingStmt);
32181 					n->user = (yyvsp[-3].rolespec);
32182 					n->servername = (yyvsp[-1].str);
32183 					n->options = (yyvsp[0].list);
32184 					n->if_not_exists = true;
32185 					(yyval.node) = (Node *) n;
32186 				}
32187 #line 32188 "gram_minimal.c" /* yacc.c:1646  */
32188     break;
32189 
32190   case 721:
32191 #line 5284 "gram_minimal.y" /* yacc.c:1646  */
32192     { (yyval.rolespec) = (yyvsp[0].rolespec); }
32193 #line 32194 "gram_minimal.c" /* yacc.c:1646  */
32194     break;
32195 
32196   case 722:
32197 #line 5285 "gram_minimal.y" /* yacc.c:1646  */
32198     { (yyval.rolespec) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[0])); }
32199 #line 32200 "gram_minimal.c" /* yacc.c:1646  */
32200     break;
32201 
32202   case 723:
32203 #line 5298 "gram_minimal.y" /* yacc.c:1646  */
32204     {
32205 					DropUserMappingStmt *n = makeNode(DropUserMappingStmt);
32206 					n->user = (yyvsp[-2].rolespec);
32207 					n->servername = (yyvsp[0].str);
32208 					n->missing_ok = false;
32209 					(yyval.node) = (Node *) n;
32210 				}
32211 #line 32212 "gram_minimal.c" /* yacc.c:1646  */
32212     break;
32213 
32214   case 724:
32215 #line 5306 "gram_minimal.y" /* yacc.c:1646  */
32216     {
32217 					DropUserMappingStmt *n = makeNode(DropUserMappingStmt);
32218 					n->user = (yyvsp[-2].rolespec);
32219 					n->servername = (yyvsp[0].str);
32220 					n->missing_ok = true;
32221 					(yyval.node) = (Node *) n;
32222 				}
32223 #line 32224 "gram_minimal.c" /* yacc.c:1646  */
32224     break;
32225 
32226   case 725:
32227 #line 5323 "gram_minimal.y" /* yacc.c:1646  */
32228     {
32229 					AlterUserMappingStmt *n = makeNode(AlterUserMappingStmt);
32230 					n->user = (yyvsp[-3].rolespec);
32231 					n->servername = (yyvsp[-1].str);
32232 					n->options = (yyvsp[0].list);
32233 					(yyval.node) = (Node *) n;
32234 				}
32235 #line 32236 "gram_minimal.c" /* yacc.c:1646  */
32236     break;
32237 
32238   case 726:
32239 #line 5349 "gram_minimal.y" /* yacc.c:1646  */
32240     {
32241 					CreatePolicyStmt *n = makeNode(CreatePolicyStmt);
32242 					n->policy_name = (yyvsp[-7].str);
32243 					n->table = (yyvsp[-5].range);
32244 					n->permissive = (yyvsp[-4].boolean);
32245 					n->cmd_name = (yyvsp[-3].str);
32246 					n->roles = (yyvsp[-2].list);
32247 					n->qual = (yyvsp[-1].node);
32248 					n->with_check = (yyvsp[0].node);
32249 					(yyval.node) = (Node *) n;
32250 				}
32251 #line 32252 "gram_minimal.c" /* yacc.c:1646  */
32252     break;
32253 
32254   case 727:
32255 #line 5365 "gram_minimal.y" /* yacc.c:1646  */
32256     {
32257 					AlterPolicyStmt *n = makeNode(AlterPolicyStmt);
32258 					n->policy_name = (yyvsp[-5].str);
32259 					n->table = (yyvsp[-3].range);
32260 					n->roles = (yyvsp[-2].list);
32261 					n->qual = (yyvsp[-1].node);
32262 					n->with_check = (yyvsp[0].node);
32263 					(yyval.node) = (Node *) n;
32264 				}
32265 #line 32266 "gram_minimal.c" /* yacc.c:1646  */
32266     break;
32267 
32268   case 728:
32269 #line 5377 "gram_minimal.y" /* yacc.c:1646  */
32270     { (yyval.node) = (yyvsp[-1].node); }
32271 #line 32272 "gram_minimal.c" /* yacc.c:1646  */
32272     break;
32273 
32274   case 729:
32275 #line 5378 "gram_minimal.y" /* yacc.c:1646  */
32276     { (yyval.node) = NULL; }
32277 #line 32278 "gram_minimal.c" /* yacc.c:1646  */
32278     break;
32279 
32280   case 730:
32281 #line 5382 "gram_minimal.y" /* yacc.c:1646  */
32282     { (yyval.node) = (yyvsp[-1].node); }
32283 #line 32284 "gram_minimal.c" /* yacc.c:1646  */
32284     break;
32285 
32286   case 731:
32287 #line 5383 "gram_minimal.y" /* yacc.c:1646  */
32288     { (yyval.node) = NULL; }
32289 #line 32290 "gram_minimal.c" /* yacc.c:1646  */
32290     break;
32291 
32292   case 732:
32293 #line 5387 "gram_minimal.y" /* yacc.c:1646  */
32294     { (yyval.list) = (yyvsp[0].list); }
32295 #line 32296 "gram_minimal.c" /* yacc.c:1646  */
32296     break;
32297 
32298   case 733:
32299 #line 5388 "gram_minimal.y" /* yacc.c:1646  */
32300     { (yyval.list) = list_make1(makeRoleSpec(ROLESPEC_PUBLIC, -1)); }
32301 #line 32302 "gram_minimal.c" /* yacc.c:1646  */
32302     break;
32303 
32304   case 734:
32305 #line 5392 "gram_minimal.y" /* yacc.c:1646  */
32306     { (yyval.list) = (yyvsp[0].list); }
32307 #line 32308 "gram_minimal.c" /* yacc.c:1646  */
32308     break;
32309 
32310   case 735:
32311 #line 5393 "gram_minimal.y" /* yacc.c:1646  */
32312     { (yyval.list) = NULL; }
32313 #line 32314 "gram_minimal.c" /* yacc.c:1646  */
32314     break;
32315 
32316   case 736:
32317 #line 5398 "gram_minimal.y" /* yacc.c:1646  */
32318     {
32319 					if (strcmp((yyvsp[0].str), "permissive") == 0)
32320 						(yyval.boolean) = true;
32321 					else if (strcmp((yyvsp[0].str), "restrictive") == 0)
32322 						(yyval.boolean) = false;
32323 					else
32324 						ereport(ERROR,
32325 								(errcode(ERRCODE_SYNTAX_ERROR),
32326 							 errmsg("unrecognized row security option \"%s\"", (yyvsp[0].str)),
32327 								 errhint("Only PERMISSIVE or RESTRICTIVE policies are supported currently."),
32328 									 parser_errposition((yylsp[0]))));
32329 
32330 				}
32331 #line 32332 "gram_minimal.c" /* yacc.c:1646  */
32332     break;
32333 
32334   case 737:
32335 #line 5411 "gram_minimal.y" /* yacc.c:1646  */
32336     { (yyval.boolean) = true; }
32337 #line 32338 "gram_minimal.c" /* yacc.c:1646  */
32338     break;
32339 
32340   case 738:
32341 #line 5415 "gram_minimal.y" /* yacc.c:1646  */
32342     { (yyval.str) = (yyvsp[0].str); }
32343 #line 32344 "gram_minimal.c" /* yacc.c:1646  */
32344     break;
32345 
32346   case 739:
32347 #line 5416 "gram_minimal.y" /* yacc.c:1646  */
32348     { (yyval.str) = "all"; }
32349 #line 32350 "gram_minimal.c" /* yacc.c:1646  */
32350     break;
32351 
32352   case 740:
32353 #line 5420 "gram_minimal.y" /* yacc.c:1646  */
32354     { (yyval.str) = "all"; }
32355 #line 32356 "gram_minimal.c" /* yacc.c:1646  */
32356     break;
32357 
32358   case 741:
32359 #line 5421 "gram_minimal.y" /* yacc.c:1646  */
32360     { (yyval.str) = "select"; }
32361 #line 32362 "gram_minimal.c" /* yacc.c:1646  */
32362     break;
32363 
32364   case 742:
32365 #line 5422 "gram_minimal.y" /* yacc.c:1646  */
32366     { (yyval.str) = "insert"; }
32367 #line 32368 "gram_minimal.c" /* yacc.c:1646  */
32368     break;
32369 
32370   case 743:
32371 #line 5423 "gram_minimal.y" /* yacc.c:1646  */
32372     { (yyval.str) = "update"; }
32373 #line 32374 "gram_minimal.c" /* yacc.c:1646  */
32374     break;
32375 
32376   case 744:
32377 #line 5424 "gram_minimal.y" /* yacc.c:1646  */
32378     { (yyval.str) = "delete"; }
32379 #line 32380 "gram_minimal.c" /* yacc.c:1646  */
32380     break;
32381 
32382   case 745:
32383 #line 5435 "gram_minimal.y" /* yacc.c:1646  */
32384     {
32385 					CreateAmStmt *n = makeNode(CreateAmStmt);
32386 					n->amname = (yyvsp[-4].str);
32387 					n->handler_name = (yyvsp[0].list);
32388 					n->amtype = (yyvsp[-2].chr);
32389 					(yyval.node) = (Node *) n;
32390 				}
32391 #line 32392 "gram_minimal.c" /* yacc.c:1646  */
32392     break;
32393 
32394   case 746:
32395 #line 5445 "gram_minimal.y" /* yacc.c:1646  */
32396     { (yyval.chr) = AMTYPE_INDEX; }
32397 #line 32398 "gram_minimal.c" /* yacc.c:1646  */
32398     break;
32399 
32400   case 747:
32401 #line 5446 "gram_minimal.y" /* yacc.c:1646  */
32402     { (yyval.chr) = AMTYPE_TABLE; }
32403 #line 32404 "gram_minimal.c" /* yacc.c:1646  */
32404     break;
32405 
32406   case 748:
32407 #line 5460 "gram_minimal.y" /* yacc.c:1646  */
32408     {
32409 					CreateTrigStmt *n = makeNode(CreateTrigStmt);
32410 					n->trigname = (yyvsp[-13].str);
32411 					n->relation = (yyvsp[-9].range);
32412 					n->funcname = (yyvsp[-3].list);
32413 					n->args = (yyvsp[-1].list);
32414 					n->row = (yyvsp[-7].boolean);
32415 					n->timing = (yyvsp[-12].ival);
32416 					n->events = intVal(linitial((yyvsp[-11].list)));
32417 					n->columns = (List *) lsecond((yyvsp[-11].list));
32418 					n->whenClause = (yyvsp[-6].node);
32419 					n->transitionRels = (yyvsp[-8].list);
32420 					n->isconstraint  = false;
32421 					n->deferrable	 = false;
32422 					n->initdeferred  = false;
32423 					n->constrrel = NULL;
32424 					(yyval.node) = (Node *)n;
32425 				}
32426 #line 32427 "gram_minimal.c" /* yacc.c:1646  */
32427     break;
32428 
32429   case 749:
32430 #line 5482 "gram_minimal.y" /* yacc.c:1646  */
32431     {
32432 					CreateTrigStmt *n = makeNode(CreateTrigStmt);
32433 					n->trigname = (yyvsp[-16].str);
32434 					n->relation = (yyvsp[-12].range);
32435 					n->funcname = (yyvsp[-3].list);
32436 					n->args = (yyvsp[-1].list);
32437 					n->row = true;
32438 					n->timing = TRIGGER_TYPE_AFTER;
32439 					n->events = intVal(linitial((yyvsp[-14].list)));
32440 					n->columns = (List *) lsecond((yyvsp[-14].list));
32441 					n->whenClause = (yyvsp[-6].node);
32442 					n->transitionRels = NIL;
32443 					n->isconstraint  = true;
32444 					processCASbits((yyvsp[-10].ival), (yylsp[-10]), "TRIGGER",
32445 								   &n->deferrable, &n->initdeferred, NULL,
32446 								   NULL, yyscanner);
32447 					n->constrrel = (yyvsp[-11].range);
32448 					(yyval.node) = (Node *)n;
32449 				}
32450 #line 32451 "gram_minimal.c" /* yacc.c:1646  */
32451     break;
32452 
32453   case 750:
32454 #line 5504 "gram_minimal.y" /* yacc.c:1646  */
32455     { (yyval.ival) = TRIGGER_TYPE_BEFORE; }
32456 #line 32457 "gram_minimal.c" /* yacc.c:1646  */
32457     break;
32458 
32459   case 751:
32460 #line 5505 "gram_minimal.y" /* yacc.c:1646  */
32461     { (yyval.ival) = TRIGGER_TYPE_AFTER; }
32462 #line 32463 "gram_minimal.c" /* yacc.c:1646  */
32463     break;
32464 
32465   case 752:
32466 #line 5506 "gram_minimal.y" /* yacc.c:1646  */
32467     { (yyval.ival) = TRIGGER_TYPE_INSTEAD; }
32468 #line 32469 "gram_minimal.c" /* yacc.c:1646  */
32469     break;
32470 
32471   case 753:
32472 #line 5511 "gram_minimal.y" /* yacc.c:1646  */
32473     { (yyval.list) = (yyvsp[0].list); }
32474 #line 32475 "gram_minimal.c" /* yacc.c:1646  */
32475     break;
32476 
32477   case 754:
32478 #line 5513 "gram_minimal.y" /* yacc.c:1646  */
32479     {
32480 					int		events1 = intVal(linitial((yyvsp[-2].list)));
32481 					int		events2 = intVal(linitial((yyvsp[0].list)));
32482 					List   *columns1 = (List *) lsecond((yyvsp[-2].list));
32483 					List   *columns2 = (List *) lsecond((yyvsp[0].list));
32484 
32485 					if (events1 & events2)
32486 						parser_yyerror("duplicate trigger events specified");
32487 					/*
32488 					 * concat'ing the columns lists loses information about
32489 					 * which columns went with which event, but so long as
32490 					 * only UPDATE carries columns and we disallow multiple
32491 					 * UPDATE items, it doesn't matter.  Command execution
32492 					 * should just ignore the columns for non-UPDATE events.
32493 					 */
32494 					(yyval.list) = list_make2(makeInteger(events1 | events2),
32495 									list_concat(columns1, columns2));
32496 				}
32497 #line 32498 "gram_minimal.c" /* yacc.c:1646  */
32498     break;
32499 
32500   case 755:
32501 #line 5535 "gram_minimal.y" /* yacc.c:1646  */
32502     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_INSERT), NIL); }
32503 #line 32504 "gram_minimal.c" /* yacc.c:1646  */
32504     break;
32505 
32506   case 756:
32507 #line 5537 "gram_minimal.y" /* yacc.c:1646  */
32508     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_DELETE), NIL); }
32509 #line 32510 "gram_minimal.c" /* yacc.c:1646  */
32510     break;
32511 
32512   case 757:
32513 #line 5539 "gram_minimal.y" /* yacc.c:1646  */
32514     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), NIL); }
32515 #line 32516 "gram_minimal.c" /* yacc.c:1646  */
32516     break;
32517 
32518   case 758:
32519 #line 5541 "gram_minimal.y" /* yacc.c:1646  */
32520     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), (yyvsp[0].list)); }
32521 #line 32522 "gram_minimal.c" /* yacc.c:1646  */
32522     break;
32523 
32524   case 759:
32525 #line 5543 "gram_minimal.y" /* yacc.c:1646  */
32526     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_TRUNCATE), NIL); }
32527 #line 32528 "gram_minimal.c" /* yacc.c:1646  */
32528     break;
32529 
32530   case 760:
32531 #line 5547 "gram_minimal.y" /* yacc.c:1646  */
32532     { (yyval.list) = (yyvsp[0].list); }
32533 #line 32534 "gram_minimal.c" /* yacc.c:1646  */
32534     break;
32535 
32536   case 761:
32537 #line 5548 "gram_minimal.y" /* yacc.c:1646  */
32538     { (yyval.list) = NIL; }
32539 #line 32540 "gram_minimal.c" /* yacc.c:1646  */
32540     break;
32541 
32542   case 762:
32543 #line 5552 "gram_minimal.y" /* yacc.c:1646  */
32544     { (yyval.list) = list_make1((yyvsp[0].node)); }
32545 #line 32546 "gram_minimal.c" /* yacc.c:1646  */
32546     break;
32547 
32548   case 763:
32549 #line 5553 "gram_minimal.y" /* yacc.c:1646  */
32550     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
32551 #line 32552 "gram_minimal.c" /* yacc.c:1646  */
32552     break;
32553 
32554   case 764:
32555 #line 5558 "gram_minimal.y" /* yacc.c:1646  */
32556     {
32557 					TriggerTransition *n = makeNode(TriggerTransition);
32558 					n->name = (yyvsp[0].str);
32559 					n->isNew = (yyvsp[-3].boolean);
32560 					n->isTable = (yyvsp[-2].boolean);
32561 					(yyval.node) = (Node *)n;
32562 				}
32563 #line 32564 "gram_minimal.c" /* yacc.c:1646  */
32564     break;
32565 
32566   case 765:
32567 #line 5568 "gram_minimal.y" /* yacc.c:1646  */
32568     { (yyval.boolean) = true; }
32569 #line 32570 "gram_minimal.c" /* yacc.c:1646  */
32570     break;
32571 
32572   case 766:
32573 #line 5569 "gram_minimal.y" /* yacc.c:1646  */
32574     { (yyval.boolean) = false; }
32575 #line 32576 "gram_minimal.c" /* yacc.c:1646  */
32576     break;
32577 
32578   case 767:
32579 #line 5573 "gram_minimal.y" /* yacc.c:1646  */
32580     { (yyval.boolean) = true; }
32581 #line 32582 "gram_minimal.c" /* yacc.c:1646  */
32582     break;
32583 
32584   case 768:
32585 #line 5582 "gram_minimal.y" /* yacc.c:1646  */
32586     { (yyval.boolean) = false; }
32587 #line 32588 "gram_minimal.c" /* yacc.c:1646  */
32588     break;
32589 
32590   case 769:
32591 #line 5586 "gram_minimal.y" /* yacc.c:1646  */
32592     { (yyval.str) = (yyvsp[0].str); }
32593 #line 32594 "gram_minimal.c" /* yacc.c:1646  */
32594     break;
32595 
32596   case 770:
32597 #line 5591 "gram_minimal.y" /* yacc.c:1646  */
32598     {
32599 					(yyval.boolean) = (yyvsp[0].boolean);
32600 				}
32601 #line 32602 "gram_minimal.c" /* yacc.c:1646  */
32602     break;
32603 
32604   case 771:
32605 #line 5595 "gram_minimal.y" /* yacc.c:1646  */
32606     {
32607 					/*
32608 					 * If ROW/STATEMENT not specified, default to
32609 					 * STATEMENT, per SQL
32610 					 */
32611 					(yyval.boolean) = false;
32612 				}
32613 #line 32614 "gram_minimal.c" /* yacc.c:1646  */
32614     break;
32615 
32616   case 772:
32617 #line 5605 "gram_minimal.y" /* yacc.c:1646  */
32618     {}
32619 #line 32620 "gram_minimal.c" /* yacc.c:1646  */
32620     break;
32621 
32622   case 773:
32623 #line 5606 "gram_minimal.y" /* yacc.c:1646  */
32624     {}
32625 #line 32626 "gram_minimal.c" /* yacc.c:1646  */
32626     break;
32627 
32628   case 774:
32629 #line 5610 "gram_minimal.y" /* yacc.c:1646  */
32630     { (yyval.boolean) = true; }
32631 #line 32632 "gram_minimal.c" /* yacc.c:1646  */
32632     break;
32633 
32634   case 775:
32635 #line 5611 "gram_minimal.y" /* yacc.c:1646  */
32636     { (yyval.boolean) = false; }
32637 #line 32638 "gram_minimal.c" /* yacc.c:1646  */
32638     break;
32639 
32640   case 776:
32641 #line 5615 "gram_minimal.y" /* yacc.c:1646  */
32642     { (yyval.node) = (yyvsp[-1].node); }
32643 #line 32644 "gram_minimal.c" /* yacc.c:1646  */
32644     break;
32645 
32646   case 777:
32647 #line 5616 "gram_minimal.y" /* yacc.c:1646  */
32648     { (yyval.node) = NULL; }
32649 #line 32650 "gram_minimal.c" /* yacc.c:1646  */
32650     break;
32651 
32652   case 780:
32653 #line 5625 "gram_minimal.y" /* yacc.c:1646  */
32654     { (yyval.list) = list_make1((yyvsp[0].value)); }
32655 #line 32656 "gram_minimal.c" /* yacc.c:1646  */
32656     break;
32657 
32658   case 781:
32659 #line 5626 "gram_minimal.y" /* yacc.c:1646  */
32660     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].value)); }
32661 #line 32662 "gram_minimal.c" /* yacc.c:1646  */
32662     break;
32663 
32664   case 782:
32665 #line 5627 "gram_minimal.y" /* yacc.c:1646  */
32666     { (yyval.list) = NIL; }
32667 #line 32668 "gram_minimal.c" /* yacc.c:1646  */
32668     break;
32669 
32670   case 783:
32671 #line 5632 "gram_minimal.y" /* yacc.c:1646  */
32672     {
32673 					(yyval.value) = makeString(psprintf("%d", (yyvsp[0].ival)));
32674 				}
32675 #line 32676 "gram_minimal.c" /* yacc.c:1646  */
32676     break;
32677 
32678   case 784:
32679 #line 5635 "gram_minimal.y" /* yacc.c:1646  */
32680     { (yyval.value) = makeString((yyvsp[0].str)); }
32681 #line 32682 "gram_minimal.c" /* yacc.c:1646  */
32682     break;
32683 
32684   case 785:
32685 #line 5636 "gram_minimal.y" /* yacc.c:1646  */
32686     { (yyval.value) = makeString((yyvsp[0].str)); }
32687 #line 32688 "gram_minimal.c" /* yacc.c:1646  */
32688     break;
32689 
32690   case 786:
32691 #line 5637 "gram_minimal.y" /* yacc.c:1646  */
32692     { (yyval.value) = makeString((yyvsp[0].str)); }
32693 #line 32694 "gram_minimal.c" /* yacc.c:1646  */
32694     break;
32695 
32696   case 787:
32697 #line 5641 "gram_minimal.y" /* yacc.c:1646  */
32698     { (yyval.range) = (yyvsp[0].range); }
32699 #line 32700 "gram_minimal.c" /* yacc.c:1646  */
32700     break;
32701 
32702   case 788:
32703 #line 5642 "gram_minimal.y" /* yacc.c:1646  */
32704     { (yyval.range) = NULL; }
32705 #line 32706 "gram_minimal.c" /* yacc.c:1646  */
32706     break;
32707 
32708   case 789:
32709 #line 5647 "gram_minimal.y" /* yacc.c:1646  */
32710     { (yyval.ival) = 0; }
32711 #line 32712 "gram_minimal.c" /* yacc.c:1646  */
32712     break;
32713 
32714   case 790:
32715 #line 5649 "gram_minimal.y" /* yacc.c:1646  */
32716     {
32717 					/*
32718 					 * We must complain about conflicting options.
32719 					 * We could, but choose not to, complain about redundant
32720 					 * options (ie, where $2's bit is already set in $1).
32721 					 */
32722 					int		newspec = (yyvsp[-1].ival) | (yyvsp[0].ival);
32723 
32724 					/* special message for this case */
32725 					if ((newspec & (CAS_NOT_DEFERRABLE | CAS_INITIALLY_DEFERRED)) == (CAS_NOT_DEFERRABLE | CAS_INITIALLY_DEFERRED))
32726 						ereport(ERROR,
32727 								(errcode(ERRCODE_SYNTAX_ERROR),
32728 								 errmsg("constraint declared INITIALLY DEFERRED must be DEFERRABLE"),
32729 								 parser_errposition((yylsp[0]))));
32730 					/* generic message for other conflicts */
32731 					if ((newspec & (CAS_NOT_DEFERRABLE | CAS_DEFERRABLE)) == (CAS_NOT_DEFERRABLE | CAS_DEFERRABLE) ||
32732 						(newspec & (CAS_INITIALLY_IMMEDIATE | CAS_INITIALLY_DEFERRED)) == (CAS_INITIALLY_IMMEDIATE | CAS_INITIALLY_DEFERRED))
32733 						ereport(ERROR,
32734 								(errcode(ERRCODE_SYNTAX_ERROR),
32735 								 errmsg("conflicting constraint properties"),
32736 								 parser_errposition((yylsp[0]))));
32737 					(yyval.ival) = newspec;
32738 				}
32739 #line 32740 "gram_minimal.c" /* yacc.c:1646  */
32740     break;
32741 
32742   case 791:
32743 #line 5675 "gram_minimal.y" /* yacc.c:1646  */
32744     { (yyval.ival) = CAS_NOT_DEFERRABLE; }
32745 #line 32746 "gram_minimal.c" /* yacc.c:1646  */
32746     break;
32747 
32748   case 792:
32749 #line 5676 "gram_minimal.y" /* yacc.c:1646  */
32750     { (yyval.ival) = CAS_DEFERRABLE; }
32751 #line 32752 "gram_minimal.c" /* yacc.c:1646  */
32752     break;
32753 
32754   case 793:
32755 #line 5677 "gram_minimal.y" /* yacc.c:1646  */
32756     { (yyval.ival) = CAS_INITIALLY_IMMEDIATE; }
32757 #line 32758 "gram_minimal.c" /* yacc.c:1646  */
32758     break;
32759 
32760   case 794:
32761 #line 5678 "gram_minimal.y" /* yacc.c:1646  */
32762     { (yyval.ival) = CAS_INITIALLY_DEFERRED; }
32763 #line 32764 "gram_minimal.c" /* yacc.c:1646  */
32764     break;
32765 
32766   case 795:
32767 #line 5679 "gram_minimal.y" /* yacc.c:1646  */
32768     { (yyval.ival) = CAS_NOT_VALID; }
32769 #line 32770 "gram_minimal.c" /* yacc.c:1646  */
32770     break;
32771 
32772   case 796:
32773 #line 5680 "gram_minimal.y" /* yacc.c:1646  */
32774     { (yyval.ival) = CAS_NO_INHERIT; }
32775 #line 32776 "gram_minimal.c" /* yacc.c:1646  */
32776     break;
32777 
32778   case 797:
32779 #line 5695 "gram_minimal.y" /* yacc.c:1646  */
32780     {
32781 					CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt);
32782 					n->trigname = (yyvsp[-7].str);
32783 					n->eventname = (yyvsp[-5].str);
32784 					n->whenclause = NULL;
32785 					n->funcname = (yyvsp[-2].list);
32786 					(yyval.node) = (Node *)n;
32787 				}
32788 #line 32789 "gram_minimal.c" /* yacc.c:1646  */
32789     break;
32790 
32791   case 798:
32792 #line 5706 "gram_minimal.y" /* yacc.c:1646  */
32793     {
32794 					CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt);
32795 					n->trigname = (yyvsp[-9].str);
32796 					n->eventname = (yyvsp[-7].str);
32797 					n->whenclause = (yyvsp[-5].list);
32798 					n->funcname = (yyvsp[-2].list);
32799 					(yyval.node) = (Node *)n;
32800 				}
32801 #line 32802 "gram_minimal.c" /* yacc.c:1646  */
32802     break;
32803 
32804   case 799:
32805 #line 5718 "gram_minimal.y" /* yacc.c:1646  */
32806     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
32807 #line 32808 "gram_minimal.c" /* yacc.c:1646  */
32808     break;
32809 
32810   case 800:
32811 #line 5720 "gram_minimal.y" /* yacc.c:1646  */
32812     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
32813 #line 32814 "gram_minimal.c" /* yacc.c:1646  */
32814     break;
32815 
32816   case 801:
32817 #line 5725 "gram_minimal.y" /* yacc.c:1646  */
32818     { (yyval.defelt) = makeDefElem((yyvsp[-4].str), (Node *) (yyvsp[-1].list), (yylsp[-4])); }
32819 #line 32820 "gram_minimal.c" /* yacc.c:1646  */
32820     break;
32821 
32822   case 802:
32823 #line 5730 "gram_minimal.y" /* yacc.c:1646  */
32824     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
32825 #line 32826 "gram_minimal.c" /* yacc.c:1646  */
32826     break;
32827 
32828   case 803:
32829 #line 5732 "gram_minimal.y" /* yacc.c:1646  */
32830     { (yyval.list) = lappend((yyvsp[-2].list), makeString((yyvsp[0].str))); }
32831 #line 32832 "gram_minimal.c" /* yacc.c:1646  */
32832     break;
32833 
32834   case 804:
32835 #line 5737 "gram_minimal.y" /* yacc.c:1646  */
32836     {
32837 					AlterEventTrigStmt *n = makeNode(AlterEventTrigStmt);
32838 					n->trigname = (yyvsp[-1].str);
32839 					n->tgenabled = (yyvsp[0].chr);
32840 					(yyval.node) = (Node *) n;
32841 				}
32842 #line 32843 "gram_minimal.c" /* yacc.c:1646  */
32843     break;
32844 
32845   case 805:
32846 #line 5746 "gram_minimal.y" /* yacc.c:1646  */
32847     { (yyval.chr) = TRIGGER_FIRES_ON_ORIGIN; }
32848 #line 32849 "gram_minimal.c" /* yacc.c:1646  */
32849     break;
32850 
32851   case 806:
32852 #line 5747 "gram_minimal.y" /* yacc.c:1646  */
32853     { (yyval.chr) = TRIGGER_FIRES_ON_REPLICA; }
32854 #line 32855 "gram_minimal.c" /* yacc.c:1646  */
32855     break;
32856 
32857   case 807:
32858 #line 5748 "gram_minimal.y" /* yacc.c:1646  */
32859     { (yyval.chr) = TRIGGER_FIRES_ALWAYS; }
32860 #line 32861 "gram_minimal.c" /* yacc.c:1646  */
32861     break;
32862 
32863   case 808:
32864 #line 5749 "gram_minimal.y" /* yacc.c:1646  */
32865     { (yyval.chr) = TRIGGER_DISABLED; }
32866 #line 32867 "gram_minimal.c" /* yacc.c:1646  */
32867     break;
32868 
32869   case 809:
32870 #line 5761 "gram_minimal.y" /* yacc.c:1646  */
32871     {
32872 					ereport(ERROR,
32873 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
32874 							 errmsg("CREATE ASSERTION is not yet implemented")));
32875 
32876 					(yyval.node) = NULL;
32877 				}
32878 #line 32879 "gram_minimal.c" /* yacc.c:1646  */
32879     break;
32880 
32881   case 810:
32882 #line 5780 "gram_minimal.y" /* yacc.c:1646  */
32883     {
32884 					DefineStmt *n = makeNode(DefineStmt);
32885 					n->kind = OBJECT_AGGREGATE;
32886 					n->oldstyle = false;
32887 					n->replace = (yyvsp[-4].boolean);
32888 					n->defnames = (yyvsp[-2].list);
32889 					n->args = (yyvsp[-1].list);
32890 					n->definition = (yyvsp[0].list);
32891 					(yyval.node) = (Node *)n;
32892 				}
32893 #line 32894 "gram_minimal.c" /* yacc.c:1646  */
32894     break;
32895 
32896   case 811:
32897 #line 5791 "gram_minimal.y" /* yacc.c:1646  */
32898     {
32899 					/* old-style (pre-8.2) syntax for CREATE AGGREGATE */
32900 					DefineStmt *n = makeNode(DefineStmt);
32901 					n->kind = OBJECT_AGGREGATE;
32902 					n->oldstyle = true;
32903 					n->replace = (yyvsp[-3].boolean);
32904 					n->defnames = (yyvsp[-1].list);
32905 					n->args = NIL;
32906 					n->definition = (yyvsp[0].list);
32907 					(yyval.node) = (Node *)n;
32908 				}
32909 #line 32910 "gram_minimal.c" /* yacc.c:1646  */
32910     break;
32911 
32912   case 812:
32913 #line 5803 "gram_minimal.y" /* yacc.c:1646  */
32914     {
32915 					DefineStmt *n = makeNode(DefineStmt);
32916 					n->kind = OBJECT_OPERATOR;
32917 					n->oldstyle = false;
32918 					n->defnames = (yyvsp[-1].list);
32919 					n->args = NIL;
32920 					n->definition = (yyvsp[0].list);
32921 					(yyval.node) = (Node *)n;
32922 				}
32923 #line 32924 "gram_minimal.c" /* yacc.c:1646  */
32924     break;
32925 
32926   case 813:
32927 #line 5813 "gram_minimal.y" /* yacc.c:1646  */
32928     {
32929 					DefineStmt *n = makeNode(DefineStmt);
32930 					n->kind = OBJECT_TYPE;
32931 					n->oldstyle = false;
32932 					n->defnames = (yyvsp[-1].list);
32933 					n->args = NIL;
32934 					n->definition = (yyvsp[0].list);
32935 					(yyval.node) = (Node *)n;
32936 				}
32937 #line 32938 "gram_minimal.c" /* yacc.c:1646  */
32938     break;
32939 
32940   case 814:
32941 #line 5823 "gram_minimal.y" /* yacc.c:1646  */
32942     {
32943 					/* Shell type (identified by lack of definition) */
32944 					DefineStmt *n = makeNode(DefineStmt);
32945 					n->kind = OBJECT_TYPE;
32946 					n->oldstyle = false;
32947 					n->defnames = (yyvsp[0].list);
32948 					n->args = NIL;
32949 					n->definition = NIL;
32950 					(yyval.node) = (Node *)n;
32951 				}
32952 #line 32953 "gram_minimal.c" /* yacc.c:1646  */
32953     break;
32954 
32955   case 815:
32956 #line 5834 "gram_minimal.y" /* yacc.c:1646  */
32957     {
32958 					CompositeTypeStmt *n = makeNode(CompositeTypeStmt);
32959 
32960 					/* can't use qualified_name, sigh */
32961 					n->typevar = makeRangeVarFromAnyName((yyvsp[-4].list), (yylsp[-4]), yyscanner);
32962 					n->coldeflist = (yyvsp[-1].list);
32963 					(yyval.node) = (Node *)n;
32964 				}
32965 #line 32966 "gram_minimal.c" /* yacc.c:1646  */
32966     break;
32967 
32968   case 816:
32969 #line 5843 "gram_minimal.y" /* yacc.c:1646  */
32970     {
32971 					CreateEnumStmt *n = makeNode(CreateEnumStmt);
32972 					n->typeName = (yyvsp[-5].list);
32973 					n->vals = (yyvsp[-1].list);
32974 					(yyval.node) = (Node *)n;
32975 				}
32976 #line 32977 "gram_minimal.c" /* yacc.c:1646  */
32977     break;
32978 
32979   case 817:
32980 #line 5850 "gram_minimal.y" /* yacc.c:1646  */
32981     {
32982 					CreateRangeStmt *n = makeNode(CreateRangeStmt);
32983 					n->typeName = (yyvsp[-3].list);
32984 					n->params	= (yyvsp[0].list);
32985 					(yyval.node) = (Node *)n;
32986 				}
32987 #line 32988 "gram_minimal.c" /* yacc.c:1646  */
32988     break;
32989 
32990   case 818:
32991 #line 5857 "gram_minimal.y" /* yacc.c:1646  */
32992     {
32993 					DefineStmt *n = makeNode(DefineStmt);
32994 					n->kind = OBJECT_TSPARSER;
32995 					n->args = NIL;
32996 					n->defnames = (yyvsp[-1].list);
32997 					n->definition = (yyvsp[0].list);
32998 					(yyval.node) = (Node *)n;
32999 				}
33000 #line 33001 "gram_minimal.c" /* yacc.c:1646  */
33001     break;
33002 
33003   case 819:
33004 #line 5866 "gram_minimal.y" /* yacc.c:1646  */
33005     {
33006 					DefineStmt *n = makeNode(DefineStmt);
33007 					n->kind = OBJECT_TSDICTIONARY;
33008 					n->args = NIL;
33009 					n->defnames = (yyvsp[-1].list);
33010 					n->definition = (yyvsp[0].list);
33011 					(yyval.node) = (Node *)n;
33012 				}
33013 #line 33014 "gram_minimal.c" /* yacc.c:1646  */
33014     break;
33015 
33016   case 820:
33017 #line 5875 "gram_minimal.y" /* yacc.c:1646  */
33018     {
33019 					DefineStmt *n = makeNode(DefineStmt);
33020 					n->kind = OBJECT_TSTEMPLATE;
33021 					n->args = NIL;
33022 					n->defnames = (yyvsp[-1].list);
33023 					n->definition = (yyvsp[0].list);
33024 					(yyval.node) = (Node *)n;
33025 				}
33026 #line 33027 "gram_minimal.c" /* yacc.c:1646  */
33027     break;
33028 
33029   case 821:
33030 #line 5884 "gram_minimal.y" /* yacc.c:1646  */
33031     {
33032 					DefineStmt *n = makeNode(DefineStmt);
33033 					n->kind = OBJECT_TSCONFIGURATION;
33034 					n->args = NIL;
33035 					n->defnames = (yyvsp[-1].list);
33036 					n->definition = (yyvsp[0].list);
33037 					(yyval.node) = (Node *)n;
33038 				}
33039 #line 33040 "gram_minimal.c" /* yacc.c:1646  */
33040     break;
33041 
33042   case 822:
33043 #line 5893 "gram_minimal.y" /* yacc.c:1646  */
33044     {
33045 					DefineStmt *n = makeNode(DefineStmt);
33046 					n->kind = OBJECT_COLLATION;
33047 					n->args = NIL;
33048 					n->defnames = (yyvsp[-1].list);
33049 					n->definition = (yyvsp[0].list);
33050 					(yyval.node) = (Node *)n;
33051 				}
33052 #line 33053 "gram_minimal.c" /* yacc.c:1646  */
33053     break;
33054 
33055   case 823:
33056 #line 5902 "gram_minimal.y" /* yacc.c:1646  */
33057     {
33058 					DefineStmt *n = makeNode(DefineStmt);
33059 					n->kind = OBJECT_COLLATION;
33060 					n->args = NIL;
33061 					n->defnames = (yyvsp[-1].list);
33062 					n->definition = (yyvsp[0].list);
33063 					n->if_not_exists = true;
33064 					(yyval.node) = (Node *)n;
33065 				}
33066 #line 33067 "gram_minimal.c" /* yacc.c:1646  */
33067     break;
33068 
33069   case 824:
33070 #line 5912 "gram_minimal.y" /* yacc.c:1646  */
33071     {
33072 					DefineStmt *n = makeNode(DefineStmt);
33073 					n->kind = OBJECT_COLLATION;
33074 					n->args = NIL;
33075 					n->defnames = (yyvsp[-2].list);
33076 					n->definition = list_make1(makeDefElem("from", (Node *) (yyvsp[0].list), (yylsp[0])));
33077 					(yyval.node) = (Node *)n;
33078 				}
33079 #line 33080 "gram_minimal.c" /* yacc.c:1646  */
33080     break;
33081 
33082   case 825:
33083 #line 5921 "gram_minimal.y" /* yacc.c:1646  */
33084     {
33085 					DefineStmt *n = makeNode(DefineStmt);
33086 					n->kind = OBJECT_COLLATION;
33087 					n->args = NIL;
33088 					n->defnames = (yyvsp[-2].list);
33089 					n->definition = list_make1(makeDefElem("from", (Node *) (yyvsp[0].list), (yylsp[0])));
33090 					n->if_not_exists = true;
33091 					(yyval.node) = (Node *)n;
33092 				}
33093 #line 33094 "gram_minimal.c" /* yacc.c:1646  */
33094     break;
33095 
33096   case 826:
33097 #line 5932 "gram_minimal.y" /* yacc.c:1646  */
33098     { (yyval.list) = (yyvsp[-1].list); }
33099 #line 33100 "gram_minimal.c" /* yacc.c:1646  */
33100     break;
33101 
33102   case 827:
33103 #line 5935 "gram_minimal.y" /* yacc.c:1646  */
33104     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
33105 #line 33106 "gram_minimal.c" /* yacc.c:1646  */
33106     break;
33107 
33108   case 828:
33109 #line 5936 "gram_minimal.y" /* yacc.c:1646  */
33110     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
33111 #line 33112 "gram_minimal.c" /* yacc.c:1646  */
33112     break;
33113 
33114   case 829:
33115 #line 5940 "gram_minimal.y" /* yacc.c:1646  */
33116     {
33117 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *) (yyvsp[0].node), (yylsp[-2]));
33118 				}
33119 #line 33120 "gram_minimal.c" /* yacc.c:1646  */
33120     break;
33121 
33122   case 830:
33123 #line 5944 "gram_minimal.y" /* yacc.c:1646  */
33124     {
33125 					(yyval.defelt) = makeDefElem((yyvsp[0].str), NULL, (yylsp[0]));
33126 				}
33127 #line 33128 "gram_minimal.c" /* yacc.c:1646  */
33128     break;
33129 
33130   case 831:
33131 #line 5950 "gram_minimal.y" /* yacc.c:1646  */
33132     { (yyval.node) = (Node *)(yyvsp[0].typnam); }
33133 #line 33134 "gram_minimal.c" /* yacc.c:1646  */
33134     break;
33135 
33136   case 832:
33137 #line 5951 "gram_minimal.y" /* yacc.c:1646  */
33138     { (yyval.node) = (Node *)makeString(pstrdup((yyvsp[0].keyword))); }
33139 #line 33140 "gram_minimal.c" /* yacc.c:1646  */
33140     break;
33141 
33142   case 833:
33143 #line 5952 "gram_minimal.y" /* yacc.c:1646  */
33144     { (yyval.node) = (Node *)(yyvsp[0].list); }
33145 #line 33146 "gram_minimal.c" /* yacc.c:1646  */
33146     break;
33147 
33148   case 834:
33149 #line 5953 "gram_minimal.y" /* yacc.c:1646  */
33150     { (yyval.node) = (Node *)(yyvsp[0].value); }
33151 #line 33152 "gram_minimal.c" /* yacc.c:1646  */
33152     break;
33153 
33154   case 835:
33155 #line 5954 "gram_minimal.y" /* yacc.c:1646  */
33156     { (yyval.node) = (Node *)makeString((yyvsp[0].str)); }
33157 #line 33158 "gram_minimal.c" /* yacc.c:1646  */
33158     break;
33159 
33160   case 836:
33161 #line 5955 "gram_minimal.y" /* yacc.c:1646  */
33162     { (yyval.node) = (Node *)makeString(pstrdup((yyvsp[0].keyword))); }
33163 #line 33164 "gram_minimal.c" /* yacc.c:1646  */
33164     break;
33165 
33166   case 837:
33167 #line 5958 "gram_minimal.y" /* yacc.c:1646  */
33168     { (yyval.list) = (yyvsp[-1].list); }
33169 #line 33170 "gram_minimal.c" /* yacc.c:1646  */
33170     break;
33171 
33172   case 838:
33173 #line 5961 "gram_minimal.y" /* yacc.c:1646  */
33174     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
33175 #line 33176 "gram_minimal.c" /* yacc.c:1646  */
33176     break;
33177 
33178   case 839:
33179 #line 5962 "gram_minimal.y" /* yacc.c:1646  */
33180     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
33181 #line 33182 "gram_minimal.c" /* yacc.c:1646  */
33182     break;
33183 
33184   case 840:
33185 #line 5971 "gram_minimal.y" /* yacc.c:1646  */
33186     {
33187 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *)(yyvsp[0].node), (yylsp[-2]));
33188 				}
33189 #line 33190 "gram_minimal.c" /* yacc.c:1646  */
33190     break;
33191 
33192   case 841:
33193 #line 5977 "gram_minimal.y" /* yacc.c:1646  */
33194     { (yyval.list) = (yyvsp[0].list); }
33195 #line 33196 "gram_minimal.c" /* yacc.c:1646  */
33196     break;
33197 
33198   case 842:
33199 #line 5978 "gram_minimal.y" /* yacc.c:1646  */
33200     { (yyval.list) = NIL; }
33201 #line 33202 "gram_minimal.c" /* yacc.c:1646  */
33202     break;
33203 
33204   case 843:
33205 #line 5982 "gram_minimal.y" /* yacc.c:1646  */
33206     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
33207 #line 33208 "gram_minimal.c" /* yacc.c:1646  */
33208     break;
33209 
33210   case 844:
33211 #line 5984 "gram_minimal.y" /* yacc.c:1646  */
33212     { (yyval.list) = lappend((yyvsp[-2].list), makeString((yyvsp[0].str))); }
33213 #line 33214 "gram_minimal.c" /* yacc.c:1646  */
33214     break;
33215 
33216   case 845:
33217 #line 5995 "gram_minimal.y" /* yacc.c:1646  */
33218     {
33219 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
33220 				n->typeName = (yyvsp[-4].list);
33221 				n->oldVal = NULL;
33222 				n->newVal = (yyvsp[0].str);
33223 				n->newValNeighbor = NULL;
33224 				n->newValIsAfter = true;
33225 				n->skipIfNewValExists = (yyvsp[-1].boolean);
33226 				(yyval.node) = (Node *) n;
33227 			}
33228 #line 33229 "gram_minimal.c" /* yacc.c:1646  */
33229     break;
33230 
33231   case 846:
33232 #line 6006 "gram_minimal.y" /* yacc.c:1646  */
33233     {
33234 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
33235 				n->typeName = (yyvsp[-6].list);
33236 				n->oldVal = NULL;
33237 				n->newVal = (yyvsp[-2].str);
33238 				n->newValNeighbor = (yyvsp[0].str);
33239 				n->newValIsAfter = false;
33240 				n->skipIfNewValExists = (yyvsp[-3].boolean);
33241 				(yyval.node) = (Node *) n;
33242 			}
33243 #line 33244 "gram_minimal.c" /* yacc.c:1646  */
33244     break;
33245 
33246   case 847:
33247 #line 6017 "gram_minimal.y" /* yacc.c:1646  */
33248     {
33249 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
33250 				n->typeName = (yyvsp[-6].list);
33251 				n->oldVal = NULL;
33252 				n->newVal = (yyvsp[-2].str);
33253 				n->newValNeighbor = (yyvsp[0].str);
33254 				n->newValIsAfter = true;
33255 				n->skipIfNewValExists = (yyvsp[-3].boolean);
33256 				(yyval.node) = (Node *) n;
33257 			}
33258 #line 33259 "gram_minimal.c" /* yacc.c:1646  */
33259     break;
33260 
33261   case 848:
33262 #line 6028 "gram_minimal.y" /* yacc.c:1646  */
33263     {
33264 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
33265 				n->typeName = (yyvsp[-5].list);
33266 				n->oldVal = (yyvsp[-2].str);
33267 				n->newVal = (yyvsp[0].str);
33268 				n->newValNeighbor = NULL;
33269 				n->newValIsAfter = false;
33270 				n->skipIfNewValExists = false;
33271 				(yyval.node) = (Node *) n;
33272 			}
33273 #line 33274 "gram_minimal.c" /* yacc.c:1646  */
33274     break;
33275 
33276   case 849:
33277 #line 6040 "gram_minimal.y" /* yacc.c:1646  */
33278     { (yyval.boolean) = true; }
33279 #line 33280 "gram_minimal.c" /* yacc.c:1646  */
33280     break;
33281 
33282   case 850:
33283 #line 6041 "gram_minimal.y" /* yacc.c:1646  */
33284     { (yyval.boolean) = false; }
33285 #line 33286 "gram_minimal.c" /* yacc.c:1646  */
33286     break;
33287 
33288   case 851:
33289 #line 6059 "gram_minimal.y" /* yacc.c:1646  */
33290     {
33291 					CreateOpClassStmt *n = makeNode(CreateOpClassStmt);
33292 					n->opclassname = (yyvsp[-9].list);
33293 					n->isDefault = (yyvsp[-8].boolean);
33294 					n->datatype = (yyvsp[-5].typnam);
33295 					n->amname = (yyvsp[-3].str);
33296 					n->opfamilyname = (yyvsp[-2].list);
33297 					n->items = (yyvsp[0].list);
33298 					(yyval.node) = (Node *) n;
33299 				}
33300 #line 33301 "gram_minimal.c" /* yacc.c:1646  */
33301     break;
33302 
33303   case 852:
33304 #line 6072 "gram_minimal.y" /* yacc.c:1646  */
33305     { (yyval.list) = list_make1((yyvsp[0].node)); }
33306 #line 33307 "gram_minimal.c" /* yacc.c:1646  */
33307     break;
33308 
33309   case 853:
33310 #line 6073 "gram_minimal.y" /* yacc.c:1646  */
33311     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
33312 #line 33313 "gram_minimal.c" /* yacc.c:1646  */
33313     break;
33314 
33315   case 854:
33316 #line 6078 "gram_minimal.y" /* yacc.c:1646  */
33317     {
33318 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33319 					ObjectWithArgs *owa = makeNode(ObjectWithArgs);
33320 					owa->objname = (yyvsp[-2].list);
33321 					owa->objargs = NIL;
33322 					n->itemtype = OPCLASS_ITEM_OPERATOR;
33323 					n->name = owa;
33324 					n->number = (yyvsp[-3].ival);
33325 					n->order_family = (yyvsp[-1].list);
33326 					(yyval.node) = (Node *) n;
33327 				}
33328 #line 33329 "gram_minimal.c" /* yacc.c:1646  */
33329     break;
33330 
33331   case 855:
33332 #line 6091 "gram_minimal.y" /* yacc.c:1646  */
33333     {
33334 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33335 					n->itemtype = OPCLASS_ITEM_OPERATOR;
33336 					n->name = (yyvsp[-2].objwithargs);
33337 					n->number = (yyvsp[-3].ival);
33338 					n->order_family = (yyvsp[-1].list);
33339 					(yyval.node) = (Node *) n;
33340 				}
33341 #line 33342 "gram_minimal.c" /* yacc.c:1646  */
33342     break;
33343 
33344   case 856:
33345 #line 6100 "gram_minimal.y" /* yacc.c:1646  */
33346     {
33347 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33348 					n->itemtype = OPCLASS_ITEM_FUNCTION;
33349 					n->name = (yyvsp[0].objwithargs);
33350 					n->number = (yyvsp[-1].ival);
33351 					(yyval.node) = (Node *) n;
33352 				}
33353 #line 33354 "gram_minimal.c" /* yacc.c:1646  */
33354     break;
33355 
33356   case 857:
33357 #line 6108 "gram_minimal.y" /* yacc.c:1646  */
33358     {
33359 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33360 					n->itemtype = OPCLASS_ITEM_FUNCTION;
33361 					n->name = (yyvsp[0].objwithargs);
33362 					n->number = (yyvsp[-4].ival);
33363 					n->class_args = (yyvsp[-2].list);
33364 					(yyval.node) = (Node *) n;
33365 				}
33366 #line 33367 "gram_minimal.c" /* yacc.c:1646  */
33367     break;
33368 
33369   case 858:
33370 #line 6117 "gram_minimal.y" /* yacc.c:1646  */
33371     {
33372 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33373 					n->itemtype = OPCLASS_ITEM_STORAGETYPE;
33374 					n->storedtype = (yyvsp[0].typnam);
33375 					(yyval.node) = (Node *) n;
33376 				}
33377 #line 33378 "gram_minimal.c" /* yacc.c:1646  */
33378     break;
33379 
33380   case 859:
33381 #line 6125 "gram_minimal.y" /* yacc.c:1646  */
33382     { (yyval.boolean) = true; }
33383 #line 33384 "gram_minimal.c" /* yacc.c:1646  */
33384     break;
33385 
33386   case 860:
33387 #line 6126 "gram_minimal.y" /* yacc.c:1646  */
33388     { (yyval.boolean) = false; }
33389 #line 33390 "gram_minimal.c" /* yacc.c:1646  */
33390     break;
33391 
33392   case 861:
33393 #line 6129 "gram_minimal.y" /* yacc.c:1646  */
33394     { (yyval.list) = (yyvsp[0].list); }
33395 #line 33396 "gram_minimal.c" /* yacc.c:1646  */
33396     break;
33397 
33398   case 862:
33399 #line 6130 "gram_minimal.y" /* yacc.c:1646  */
33400     { (yyval.list) = NIL; }
33401 #line 33402 "gram_minimal.c" /* yacc.c:1646  */
33402     break;
33403 
33404   case 863:
33405 #line 6133 "gram_minimal.y" /* yacc.c:1646  */
33406     { (yyval.list) = NIL; }
33407 #line 33408 "gram_minimal.c" /* yacc.c:1646  */
33408     break;
33409 
33410   case 864:
33411 #line 6134 "gram_minimal.y" /* yacc.c:1646  */
33412     { (yyval.list) = (yyvsp[0].list); }
33413 #line 33414 "gram_minimal.c" /* yacc.c:1646  */
33414     break;
33415 
33416   case 865:
33417 #line 6135 "gram_minimal.y" /* yacc.c:1646  */
33418     { (yyval.list) = NIL; }
33419 #line 33420 "gram_minimal.c" /* yacc.c:1646  */
33420     break;
33421 
33422   case 866:
33423 #line 6139 "gram_minimal.y" /* yacc.c:1646  */
33424     {
33425 					/*
33426 					 * RECHECK no longer does anything in opclass definitions,
33427 					 * but we still accept it to ease porting of old database
33428 					 * dumps.
33429 					 */
33430 					ereport(NOTICE,
33431 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
33432 							 errmsg("RECHECK is no longer required"),
33433 							 errhint("Update your data type."),
33434 							 parser_errposition((yylsp[0]))));
33435 					(yyval.boolean) = true;
33436 				}
33437 #line 33438 "gram_minimal.c" /* yacc.c:1646  */
33438     break;
33439 
33440   case 867:
33441 #line 6152 "gram_minimal.y" /* yacc.c:1646  */
33442     { (yyval.boolean) = false; }
33443 #line 33444 "gram_minimal.c" /* yacc.c:1646  */
33444     break;
33445 
33446   case 868:
33447 #line 6158 "gram_minimal.y" /* yacc.c:1646  */
33448     {
33449 					CreateOpFamilyStmt *n = makeNode(CreateOpFamilyStmt);
33450 					n->opfamilyname = (yyvsp[-2].list);
33451 					n->amname = (yyvsp[0].str);
33452 					(yyval.node) = (Node *) n;
33453 				}
33454 #line 33455 "gram_minimal.c" /* yacc.c:1646  */
33455     break;
33456 
33457   case 869:
33458 #line 6168 "gram_minimal.y" /* yacc.c:1646  */
33459     {
33460 					AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt);
33461 					n->opfamilyname = (yyvsp[-4].list);
33462 					n->amname = (yyvsp[-2].str);
33463 					n->isDrop = false;
33464 					n->items = (yyvsp[0].list);
33465 					(yyval.node) = (Node *) n;
33466 				}
33467 #line 33468 "gram_minimal.c" /* yacc.c:1646  */
33468     break;
33469 
33470   case 870:
33471 #line 6177 "gram_minimal.y" /* yacc.c:1646  */
33472     {
33473 					AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt);
33474 					n->opfamilyname = (yyvsp[-4].list);
33475 					n->amname = (yyvsp[-2].str);
33476 					n->isDrop = true;
33477 					n->items = (yyvsp[0].list);
33478 					(yyval.node) = (Node *) n;
33479 				}
33480 #line 33481 "gram_minimal.c" /* yacc.c:1646  */
33481     break;
33482 
33483   case 871:
33484 #line 6188 "gram_minimal.y" /* yacc.c:1646  */
33485     { (yyval.list) = list_make1((yyvsp[0].node)); }
33486 #line 33487 "gram_minimal.c" /* yacc.c:1646  */
33487     break;
33488 
33489   case 872:
33490 #line 6189 "gram_minimal.y" /* yacc.c:1646  */
33491     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
33492 #line 33493 "gram_minimal.c" /* yacc.c:1646  */
33493     break;
33494 
33495   case 873:
33496 #line 6194 "gram_minimal.y" /* yacc.c:1646  */
33497     {
33498 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33499 					n->itemtype = OPCLASS_ITEM_OPERATOR;
33500 					n->number = (yyvsp[-3].ival);
33501 					n->class_args = (yyvsp[-1].list);
33502 					(yyval.node) = (Node *) n;
33503 				}
33504 #line 33505 "gram_minimal.c" /* yacc.c:1646  */
33505     break;
33506 
33507   case 874:
33508 #line 6202 "gram_minimal.y" /* yacc.c:1646  */
33509     {
33510 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
33511 					n->itemtype = OPCLASS_ITEM_FUNCTION;
33512 					n->number = (yyvsp[-3].ival);
33513 					n->class_args = (yyvsp[-1].list);
33514 					(yyval.node) = (Node *) n;
33515 				}
33516 #line 33517 "gram_minimal.c" /* yacc.c:1646  */
33517     break;
33518 
33519   case 875:
33520 #line 6214 "gram_minimal.y" /* yacc.c:1646  */
33521     {
33522 					DropStmt *n = makeNode(DropStmt);
33523 					n->objects = list_make1(lcons(makeString((yyvsp[-1].str)), (yyvsp[-3].list)));
33524 					n->removeType = OBJECT_OPCLASS;
33525 					n->behavior = (yyvsp[0].dbehavior);
33526 					n->missing_ok = false;
33527 					n->concurrent = false;
33528 					(yyval.node) = (Node *) n;
33529 				}
33530 #line 33531 "gram_minimal.c" /* yacc.c:1646  */
33531     break;
33532 
33533   case 876:
33534 #line 6224 "gram_minimal.y" /* yacc.c:1646  */
33535     {
33536 					DropStmt *n = makeNode(DropStmt);
33537 					n->objects = list_make1(lcons(makeString((yyvsp[-1].str)), (yyvsp[-3].list)));
33538 					n->removeType = OBJECT_OPCLASS;
33539 					n->behavior = (yyvsp[0].dbehavior);
33540 					n->missing_ok = true;
33541 					n->concurrent = false;
33542 					(yyval.node) = (Node *) n;
33543 				}
33544 #line 33545 "gram_minimal.c" /* yacc.c:1646  */
33545     break;
33546 
33547   case 877:
33548 #line 6237 "gram_minimal.y" /* yacc.c:1646  */
33549     {
33550 					DropStmt *n = makeNode(DropStmt);
33551 					n->objects = list_make1(lcons(makeString((yyvsp[-1].str)), (yyvsp[-3].list)));
33552 					n->removeType = OBJECT_OPFAMILY;
33553 					n->behavior = (yyvsp[0].dbehavior);
33554 					n->missing_ok = false;
33555 					n->concurrent = false;
33556 					(yyval.node) = (Node *) n;
33557 				}
33558 #line 33559 "gram_minimal.c" /* yacc.c:1646  */
33559     break;
33560 
33561   case 878:
33562 #line 6247 "gram_minimal.y" /* yacc.c:1646  */
33563     {
33564 					DropStmt *n = makeNode(DropStmt);
33565 					n->objects = list_make1(lcons(makeString((yyvsp[-1].str)), (yyvsp[-3].list)));
33566 					n->removeType = OBJECT_OPFAMILY;
33567 					n->behavior = (yyvsp[0].dbehavior);
33568 					n->missing_ok = true;
33569 					n->concurrent = false;
33570 					(yyval.node) = (Node *) n;
33571 				}
33572 #line 33573 "gram_minimal.c" /* yacc.c:1646  */
33573     break;
33574 
33575   case 879:
33576 #line 6269 "gram_minimal.y" /* yacc.c:1646  */
33577     {
33578 					DropOwnedStmt *n = makeNode(DropOwnedStmt);
33579 					n->roles = (yyvsp[-1].list);
33580 					n->behavior = (yyvsp[0].dbehavior);
33581 					(yyval.node) = (Node *)n;
33582 				}
33583 #line 33584 "gram_minimal.c" /* yacc.c:1646  */
33584     break;
33585 
33586   case 880:
33587 #line 6279 "gram_minimal.y" /* yacc.c:1646  */
33588     {
33589 					ReassignOwnedStmt *n = makeNode(ReassignOwnedStmt);
33590 					n->roles = (yyvsp[-2].list);
33591 					n->newrole = (yyvsp[0].rolespec);
33592 					(yyval.node) = (Node *)n;
33593 				}
33594 #line 33595 "gram_minimal.c" /* yacc.c:1646  */
33595     break;
33596 
33597   case 881:
33598 #line 6297 "gram_minimal.y" /* yacc.c:1646  */
33599     {
33600 					DropStmt *n = makeNode(DropStmt);
33601 					n->removeType = (yyvsp[-4].objtype);
33602 					n->missing_ok = true;
33603 					n->objects = (yyvsp[-1].list);
33604 					n->behavior = (yyvsp[0].dbehavior);
33605 					n->concurrent = false;
33606 					(yyval.node) = (Node *)n;
33607 				}
33608 #line 33609 "gram_minimal.c" /* yacc.c:1646  */
33609     break;
33610 
33611   case 882:
33612 #line 6307 "gram_minimal.y" /* yacc.c:1646  */
33613     {
33614 					DropStmt *n = makeNode(DropStmt);
33615 					n->removeType = (yyvsp[-2].objtype);
33616 					n->missing_ok = false;
33617 					n->objects = (yyvsp[-1].list);
33618 					n->behavior = (yyvsp[0].dbehavior);
33619 					n->concurrent = false;
33620 					(yyval.node) = (Node *)n;
33621 				}
33622 #line 33623 "gram_minimal.c" /* yacc.c:1646  */
33623     break;
33624 
33625   case 883:
33626 #line 6317 "gram_minimal.y" /* yacc.c:1646  */
33627     {
33628 					DropStmt *n = makeNode(DropStmt);
33629 					n->removeType = (yyvsp[-4].objtype);
33630 					n->missing_ok = true;
33631 					n->objects = (yyvsp[-1].list);
33632 					n->behavior = (yyvsp[0].dbehavior);
33633 					n->concurrent = false;
33634 					(yyval.node) = (Node *)n;
33635 				}
33636 #line 33637 "gram_minimal.c" /* yacc.c:1646  */
33637     break;
33638 
33639   case 884:
33640 #line 6327 "gram_minimal.y" /* yacc.c:1646  */
33641     {
33642 					DropStmt *n = makeNode(DropStmt);
33643 					n->removeType = (yyvsp[-2].objtype);
33644 					n->missing_ok = false;
33645 					n->objects = (yyvsp[-1].list);
33646 					n->behavior = (yyvsp[0].dbehavior);
33647 					n->concurrent = false;
33648 					(yyval.node) = (Node *)n;
33649 				}
33650 #line 33651 "gram_minimal.c" /* yacc.c:1646  */
33651     break;
33652 
33653   case 885:
33654 #line 6337 "gram_minimal.y" /* yacc.c:1646  */
33655     {
33656 					DropStmt *n = makeNode(DropStmt);
33657 					n->removeType = (yyvsp[-4].objtype);
33658 					n->objects = list_make1(lappend((yyvsp[-1].list), makeString((yyvsp[-3].str))));
33659 					n->behavior = (yyvsp[0].dbehavior);
33660 					n->missing_ok = false;
33661 					n->concurrent = false;
33662 					(yyval.node) = (Node *) n;
33663 				}
33664 #line 33665 "gram_minimal.c" /* yacc.c:1646  */
33665     break;
33666 
33667   case 886:
33668 #line 6347 "gram_minimal.y" /* yacc.c:1646  */
33669     {
33670 					DropStmt *n = makeNode(DropStmt);
33671 					n->removeType = (yyvsp[-6].objtype);
33672 					n->objects = list_make1(lappend((yyvsp[-1].list), makeString((yyvsp[-3].str))));
33673 					n->behavior = (yyvsp[0].dbehavior);
33674 					n->missing_ok = true;
33675 					n->concurrent = false;
33676 					(yyval.node) = (Node *) n;
33677 				}
33678 #line 33679 "gram_minimal.c" /* yacc.c:1646  */
33679     break;
33680 
33681   case 887:
33682 #line 6357 "gram_minimal.y" /* yacc.c:1646  */
33683     {
33684 					DropStmt *n = makeNode(DropStmt);
33685 					n->removeType = OBJECT_TYPE;
33686 					n->missing_ok = false;
33687 					n->objects = (yyvsp[-1].list);
33688 					n->behavior = (yyvsp[0].dbehavior);
33689 					n->concurrent = false;
33690 					(yyval.node) = (Node *) n;
33691 				}
33692 #line 33693 "gram_minimal.c" /* yacc.c:1646  */
33693     break;
33694 
33695   case 888:
33696 #line 6367 "gram_minimal.y" /* yacc.c:1646  */
33697     {
33698 					DropStmt *n = makeNode(DropStmt);
33699 					n->removeType = OBJECT_TYPE;
33700 					n->missing_ok = true;
33701 					n->objects = (yyvsp[-1].list);
33702 					n->behavior = (yyvsp[0].dbehavior);
33703 					n->concurrent = false;
33704 					(yyval.node) = (Node *) n;
33705 				}
33706 #line 33707 "gram_minimal.c" /* yacc.c:1646  */
33707     break;
33708 
33709   case 889:
33710 #line 6377 "gram_minimal.y" /* yacc.c:1646  */
33711     {
33712 					DropStmt *n = makeNode(DropStmt);
33713 					n->removeType = OBJECT_DOMAIN;
33714 					n->missing_ok = false;
33715 					n->objects = (yyvsp[-1].list);
33716 					n->behavior = (yyvsp[0].dbehavior);
33717 					n->concurrent = false;
33718 					(yyval.node) = (Node *) n;
33719 				}
33720 #line 33721 "gram_minimal.c" /* yacc.c:1646  */
33721     break;
33722 
33723   case 890:
33724 #line 6387 "gram_minimal.y" /* yacc.c:1646  */
33725     {
33726 					DropStmt *n = makeNode(DropStmt);
33727 					n->removeType = OBJECT_DOMAIN;
33728 					n->missing_ok = true;
33729 					n->objects = (yyvsp[-1].list);
33730 					n->behavior = (yyvsp[0].dbehavior);
33731 					n->concurrent = false;
33732 					(yyval.node) = (Node *) n;
33733 				}
33734 #line 33735 "gram_minimal.c" /* yacc.c:1646  */
33735     break;
33736 
33737   case 891:
33738 #line 6397 "gram_minimal.y" /* yacc.c:1646  */
33739     {
33740 					DropStmt *n = makeNode(DropStmt);
33741 					n->removeType = OBJECT_INDEX;
33742 					n->missing_ok = false;
33743 					n->objects = (yyvsp[-1].list);
33744 					n->behavior = (yyvsp[0].dbehavior);
33745 					n->concurrent = true;
33746 					(yyval.node) = (Node *)n;
33747 				}
33748 #line 33749 "gram_minimal.c" /* yacc.c:1646  */
33749     break;
33750 
33751   case 892:
33752 #line 6407 "gram_minimal.y" /* yacc.c:1646  */
33753     {
33754 					DropStmt *n = makeNode(DropStmt);
33755 					n->removeType = OBJECT_INDEX;
33756 					n->missing_ok = true;
33757 					n->objects = (yyvsp[-1].list);
33758 					n->behavior = (yyvsp[0].dbehavior);
33759 					n->concurrent = true;
33760 					(yyval.node) = (Node *)n;
33761 				}
33762 #line 33763 "gram_minimal.c" /* yacc.c:1646  */
33763     break;
33764 
33765   case 893:
33766 #line 6420 "gram_minimal.y" /* yacc.c:1646  */
33767     { (yyval.objtype) = OBJECT_TABLE; }
33768 #line 33769 "gram_minimal.c" /* yacc.c:1646  */
33769     break;
33770 
33771   case 894:
33772 #line 6421 "gram_minimal.y" /* yacc.c:1646  */
33773     { (yyval.objtype) = OBJECT_SEQUENCE; }
33774 #line 33775 "gram_minimal.c" /* yacc.c:1646  */
33775     break;
33776 
33777   case 895:
33778 #line 6422 "gram_minimal.y" /* yacc.c:1646  */
33779     { (yyval.objtype) = OBJECT_VIEW; }
33780 #line 33781 "gram_minimal.c" /* yacc.c:1646  */
33781     break;
33782 
33783   case 896:
33784 #line 6423 "gram_minimal.y" /* yacc.c:1646  */
33785     { (yyval.objtype) = OBJECT_MATVIEW; }
33786 #line 33787 "gram_minimal.c" /* yacc.c:1646  */
33787     break;
33788 
33789   case 897:
33790 #line 6424 "gram_minimal.y" /* yacc.c:1646  */
33791     { (yyval.objtype) = OBJECT_INDEX; }
33792 #line 33793 "gram_minimal.c" /* yacc.c:1646  */
33793     break;
33794 
33795   case 898:
33796 #line 6425 "gram_minimal.y" /* yacc.c:1646  */
33797     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
33798 #line 33799 "gram_minimal.c" /* yacc.c:1646  */
33799     break;
33800 
33801   case 899:
33802 #line 6426 "gram_minimal.y" /* yacc.c:1646  */
33803     { (yyval.objtype) = OBJECT_COLLATION; }
33804 #line 33805 "gram_minimal.c" /* yacc.c:1646  */
33805     break;
33806 
33807   case 900:
33808 #line 6427 "gram_minimal.y" /* yacc.c:1646  */
33809     { (yyval.objtype) = OBJECT_CONVERSION; }
33810 #line 33811 "gram_minimal.c" /* yacc.c:1646  */
33811     break;
33812 
33813   case 901:
33814 #line 6428 "gram_minimal.y" /* yacc.c:1646  */
33815     { (yyval.objtype) = OBJECT_STATISTIC_EXT; }
33816 #line 33817 "gram_minimal.c" /* yacc.c:1646  */
33817     break;
33818 
33819   case 902:
33820 #line 6429 "gram_minimal.y" /* yacc.c:1646  */
33821     { (yyval.objtype) = OBJECT_TSPARSER; }
33822 #line 33823 "gram_minimal.c" /* yacc.c:1646  */
33823     break;
33824 
33825   case 903:
33826 #line 6430 "gram_minimal.y" /* yacc.c:1646  */
33827     { (yyval.objtype) = OBJECT_TSDICTIONARY; }
33828 #line 33829 "gram_minimal.c" /* yacc.c:1646  */
33829     break;
33830 
33831   case 904:
33832 #line 6431 "gram_minimal.y" /* yacc.c:1646  */
33833     { (yyval.objtype) = OBJECT_TSTEMPLATE; }
33834 #line 33835 "gram_minimal.c" /* yacc.c:1646  */
33835     break;
33836 
33837   case 905:
33838 #line 6432 "gram_minimal.y" /* yacc.c:1646  */
33839     { (yyval.objtype) = OBJECT_TSCONFIGURATION; }
33840 #line 33841 "gram_minimal.c" /* yacc.c:1646  */
33841     break;
33842 
33843   case 906:
33844 #line 6437 "gram_minimal.y" /* yacc.c:1646  */
33845     { (yyval.objtype) = OBJECT_ACCESS_METHOD; }
33846 #line 33847 "gram_minimal.c" /* yacc.c:1646  */
33847     break;
33848 
33849   case 907:
33850 #line 6438 "gram_minimal.y" /* yacc.c:1646  */
33851     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
33852 #line 33853 "gram_minimal.c" /* yacc.c:1646  */
33853     break;
33854 
33855   case 908:
33856 #line 6439 "gram_minimal.y" /* yacc.c:1646  */
33857     { (yyval.objtype) = OBJECT_EXTENSION; }
33858 #line 33859 "gram_minimal.c" /* yacc.c:1646  */
33859     break;
33860 
33861   case 909:
33862 #line 6440 "gram_minimal.y" /* yacc.c:1646  */
33863     { (yyval.objtype) = OBJECT_FDW; }
33864 #line 33865 "gram_minimal.c" /* yacc.c:1646  */
33865     break;
33866 
33867   case 910:
33868 #line 6441 "gram_minimal.y" /* yacc.c:1646  */
33869     { (yyval.objtype) = OBJECT_PUBLICATION; }
33870 #line 33871 "gram_minimal.c" /* yacc.c:1646  */
33871     break;
33872 
33873   case 911:
33874 #line 6442 "gram_minimal.y" /* yacc.c:1646  */
33875     { (yyval.objtype) = OBJECT_SCHEMA; }
33876 #line 33877 "gram_minimal.c" /* yacc.c:1646  */
33877     break;
33878 
33879   case 912:
33880 #line 6443 "gram_minimal.y" /* yacc.c:1646  */
33881     { (yyval.objtype) = OBJECT_FOREIGN_SERVER; }
33882 #line 33883 "gram_minimal.c" /* yacc.c:1646  */
33883     break;
33884 
33885   case 913:
33886 #line 6448 "gram_minimal.y" /* yacc.c:1646  */
33887     { (yyval.objtype) = OBJECT_POLICY; }
33888 #line 33889 "gram_minimal.c" /* yacc.c:1646  */
33889     break;
33890 
33891   case 914:
33892 #line 6449 "gram_minimal.y" /* yacc.c:1646  */
33893     { (yyval.objtype) = OBJECT_RULE; }
33894 #line 33895 "gram_minimal.c" /* yacc.c:1646  */
33895     break;
33896 
33897   case 915:
33898 #line 6450 "gram_minimal.y" /* yacc.c:1646  */
33899     { (yyval.objtype) = OBJECT_TRIGGER; }
33900 #line 33901 "gram_minimal.c" /* yacc.c:1646  */
33901     break;
33902 
33903   case 916:
33904 #line 6454 "gram_minimal.y" /* yacc.c:1646  */
33905     { (yyval.list) = list_make1((yyvsp[0].list)); }
33906 #line 33907 "gram_minimal.c" /* yacc.c:1646  */
33907     break;
33908 
33909   case 917:
33910 #line 6455 "gram_minimal.y" /* yacc.c:1646  */
33911     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].list)); }
33912 #line 33913 "gram_minimal.c" /* yacc.c:1646  */
33913     break;
33914 
33915   case 918:
33916 #line 6458 "gram_minimal.y" /* yacc.c:1646  */
33917     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
33918 #line 33919 "gram_minimal.c" /* yacc.c:1646  */
33919     break;
33920 
33921   case 919:
33922 #line 6459 "gram_minimal.y" /* yacc.c:1646  */
33923     { (yyval.list) = lcons(makeString((yyvsp[-1].str)), (yyvsp[0].list)); }
33924 #line 33925 "gram_minimal.c" /* yacc.c:1646  */
33925     break;
33926 
33927   case 920:
33928 #line 6463 "gram_minimal.y" /* yacc.c:1646  */
33929     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
33930 #line 33931 "gram_minimal.c" /* yacc.c:1646  */
33931     break;
33932 
33933   case 921:
33934 #line 6465 "gram_minimal.y" /* yacc.c:1646  */
33935     { (yyval.list) = lappend((yyvsp[-2].list), makeString((yyvsp[0].str))); }
33936 #line 33937 "gram_minimal.c" /* yacc.c:1646  */
33937     break;
33938 
33939   case 922:
33940 #line 6469 "gram_minimal.y" /* yacc.c:1646  */
33941     { (yyval.list) = list_make1((yyvsp[0].typnam)); }
33942 #line 33943 "gram_minimal.c" /* yacc.c:1646  */
33943     break;
33944 
33945   case 923:
33946 #line 6470 "gram_minimal.y" /* yacc.c:1646  */
33947     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].typnam)); }
33948 #line 33949 "gram_minimal.c" /* yacc.c:1646  */
33949     break;
33950 
33951   case 924:
33952 #line 6482 "gram_minimal.y" /* yacc.c:1646  */
33953     {
33954 					TruncateStmt *n = makeNode(TruncateStmt);
33955 					n->relations = (yyvsp[-2].list);
33956 					n->restart_seqs = (yyvsp[-1].boolean);
33957 					n->behavior = (yyvsp[0].dbehavior);
33958 					(yyval.node) = (Node *)n;
33959 				}
33960 #line 33961 "gram_minimal.c" /* yacc.c:1646  */
33961     break;
33962 
33963   case 925:
33964 #line 6492 "gram_minimal.y" /* yacc.c:1646  */
33965     { (yyval.boolean) = false; }
33966 #line 33967 "gram_minimal.c" /* yacc.c:1646  */
33967     break;
33968 
33969   case 926:
33970 #line 6493 "gram_minimal.y" /* yacc.c:1646  */
33971     { (yyval.boolean) = true; }
33972 #line 33973 "gram_minimal.c" /* yacc.c:1646  */
33973     break;
33974 
33975   case 927:
33976 #line 6494 "gram_minimal.y" /* yacc.c:1646  */
33977     { (yyval.boolean) = false; }
33978 #line 33979 "gram_minimal.c" /* yacc.c:1646  */
33979     break;
33980 
33981   case 928:
33982 #line 6529 "gram_minimal.y" /* yacc.c:1646  */
33983     {
33984 					CommentStmt *n = makeNode(CommentStmt);
33985 					n->objtype = (yyvsp[-3].objtype);
33986 					n->object = (Node *) (yyvsp[-2].list);
33987 					n->comment = (yyvsp[0].str);
33988 					(yyval.node) = (Node *) n;
33989 				}
33990 #line 33991 "gram_minimal.c" /* yacc.c:1646  */
33991     break;
33992 
33993   case 929:
33994 #line 6537 "gram_minimal.y" /* yacc.c:1646  */
33995     {
33996 					CommentStmt *n = makeNode(CommentStmt);
33997 					n->objtype = (yyvsp[-3].objtype);
33998 					n->object = (Node *) makeString((yyvsp[-2].str));
33999 					n->comment = (yyvsp[0].str);
34000 					(yyval.node) = (Node *) n;
34001 				}
34002 #line 34003 "gram_minimal.c" /* yacc.c:1646  */
34003     break;
34004 
34005   case 930:
34006 #line 6545 "gram_minimal.y" /* yacc.c:1646  */
34007     {
34008 					CommentStmt *n = makeNode(CommentStmt);
34009 					n->objtype = OBJECT_TYPE;
34010 					n->object = (Node *) (yyvsp[-2].typnam);
34011 					n->comment = (yyvsp[0].str);
34012 					(yyval.node) = (Node *) n;
34013 				}
34014 #line 34015 "gram_minimal.c" /* yacc.c:1646  */
34015     break;
34016 
34017   case 931:
34018 #line 6553 "gram_minimal.y" /* yacc.c:1646  */
34019     {
34020 					CommentStmt *n = makeNode(CommentStmt);
34021 					n->objtype = OBJECT_DOMAIN;
34022 					n->object = (Node *) (yyvsp[-2].typnam);
34023 					n->comment = (yyvsp[0].str);
34024 					(yyval.node) = (Node *) n;
34025 				}
34026 #line 34027 "gram_minimal.c" /* yacc.c:1646  */
34027     break;
34028 
34029   case 932:
34030 #line 6561 "gram_minimal.y" /* yacc.c:1646  */
34031     {
34032 					CommentStmt *n = makeNode(CommentStmt);
34033 					n->objtype = OBJECT_AGGREGATE;
34034 					n->object = (Node *) (yyvsp[-2].objwithargs);
34035 					n->comment = (yyvsp[0].str);
34036 					(yyval.node) = (Node *) n;
34037 				}
34038 #line 34039 "gram_minimal.c" /* yacc.c:1646  */
34039     break;
34040 
34041   case 933:
34042 #line 6569 "gram_minimal.y" /* yacc.c:1646  */
34043     {
34044 					CommentStmt *n = makeNode(CommentStmt);
34045 					n->objtype = OBJECT_FUNCTION;
34046 					n->object = (Node *) (yyvsp[-2].objwithargs);
34047 					n->comment = (yyvsp[0].str);
34048 					(yyval.node) = (Node *) n;
34049 				}
34050 #line 34051 "gram_minimal.c" /* yacc.c:1646  */
34051     break;
34052 
34053   case 934:
34054 #line 6577 "gram_minimal.y" /* yacc.c:1646  */
34055     {
34056 					CommentStmt *n = makeNode(CommentStmt);
34057 					n->objtype = OBJECT_OPERATOR;
34058 					n->object = (Node *) (yyvsp[-2].objwithargs);
34059 					n->comment = (yyvsp[0].str);
34060 					(yyval.node) = (Node *) n;
34061 				}
34062 #line 34063 "gram_minimal.c" /* yacc.c:1646  */
34063     break;
34064 
34065   case 935:
34066 #line 6585 "gram_minimal.y" /* yacc.c:1646  */
34067     {
34068 					CommentStmt *n = makeNode(CommentStmt);
34069 					n->objtype = OBJECT_TABCONSTRAINT;
34070 					n->object = (Node *) lappend((yyvsp[-2].list), makeString((yyvsp[-4].str)));
34071 					n->comment = (yyvsp[0].str);
34072 					(yyval.node) = (Node *) n;
34073 				}
34074 #line 34075 "gram_minimal.c" /* yacc.c:1646  */
34075     break;
34076 
34077   case 936:
34078 #line 6593 "gram_minimal.y" /* yacc.c:1646  */
34079     {
34080 					CommentStmt *n = makeNode(CommentStmt);
34081 					n->objtype = OBJECT_DOMCONSTRAINT;
34082 					/*
34083 					 * should use Typename not any_name in the production, but
34084 					 * there's a shift/reduce conflict if we do that, so fix it
34085 					 * up here.
34086 					 */
34087 					n->object = (Node *) list_make2(makeTypeNameFromNameList((yyvsp[-2].list)), makeString((yyvsp[-5].str)));
34088 					n->comment = (yyvsp[0].str);
34089 					(yyval.node) = (Node *) n;
34090 				}
34091 #line 34092 "gram_minimal.c" /* yacc.c:1646  */
34092     break;
34093 
34094   case 937:
34095 #line 6606 "gram_minimal.y" /* yacc.c:1646  */
34096     {
34097 					CommentStmt *n = makeNode(CommentStmt);
34098 					n->objtype = OBJECT_POLICY;
34099 					n->object = (Node *) lappend((yyvsp[-2].list), makeString((yyvsp[-4].str)));
34100 					n->comment = (yyvsp[0].str);
34101 					(yyval.node) = (Node *) n;
34102 				}
34103 #line 34104 "gram_minimal.c" /* yacc.c:1646  */
34104     break;
34105 
34106   case 938:
34107 #line 6614 "gram_minimal.y" /* yacc.c:1646  */
34108     {
34109 					CommentStmt *n = makeNode(CommentStmt);
34110 					n->objtype = OBJECT_PROCEDURE;
34111 					n->object = (Node *) (yyvsp[-2].objwithargs);
34112 					n->comment = (yyvsp[0].str);
34113 					(yyval.node) = (Node *) n;
34114 				}
34115 #line 34116 "gram_minimal.c" /* yacc.c:1646  */
34116     break;
34117 
34118   case 939:
34119 #line 6622 "gram_minimal.y" /* yacc.c:1646  */
34120     {
34121 					CommentStmt *n = makeNode(CommentStmt);
34122 					n->objtype = OBJECT_ROUTINE;
34123 					n->object = (Node *) (yyvsp[-2].objwithargs);
34124 					n->comment = (yyvsp[0].str);
34125 					(yyval.node) = (Node *) n;
34126 				}
34127 #line 34128 "gram_minimal.c" /* yacc.c:1646  */
34128     break;
34129 
34130   case 940:
34131 #line 6630 "gram_minimal.y" /* yacc.c:1646  */
34132     {
34133 					CommentStmt *n = makeNode(CommentStmt);
34134 					n->objtype = OBJECT_RULE;
34135 					n->object = (Node *) lappend((yyvsp[-2].list), makeString((yyvsp[-4].str)));
34136 					n->comment = (yyvsp[0].str);
34137 					(yyval.node) = (Node *) n;
34138 				}
34139 #line 34140 "gram_minimal.c" /* yacc.c:1646  */
34140     break;
34141 
34142   case 941:
34143 #line 6638 "gram_minimal.y" /* yacc.c:1646  */
34144     {
34145 					CommentStmt *n = makeNode(CommentStmt);
34146 					n->objtype = OBJECT_TRANSFORM;
34147 					n->object = (Node *) list_make2((yyvsp[-4].typnam), makeString((yyvsp[-2].str)));
34148 					n->comment = (yyvsp[0].str);
34149 					(yyval.node) = (Node *) n;
34150 				}
34151 #line 34152 "gram_minimal.c" /* yacc.c:1646  */
34152     break;
34153 
34154   case 942:
34155 #line 6646 "gram_minimal.y" /* yacc.c:1646  */
34156     {
34157 					CommentStmt *n = makeNode(CommentStmt);
34158 					n->objtype = OBJECT_TRIGGER;
34159 					n->object = (Node *) lappend((yyvsp[-2].list), makeString((yyvsp[-4].str)));
34160 					n->comment = (yyvsp[0].str);
34161 					(yyval.node) = (Node *) n;
34162 				}
34163 #line 34164 "gram_minimal.c" /* yacc.c:1646  */
34164     break;
34165 
34166   case 943:
34167 #line 6654 "gram_minimal.y" /* yacc.c:1646  */
34168     {
34169 					CommentStmt *n = makeNode(CommentStmt);
34170 					n->objtype = OBJECT_OPCLASS;
34171 					n->object = (Node *) lcons(makeString((yyvsp[-2].str)), (yyvsp[-4].list));
34172 					n->comment = (yyvsp[0].str);
34173 					(yyval.node) = (Node *) n;
34174 				}
34175 #line 34176 "gram_minimal.c" /* yacc.c:1646  */
34176     break;
34177 
34178   case 944:
34179 #line 6662 "gram_minimal.y" /* yacc.c:1646  */
34180     {
34181 					CommentStmt *n = makeNode(CommentStmt);
34182 					n->objtype = OBJECT_OPFAMILY;
34183 					n->object = (Node *) lcons(makeString((yyvsp[-2].str)), (yyvsp[-4].list));
34184 					n->comment = (yyvsp[0].str);
34185 					(yyval.node) = (Node *) n;
34186 				}
34187 #line 34188 "gram_minimal.c" /* yacc.c:1646  */
34188     break;
34189 
34190   case 945:
34191 #line 6670 "gram_minimal.y" /* yacc.c:1646  */
34192     {
34193 					CommentStmt *n = makeNode(CommentStmt);
34194 					n->objtype = OBJECT_LARGEOBJECT;
34195 					n->object = (Node *) (yyvsp[-2].value);
34196 					n->comment = (yyvsp[0].str);
34197 					(yyval.node) = (Node *) n;
34198 				}
34199 #line 34200 "gram_minimal.c" /* yacc.c:1646  */
34200     break;
34201 
34202   case 946:
34203 #line 6678 "gram_minimal.y" /* yacc.c:1646  */
34204     {
34205 					CommentStmt *n = makeNode(CommentStmt);
34206 					n->objtype = OBJECT_CAST;
34207 					n->object = (Node *) list_make2((yyvsp[-5].typnam), (yyvsp[-3].typnam));
34208 					n->comment = (yyvsp[0].str);
34209 					(yyval.node) = (Node *) n;
34210 				}
34211 #line 34212 "gram_minimal.c" /* yacc.c:1646  */
34212     break;
34213 
34214   case 947:
34215 #line 6689 "gram_minimal.y" /* yacc.c:1646  */
34216     { (yyval.objtype) = OBJECT_COLUMN; }
34217 #line 34218 "gram_minimal.c" /* yacc.c:1646  */
34218     break;
34219 
34220   case 948:
34221 #line 6690 "gram_minimal.y" /* yacc.c:1646  */
34222     { (yyval.objtype) = OBJECT_INDEX; }
34223 #line 34224 "gram_minimal.c" /* yacc.c:1646  */
34224     break;
34225 
34226   case 949:
34227 #line 6691 "gram_minimal.y" /* yacc.c:1646  */
34228     { (yyval.objtype) = OBJECT_SEQUENCE; }
34229 #line 34230 "gram_minimal.c" /* yacc.c:1646  */
34230     break;
34231 
34232   case 950:
34233 #line 6692 "gram_minimal.y" /* yacc.c:1646  */
34234     { (yyval.objtype) = OBJECT_STATISTIC_EXT; }
34235 #line 34236 "gram_minimal.c" /* yacc.c:1646  */
34236     break;
34237 
34238   case 951:
34239 #line 6693 "gram_minimal.y" /* yacc.c:1646  */
34240     { (yyval.objtype) = OBJECT_TABLE; }
34241 #line 34242 "gram_minimal.c" /* yacc.c:1646  */
34242     break;
34243 
34244   case 952:
34245 #line 6694 "gram_minimal.y" /* yacc.c:1646  */
34246     { (yyval.objtype) = OBJECT_VIEW; }
34247 #line 34248 "gram_minimal.c" /* yacc.c:1646  */
34248     break;
34249 
34250   case 953:
34251 #line 6695 "gram_minimal.y" /* yacc.c:1646  */
34252     { (yyval.objtype) = OBJECT_MATVIEW; }
34253 #line 34254 "gram_minimal.c" /* yacc.c:1646  */
34254     break;
34255 
34256   case 954:
34257 #line 6696 "gram_minimal.y" /* yacc.c:1646  */
34258     { (yyval.objtype) = OBJECT_COLLATION; }
34259 #line 34260 "gram_minimal.c" /* yacc.c:1646  */
34260     break;
34261 
34262   case 955:
34263 #line 6697 "gram_minimal.y" /* yacc.c:1646  */
34264     { (yyval.objtype) = OBJECT_CONVERSION; }
34265 #line 34266 "gram_minimal.c" /* yacc.c:1646  */
34266     break;
34267 
34268   case 956:
34269 #line 6698 "gram_minimal.y" /* yacc.c:1646  */
34270     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
34271 #line 34272 "gram_minimal.c" /* yacc.c:1646  */
34272     break;
34273 
34274   case 957:
34275 #line 6699 "gram_minimal.y" /* yacc.c:1646  */
34276     { (yyval.objtype) = OBJECT_TSCONFIGURATION; }
34277 #line 34278 "gram_minimal.c" /* yacc.c:1646  */
34278     break;
34279 
34280   case 958:
34281 #line 6700 "gram_minimal.y" /* yacc.c:1646  */
34282     { (yyval.objtype) = OBJECT_TSDICTIONARY; }
34283 #line 34284 "gram_minimal.c" /* yacc.c:1646  */
34284     break;
34285 
34286   case 959:
34287 #line 6701 "gram_minimal.y" /* yacc.c:1646  */
34288     { (yyval.objtype) = OBJECT_TSPARSER; }
34289 #line 34290 "gram_minimal.c" /* yacc.c:1646  */
34290     break;
34291 
34292   case 960:
34293 #line 6702 "gram_minimal.y" /* yacc.c:1646  */
34294     { (yyval.objtype) = OBJECT_TSTEMPLATE; }
34295 #line 34296 "gram_minimal.c" /* yacc.c:1646  */
34296     break;
34297 
34298   case 961:
34299 #line 6707 "gram_minimal.y" /* yacc.c:1646  */
34300     { (yyval.objtype) = OBJECT_ACCESS_METHOD; }
34301 #line 34302 "gram_minimal.c" /* yacc.c:1646  */
34302     break;
34303 
34304   case 962:
34305 #line 6708 "gram_minimal.y" /* yacc.c:1646  */
34306     { (yyval.objtype) = OBJECT_DATABASE; }
34307 #line 34308 "gram_minimal.c" /* yacc.c:1646  */
34308     break;
34309 
34310   case 963:
34311 #line 6709 "gram_minimal.y" /* yacc.c:1646  */
34312     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
34313 #line 34314 "gram_minimal.c" /* yacc.c:1646  */
34314     break;
34315 
34316   case 964:
34317 #line 6710 "gram_minimal.y" /* yacc.c:1646  */
34318     { (yyval.objtype) = OBJECT_EXTENSION; }
34319 #line 34320 "gram_minimal.c" /* yacc.c:1646  */
34320     break;
34321 
34322   case 965:
34323 #line 6711 "gram_minimal.y" /* yacc.c:1646  */
34324     { (yyval.objtype) = OBJECT_FDW; }
34325 #line 34326 "gram_minimal.c" /* yacc.c:1646  */
34326     break;
34327 
34328   case 966:
34329 #line 6712 "gram_minimal.y" /* yacc.c:1646  */
34330     { (yyval.objtype) = OBJECT_LANGUAGE; }
34331 #line 34332 "gram_minimal.c" /* yacc.c:1646  */
34332     break;
34333 
34334   case 967:
34335 #line 6713 "gram_minimal.y" /* yacc.c:1646  */
34336     { (yyval.objtype) = OBJECT_PUBLICATION; }
34337 #line 34338 "gram_minimal.c" /* yacc.c:1646  */
34338     break;
34339 
34340   case 968:
34341 #line 6714 "gram_minimal.y" /* yacc.c:1646  */
34342     { (yyval.objtype) = OBJECT_ROLE; }
34343 #line 34344 "gram_minimal.c" /* yacc.c:1646  */
34344     break;
34345 
34346   case 969:
34347 #line 6715 "gram_minimal.y" /* yacc.c:1646  */
34348     { (yyval.objtype) = OBJECT_SCHEMA; }
34349 #line 34350 "gram_minimal.c" /* yacc.c:1646  */
34350     break;
34351 
34352   case 970:
34353 #line 6716 "gram_minimal.y" /* yacc.c:1646  */
34354     { (yyval.objtype) = OBJECT_FOREIGN_SERVER; }
34355 #line 34356 "gram_minimal.c" /* yacc.c:1646  */
34356     break;
34357 
34358   case 971:
34359 #line 6717 "gram_minimal.y" /* yacc.c:1646  */
34360     { (yyval.objtype) = OBJECT_SUBSCRIPTION; }
34361 #line 34362 "gram_minimal.c" /* yacc.c:1646  */
34362     break;
34363 
34364   case 972:
34365 #line 6718 "gram_minimal.y" /* yacc.c:1646  */
34366     { (yyval.objtype) = OBJECT_TABLESPACE; }
34367 #line 34368 "gram_minimal.c" /* yacc.c:1646  */
34368     break;
34369 
34370   case 973:
34371 #line 6722 "gram_minimal.y" /* yacc.c:1646  */
34372     { (yyval.str) = (yyvsp[0].str); }
34373 #line 34374 "gram_minimal.c" /* yacc.c:1646  */
34374     break;
34375 
34376   case 974:
34377 #line 6723 "gram_minimal.y" /* yacc.c:1646  */
34378     { (yyval.str) = NULL; }
34379 #line 34380 "gram_minimal.c" /* yacc.c:1646  */
34380     break;
34381 
34382   case 975:
34383 #line 6739 "gram_minimal.y" /* yacc.c:1646  */
34384     {
34385 					SecLabelStmt *n = makeNode(SecLabelStmt);
34386 					n->provider = (yyvsp[-5].str);
34387 					n->objtype = (yyvsp[-3].objtype);
34388 					n->object = (Node *) (yyvsp[-2].list);
34389 					n->label = (yyvsp[0].str);
34390 					(yyval.node) = (Node *) n;
34391 				}
34392 #line 34393 "gram_minimal.c" /* yacc.c:1646  */
34393     break;
34394 
34395   case 976:
34396 #line 6749 "gram_minimal.y" /* yacc.c:1646  */
34397     {
34398 					SecLabelStmt *n = makeNode(SecLabelStmt);
34399 					n->provider = (yyvsp[-5].str);
34400 					n->objtype = (yyvsp[-3].objtype);
34401 					n->object = (Node *) makeString((yyvsp[-2].str));
34402 					n->label = (yyvsp[0].str);
34403 					(yyval.node) = (Node *) n;
34404 				}
34405 #line 34406 "gram_minimal.c" /* yacc.c:1646  */
34406     break;
34407 
34408   case 977:
34409 #line 6759 "gram_minimal.y" /* yacc.c:1646  */
34410     {
34411 					SecLabelStmt *n = makeNode(SecLabelStmt);
34412 					n->provider = (yyvsp[-5].str);
34413 					n->objtype = OBJECT_TYPE;
34414 					n->object = (Node *) (yyvsp[-2].typnam);
34415 					n->label = (yyvsp[0].str);
34416 					(yyval.node) = (Node *) n;
34417 				}
34418 #line 34419 "gram_minimal.c" /* yacc.c:1646  */
34419     break;
34420 
34421   case 978:
34422 #line 6769 "gram_minimal.y" /* yacc.c:1646  */
34423     {
34424 					SecLabelStmt *n = makeNode(SecLabelStmt);
34425 					n->provider = (yyvsp[-5].str);
34426 					n->objtype = OBJECT_DOMAIN;
34427 					n->object = (Node *) (yyvsp[-2].typnam);
34428 					n->label = (yyvsp[0].str);
34429 					(yyval.node) = (Node *) n;
34430 				}
34431 #line 34432 "gram_minimal.c" /* yacc.c:1646  */
34432     break;
34433 
34434   case 979:
34435 #line 6779 "gram_minimal.y" /* yacc.c:1646  */
34436     {
34437 					SecLabelStmt *n = makeNode(SecLabelStmt);
34438 					n->provider = (yyvsp[-5].str);
34439 					n->objtype = OBJECT_AGGREGATE;
34440 					n->object = (Node *) (yyvsp[-2].objwithargs);
34441 					n->label = (yyvsp[0].str);
34442 					(yyval.node) = (Node *) n;
34443 				}
34444 #line 34445 "gram_minimal.c" /* yacc.c:1646  */
34445     break;
34446 
34447   case 980:
34448 #line 6789 "gram_minimal.y" /* yacc.c:1646  */
34449     {
34450 					SecLabelStmt *n = makeNode(SecLabelStmt);
34451 					n->provider = (yyvsp[-5].str);
34452 					n->objtype = OBJECT_FUNCTION;
34453 					n->object = (Node *) (yyvsp[-2].objwithargs);
34454 					n->label = (yyvsp[0].str);
34455 					(yyval.node) = (Node *) n;
34456 				}
34457 #line 34458 "gram_minimal.c" /* yacc.c:1646  */
34458     break;
34459 
34460   case 981:
34461 #line 6799 "gram_minimal.y" /* yacc.c:1646  */
34462     {
34463 					SecLabelStmt *n = makeNode(SecLabelStmt);
34464 					n->provider = (yyvsp[-6].str);
34465 					n->objtype = OBJECT_LARGEOBJECT;
34466 					n->object = (Node *) (yyvsp[-2].value);
34467 					n->label = (yyvsp[0].str);
34468 					(yyval.node) = (Node *) n;
34469 				}
34470 #line 34471 "gram_minimal.c" /* yacc.c:1646  */
34471     break;
34472 
34473   case 982:
34474 #line 6809 "gram_minimal.y" /* yacc.c:1646  */
34475     {
34476 					SecLabelStmt *n = makeNode(SecLabelStmt);
34477 					n->provider = (yyvsp[-5].str);
34478 					n->objtype = OBJECT_PROCEDURE;
34479 					n->object = (Node *) (yyvsp[-2].objwithargs);
34480 					n->label = (yyvsp[0].str);
34481 					(yyval.node) = (Node *) n;
34482 				}
34483 #line 34484 "gram_minimal.c" /* yacc.c:1646  */
34484     break;
34485 
34486   case 983:
34487 #line 6819 "gram_minimal.y" /* yacc.c:1646  */
34488     {
34489 					SecLabelStmt *n = makeNode(SecLabelStmt);
34490 					n->provider = (yyvsp[-5].str);
34491 					n->objtype = OBJECT_ROUTINE;
34492 					n->object = (Node *) (yyvsp[-2].objwithargs);
34493 					n->label = (yyvsp[0].str);
34494 					(yyval.node) = (Node *) n;
34495 				}
34496 #line 34497 "gram_minimal.c" /* yacc.c:1646  */
34497     break;
34498 
34499   case 984:
34500 #line 6829 "gram_minimal.y" /* yacc.c:1646  */
34501     { (yyval.str) = (yyvsp[0].str); }
34502 #line 34503 "gram_minimal.c" /* yacc.c:1646  */
34503     break;
34504 
34505   case 985:
34506 #line 6830 "gram_minimal.y" /* yacc.c:1646  */
34507     { (yyval.str) = NULL; }
34508 #line 34509 "gram_minimal.c" /* yacc.c:1646  */
34509     break;
34510 
34511   case 986:
34512 #line 6835 "gram_minimal.y" /* yacc.c:1646  */
34513     { (yyval.objtype) = OBJECT_COLUMN; }
34514 #line 34515 "gram_minimal.c" /* yacc.c:1646  */
34515     break;
34516 
34517   case 987:
34518 #line 6836 "gram_minimal.y" /* yacc.c:1646  */
34519     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
34520 #line 34521 "gram_minimal.c" /* yacc.c:1646  */
34521     break;
34522 
34523   case 988:
34524 #line 6837 "gram_minimal.y" /* yacc.c:1646  */
34525     { (yyval.objtype) = OBJECT_SEQUENCE; }
34526 #line 34527 "gram_minimal.c" /* yacc.c:1646  */
34527     break;
34528 
34529   case 989:
34530 #line 6838 "gram_minimal.y" /* yacc.c:1646  */
34531     { (yyval.objtype) = OBJECT_TABLE; }
34532 #line 34533 "gram_minimal.c" /* yacc.c:1646  */
34533     break;
34534 
34535   case 990:
34536 #line 6839 "gram_minimal.y" /* yacc.c:1646  */
34537     { (yyval.objtype) = OBJECT_VIEW; }
34538 #line 34539 "gram_minimal.c" /* yacc.c:1646  */
34539     break;
34540 
34541   case 991:
34542 #line 6840 "gram_minimal.y" /* yacc.c:1646  */
34543     { (yyval.objtype) = OBJECT_MATVIEW; }
34544 #line 34545 "gram_minimal.c" /* yacc.c:1646  */
34545     break;
34546 
34547   case 992:
34548 #line 6845 "gram_minimal.y" /* yacc.c:1646  */
34549     { (yyval.objtype) = OBJECT_DATABASE; }
34550 #line 34551 "gram_minimal.c" /* yacc.c:1646  */
34551     break;
34552 
34553   case 993:
34554 #line 6846 "gram_minimal.y" /* yacc.c:1646  */
34555     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
34556 #line 34557 "gram_minimal.c" /* yacc.c:1646  */
34557     break;
34558 
34559   case 994:
34560 #line 6847 "gram_minimal.y" /* yacc.c:1646  */
34561     { (yyval.objtype) = OBJECT_LANGUAGE; }
34562 #line 34563 "gram_minimal.c" /* yacc.c:1646  */
34563     break;
34564 
34565   case 995:
34566 #line 6848 "gram_minimal.y" /* yacc.c:1646  */
34567     { (yyval.objtype) = OBJECT_PUBLICATION; }
34568 #line 34569 "gram_minimal.c" /* yacc.c:1646  */
34569     break;
34570 
34571   case 996:
34572 #line 6849 "gram_minimal.y" /* yacc.c:1646  */
34573     { (yyval.objtype) = OBJECT_ROLE; }
34574 #line 34575 "gram_minimal.c" /* yacc.c:1646  */
34575     break;
34576 
34577   case 997:
34578 #line 6850 "gram_minimal.y" /* yacc.c:1646  */
34579     { (yyval.objtype) = OBJECT_SCHEMA; }
34580 #line 34581 "gram_minimal.c" /* yacc.c:1646  */
34581     break;
34582 
34583   case 998:
34584 #line 6851 "gram_minimal.y" /* yacc.c:1646  */
34585     { (yyval.objtype) = OBJECT_SUBSCRIPTION; }
34586 #line 34587 "gram_minimal.c" /* yacc.c:1646  */
34587     break;
34588 
34589   case 999:
34590 #line 6852 "gram_minimal.y" /* yacc.c:1646  */
34591     { (yyval.objtype) = OBJECT_TABLESPACE; }
34592 #line 34593 "gram_minimal.c" /* yacc.c:1646  */
34593     break;
34594 
34595   case 1000:
34596 #line 6855 "gram_minimal.y" /* yacc.c:1646  */
34597     { (yyval.str) = (yyvsp[0].str); }
34598 #line 34599 "gram_minimal.c" /* yacc.c:1646  */
34599     break;
34600 
34601   case 1001:
34602 #line 6856 "gram_minimal.y" /* yacc.c:1646  */
34603     { (yyval.str) = NULL; }
34604 #line 34605 "gram_minimal.c" /* yacc.c:1646  */
34605     break;
34606 
34607   case 1002:
34608 #line 6867 "gram_minimal.y" /* yacc.c:1646  */
34609     {
34610 					FetchStmt *n = (FetchStmt *) (yyvsp[0].node);
34611 					n->ismove = false;
34612 					(yyval.node) = (Node *)n;
34613 				}
34614 #line 34615 "gram_minimal.c" /* yacc.c:1646  */
34615     break;
34616 
34617   case 1003:
34618 #line 6873 "gram_minimal.y" /* yacc.c:1646  */
34619     {
34620 					FetchStmt *n = (FetchStmt *) (yyvsp[0].node);
34621 					n->ismove = true;
34622 					(yyval.node) = (Node *)n;
34623 				}
34624 #line 34625 "gram_minimal.c" /* yacc.c:1646  */
34625     break;
34626 
34627   case 1004:
34628 #line 6881 "gram_minimal.y" /* yacc.c:1646  */
34629     {
34630 					FetchStmt *n = makeNode(FetchStmt);
34631 					n->portalname = (yyvsp[0].str);
34632 					n->direction = FETCH_FORWARD;
34633 					n->howMany = 1;
34634 					(yyval.node) = (Node *)n;
34635 				}
34636 #line 34637 "gram_minimal.c" /* yacc.c:1646  */
34637     break;
34638 
34639   case 1005:
34640 #line 6889 "gram_minimal.y" /* yacc.c:1646  */
34641     {
34642 					FetchStmt *n = makeNode(FetchStmt);
34643 					n->portalname = (yyvsp[0].str);
34644 					n->direction = FETCH_FORWARD;
34645 					n->howMany = 1;
34646 					(yyval.node) = (Node *)n;
34647 				}
34648 #line 34649 "gram_minimal.c" /* yacc.c:1646  */
34649     break;
34650 
34651   case 1006:
34652 #line 6897 "gram_minimal.y" /* yacc.c:1646  */
34653     {
34654 					FetchStmt *n = makeNode(FetchStmt);
34655 					n->portalname = (yyvsp[0].str);
34656 					n->direction = FETCH_FORWARD;
34657 					n->howMany = 1;
34658 					(yyval.node) = (Node *)n;
34659 				}
34660 #line 34661 "gram_minimal.c" /* yacc.c:1646  */
34661     break;
34662 
34663   case 1007:
34664 #line 6905 "gram_minimal.y" /* yacc.c:1646  */
34665     {
34666 					FetchStmt *n = makeNode(FetchStmt);
34667 					n->portalname = (yyvsp[0].str);
34668 					n->direction = FETCH_BACKWARD;
34669 					n->howMany = 1;
34670 					(yyval.node) = (Node *)n;
34671 				}
34672 #line 34673 "gram_minimal.c" /* yacc.c:1646  */
34673     break;
34674 
34675   case 1008:
34676 #line 6913 "gram_minimal.y" /* yacc.c:1646  */
34677     {
34678 					FetchStmt *n = makeNode(FetchStmt);
34679 					n->portalname = (yyvsp[0].str);
34680 					n->direction = FETCH_ABSOLUTE;
34681 					n->howMany = 1;
34682 					(yyval.node) = (Node *)n;
34683 				}
34684 #line 34685 "gram_minimal.c" /* yacc.c:1646  */
34685     break;
34686 
34687   case 1009:
34688 #line 6921 "gram_minimal.y" /* yacc.c:1646  */
34689     {
34690 					FetchStmt *n = makeNode(FetchStmt);
34691 					n->portalname = (yyvsp[0].str);
34692 					n->direction = FETCH_ABSOLUTE;
34693 					n->howMany = -1;
34694 					(yyval.node) = (Node *)n;
34695 				}
34696 #line 34697 "gram_minimal.c" /* yacc.c:1646  */
34697     break;
34698 
34699   case 1010:
34700 #line 6929 "gram_minimal.y" /* yacc.c:1646  */
34701     {
34702 					FetchStmt *n = makeNode(FetchStmt);
34703 					n->portalname = (yyvsp[0].str);
34704 					n->direction = FETCH_ABSOLUTE;
34705 					n->howMany = (yyvsp[-2].ival);
34706 					(yyval.node) = (Node *)n;
34707 				}
34708 #line 34709 "gram_minimal.c" /* yacc.c:1646  */
34709     break;
34710 
34711   case 1011:
34712 #line 6937 "gram_minimal.y" /* yacc.c:1646  */
34713     {
34714 					FetchStmt *n = makeNode(FetchStmt);
34715 					n->portalname = (yyvsp[0].str);
34716 					n->direction = FETCH_RELATIVE;
34717 					n->howMany = (yyvsp[-2].ival);
34718 					(yyval.node) = (Node *)n;
34719 				}
34720 #line 34721 "gram_minimal.c" /* yacc.c:1646  */
34721     break;
34722 
34723   case 1012:
34724 #line 6945 "gram_minimal.y" /* yacc.c:1646  */
34725     {
34726 					FetchStmt *n = makeNode(FetchStmt);
34727 					n->portalname = (yyvsp[0].str);
34728 					n->direction = FETCH_FORWARD;
34729 					n->howMany = (yyvsp[-2].ival);
34730 					(yyval.node) = (Node *)n;
34731 				}
34732 #line 34733 "gram_minimal.c" /* yacc.c:1646  */
34733     break;
34734 
34735   case 1013:
34736 #line 6953 "gram_minimal.y" /* yacc.c:1646  */
34737     {
34738 					FetchStmt *n = makeNode(FetchStmt);
34739 					n->portalname = (yyvsp[0].str);
34740 					n->direction = FETCH_FORWARD;
34741 					n->howMany = FETCH_ALL;
34742 					(yyval.node) = (Node *)n;
34743 				}
34744 #line 34745 "gram_minimal.c" /* yacc.c:1646  */
34745     break;
34746 
34747   case 1014:
34748 #line 6961 "gram_minimal.y" /* yacc.c:1646  */
34749     {
34750 					FetchStmt *n = makeNode(FetchStmt);
34751 					n->portalname = (yyvsp[0].str);
34752 					n->direction = FETCH_FORWARD;
34753 					n->howMany = 1;
34754 					(yyval.node) = (Node *)n;
34755 				}
34756 #line 34757 "gram_minimal.c" /* yacc.c:1646  */
34757     break;
34758 
34759   case 1015:
34760 #line 6969 "gram_minimal.y" /* yacc.c:1646  */
34761     {
34762 					FetchStmt *n = makeNode(FetchStmt);
34763 					n->portalname = (yyvsp[0].str);
34764 					n->direction = FETCH_FORWARD;
34765 					n->howMany = (yyvsp[-2].ival);
34766 					(yyval.node) = (Node *)n;
34767 				}
34768 #line 34769 "gram_minimal.c" /* yacc.c:1646  */
34769     break;
34770 
34771   case 1016:
34772 #line 6977 "gram_minimal.y" /* yacc.c:1646  */
34773     {
34774 					FetchStmt *n = makeNode(FetchStmt);
34775 					n->portalname = (yyvsp[0].str);
34776 					n->direction = FETCH_FORWARD;
34777 					n->howMany = FETCH_ALL;
34778 					(yyval.node) = (Node *)n;
34779 				}
34780 #line 34781 "gram_minimal.c" /* yacc.c:1646  */
34781     break;
34782 
34783   case 1017:
34784 #line 6985 "gram_minimal.y" /* yacc.c:1646  */
34785     {
34786 					FetchStmt *n = makeNode(FetchStmt);
34787 					n->portalname = (yyvsp[0].str);
34788 					n->direction = FETCH_BACKWARD;
34789 					n->howMany = 1;
34790 					(yyval.node) = (Node *)n;
34791 				}
34792 #line 34793 "gram_minimal.c" /* yacc.c:1646  */
34793     break;
34794 
34795   case 1018:
34796 #line 6993 "gram_minimal.y" /* yacc.c:1646  */
34797     {
34798 					FetchStmt *n = makeNode(FetchStmt);
34799 					n->portalname = (yyvsp[0].str);
34800 					n->direction = FETCH_BACKWARD;
34801 					n->howMany = (yyvsp[-2].ival);
34802 					(yyval.node) = (Node *)n;
34803 				}
34804 #line 34805 "gram_minimal.c" /* yacc.c:1646  */
34805     break;
34806 
34807   case 1019:
34808 #line 7001 "gram_minimal.y" /* yacc.c:1646  */
34809     {
34810 					FetchStmt *n = makeNode(FetchStmt);
34811 					n->portalname = (yyvsp[0].str);
34812 					n->direction = FETCH_BACKWARD;
34813 					n->howMany = FETCH_ALL;
34814 					(yyval.node) = (Node *)n;
34815 				}
34816 #line 34817 "gram_minimal.c" /* yacc.c:1646  */
34817     break;
34818 
34819   case 1020:
34820 #line 7010 "gram_minimal.y" /* yacc.c:1646  */
34821     {}
34822 #line 34823 "gram_minimal.c" /* yacc.c:1646  */
34823     break;
34824 
34825   case 1021:
34826 #line 7011 "gram_minimal.y" /* yacc.c:1646  */
34827     {}
34828 #line 34829 "gram_minimal.c" /* yacc.c:1646  */
34829     break;
34830 
34831   case 1022:
34832 #line 7014 "gram_minimal.y" /* yacc.c:1646  */
34833     {}
34834 #line 34835 "gram_minimal.c" /* yacc.c:1646  */
34835     break;
34836 
34837   case 1023:
34838 #line 7015 "gram_minimal.y" /* yacc.c:1646  */
34839     {}
34840 #line 34841 "gram_minimal.c" /* yacc.c:1646  */
34841     break;
34842 
34843   case 1024:
34844 #line 7027 "gram_minimal.y" /* yacc.c:1646  */
34845     {
34846 					GrantStmt *n = makeNode(GrantStmt);
34847 					n->is_grant = true;
34848 					n->privileges = (yyvsp[-5].list);
34849 					n->targtype = ((yyvsp[-3].privtarget))->targtype;
34850 					n->objtype = ((yyvsp[-3].privtarget))->objtype;
34851 					n->objects = ((yyvsp[-3].privtarget))->objs;
34852 					n->grantees = (yyvsp[-1].list);
34853 					n->grant_option = (yyvsp[0].boolean);
34854 					(yyval.node) = (Node*)n;
34855 				}
34856 #line 34857 "gram_minimal.c" /* yacc.c:1646  */
34857     break;
34858 
34859   case 1025:
34860 #line 7043 "gram_minimal.y" /* yacc.c:1646  */
34861     {
34862 					GrantStmt *n = makeNode(GrantStmt);
34863 					n->is_grant = false;
34864 					n->grant_option = false;
34865 					n->privileges = (yyvsp[-5].list);
34866 					n->targtype = ((yyvsp[-3].privtarget))->targtype;
34867 					n->objtype = ((yyvsp[-3].privtarget))->objtype;
34868 					n->objects = ((yyvsp[-3].privtarget))->objs;
34869 					n->grantees = (yyvsp[-1].list);
34870 					n->behavior = (yyvsp[0].dbehavior);
34871 					(yyval.node) = (Node *)n;
34872 				}
34873 #line 34874 "gram_minimal.c" /* yacc.c:1646  */
34874     break;
34875 
34876   case 1026:
34877 #line 7057 "gram_minimal.y" /* yacc.c:1646  */
34878     {
34879 					GrantStmt *n = makeNode(GrantStmt);
34880 					n->is_grant = false;
34881 					n->grant_option = true;
34882 					n->privileges = (yyvsp[-5].list);
34883 					n->targtype = ((yyvsp[-3].privtarget))->targtype;
34884 					n->objtype = ((yyvsp[-3].privtarget))->objtype;
34885 					n->objects = ((yyvsp[-3].privtarget))->objs;
34886 					n->grantees = (yyvsp[-1].list);
34887 					n->behavior = (yyvsp[0].dbehavior);
34888 					(yyval.node) = (Node *)n;
34889 				}
34890 #line 34891 "gram_minimal.c" /* yacc.c:1646  */
34891     break;
34892 
34893   case 1027:
34894 #line 7082 "gram_minimal.y" /* yacc.c:1646  */
34895     { (yyval.list) = (yyvsp[0].list); }
34896 #line 34897 "gram_minimal.c" /* yacc.c:1646  */
34897     break;
34898 
34899   case 1028:
34900 #line 7084 "gram_minimal.y" /* yacc.c:1646  */
34901     { (yyval.list) = NIL; }
34902 #line 34903 "gram_minimal.c" /* yacc.c:1646  */
34903     break;
34904 
34905   case 1029:
34906 #line 7086 "gram_minimal.y" /* yacc.c:1646  */
34907     { (yyval.list) = NIL; }
34908 #line 34909 "gram_minimal.c" /* yacc.c:1646  */
34909     break;
34910 
34911   case 1030:
34912 #line 7088 "gram_minimal.y" /* yacc.c:1646  */
34913     {
34914 					AccessPriv *n = makeNode(AccessPriv);
34915 					n->priv_name = NULL;
34916 					n->cols = (yyvsp[-1].list);
34917 					(yyval.list) = list_make1(n);
34918 				}
34919 #line 34920 "gram_minimal.c" /* yacc.c:1646  */
34920     break;
34921 
34922   case 1031:
34923 #line 7095 "gram_minimal.y" /* yacc.c:1646  */
34924     {
34925 					AccessPriv *n = makeNode(AccessPriv);
34926 					n->priv_name = NULL;
34927 					n->cols = (yyvsp[-1].list);
34928 					(yyval.list) = list_make1(n);
34929 				}
34930 #line 34931 "gram_minimal.c" /* yacc.c:1646  */
34931     break;
34932 
34933   case 1032:
34934 #line 7103 "gram_minimal.y" /* yacc.c:1646  */
34935     { (yyval.list) = list_make1((yyvsp[0].accesspriv)); }
34936 #line 34937 "gram_minimal.c" /* yacc.c:1646  */
34937     break;
34938 
34939   case 1033:
34940 #line 7104 "gram_minimal.y" /* yacc.c:1646  */
34941     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].accesspriv)); }
34942 #line 34943 "gram_minimal.c" /* yacc.c:1646  */
34943     break;
34944 
34945   case 1034:
34946 #line 7108 "gram_minimal.y" /* yacc.c:1646  */
34947     {
34948 				AccessPriv *n = makeNode(AccessPriv);
34949 				n->priv_name = pstrdup((yyvsp[-1].keyword));
34950 				n->cols = (yyvsp[0].list);
34951 				(yyval.accesspriv) = n;
34952 			}
34953 #line 34954 "gram_minimal.c" /* yacc.c:1646  */
34954     break;
34955 
34956   case 1035:
34957 #line 7115 "gram_minimal.y" /* yacc.c:1646  */
34958     {
34959 				AccessPriv *n = makeNode(AccessPriv);
34960 				n->priv_name = pstrdup((yyvsp[-1].keyword));
34961 				n->cols = (yyvsp[0].list);
34962 				(yyval.accesspriv) = n;
34963 			}
34964 #line 34965 "gram_minimal.c" /* yacc.c:1646  */
34965     break;
34966 
34967   case 1036:
34968 #line 7122 "gram_minimal.y" /* yacc.c:1646  */
34969     {
34970 				AccessPriv *n = makeNode(AccessPriv);
34971 				n->priv_name = pstrdup((yyvsp[-1].keyword));
34972 				n->cols = (yyvsp[0].list);
34973 				(yyval.accesspriv) = n;
34974 			}
34975 #line 34976 "gram_minimal.c" /* yacc.c:1646  */
34976     break;
34977 
34978   case 1037:
34979 #line 7129 "gram_minimal.y" /* yacc.c:1646  */
34980     {
34981 				AccessPriv *n = makeNode(AccessPriv);
34982 				n->priv_name = (yyvsp[-1].str);
34983 				n->cols = (yyvsp[0].list);
34984 				(yyval.accesspriv) = n;
34985 			}
34986 #line 34987 "gram_minimal.c" /* yacc.c:1646  */
34987     break;
34988 
34989   case 1038:
34990 #line 7143 "gram_minimal.y" /* yacc.c:1646  */
34991     {
34992 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
34993 					n->targtype = ACL_TARGET_OBJECT;
34994 					n->objtype = OBJECT_TABLE;
34995 					n->objs = (yyvsp[0].list);
34996 					(yyval.privtarget) = n;
34997 				}
34998 #line 34999 "gram_minimal.c" /* yacc.c:1646  */
34999     break;
35000 
35001   case 1039:
35002 #line 7151 "gram_minimal.y" /* yacc.c:1646  */
35003     {
35004 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35005 					n->targtype = ACL_TARGET_OBJECT;
35006 					n->objtype = OBJECT_TABLE;
35007 					n->objs = (yyvsp[0].list);
35008 					(yyval.privtarget) = n;
35009 				}
35010 #line 35011 "gram_minimal.c" /* yacc.c:1646  */
35011     break;
35012 
35013   case 1040:
35014 #line 7159 "gram_minimal.y" /* yacc.c:1646  */
35015     {
35016 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35017 					n->targtype = ACL_TARGET_OBJECT;
35018 					n->objtype = OBJECT_SEQUENCE;
35019 					n->objs = (yyvsp[0].list);
35020 					(yyval.privtarget) = n;
35021 				}
35022 #line 35023 "gram_minimal.c" /* yacc.c:1646  */
35023     break;
35024 
35025   case 1041:
35026 #line 7167 "gram_minimal.y" /* yacc.c:1646  */
35027     {
35028 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35029 					n->targtype = ACL_TARGET_OBJECT;
35030 					n->objtype = OBJECT_FDW;
35031 					n->objs = (yyvsp[0].list);
35032 					(yyval.privtarget) = n;
35033 				}
35034 #line 35035 "gram_minimal.c" /* yacc.c:1646  */
35035     break;
35036 
35037   case 1042:
35038 #line 7175 "gram_minimal.y" /* yacc.c:1646  */
35039     {
35040 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35041 					n->targtype = ACL_TARGET_OBJECT;
35042 					n->objtype = OBJECT_FOREIGN_SERVER;
35043 					n->objs = (yyvsp[0].list);
35044 					(yyval.privtarget) = n;
35045 				}
35046 #line 35047 "gram_minimal.c" /* yacc.c:1646  */
35047     break;
35048 
35049   case 1043:
35050 #line 7183 "gram_minimal.y" /* yacc.c:1646  */
35051     {
35052 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35053 					n->targtype = ACL_TARGET_OBJECT;
35054 					n->objtype = OBJECT_FUNCTION;
35055 					n->objs = (yyvsp[0].list);
35056 					(yyval.privtarget) = n;
35057 				}
35058 #line 35059 "gram_minimal.c" /* yacc.c:1646  */
35059     break;
35060 
35061   case 1044:
35062 #line 7191 "gram_minimal.y" /* yacc.c:1646  */
35063     {
35064 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35065 					n->targtype = ACL_TARGET_OBJECT;
35066 					n->objtype = OBJECT_PROCEDURE;
35067 					n->objs = (yyvsp[0].list);
35068 					(yyval.privtarget) = n;
35069 				}
35070 #line 35071 "gram_minimal.c" /* yacc.c:1646  */
35071     break;
35072 
35073   case 1045:
35074 #line 7199 "gram_minimal.y" /* yacc.c:1646  */
35075     {
35076 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35077 					n->targtype = ACL_TARGET_OBJECT;
35078 					n->objtype = OBJECT_ROUTINE;
35079 					n->objs = (yyvsp[0].list);
35080 					(yyval.privtarget) = n;
35081 				}
35082 #line 35083 "gram_minimal.c" /* yacc.c:1646  */
35083     break;
35084 
35085   case 1046:
35086 #line 7207 "gram_minimal.y" /* yacc.c:1646  */
35087     {
35088 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35089 					n->targtype = ACL_TARGET_OBJECT;
35090 					n->objtype = OBJECT_DATABASE;
35091 					n->objs = (yyvsp[0].list);
35092 					(yyval.privtarget) = n;
35093 				}
35094 #line 35095 "gram_minimal.c" /* yacc.c:1646  */
35095     break;
35096 
35097   case 1047:
35098 #line 7215 "gram_minimal.y" /* yacc.c:1646  */
35099     {
35100 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35101 					n->targtype = ACL_TARGET_OBJECT;
35102 					n->objtype = OBJECT_DOMAIN;
35103 					n->objs = (yyvsp[0].list);
35104 					(yyval.privtarget) = n;
35105 				}
35106 #line 35107 "gram_minimal.c" /* yacc.c:1646  */
35107     break;
35108 
35109   case 1048:
35110 #line 7223 "gram_minimal.y" /* yacc.c:1646  */
35111     {
35112 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35113 					n->targtype = ACL_TARGET_OBJECT;
35114 					n->objtype = OBJECT_LANGUAGE;
35115 					n->objs = (yyvsp[0].list);
35116 					(yyval.privtarget) = n;
35117 				}
35118 #line 35119 "gram_minimal.c" /* yacc.c:1646  */
35119     break;
35120 
35121   case 1049:
35122 #line 7231 "gram_minimal.y" /* yacc.c:1646  */
35123     {
35124 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35125 					n->targtype = ACL_TARGET_OBJECT;
35126 					n->objtype = OBJECT_LARGEOBJECT;
35127 					n->objs = (yyvsp[0].list);
35128 					(yyval.privtarget) = n;
35129 				}
35130 #line 35131 "gram_minimal.c" /* yacc.c:1646  */
35131     break;
35132 
35133   case 1050:
35134 #line 7239 "gram_minimal.y" /* yacc.c:1646  */
35135     {
35136 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35137 					n->targtype = ACL_TARGET_OBJECT;
35138 					n->objtype = OBJECT_SCHEMA;
35139 					n->objs = (yyvsp[0].list);
35140 					(yyval.privtarget) = n;
35141 				}
35142 #line 35143 "gram_minimal.c" /* yacc.c:1646  */
35143     break;
35144 
35145   case 1051:
35146 #line 7247 "gram_minimal.y" /* yacc.c:1646  */
35147     {
35148 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35149 					n->targtype = ACL_TARGET_OBJECT;
35150 					n->objtype = OBJECT_TABLESPACE;
35151 					n->objs = (yyvsp[0].list);
35152 					(yyval.privtarget) = n;
35153 				}
35154 #line 35155 "gram_minimal.c" /* yacc.c:1646  */
35155     break;
35156 
35157   case 1052:
35158 #line 7255 "gram_minimal.y" /* yacc.c:1646  */
35159     {
35160 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35161 					n->targtype = ACL_TARGET_OBJECT;
35162 					n->objtype = OBJECT_TYPE;
35163 					n->objs = (yyvsp[0].list);
35164 					(yyval.privtarget) = n;
35165 				}
35166 #line 35167 "gram_minimal.c" /* yacc.c:1646  */
35167     break;
35168 
35169   case 1053:
35170 #line 7263 "gram_minimal.y" /* yacc.c:1646  */
35171     {
35172 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35173 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
35174 					n->objtype = OBJECT_TABLE;
35175 					n->objs = (yyvsp[0].list);
35176 					(yyval.privtarget) = n;
35177 				}
35178 #line 35179 "gram_minimal.c" /* yacc.c:1646  */
35179     break;
35180 
35181   case 1054:
35182 #line 7271 "gram_minimal.y" /* yacc.c:1646  */
35183     {
35184 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35185 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
35186 					n->objtype = OBJECT_SEQUENCE;
35187 					n->objs = (yyvsp[0].list);
35188 					(yyval.privtarget) = n;
35189 				}
35190 #line 35191 "gram_minimal.c" /* yacc.c:1646  */
35191     break;
35192 
35193   case 1055:
35194 #line 7279 "gram_minimal.y" /* yacc.c:1646  */
35195     {
35196 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35197 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
35198 					n->objtype = OBJECT_FUNCTION;
35199 					n->objs = (yyvsp[0].list);
35200 					(yyval.privtarget) = n;
35201 				}
35202 #line 35203 "gram_minimal.c" /* yacc.c:1646  */
35203     break;
35204 
35205   case 1056:
35206 #line 7287 "gram_minimal.y" /* yacc.c:1646  */
35207     {
35208 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35209 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
35210 					n->objtype = OBJECT_PROCEDURE;
35211 					n->objs = (yyvsp[0].list);
35212 					(yyval.privtarget) = n;
35213 				}
35214 #line 35215 "gram_minimal.c" /* yacc.c:1646  */
35215     break;
35216 
35217   case 1057:
35218 #line 7295 "gram_minimal.y" /* yacc.c:1646  */
35219     {
35220 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
35221 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
35222 					n->objtype = OBJECT_ROUTINE;
35223 					n->objs = (yyvsp[0].list);
35224 					(yyval.privtarget) = n;
35225 				}
35226 #line 35227 "gram_minimal.c" /* yacc.c:1646  */
35227     break;
35228 
35229   case 1058:
35230 #line 7306 "gram_minimal.y" /* yacc.c:1646  */
35231     { (yyval.list) = list_make1((yyvsp[0].rolespec)); }
35232 #line 35233 "gram_minimal.c" /* yacc.c:1646  */
35233     break;
35234 
35235   case 1059:
35236 #line 7307 "gram_minimal.y" /* yacc.c:1646  */
35237     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].rolespec)); }
35238 #line 35239 "gram_minimal.c" /* yacc.c:1646  */
35239     break;
35240 
35241   case 1060:
35242 #line 7311 "gram_minimal.y" /* yacc.c:1646  */
35243     { (yyval.rolespec) = (yyvsp[0].rolespec); }
35244 #line 35245 "gram_minimal.c" /* yacc.c:1646  */
35245     break;
35246 
35247   case 1061:
35248 #line 7312 "gram_minimal.y" /* yacc.c:1646  */
35249     { (yyval.rolespec) = (yyvsp[0].rolespec); }
35250 #line 35251 "gram_minimal.c" /* yacc.c:1646  */
35251     break;
35252 
35253   case 1062:
35254 #line 7317 "gram_minimal.y" /* yacc.c:1646  */
35255     { (yyval.boolean) = true; }
35256 #line 35257 "gram_minimal.c" /* yacc.c:1646  */
35257     break;
35258 
35259   case 1063:
35260 #line 7318 "gram_minimal.y" /* yacc.c:1646  */
35261     { (yyval.boolean) = false; }
35262 #line 35263 "gram_minimal.c" /* yacc.c:1646  */
35263     break;
35264 
35265   case 1064:
35266 #line 7329 "gram_minimal.y" /* yacc.c:1646  */
35267     {
35268 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
35269 					n->is_grant = true;
35270 					n->granted_roles = (yyvsp[-4].list);
35271 					n->grantee_roles = (yyvsp[-2].list);
35272 					n->admin_opt = (yyvsp[-1].boolean);
35273 					n->grantor = (yyvsp[0].rolespec);
35274 					(yyval.node) = (Node*)n;
35275 				}
35276 #line 35277 "gram_minimal.c" /* yacc.c:1646  */
35277     break;
35278 
35279   case 1065:
35280 #line 7342 "gram_minimal.y" /* yacc.c:1646  */
35281     {
35282 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
35283 					n->is_grant = false;
35284 					n->admin_opt = false;
35285 					n->granted_roles = (yyvsp[-4].list);
35286 					n->grantee_roles = (yyvsp[-2].list);
35287 					n->behavior = (yyvsp[0].dbehavior);
35288 					(yyval.node) = (Node*)n;
35289 				}
35290 #line 35291 "gram_minimal.c" /* yacc.c:1646  */
35291     break;
35292 
35293   case 1066:
35294 #line 7352 "gram_minimal.y" /* yacc.c:1646  */
35295     {
35296 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
35297 					n->is_grant = false;
35298 					n->admin_opt = true;
35299 					n->granted_roles = (yyvsp[-4].list);
35300 					n->grantee_roles = (yyvsp[-2].list);
35301 					n->behavior = (yyvsp[0].dbehavior);
35302 					(yyval.node) = (Node*)n;
35303 				}
35304 #line 35305 "gram_minimal.c" /* yacc.c:1646  */
35305     break;
35306 
35307   case 1067:
35308 #line 7363 "gram_minimal.y" /* yacc.c:1646  */
35309     { (yyval.boolean) = true; }
35310 #line 35311 "gram_minimal.c" /* yacc.c:1646  */
35311     break;
35312 
35313   case 1068:
35314 #line 7364 "gram_minimal.y" /* yacc.c:1646  */
35315     { (yyval.boolean) = false; }
35316 #line 35317 "gram_minimal.c" /* yacc.c:1646  */
35317     break;
35318 
35319   case 1069:
35320 #line 7367 "gram_minimal.y" /* yacc.c:1646  */
35321     { (yyval.rolespec) = (yyvsp[0].rolespec); }
35322 #line 35323 "gram_minimal.c" /* yacc.c:1646  */
35323     break;
35324 
35325   case 1070:
35326 #line 7368 "gram_minimal.y" /* yacc.c:1646  */
35327     { (yyval.rolespec) = NULL; }
35328 #line 35329 "gram_minimal.c" /* yacc.c:1646  */
35329     break;
35330 
35331   case 1071:
35332 #line 7379 "gram_minimal.y" /* yacc.c:1646  */
35333     {
35334 					AlterDefaultPrivilegesStmt *n = makeNode(AlterDefaultPrivilegesStmt);
35335 					n->options = (yyvsp[-1].list);
35336 					n->action = (GrantStmt *) (yyvsp[0].node);
35337 					(yyval.node) = (Node*)n;
35338 				}
35339 #line 35340 "gram_minimal.c" /* yacc.c:1646  */
35340     break;
35341 
35342   case 1072:
35343 #line 7388 "gram_minimal.y" /* yacc.c:1646  */
35344     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
35345 #line 35346 "gram_minimal.c" /* yacc.c:1646  */
35346     break;
35347 
35348   case 1073:
35349 #line 7389 "gram_minimal.y" /* yacc.c:1646  */
35350     { (yyval.list) = NIL; }
35351 #line 35352 "gram_minimal.c" /* yacc.c:1646  */
35352     break;
35353 
35354   case 1074:
35355 #line 7394 "gram_minimal.y" /* yacc.c:1646  */
35356     {
35357 					(yyval.defelt) = makeDefElem("schemas", (Node *)(yyvsp[0].list), (yylsp[-2]));
35358 				}
35359 #line 35360 "gram_minimal.c" /* yacc.c:1646  */
35360     break;
35361 
35362   case 1075:
35363 #line 7398 "gram_minimal.y" /* yacc.c:1646  */
35364     {
35365 					(yyval.defelt) = makeDefElem("roles", (Node *)(yyvsp[0].list), (yylsp[-2]));
35366 				}
35367 #line 35368 "gram_minimal.c" /* yacc.c:1646  */
35368     break;
35369 
35370   case 1076:
35371 #line 7402 "gram_minimal.y" /* yacc.c:1646  */
35372     {
35373 					(yyval.defelt) = makeDefElem("roles", (Node *)(yyvsp[0].list), (yylsp[-2]));
35374 				}
35375 #line 35376 "gram_minimal.c" /* yacc.c:1646  */
35376     break;
35377 
35378   case 1077:
35379 #line 7414 "gram_minimal.y" /* yacc.c:1646  */
35380     {
35381 					GrantStmt *n = makeNode(GrantStmt);
35382 					n->is_grant = true;
35383 					n->privileges = (yyvsp[-5].list);
35384 					n->targtype = ACL_TARGET_DEFAULTS;
35385 					n->objtype = (yyvsp[-3].ival);
35386 					n->objects = NIL;
35387 					n->grantees = (yyvsp[-1].list);
35388 					n->grant_option = (yyvsp[0].boolean);
35389 					(yyval.node) = (Node*)n;
35390 				}
35391 #line 35392 "gram_minimal.c" /* yacc.c:1646  */
35392     break;
35393 
35394   case 1078:
35395 #line 7427 "gram_minimal.y" /* yacc.c:1646  */
35396     {
35397 					GrantStmt *n = makeNode(GrantStmt);
35398 					n->is_grant = false;
35399 					n->grant_option = false;
35400 					n->privileges = (yyvsp[-5].list);
35401 					n->targtype = ACL_TARGET_DEFAULTS;
35402 					n->objtype = (yyvsp[-3].ival);
35403 					n->objects = NIL;
35404 					n->grantees = (yyvsp[-1].list);
35405 					n->behavior = (yyvsp[0].dbehavior);
35406 					(yyval.node) = (Node *)n;
35407 				}
35408 #line 35409 "gram_minimal.c" /* yacc.c:1646  */
35409     break;
35410 
35411   case 1079:
35412 #line 7441 "gram_minimal.y" /* yacc.c:1646  */
35413     {
35414 					GrantStmt *n = makeNode(GrantStmt);
35415 					n->is_grant = false;
35416 					n->grant_option = true;
35417 					n->privileges = (yyvsp[-5].list);
35418 					n->targtype = ACL_TARGET_DEFAULTS;
35419 					n->objtype = (yyvsp[-3].ival);
35420 					n->objects = NIL;
35421 					n->grantees = (yyvsp[-1].list);
35422 					n->behavior = (yyvsp[0].dbehavior);
35423 					(yyval.node) = (Node *)n;
35424 				}
35425 #line 35426 "gram_minimal.c" /* yacc.c:1646  */
35426     break;
35427 
35428   case 1080:
35429 #line 7456 "gram_minimal.y" /* yacc.c:1646  */
35430     { (yyval.ival) = OBJECT_TABLE; }
35431 #line 35432 "gram_minimal.c" /* yacc.c:1646  */
35432     break;
35433 
35434   case 1081:
35435 #line 7457 "gram_minimal.y" /* yacc.c:1646  */
35436     { (yyval.ival) = OBJECT_FUNCTION; }
35437 #line 35438 "gram_minimal.c" /* yacc.c:1646  */
35438     break;
35439 
35440   case 1082:
35441 #line 7458 "gram_minimal.y" /* yacc.c:1646  */
35442     { (yyval.ival) = OBJECT_FUNCTION; }
35443 #line 35444 "gram_minimal.c" /* yacc.c:1646  */
35444     break;
35445 
35446   case 1083:
35447 #line 7459 "gram_minimal.y" /* yacc.c:1646  */
35448     { (yyval.ival) = OBJECT_SEQUENCE; }
35449 #line 35450 "gram_minimal.c" /* yacc.c:1646  */
35450     break;
35451 
35452   case 1084:
35453 #line 7460 "gram_minimal.y" /* yacc.c:1646  */
35454     { (yyval.ival) = OBJECT_TYPE; }
35455 #line 35456 "gram_minimal.c" /* yacc.c:1646  */
35456     break;
35457 
35458   case 1085:
35459 #line 7461 "gram_minimal.y" /* yacc.c:1646  */
35460     { (yyval.ival) = OBJECT_SCHEMA; }
35461 #line 35462 "gram_minimal.c" /* yacc.c:1646  */
35462     break;
35463 
35464   case 1086:
35465 #line 7476 "gram_minimal.y" /* yacc.c:1646  */
35466     {
35467 					IndexStmt *n = makeNode(IndexStmt);
35468 					n->unique = (yyvsp[-13].boolean);
35469 					n->concurrent = (yyvsp[-11].boolean);
35470 					n->idxname = (yyvsp[-10].str);
35471 					n->relation = (yyvsp[-8].range);
35472 					n->accessMethod = (yyvsp[-7].str);
35473 					n->indexParams = (yyvsp[-5].list);
35474 					n->indexIncludingParams = (yyvsp[-3].list);
35475 					n->options = (yyvsp[-2].list);
35476 					n->tableSpace = (yyvsp[-1].str);
35477 					n->whereClause = (yyvsp[0].node);
35478 					n->excludeOpNames = NIL;
35479 					n->idxcomment = NULL;
35480 					n->indexOid = InvalidOid;
35481 					n->oldNode = InvalidOid;
35482 					n->oldCreateSubid = InvalidSubTransactionId;
35483 					n->oldFirstRelfilenodeSubid = InvalidSubTransactionId;
35484 					n->primary = false;
35485 					n->isconstraint = false;
35486 					n->deferrable = false;
35487 					n->initdeferred = false;
35488 					n->transformed = false;
35489 					n->if_not_exists = false;
35490 					n->reset_default_tblspc = false;
35491 					(yyval.node) = (Node *)n;
35492 				}
35493 #line 35494 "gram_minimal.c" /* yacc.c:1646  */
35494     break;
35495 
35496   case 1087:
35497 #line 7506 "gram_minimal.y" /* yacc.c:1646  */
35498     {
35499 					IndexStmt *n = makeNode(IndexStmt);
35500 					n->unique = (yyvsp[-16].boolean);
35501 					n->concurrent = (yyvsp[-14].boolean);
35502 					n->idxname = (yyvsp[-10].str);
35503 					n->relation = (yyvsp[-8].range);
35504 					n->accessMethod = (yyvsp[-7].str);
35505 					n->indexParams = (yyvsp[-5].list);
35506 					n->indexIncludingParams = (yyvsp[-3].list);
35507 					n->options = (yyvsp[-2].list);
35508 					n->tableSpace = (yyvsp[-1].str);
35509 					n->whereClause = (yyvsp[0].node);
35510 					n->excludeOpNames = NIL;
35511 					n->idxcomment = NULL;
35512 					n->indexOid = InvalidOid;
35513 					n->oldNode = InvalidOid;
35514 					n->oldCreateSubid = InvalidSubTransactionId;
35515 					n->oldFirstRelfilenodeSubid = InvalidSubTransactionId;
35516 					n->primary = false;
35517 					n->isconstraint = false;
35518 					n->deferrable = false;
35519 					n->initdeferred = false;
35520 					n->transformed = false;
35521 					n->if_not_exists = true;
35522 					n->reset_default_tblspc = false;
35523 					(yyval.node) = (Node *)n;
35524 				}
35525 #line 35526 "gram_minimal.c" /* yacc.c:1646  */
35526     break;
35527 
35528   case 1088:
35529 #line 7536 "gram_minimal.y" /* yacc.c:1646  */
35530     { (yyval.boolean) = true; }
35531 #line 35532 "gram_minimal.c" /* yacc.c:1646  */
35532     break;
35533 
35534   case 1089:
35535 #line 7537 "gram_minimal.y" /* yacc.c:1646  */
35536     { (yyval.boolean) = false; }
35537 #line 35538 "gram_minimal.c" /* yacc.c:1646  */
35538     break;
35539 
35540   case 1090:
35541 #line 7541 "gram_minimal.y" /* yacc.c:1646  */
35542     { (yyval.boolean) = true; }
35543 #line 35544 "gram_minimal.c" /* yacc.c:1646  */
35544     break;
35545 
35546   case 1091:
35547 #line 7542 "gram_minimal.y" /* yacc.c:1646  */
35548     { (yyval.boolean) = false; }
35549 #line 35550 "gram_minimal.c" /* yacc.c:1646  */
35550     break;
35551 
35552   case 1092:
35553 #line 7546 "gram_minimal.y" /* yacc.c:1646  */
35554     { (yyval.str) = (yyvsp[0].str); }
35555 #line 35556 "gram_minimal.c" /* yacc.c:1646  */
35556     break;
35557 
35558   case 1093:
35559 #line 7547 "gram_minimal.y" /* yacc.c:1646  */
35560     { (yyval.str) = NULL; }
35561 #line 35562 "gram_minimal.c" /* yacc.c:1646  */
35562     break;
35563 
35564   case 1094:
35565 #line 7551 "gram_minimal.y" /* yacc.c:1646  */
35566     { (yyval.str) = (yyvsp[0].str); }
35567 #line 35568 "gram_minimal.c" /* yacc.c:1646  */
35568     break;
35569 
35570   case 1095:
35571 #line 7552 "gram_minimal.y" /* yacc.c:1646  */
35572     { (yyval.str) = DEFAULT_INDEX_TYPE; }
35573 #line 35574 "gram_minimal.c" /* yacc.c:1646  */
35574     break;
35575 
35576   case 1096:
35577 #line 7555 "gram_minimal.y" /* yacc.c:1646  */
35578     { (yyval.list) = list_make1((yyvsp[0].ielem)); }
35579 #line 35580 "gram_minimal.c" /* yacc.c:1646  */
35580     break;
35581 
35582   case 1097:
35583 #line 7556 "gram_minimal.y" /* yacc.c:1646  */
35584     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].ielem)); }
35585 #line 35586 "gram_minimal.c" /* yacc.c:1646  */
35586     break;
35587 
35588   case 1098:
35589 #line 7562 "gram_minimal.y" /* yacc.c:1646  */
35590     {
35591 			(yyval.ielem) = makeNode(IndexElem);
35592 			(yyval.ielem)->name = NULL;
35593 			(yyval.ielem)->expr = NULL;
35594 			(yyval.ielem)->indexcolname = NULL;
35595 			(yyval.ielem)->collation = (yyvsp[-3].list);
35596 			(yyval.ielem)->opclass = (yyvsp[-2].list);
35597 			(yyval.ielem)->opclassopts = NIL;
35598 			(yyval.ielem)->ordering = (yyvsp[-1].ival);
35599 			(yyval.ielem)->nulls_ordering = (yyvsp[0].ival);
35600 		}
35601 #line 35602 "gram_minimal.c" /* yacc.c:1646  */
35602     break;
35603 
35604   case 1099:
35605 #line 7574 "gram_minimal.y" /* yacc.c:1646  */
35606     {
35607 			(yyval.ielem) = makeNode(IndexElem);
35608 			(yyval.ielem)->name = NULL;
35609 			(yyval.ielem)->expr = NULL;
35610 			(yyval.ielem)->indexcolname = NULL;
35611 			(yyval.ielem)->collation = (yyvsp[-4].list);
35612 			(yyval.ielem)->opclass = (yyvsp[-3].list);
35613 			(yyval.ielem)->opclassopts = (yyvsp[-2].list);
35614 			(yyval.ielem)->ordering = (yyvsp[-1].ival);
35615 			(yyval.ielem)->nulls_ordering = (yyvsp[0].ival);
35616 		}
35617 #line 35618 "gram_minimal.c" /* yacc.c:1646  */
35618     break;
35619 
35620   case 1100:
35621 #line 7593 "gram_minimal.y" /* yacc.c:1646  */
35622     {
35623 					(yyval.ielem) = (yyvsp[0].ielem);
35624 					(yyval.ielem)->name = (yyvsp[-1].str);
35625 				}
35626 #line 35627 "gram_minimal.c" /* yacc.c:1646  */
35627     break;
35628 
35629   case 1101:
35630 #line 7598 "gram_minimal.y" /* yacc.c:1646  */
35631     {
35632 					(yyval.ielem) = (yyvsp[0].ielem);
35633 					(yyval.ielem)->expr = (yyvsp[-1].node);
35634 				}
35635 #line 35636 "gram_minimal.c" /* yacc.c:1646  */
35636     break;
35637 
35638   case 1102:
35639 #line 7603 "gram_minimal.y" /* yacc.c:1646  */
35640     {
35641 					(yyval.ielem) = (yyvsp[0].ielem);
35642 					(yyval.ielem)->expr = (yyvsp[-2].node);
35643 				}
35644 #line 35645 "gram_minimal.c" /* yacc.c:1646  */
35645     break;
35646 
35647   case 1103:
35648 #line 7609 "gram_minimal.y" /* yacc.c:1646  */
35649     { (yyval.list) = (yyvsp[-1].list); }
35650 #line 35651 "gram_minimal.c" /* yacc.c:1646  */
35651     break;
35652 
35653   case 1104:
35654 #line 7610 "gram_minimal.y" /* yacc.c:1646  */
35655     { (yyval.list) = NIL; }
35656 #line 35657 "gram_minimal.c" /* yacc.c:1646  */
35657     break;
35658 
35659   case 1105:
35660 #line 7613 "gram_minimal.y" /* yacc.c:1646  */
35661     { (yyval.list) = list_make1((yyvsp[0].ielem)); }
35662 #line 35663 "gram_minimal.c" /* yacc.c:1646  */
35663     break;
35664 
35665   case 1106:
35666 #line 7614 "gram_minimal.y" /* yacc.c:1646  */
35667     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].ielem)); }
35668 #line 35669 "gram_minimal.c" /* yacc.c:1646  */
35669     break;
35670 
35671   case 1107:
35672 #line 7617 "gram_minimal.y" /* yacc.c:1646  */
35673     { (yyval.list) = (yyvsp[0].list); }
35674 #line 35675 "gram_minimal.c" /* yacc.c:1646  */
35675     break;
35676 
35677   case 1108:
35678 #line 7618 "gram_minimal.y" /* yacc.c:1646  */
35679     { (yyval.list) = NIL; }
35680 #line 35681 "gram_minimal.c" /* yacc.c:1646  */
35681     break;
35682 
35683   case 1109:
35684 #line 7621 "gram_minimal.y" /* yacc.c:1646  */
35685     { (yyval.list) = (yyvsp[0].list); }
35686 #line 35687 "gram_minimal.c" /* yacc.c:1646  */
35687     break;
35688 
35689   case 1110:
35690 #line 7622 "gram_minimal.y" /* yacc.c:1646  */
35691     { (yyval.list) = NIL; }
35692 #line 35693 "gram_minimal.c" /* yacc.c:1646  */
35693     break;
35694 
35695   case 1111:
35696 #line 7625 "gram_minimal.y" /* yacc.c:1646  */
35697     { (yyval.ival) = SORTBY_ASC; }
35698 #line 35699 "gram_minimal.c" /* yacc.c:1646  */
35699     break;
35700 
35701   case 1112:
35702 #line 7626 "gram_minimal.y" /* yacc.c:1646  */
35703     { (yyval.ival) = SORTBY_DESC; }
35704 #line 35705 "gram_minimal.c" /* yacc.c:1646  */
35705     break;
35706 
35707   case 1113:
35708 #line 7627 "gram_minimal.y" /* yacc.c:1646  */
35709     { (yyval.ival) = SORTBY_DEFAULT; }
35710 #line 35711 "gram_minimal.c" /* yacc.c:1646  */
35711     break;
35712 
35713   case 1114:
35714 #line 7630 "gram_minimal.y" /* yacc.c:1646  */
35715     { (yyval.ival) = SORTBY_NULLS_FIRST; }
35716 #line 35717 "gram_minimal.c" /* yacc.c:1646  */
35717     break;
35718 
35719   case 1115:
35720 #line 7631 "gram_minimal.y" /* yacc.c:1646  */
35721     { (yyval.ival) = SORTBY_NULLS_LAST; }
35722 #line 35723 "gram_minimal.c" /* yacc.c:1646  */
35723     break;
35724 
35725   case 1116:
35726 #line 7632 "gram_minimal.y" /* yacc.c:1646  */
35727     { (yyval.ival) = SORTBY_NULLS_DEFAULT; }
35728 #line 35729 "gram_minimal.c" /* yacc.c:1646  */
35729     break;
35730 
35731   case 1117:
35732 #line 7650 "gram_minimal.y" /* yacc.c:1646  */
35733     {
35734 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
35735 					n->is_procedure = false;
35736 					n->replace = (yyvsp[-6].boolean);
35737 					n->funcname = (yyvsp[-4].list);
35738 					n->parameters = (yyvsp[-3].list);
35739 					n->returnType = (yyvsp[-1].typnam);
35740 					n->options = (yyvsp[0].list);
35741 					(yyval.node) = (Node *)n;
35742 				}
35743 #line 35744 "gram_minimal.c" /* yacc.c:1646  */
35744     break;
35745 
35746   case 1118:
35747 #line 7662 "gram_minimal.y" /* yacc.c:1646  */
35748     {
35749 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
35750 					n->is_procedure = false;
35751 					n->replace = (yyvsp[-9].boolean);
35752 					n->funcname = (yyvsp[-7].list);
35753 					n->parameters = mergeTableFuncParameters((yyvsp[-6].list), (yyvsp[-2].list));
35754 					n->returnType = TableFuncTypeName((yyvsp[-2].list));
35755 					n->returnType->location = (yylsp[-4]);
35756 					n->options = (yyvsp[0].list);
35757 					(yyval.node) = (Node *)n;
35758 				}
35759 #line 35760 "gram_minimal.c" /* yacc.c:1646  */
35760     break;
35761 
35762   case 1119:
35763 #line 7675 "gram_minimal.y" /* yacc.c:1646  */
35764     {
35765 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
35766 					n->is_procedure = false;
35767 					n->replace = (yyvsp[-4].boolean);
35768 					n->funcname = (yyvsp[-2].list);
35769 					n->parameters = (yyvsp[-1].list);
35770 					n->returnType = NULL;
35771 					n->options = (yyvsp[0].list);
35772 					(yyval.node) = (Node *)n;
35773 				}
35774 #line 35775 "gram_minimal.c" /* yacc.c:1646  */
35775     break;
35776 
35777   case 1120:
35778 #line 7687 "gram_minimal.y" /* yacc.c:1646  */
35779     {
35780 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
35781 					n->is_procedure = true;
35782 					n->replace = (yyvsp[-4].boolean);
35783 					n->funcname = (yyvsp[-2].list);
35784 					n->parameters = (yyvsp[-1].list);
35785 					n->returnType = NULL;
35786 					n->options = (yyvsp[0].list);
35787 					(yyval.node) = (Node *)n;
35788 				}
35789 #line 35790 "gram_minimal.c" /* yacc.c:1646  */
35790     break;
35791 
35792   case 1121:
35793 #line 7700 "gram_minimal.y" /* yacc.c:1646  */
35794     { (yyval.boolean) = true; }
35795 #line 35796 "gram_minimal.c" /* yacc.c:1646  */
35796     break;
35797 
35798   case 1122:
35799 #line 7701 "gram_minimal.y" /* yacc.c:1646  */
35800     { (yyval.boolean) = false; }
35801 #line 35802 "gram_minimal.c" /* yacc.c:1646  */
35802     break;
35803 
35804   case 1123:
35805 #line 7704 "gram_minimal.y" /* yacc.c:1646  */
35806     { (yyval.list) = (yyvsp[-1].list); }
35807 #line 35808 "gram_minimal.c" /* yacc.c:1646  */
35808     break;
35809 
35810   case 1124:
35811 #line 7705 "gram_minimal.y" /* yacc.c:1646  */
35812     { (yyval.list) = NIL; }
35813 #line 35814 "gram_minimal.c" /* yacc.c:1646  */
35814     break;
35815 
35816   case 1125:
35817 #line 7709 "gram_minimal.y" /* yacc.c:1646  */
35818     { (yyval.list) = list_make1((yyvsp[0].fun_param)); }
35819 #line 35820 "gram_minimal.c" /* yacc.c:1646  */
35820     break;
35821 
35822   case 1126:
35823 #line 7710 "gram_minimal.y" /* yacc.c:1646  */
35824     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].fun_param)); }
35825 #line 35826 "gram_minimal.c" /* yacc.c:1646  */
35826     break;
35827 
35828   case 1127:
35829 #line 7714 "gram_minimal.y" /* yacc.c:1646  */
35830     { (yyval.list) = list_make1((yyvsp[0].objwithargs)); }
35831 #line 35832 "gram_minimal.c" /* yacc.c:1646  */
35832     break;
35833 
35834   case 1128:
35835 #line 7716 "gram_minimal.y" /* yacc.c:1646  */
35836     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].objwithargs)); }
35837 #line 35838 "gram_minimal.c" /* yacc.c:1646  */
35838     break;
35839 
35840   case 1129:
35841 #line 7721 "gram_minimal.y" /* yacc.c:1646  */
35842     {
35843 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
35844 					n->objname = (yyvsp[-1].list);
35845 					n->objargs = extractArgTypes((yyvsp[0].list));
35846 					(yyval.objwithargs) = n;
35847 				}
35848 #line 35849 "gram_minimal.c" /* yacc.c:1646  */
35849     break;
35850 
35851   case 1130:
35852 #line 7733 "gram_minimal.y" /* yacc.c:1646  */
35853     {
35854 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
35855 					n->objname = list_make1(makeString(pstrdup((yyvsp[0].keyword))));
35856 					n->args_unspecified = true;
35857 					(yyval.objwithargs) = n;
35858 				}
35859 #line 35860 "gram_minimal.c" /* yacc.c:1646  */
35860     break;
35861 
35862   case 1131:
35863 #line 7740 "gram_minimal.y" /* yacc.c:1646  */
35864     {
35865 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
35866 					n->objname = list_make1(makeString((yyvsp[0].str)));
35867 					n->args_unspecified = true;
35868 					(yyval.objwithargs) = n;
35869 				}
35870 #line 35871 "gram_minimal.c" /* yacc.c:1646  */
35871     break;
35872 
35873   case 1132:
35874 #line 7747 "gram_minimal.y" /* yacc.c:1646  */
35875     {
35876 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
35877 					n->objname = check_func_name(lcons(makeString((yyvsp[-1].str)), (yyvsp[0].list)),
35878 												  yyscanner);
35879 					n->args_unspecified = true;
35880 					(yyval.objwithargs) = n;
35881 				}
35882 #line 35883 "gram_minimal.c" /* yacc.c:1646  */
35883     break;
35884 
35885   case 1133:
35886 #line 7761 "gram_minimal.y" /* yacc.c:1646  */
35887     { (yyval.list) = (yyvsp[-1].list); }
35888 #line 35889 "gram_minimal.c" /* yacc.c:1646  */
35889     break;
35890 
35891   case 1134:
35892 #line 7762 "gram_minimal.y" /* yacc.c:1646  */
35893     { (yyval.list) = NIL; }
35894 #line 35895 "gram_minimal.c" /* yacc.c:1646  */
35895     break;
35896 
35897   case 1135:
35898 #line 7766 "gram_minimal.y" /* yacc.c:1646  */
35899     { (yyval.list) = list_make1((yyvsp[0].fun_param)); }
35900 #line 35901 "gram_minimal.c" /* yacc.c:1646  */
35901     break;
35902 
35903   case 1136:
35904 #line 7768 "gram_minimal.y" /* yacc.c:1646  */
35905     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].fun_param)); }
35906 #line 35907 "gram_minimal.c" /* yacc.c:1646  */
35907     break;
35908 
35909   case 1137:
35910 #line 7783 "gram_minimal.y" /* yacc.c:1646  */
35911     {
35912 					FunctionParameter *n = makeNode(FunctionParameter);
35913 					n->name = (yyvsp[-1].str);
35914 					n->argType = (yyvsp[0].typnam);
35915 					n->mode = (yyvsp[-2].fun_param_mode);
35916 					n->defexpr = NULL;
35917 					(yyval.fun_param) = n;
35918 				}
35919 #line 35920 "gram_minimal.c" /* yacc.c:1646  */
35920     break;
35921 
35922   case 1138:
35923 #line 7792 "gram_minimal.y" /* yacc.c:1646  */
35924     {
35925 					FunctionParameter *n = makeNode(FunctionParameter);
35926 					n->name = (yyvsp[-2].str);
35927 					n->argType = (yyvsp[0].typnam);
35928 					n->mode = (yyvsp[-1].fun_param_mode);
35929 					n->defexpr = NULL;
35930 					(yyval.fun_param) = n;
35931 				}
35932 #line 35933 "gram_minimal.c" /* yacc.c:1646  */
35933     break;
35934 
35935   case 1139:
35936 #line 7801 "gram_minimal.y" /* yacc.c:1646  */
35937     {
35938 					FunctionParameter *n = makeNode(FunctionParameter);
35939 					n->name = (yyvsp[-1].str);
35940 					n->argType = (yyvsp[0].typnam);
35941 					n->mode = FUNC_PARAM_IN;
35942 					n->defexpr = NULL;
35943 					(yyval.fun_param) = n;
35944 				}
35945 #line 35946 "gram_minimal.c" /* yacc.c:1646  */
35946     break;
35947 
35948   case 1140:
35949 #line 7810 "gram_minimal.y" /* yacc.c:1646  */
35950     {
35951 					FunctionParameter *n = makeNode(FunctionParameter);
35952 					n->name = NULL;
35953 					n->argType = (yyvsp[0].typnam);
35954 					n->mode = (yyvsp[-1].fun_param_mode);
35955 					n->defexpr = NULL;
35956 					(yyval.fun_param) = n;
35957 				}
35958 #line 35959 "gram_minimal.c" /* yacc.c:1646  */
35959     break;
35960 
35961   case 1141:
35962 #line 7819 "gram_minimal.y" /* yacc.c:1646  */
35963     {
35964 					FunctionParameter *n = makeNode(FunctionParameter);
35965 					n->name = NULL;
35966 					n->argType = (yyvsp[0].typnam);
35967 					n->mode = FUNC_PARAM_IN;
35968 					n->defexpr = NULL;
35969 					(yyval.fun_param) = n;
35970 				}
35971 #line 35972 "gram_minimal.c" /* yacc.c:1646  */
35972     break;
35973 
35974   case 1142:
35975 #line 7830 "gram_minimal.y" /* yacc.c:1646  */
35976     { (yyval.fun_param_mode) = FUNC_PARAM_IN; }
35977 #line 35978 "gram_minimal.c" /* yacc.c:1646  */
35978     break;
35979 
35980   case 1143:
35981 #line 7831 "gram_minimal.y" /* yacc.c:1646  */
35982     { (yyval.fun_param_mode) = FUNC_PARAM_OUT; }
35983 #line 35984 "gram_minimal.c" /* yacc.c:1646  */
35984     break;
35985 
35986   case 1144:
35987 #line 7832 "gram_minimal.y" /* yacc.c:1646  */
35988     { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; }
35989 #line 35990 "gram_minimal.c" /* yacc.c:1646  */
35990     break;
35991 
35992   case 1145:
35993 #line 7833 "gram_minimal.y" /* yacc.c:1646  */
35994     { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; }
35995 #line 35996 "gram_minimal.c" /* yacc.c:1646  */
35996     break;
35997 
35998   case 1146:
35999 #line 7834 "gram_minimal.y" /* yacc.c:1646  */
36000     { (yyval.fun_param_mode) = FUNC_PARAM_VARIADIC; }
36001 #line 36002 "gram_minimal.c" /* yacc.c:1646  */
36002     break;
36003 
36004   case 1148:
36005 #line 7845 "gram_minimal.y" /* yacc.c:1646  */
36006     {
36007 					/* We can catch over-specified results here if we want to,
36008 					 * but for now better to silently swallow typmod, etc.
36009 					 * - thomas 2000-03-22
36010 					 */
36011 					(yyval.typnam) = (yyvsp[0].typnam);
36012 				}
36013 #line 36014 "gram_minimal.c" /* yacc.c:1646  */
36014     break;
36015 
36016   case 1149:
36017 #line 7859 "gram_minimal.y" /* yacc.c:1646  */
36018     { (yyval.typnam) = (yyvsp[0].typnam); }
36019 #line 36020 "gram_minimal.c" /* yacc.c:1646  */
36020     break;
36021 
36022   case 1150:
36023 #line 7861 "gram_minimal.y" /* yacc.c:1646  */
36024     {
36025 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[-3].str)), (yyvsp[-2].list)));
36026 					(yyval.typnam)->pct_type = true;
36027 					(yyval.typnam)->location = (yylsp[-3]);
36028 				}
36029 #line 36030 "gram_minimal.c" /* yacc.c:1646  */
36030     break;
36031 
36032   case 1151:
36033 #line 7867 "gram_minimal.y" /* yacc.c:1646  */
36034     {
36035 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[-3].str)), (yyvsp[-2].list)));
36036 					(yyval.typnam)->pct_type = true;
36037 					(yyval.typnam)->setof = true;
36038 					(yyval.typnam)->location = (yylsp[-3]);
36039 				}
36040 #line 36041 "gram_minimal.c" /* yacc.c:1646  */
36041     break;
36042 
36043   case 1152:
36044 #line 7877 "gram_minimal.y" /* yacc.c:1646  */
36045     {
36046 					(yyval.fun_param) = (yyvsp[0].fun_param);
36047 				}
36048 #line 36049 "gram_minimal.c" /* yacc.c:1646  */
36049     break;
36050 
36051   case 1153:
36052 #line 7881 "gram_minimal.y" /* yacc.c:1646  */
36053     {
36054 					(yyval.fun_param) = (yyvsp[-2].fun_param);
36055 					(yyval.fun_param)->defexpr = (yyvsp[0].node);
36056 				}
36057 #line 36058 "gram_minimal.c" /* yacc.c:1646  */
36058     break;
36059 
36060   case 1154:
36061 #line 7886 "gram_minimal.y" /* yacc.c:1646  */
36062     {
36063 					(yyval.fun_param) = (yyvsp[-2].fun_param);
36064 					(yyval.fun_param)->defexpr = (yyvsp[0].node);
36065 				}
36066 #line 36067 "gram_minimal.c" /* yacc.c:1646  */
36067     break;
36068 
36069   case 1155:
36070 #line 7894 "gram_minimal.y" /* yacc.c:1646  */
36071     {
36072 					if (!((yyvsp[0].fun_param)->mode == FUNC_PARAM_IN ||
36073 						  (yyvsp[0].fun_param)->mode == FUNC_PARAM_VARIADIC))
36074 						ereport(ERROR,
36075 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
36076 								 errmsg("aggregates cannot have output arguments"),
36077 								 parser_errposition((yylsp[0]))));
36078 					(yyval.fun_param) = (yyvsp[0].fun_param);
36079 				}
36080 #line 36081 "gram_minimal.c" /* yacc.c:1646  */
36081     break;
36082 
36083   case 1156:
36084 #line 7935 "gram_minimal.y" /* yacc.c:1646  */
36085     {
36086 					(yyval.list) = list_make2(NIL, makeInteger(-1));
36087 				}
36088 #line 36089 "gram_minimal.c" /* yacc.c:1646  */
36089     break;
36090 
36091   case 1157:
36092 #line 7939 "gram_minimal.y" /* yacc.c:1646  */
36093     {
36094 					(yyval.list) = list_make2((yyvsp[-1].list), makeInteger(-1));
36095 				}
36096 #line 36097 "gram_minimal.c" /* yacc.c:1646  */
36097     break;
36098 
36099   case 1158:
36100 #line 7943 "gram_minimal.y" /* yacc.c:1646  */
36101     {
36102 					(yyval.list) = list_make2((yyvsp[-1].list), makeInteger(0));
36103 				}
36104 #line 36105 "gram_minimal.c" /* yacc.c:1646  */
36105     break;
36106 
36107   case 1159:
36108 #line 7947 "gram_minimal.y" /* yacc.c:1646  */
36109     {
36110 					/* this is the only case requiring consistency checking */
36111 					(yyval.list) = makeOrderedSetArgs((yyvsp[-4].list), (yyvsp[-1].list), yyscanner);
36112 				}
36113 #line 36114 "gram_minimal.c" /* yacc.c:1646  */
36114     break;
36115 
36116   case 1160:
36117 #line 7954 "gram_minimal.y" /* yacc.c:1646  */
36118     { (yyval.list) = list_make1((yyvsp[0].fun_param)); }
36119 #line 36120 "gram_minimal.c" /* yacc.c:1646  */
36120     break;
36121 
36122   case 1161:
36123 #line 7955 "gram_minimal.y" /* yacc.c:1646  */
36124     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].fun_param)); }
36125 #line 36126 "gram_minimal.c" /* yacc.c:1646  */
36126     break;
36127 
36128   case 1162:
36129 #line 7960 "gram_minimal.y" /* yacc.c:1646  */
36130     {
36131 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
36132 					n->objname = (yyvsp[-1].list);
36133 					n->objargs = extractAggrArgTypes((yyvsp[0].list));
36134 					(yyval.objwithargs) = n;
36135 				}
36136 #line 36137 "gram_minimal.c" /* yacc.c:1646  */
36137     break;
36138 
36139   case 1163:
36140 #line 7969 "gram_minimal.y" /* yacc.c:1646  */
36141     { (yyval.list) = list_make1((yyvsp[0].objwithargs)); }
36142 #line 36143 "gram_minimal.c" /* yacc.c:1646  */
36143     break;
36144 
36145   case 1164:
36146 #line 7971 "gram_minimal.y" /* yacc.c:1646  */
36147     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].objwithargs)); }
36148 #line 36149 "gram_minimal.c" /* yacc.c:1646  */
36149     break;
36150 
36151   case 1165:
36152 #line 7976 "gram_minimal.y" /* yacc.c:1646  */
36153     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
36154 #line 36155 "gram_minimal.c" /* yacc.c:1646  */
36155     break;
36156 
36157   case 1166:
36158 #line 7977 "gram_minimal.y" /* yacc.c:1646  */
36159     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
36160 #line 36161 "gram_minimal.c" /* yacc.c:1646  */
36161     break;
36162 
36163   case 1167:
36164 #line 7985 "gram_minimal.y" /* yacc.c:1646  */
36165     {
36166 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(false), (yylsp[-3]));
36167 				}
36168 #line 36169 "gram_minimal.c" /* yacc.c:1646  */
36169     break;
36170 
36171   case 1168:
36172 #line 7989 "gram_minimal.y" /* yacc.c:1646  */
36173     {
36174 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(true), (yylsp[-4]));
36175 				}
36176 #line 36177 "gram_minimal.c" /* yacc.c:1646  */
36177     break;
36178 
36179   case 1169:
36180 #line 7993 "gram_minimal.y" /* yacc.c:1646  */
36181     {
36182 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(true), (yylsp[0]));
36183 				}
36184 #line 36185 "gram_minimal.c" /* yacc.c:1646  */
36185     break;
36186 
36187   case 1170:
36188 #line 7997 "gram_minimal.y" /* yacc.c:1646  */
36189     {
36190 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("immutable"), (yylsp[0]));
36191 				}
36192 #line 36193 "gram_minimal.c" /* yacc.c:1646  */
36193     break;
36194 
36195   case 1171:
36196 #line 8001 "gram_minimal.y" /* yacc.c:1646  */
36197     {
36198 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("stable"), (yylsp[0]));
36199 				}
36200 #line 36201 "gram_minimal.c" /* yacc.c:1646  */
36201     break;
36202 
36203   case 1172:
36204 #line 8005 "gram_minimal.y" /* yacc.c:1646  */
36205     {
36206 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("volatile"), (yylsp[0]));
36207 				}
36208 #line 36209 "gram_minimal.c" /* yacc.c:1646  */
36209     break;
36210 
36211   case 1173:
36212 #line 8009 "gram_minimal.y" /* yacc.c:1646  */
36213     {
36214 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(true), (yylsp[-2]));
36215 				}
36216 #line 36217 "gram_minimal.c" /* yacc.c:1646  */
36217     break;
36218 
36219   case 1174:
36220 #line 8013 "gram_minimal.y" /* yacc.c:1646  */
36221     {
36222 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(false), (yylsp[-2]));
36223 				}
36224 #line 36225 "gram_minimal.c" /* yacc.c:1646  */
36225     break;
36226 
36227   case 1175:
36228 #line 8017 "gram_minimal.y" /* yacc.c:1646  */
36229     {
36230 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(true), (yylsp[-1]));
36231 				}
36232 #line 36233 "gram_minimal.c" /* yacc.c:1646  */
36233     break;
36234 
36235   case 1176:
36236 #line 8021 "gram_minimal.y" /* yacc.c:1646  */
36237     {
36238 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(false), (yylsp[-1]));
36239 				}
36240 #line 36241 "gram_minimal.c" /* yacc.c:1646  */
36241     break;
36242 
36243   case 1177:
36244 #line 8025 "gram_minimal.y" /* yacc.c:1646  */
36245     {
36246 					(yyval.defelt) = makeDefElem("leakproof", (Node *)makeInteger(true), (yylsp[0]));
36247 				}
36248 #line 36249 "gram_minimal.c" /* yacc.c:1646  */
36249     break;
36250 
36251   case 1178:
36252 #line 8029 "gram_minimal.y" /* yacc.c:1646  */
36253     {
36254 					(yyval.defelt) = makeDefElem("leakproof", (Node *)makeInteger(false), (yylsp[-1]));
36255 				}
36256 #line 36257 "gram_minimal.c" /* yacc.c:1646  */
36257     break;
36258 
36259   case 1179:
36260 #line 8033 "gram_minimal.y" /* yacc.c:1646  */
36261     {
36262 					(yyval.defelt) = makeDefElem("cost", (Node *)(yyvsp[0].value), (yylsp[-1]));
36263 				}
36264 #line 36265 "gram_minimal.c" /* yacc.c:1646  */
36265     break;
36266 
36267   case 1180:
36268 #line 8037 "gram_minimal.y" /* yacc.c:1646  */
36269     {
36270 					(yyval.defelt) = makeDefElem("rows", (Node *)(yyvsp[0].value), (yylsp[-1]));
36271 				}
36272 #line 36273 "gram_minimal.c" /* yacc.c:1646  */
36273     break;
36274 
36275   case 1181:
36276 #line 8041 "gram_minimal.y" /* yacc.c:1646  */
36277     {
36278 					(yyval.defelt) = makeDefElem("support", (Node *)(yyvsp[0].list), (yylsp[-1]));
36279 				}
36280 #line 36281 "gram_minimal.c" /* yacc.c:1646  */
36281     break;
36282 
36283   case 1182:
36284 #line 8045 "gram_minimal.y" /* yacc.c:1646  */
36285     {
36286 					/* we abuse the normal content of a DefElem here */
36287 					(yyval.defelt) = makeDefElem("set", (Node *)(yyvsp[0].vsetstmt), (yylsp[0]));
36288 				}
36289 #line 36290 "gram_minimal.c" /* yacc.c:1646  */
36290     break;
36291 
36292   case 1183:
36293 #line 8050 "gram_minimal.y" /* yacc.c:1646  */
36294     {
36295 					(yyval.defelt) = makeDefElem("parallel", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
36296 				}
36297 #line 36298 "gram_minimal.c" /* yacc.c:1646  */
36298     break;
36299 
36300   case 1184:
36301 #line 8057 "gram_minimal.y" /* yacc.c:1646  */
36302     {
36303 					(yyval.defelt) = makeDefElem("as", (Node *)(yyvsp[0].list), (yylsp[-1]));
36304 				}
36305 #line 36306 "gram_minimal.c" /* yacc.c:1646  */
36306     break;
36307 
36308   case 1185:
36309 #line 8061 "gram_minimal.y" /* yacc.c:1646  */
36310     {
36311 					(yyval.defelt) = makeDefElem("language", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
36312 				}
36313 #line 36314 "gram_minimal.c" /* yacc.c:1646  */
36314     break;
36315 
36316   case 1186:
36317 #line 8065 "gram_minimal.y" /* yacc.c:1646  */
36318     {
36319 					(yyval.defelt) = makeDefElem("transform", (Node *)(yyvsp[0].list), (yylsp[-1]));
36320 				}
36321 #line 36322 "gram_minimal.c" /* yacc.c:1646  */
36322     break;
36323 
36324   case 1187:
36325 #line 8069 "gram_minimal.y" /* yacc.c:1646  */
36326     {
36327 					(yyval.defelt) = makeDefElem("window", (Node *)makeInteger(true), (yylsp[0]));
36328 				}
36329 #line 36330 "gram_minimal.c" /* yacc.c:1646  */
36330     break;
36331 
36332   case 1188:
36333 #line 8073 "gram_minimal.y" /* yacc.c:1646  */
36334     {
36335 					(yyval.defelt) = (yyvsp[0].defelt);
36336 				}
36337 #line 36338 "gram_minimal.c" /* yacc.c:1646  */
36338     break;
36339 
36340   case 1189:
36341 #line 8078 "gram_minimal.y" /* yacc.c:1646  */
36342     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
36343 #line 36344 "gram_minimal.c" /* yacc.c:1646  */
36344     break;
36345 
36346   case 1190:
36347 #line 8080 "gram_minimal.y" /* yacc.c:1646  */
36348     {
36349 					(yyval.list) = list_make2(makeString((yyvsp[-2].str)), makeString((yyvsp[0].str)));
36350 				}
36351 #line 36352 "gram_minimal.c" /* yacc.c:1646  */
36352     break;
36353 
36354   case 1191:
36355 #line 8086 "gram_minimal.y" /* yacc.c:1646  */
36356     { (yyval.list) = list_make1((yyvsp[0].typnam)); }
36357 #line 36358 "gram_minimal.c" /* yacc.c:1646  */
36358     break;
36359 
36360   case 1192:
36361 #line 8087 "gram_minimal.y" /* yacc.c:1646  */
36362     { (yyval.list) = lappend((yyvsp[-4].list), (yyvsp[0].typnam)); }
36363 #line 36364 "gram_minimal.c" /* yacc.c:1646  */
36364     break;
36365 
36366   case 1193:
36367 #line 8091 "gram_minimal.y" /* yacc.c:1646  */
36368     { (yyval.list) = (yyvsp[0].list); }
36369 #line 36370 "gram_minimal.c" /* yacc.c:1646  */
36370     break;
36371 
36372   case 1194:
36373 #line 8092 "gram_minimal.y" /* yacc.c:1646  */
36374     { (yyval.list) = NIL; }
36375 #line 36376 "gram_minimal.c" /* yacc.c:1646  */
36376     break;
36377 
36378   case 1195:
36379 #line 8096 "gram_minimal.y" /* yacc.c:1646  */
36380     {
36381 					FunctionParameter *n = makeNode(FunctionParameter);
36382 					n->name = (yyvsp[-1].str);
36383 					n->argType = (yyvsp[0].typnam);
36384 					n->mode = FUNC_PARAM_TABLE;
36385 					n->defexpr = NULL;
36386 					(yyval.fun_param) = n;
36387 				}
36388 #line 36389 "gram_minimal.c" /* yacc.c:1646  */
36389     break;
36390 
36391   case 1196:
36392 #line 8108 "gram_minimal.y" /* yacc.c:1646  */
36393     {
36394 					(yyval.list) = list_make1((yyvsp[0].fun_param));
36395 				}
36396 #line 36397 "gram_minimal.c" /* yacc.c:1646  */
36397     break;
36398 
36399   case 1197:
36400 #line 8112 "gram_minimal.y" /* yacc.c:1646  */
36401     {
36402 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].fun_param));
36403 				}
36404 #line 36405 "gram_minimal.c" /* yacc.c:1646  */
36405     break;
36406 
36407   case 1198:
36408 #line 8127 "gram_minimal.y" /* yacc.c:1646  */
36409     {
36410 					AlterFunctionStmt *n = makeNode(AlterFunctionStmt);
36411 					n->objtype = OBJECT_FUNCTION;
36412 					n->func = (yyvsp[-2].objwithargs);
36413 					n->actions = (yyvsp[-1].list);
36414 					(yyval.node) = (Node *) n;
36415 				}
36416 #line 36417 "gram_minimal.c" /* yacc.c:1646  */
36417     break;
36418 
36419   case 1199:
36420 #line 8135 "gram_minimal.y" /* yacc.c:1646  */
36421     {
36422 					AlterFunctionStmt *n = makeNode(AlterFunctionStmt);
36423 					n->objtype = OBJECT_PROCEDURE;
36424 					n->func = (yyvsp[-2].objwithargs);
36425 					n->actions = (yyvsp[-1].list);
36426 					(yyval.node) = (Node *) n;
36427 				}
36428 #line 36429 "gram_minimal.c" /* yacc.c:1646  */
36429     break;
36430 
36431   case 1200:
36432 #line 8143 "gram_minimal.y" /* yacc.c:1646  */
36433     {
36434 					AlterFunctionStmt *n = makeNode(AlterFunctionStmt);
36435 					n->objtype = OBJECT_ROUTINE;
36436 					n->func = (yyvsp[-2].objwithargs);
36437 					n->actions = (yyvsp[-1].list);
36438 					(yyval.node) = (Node *) n;
36439 				}
36440 #line 36441 "gram_minimal.c" /* yacc.c:1646  */
36441     break;
36442 
36443   case 1201:
36444 #line 8154 "gram_minimal.y" /* yacc.c:1646  */
36445     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
36446 #line 36447 "gram_minimal.c" /* yacc.c:1646  */
36447     break;
36448 
36449   case 1202:
36450 #line 8155 "gram_minimal.y" /* yacc.c:1646  */
36451     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
36452 #line 36453 "gram_minimal.c" /* yacc.c:1646  */
36453     break;
36454 
36455   case 1205:
36456 #line 8179 "gram_minimal.y" /* yacc.c:1646  */
36457     {
36458 					DropStmt *n = makeNode(DropStmt);
36459 					n->removeType = OBJECT_FUNCTION;
36460 					n->objects = (yyvsp[-1].list);
36461 					n->behavior = (yyvsp[0].dbehavior);
36462 					n->missing_ok = false;
36463 					n->concurrent = false;
36464 					(yyval.node) = (Node *)n;
36465 				}
36466 #line 36467 "gram_minimal.c" /* yacc.c:1646  */
36467     break;
36468 
36469   case 1206:
36470 #line 8189 "gram_minimal.y" /* yacc.c:1646  */
36471     {
36472 					DropStmt *n = makeNode(DropStmt);
36473 					n->removeType = OBJECT_FUNCTION;
36474 					n->objects = (yyvsp[-1].list);
36475 					n->behavior = (yyvsp[0].dbehavior);
36476 					n->missing_ok = true;
36477 					n->concurrent = false;
36478 					(yyval.node) = (Node *)n;
36479 				}
36480 #line 36481 "gram_minimal.c" /* yacc.c:1646  */
36481     break;
36482 
36483   case 1207:
36484 #line 8199 "gram_minimal.y" /* yacc.c:1646  */
36485     {
36486 					DropStmt *n = makeNode(DropStmt);
36487 					n->removeType = OBJECT_PROCEDURE;
36488 					n->objects = (yyvsp[-1].list);
36489 					n->behavior = (yyvsp[0].dbehavior);
36490 					n->missing_ok = false;
36491 					n->concurrent = false;
36492 					(yyval.node) = (Node *)n;
36493 				}
36494 #line 36495 "gram_minimal.c" /* yacc.c:1646  */
36495     break;
36496 
36497   case 1208:
36498 #line 8209 "gram_minimal.y" /* yacc.c:1646  */
36499     {
36500 					DropStmt *n = makeNode(DropStmt);
36501 					n->removeType = OBJECT_PROCEDURE;
36502 					n->objects = (yyvsp[-1].list);
36503 					n->behavior = (yyvsp[0].dbehavior);
36504 					n->missing_ok = true;
36505 					n->concurrent = false;
36506 					(yyval.node) = (Node *)n;
36507 				}
36508 #line 36509 "gram_minimal.c" /* yacc.c:1646  */
36509     break;
36510 
36511   case 1209:
36512 #line 8219 "gram_minimal.y" /* yacc.c:1646  */
36513     {
36514 					DropStmt *n = makeNode(DropStmt);
36515 					n->removeType = OBJECT_ROUTINE;
36516 					n->objects = (yyvsp[-1].list);
36517 					n->behavior = (yyvsp[0].dbehavior);
36518 					n->missing_ok = false;
36519 					n->concurrent = false;
36520 					(yyval.node) = (Node *)n;
36521 				}
36522 #line 36523 "gram_minimal.c" /* yacc.c:1646  */
36523     break;
36524 
36525   case 1210:
36526 #line 8229 "gram_minimal.y" /* yacc.c:1646  */
36527     {
36528 					DropStmt *n = makeNode(DropStmt);
36529 					n->removeType = OBJECT_ROUTINE;
36530 					n->objects = (yyvsp[-1].list);
36531 					n->behavior = (yyvsp[0].dbehavior);
36532 					n->missing_ok = true;
36533 					n->concurrent = false;
36534 					(yyval.node) = (Node *)n;
36535 				}
36536 #line 36537 "gram_minimal.c" /* yacc.c:1646  */
36537     break;
36538 
36539   case 1211:
36540 #line 8242 "gram_minimal.y" /* yacc.c:1646  */
36541     {
36542 					DropStmt *n = makeNode(DropStmt);
36543 					n->removeType = OBJECT_AGGREGATE;
36544 					n->objects = (yyvsp[-1].list);
36545 					n->behavior = (yyvsp[0].dbehavior);
36546 					n->missing_ok = false;
36547 					n->concurrent = false;
36548 					(yyval.node) = (Node *)n;
36549 				}
36550 #line 36551 "gram_minimal.c" /* yacc.c:1646  */
36551     break;
36552 
36553   case 1212:
36554 #line 8252 "gram_minimal.y" /* yacc.c:1646  */
36555     {
36556 					DropStmt *n = makeNode(DropStmt);
36557 					n->removeType = OBJECT_AGGREGATE;
36558 					n->objects = (yyvsp[-1].list);
36559 					n->behavior = (yyvsp[0].dbehavior);
36560 					n->missing_ok = true;
36561 					n->concurrent = false;
36562 					(yyval.node) = (Node *)n;
36563 				}
36564 #line 36565 "gram_minimal.c" /* yacc.c:1646  */
36565     break;
36566 
36567   case 1213:
36568 #line 8265 "gram_minimal.y" /* yacc.c:1646  */
36569     {
36570 					DropStmt *n = makeNode(DropStmt);
36571 					n->removeType = OBJECT_OPERATOR;
36572 					n->objects = (yyvsp[-1].list);
36573 					n->behavior = (yyvsp[0].dbehavior);
36574 					n->missing_ok = false;
36575 					n->concurrent = false;
36576 					(yyval.node) = (Node *)n;
36577 				}
36578 #line 36579 "gram_minimal.c" /* yacc.c:1646  */
36579     break;
36580 
36581   case 1214:
36582 #line 8275 "gram_minimal.y" /* yacc.c:1646  */
36583     {
36584 					DropStmt *n = makeNode(DropStmt);
36585 					n->removeType = OBJECT_OPERATOR;
36586 					n->objects = (yyvsp[-1].list);
36587 					n->behavior = (yyvsp[0].dbehavior);
36588 					n->missing_ok = true;
36589 					n->concurrent = false;
36590 					(yyval.node) = (Node *)n;
36591 				}
36592 #line 36593 "gram_minimal.c" /* yacc.c:1646  */
36593     break;
36594 
36595   case 1215:
36596 #line 8288 "gram_minimal.y" /* yacc.c:1646  */
36597     {
36598 				   ereport(ERROR,
36599 						   (errcode(ERRCODE_SYNTAX_ERROR),
36600 							errmsg("missing argument"),
36601 							errhint("Use NONE to denote the missing argument of a unary operator."),
36602 							parser_errposition((yylsp[0]))));
36603 				}
36604 #line 36605 "gram_minimal.c" /* yacc.c:1646  */
36605     break;
36606 
36607   case 1216:
36608 #line 8296 "gram_minimal.y" /* yacc.c:1646  */
36609     { (yyval.list) = list_make2((yyvsp[-3].typnam), (yyvsp[-1].typnam)); }
36610 #line 36611 "gram_minimal.c" /* yacc.c:1646  */
36611     break;
36612 
36613   case 1217:
36614 #line 8298 "gram_minimal.y" /* yacc.c:1646  */
36615     { (yyval.list) = list_make2(NULL, (yyvsp[-1].typnam)); }
36616 #line 36617 "gram_minimal.c" /* yacc.c:1646  */
36617     break;
36618 
36619   case 1218:
36620 #line 8300 "gram_minimal.y" /* yacc.c:1646  */
36621     { (yyval.list) = list_make2((yyvsp[-3].typnam), NULL); }
36622 #line 36623 "gram_minimal.c" /* yacc.c:1646  */
36623     break;
36624 
36625   case 1219:
36626 #line 8305 "gram_minimal.y" /* yacc.c:1646  */
36627     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
36628 #line 36629 "gram_minimal.c" /* yacc.c:1646  */
36629     break;
36630 
36631   case 1220:
36632 #line 8307 "gram_minimal.y" /* yacc.c:1646  */
36633     { (yyval.list) = lcons(makeString((yyvsp[-2].str)), (yyvsp[0].list)); }
36634 #line 36635 "gram_minimal.c" /* yacc.c:1646  */
36635     break;
36636 
36637   case 1221:
36638 #line 8311 "gram_minimal.y" /* yacc.c:1646  */
36639     { (yyval.list) = list_make1((yyvsp[0].objwithargs)); }
36640 #line 36641 "gram_minimal.c" /* yacc.c:1646  */
36641     break;
36642 
36643   case 1222:
36644 #line 8313 "gram_minimal.y" /* yacc.c:1646  */
36645     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].objwithargs)); }
36646 #line 36647 "gram_minimal.c" /* yacc.c:1646  */
36647     break;
36648 
36649   case 1223:
36650 #line 8318 "gram_minimal.y" /* yacc.c:1646  */
36651     {
36652 					ObjectWithArgs *n = makeNode(ObjectWithArgs);
36653 					n->objname = (yyvsp[-1].list);
36654 					n->objargs = (yyvsp[0].list);
36655 					(yyval.objwithargs) = n;
36656 				}
36657 #line 36658 "gram_minimal.c" /* yacc.c:1646  */
36658     break;
36659 
36660   case 1224:
36661 #line 8336 "gram_minimal.y" /* yacc.c:1646  */
36662     {
36663 					DoStmt *n = makeNode(DoStmt);
36664 					n->args = (yyvsp[0].list);
36665 					(yyval.node) = (Node *)n;
36666 				}
36667 #line 36668 "gram_minimal.c" /* yacc.c:1646  */
36668     break;
36669 
36670   case 1225:
36671 #line 8344 "gram_minimal.y" /* yacc.c:1646  */
36672     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
36673 #line 36674 "gram_minimal.c" /* yacc.c:1646  */
36674     break;
36675 
36676   case 1226:
36677 #line 8345 "gram_minimal.y" /* yacc.c:1646  */
36678     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
36679 #line 36680 "gram_minimal.c" /* yacc.c:1646  */
36680     break;
36681 
36682   case 1227:
36683 #line 8350 "gram_minimal.y" /* yacc.c:1646  */
36684     {
36685 					(yyval.defelt) = makeDefElem("as", (Node *)makeString((yyvsp[0].str)), (yylsp[0]));
36686 				}
36687 #line 36688 "gram_minimal.c" /* yacc.c:1646  */
36688     break;
36689 
36690   case 1228:
36691 #line 8354 "gram_minimal.y" /* yacc.c:1646  */
36692     {
36693 					(yyval.defelt) = makeDefElem("language", (Node *)makeString((yyvsp[0].str)), (yylsp[-1]));
36694 				}
36695 #line 36696 "gram_minimal.c" /* yacc.c:1646  */
36696     break;
36697 
36698   case 1229:
36699 #line 8367 "gram_minimal.y" /* yacc.c:1646  */
36700     {
36701 					CreateCastStmt *n = makeNode(CreateCastStmt);
36702 					n->sourcetype = (yyvsp[-7].typnam);
36703 					n->targettype = (yyvsp[-5].typnam);
36704 					n->func = (yyvsp[-1].objwithargs);
36705 					n->context = (CoercionContext) (yyvsp[0].ival);
36706 					n->inout = false;
36707 					(yyval.node) = (Node *)n;
36708 				}
36709 #line 36710 "gram_minimal.c" /* yacc.c:1646  */
36710     break;
36711 
36712   case 1230:
36713 #line 8378 "gram_minimal.y" /* yacc.c:1646  */
36714     {
36715 					CreateCastStmt *n = makeNode(CreateCastStmt);
36716 					n->sourcetype = (yyvsp[-6].typnam);
36717 					n->targettype = (yyvsp[-4].typnam);
36718 					n->func = NULL;
36719 					n->context = (CoercionContext) (yyvsp[0].ival);
36720 					n->inout = false;
36721 					(yyval.node) = (Node *)n;
36722 				}
36723 #line 36724 "gram_minimal.c" /* yacc.c:1646  */
36724     break;
36725 
36726   case 1231:
36727 #line 8389 "gram_minimal.y" /* yacc.c:1646  */
36728     {
36729 					CreateCastStmt *n = makeNode(CreateCastStmt);
36730 					n->sourcetype = (yyvsp[-6].typnam);
36731 					n->targettype = (yyvsp[-4].typnam);
36732 					n->func = NULL;
36733 					n->context = (CoercionContext) (yyvsp[0].ival);
36734 					n->inout = true;
36735 					(yyval.node) = (Node *)n;
36736 				}
36737 #line 36738 "gram_minimal.c" /* yacc.c:1646  */
36738     break;
36739 
36740   case 1232:
36741 #line 8400 "gram_minimal.y" /* yacc.c:1646  */
36742     { (yyval.ival) = COERCION_IMPLICIT; }
36743 #line 36744 "gram_minimal.c" /* yacc.c:1646  */
36744     break;
36745 
36746   case 1233:
36747 #line 8401 "gram_minimal.y" /* yacc.c:1646  */
36748     { (yyval.ival) = COERCION_ASSIGNMENT; }
36749 #line 36750 "gram_minimal.c" /* yacc.c:1646  */
36750     break;
36751 
36752   case 1234:
36753 #line 8402 "gram_minimal.y" /* yacc.c:1646  */
36754     { (yyval.ival) = COERCION_EXPLICIT; }
36755 #line 36756 "gram_minimal.c" /* yacc.c:1646  */
36756     break;
36757 
36758   case 1235:
36759 #line 8407 "gram_minimal.y" /* yacc.c:1646  */
36760     {
36761 					DropStmt *n = makeNode(DropStmt);
36762 					n->removeType = OBJECT_CAST;
36763 					n->objects = list_make1(list_make2((yyvsp[-4].typnam), (yyvsp[-2].typnam)));
36764 					n->behavior = (yyvsp[0].dbehavior);
36765 					n->missing_ok = (yyvsp[-6].boolean);
36766 					n->concurrent = false;
36767 					(yyval.node) = (Node *)n;
36768 				}
36769 #line 36770 "gram_minimal.c" /* yacc.c:1646  */
36770     break;
36771 
36772   case 1236:
36773 #line 8418 "gram_minimal.y" /* yacc.c:1646  */
36774     { (yyval.boolean) = true; }
36775 #line 36776 "gram_minimal.c" /* yacc.c:1646  */
36776     break;
36777 
36778   case 1237:
36779 #line 8419 "gram_minimal.y" /* yacc.c:1646  */
36780     { (yyval.boolean) = false; }
36781 #line 36782 "gram_minimal.c" /* yacc.c:1646  */
36782     break;
36783 
36784   case 1238:
36785 #line 8430 "gram_minimal.y" /* yacc.c:1646  */
36786     {
36787 					CreateTransformStmt *n = makeNode(CreateTransformStmt);
36788 					n->replace = (yyvsp[-8].boolean);
36789 					n->type_name = (yyvsp[-5].typnam);
36790 					n->lang = (yyvsp[-3].str);
36791 					n->fromsql = linitial((yyvsp[-1].list));
36792 					n->tosql = lsecond((yyvsp[-1].list));
36793 					(yyval.node) = (Node *)n;
36794 				}
36795 #line 36796 "gram_minimal.c" /* yacc.c:1646  */
36796     break;
36797 
36798   case 1239:
36799 #line 8442 "gram_minimal.y" /* yacc.c:1646  */
36800     {
36801 					(yyval.list) = list_make2((yyvsp[-6].objwithargs), (yyvsp[0].objwithargs));
36802 				}
36803 #line 36804 "gram_minimal.c" /* yacc.c:1646  */
36804     break;
36805 
36806   case 1240:
36807 #line 8446 "gram_minimal.y" /* yacc.c:1646  */
36808     {
36809 					(yyval.list) = list_make2((yyvsp[0].objwithargs), (yyvsp[-6].objwithargs));
36810 				}
36811 #line 36812 "gram_minimal.c" /* yacc.c:1646  */
36812     break;
36813 
36814   case 1241:
36815 #line 8450 "gram_minimal.y" /* yacc.c:1646  */
36816     {
36817 					(yyval.list) = list_make2((yyvsp[0].objwithargs), NULL);
36818 				}
36819 #line 36820 "gram_minimal.c" /* yacc.c:1646  */
36820     break;
36821 
36822   case 1242:
36823 #line 8454 "gram_minimal.y" /* yacc.c:1646  */
36824     {
36825 					(yyval.list) = list_make2(NULL, (yyvsp[0].objwithargs));
36826 				}
36827 #line 36828 "gram_minimal.c" /* yacc.c:1646  */
36828     break;
36829 
36830   case 1243:
36831 #line 8461 "gram_minimal.y" /* yacc.c:1646  */
36832     {
36833 					DropStmt *n = makeNode(DropStmt);
36834 					n->removeType = OBJECT_TRANSFORM;
36835 					n->objects = list_make1(list_make2((yyvsp[-3].typnam), makeString((yyvsp[-1].str))));
36836 					n->behavior = (yyvsp[0].dbehavior);
36837 					n->missing_ok = (yyvsp[-5].boolean);
36838 					(yyval.node) = (Node *)n;
36839 				}
36840 #line 36841 "gram_minimal.c" /* yacc.c:1646  */
36841     break;
36842 
36843   case 1244:
36844 #line 8481 "gram_minimal.y" /* yacc.c:1646  */
36845     {
36846 					ReindexStmt *n = makeNode(ReindexStmt);
36847 					n->kind = (yyvsp[-2].ival);
36848 					n->concurrent = (yyvsp[-1].boolean);
36849 					n->relation = (yyvsp[0].range);
36850 					n->name = NULL;
36851 					n->options = 0;
36852 					(yyval.node) = (Node *)n;
36853 				}
36854 #line 36855 "gram_minimal.c" /* yacc.c:1646  */
36855     break;
36856 
36857   case 1245:
36858 #line 8491 "gram_minimal.y" /* yacc.c:1646  */
36859     {
36860 					ReindexStmt *n = makeNode(ReindexStmt);
36861 					n->kind = (yyvsp[-2].ival);
36862 					n->concurrent = (yyvsp[-1].boolean);
36863 					n->name = (yyvsp[0].str);
36864 					n->relation = NULL;
36865 					n->options = 0;
36866 					(yyval.node) = (Node *)n;
36867 				}
36868 #line 36869 "gram_minimal.c" /* yacc.c:1646  */
36869     break;
36870 
36871   case 1246:
36872 #line 8501 "gram_minimal.y" /* yacc.c:1646  */
36873     {
36874 					ReindexStmt *n = makeNode(ReindexStmt);
36875 					n->kind = (yyvsp[-2].ival);
36876 					n->concurrent = (yyvsp[-1].boolean);
36877 					n->relation = (yyvsp[0].range);
36878 					n->name = NULL;
36879 					n->options = (yyvsp[-4].ival);
36880 					(yyval.node) = (Node *)n;
36881 				}
36882 #line 36883 "gram_minimal.c" /* yacc.c:1646  */
36883     break;
36884 
36885   case 1247:
36886 #line 8511 "gram_minimal.y" /* yacc.c:1646  */
36887     {
36888 					ReindexStmt *n = makeNode(ReindexStmt);
36889 					n->kind = (yyvsp[-2].ival);
36890 					n->concurrent = (yyvsp[-1].boolean);
36891 					n->name = (yyvsp[0].str);
36892 					n->relation = NULL;
36893 					n->options = (yyvsp[-4].ival);
36894 					(yyval.node) = (Node *)n;
36895 				}
36896 #line 36897 "gram_minimal.c" /* yacc.c:1646  */
36897     break;
36898 
36899   case 1248:
36900 #line 8522 "gram_minimal.y" /* yacc.c:1646  */
36901     { (yyval.ival) = REINDEX_OBJECT_INDEX; }
36902 #line 36903 "gram_minimal.c" /* yacc.c:1646  */
36903     break;
36904 
36905   case 1249:
36906 #line 8523 "gram_minimal.y" /* yacc.c:1646  */
36907     { (yyval.ival) = REINDEX_OBJECT_TABLE; }
36908 #line 36909 "gram_minimal.c" /* yacc.c:1646  */
36909     break;
36910 
36911   case 1250:
36912 #line 8526 "gram_minimal.y" /* yacc.c:1646  */
36913     { (yyval.ival) = REINDEX_OBJECT_SCHEMA; }
36914 #line 36915 "gram_minimal.c" /* yacc.c:1646  */
36915     break;
36916 
36917   case 1251:
36918 #line 8527 "gram_minimal.y" /* yacc.c:1646  */
36919     { (yyval.ival) = REINDEX_OBJECT_SYSTEM; }
36920 #line 36921 "gram_minimal.c" /* yacc.c:1646  */
36921     break;
36922 
36923   case 1252:
36924 #line 8528 "gram_minimal.y" /* yacc.c:1646  */
36925     { (yyval.ival) = REINDEX_OBJECT_DATABASE; }
36926 #line 36927 "gram_minimal.c" /* yacc.c:1646  */
36927     break;
36928 
36929   case 1253:
36930 #line 8531 "gram_minimal.y" /* yacc.c:1646  */
36931     { (yyval.ival) = (yyvsp[0].ival); }
36932 #line 36933 "gram_minimal.c" /* yacc.c:1646  */
36933     break;
36934 
36935   case 1254:
36936 #line 8532 "gram_minimal.y" /* yacc.c:1646  */
36937     { (yyval.ival) = (yyvsp[-2].ival) | (yyvsp[0].ival); }
36938 #line 36939 "gram_minimal.c" /* yacc.c:1646  */
36939     break;
36940 
36941   case 1255:
36942 #line 8535 "gram_minimal.y" /* yacc.c:1646  */
36943     { (yyval.ival) = REINDEXOPT_VERBOSE; }
36944 #line 36945 "gram_minimal.c" /* yacc.c:1646  */
36945     break;
36946 
36947   case 1256:
36948 #line 8546 "gram_minimal.y" /* yacc.c:1646  */
36949     {
36950 					AlterTableSpaceOptionsStmt *n =
36951 						makeNode(AlterTableSpaceOptionsStmt);
36952 					n->tablespacename = (yyvsp[-2].str);
36953 					n->options = (yyvsp[0].list);
36954 					n->isReset = false;
36955 					(yyval.node) = (Node *)n;
36956 				}
36957 #line 36958 "gram_minimal.c" /* yacc.c:1646  */
36958     break;
36959 
36960   case 1257:
36961 #line 8555 "gram_minimal.y" /* yacc.c:1646  */
36962     {
36963 					AlterTableSpaceOptionsStmt *n =
36964 						makeNode(AlterTableSpaceOptionsStmt);
36965 					n->tablespacename = (yyvsp[-2].str);
36966 					n->options = (yyvsp[0].list);
36967 					n->isReset = true;
36968 					(yyval.node) = (Node *)n;
36969 				}
36970 #line 36971 "gram_minimal.c" /* yacc.c:1646  */
36971     break;
36972 
36973   case 1258:
36974 #line 8572 "gram_minimal.y" /* yacc.c:1646  */
36975     {
36976 					RenameStmt *n = makeNode(RenameStmt);
36977 					n->renameType = OBJECT_AGGREGATE;
36978 					n->object = (Node *) (yyvsp[-3].objwithargs);
36979 					n->newname = (yyvsp[0].str);
36980 					n->missing_ok = false;
36981 					(yyval.node) = (Node *)n;
36982 				}
36983 #line 36984 "gram_minimal.c" /* yacc.c:1646  */
36984     break;
36985 
36986   case 1259:
36987 #line 8581 "gram_minimal.y" /* yacc.c:1646  */
36988     {
36989 					RenameStmt *n = makeNode(RenameStmt);
36990 					n->renameType = OBJECT_COLLATION;
36991 					n->object = (Node *) (yyvsp[-3].list);
36992 					n->newname = (yyvsp[0].str);
36993 					n->missing_ok = false;
36994 					(yyval.node) = (Node *)n;
36995 				}
36996 #line 36997 "gram_minimal.c" /* yacc.c:1646  */
36997     break;
36998 
36999   case 1260:
37000 #line 8590 "gram_minimal.y" /* yacc.c:1646  */
37001     {
37002 					RenameStmt *n = makeNode(RenameStmt);
37003 					n->renameType = OBJECT_CONVERSION;
37004 					n->object = (Node *) (yyvsp[-3].list);
37005 					n->newname = (yyvsp[0].str);
37006 					n->missing_ok = false;
37007 					(yyval.node) = (Node *)n;
37008 				}
37009 #line 37010 "gram_minimal.c" /* yacc.c:1646  */
37010     break;
37011 
37012   case 1261:
37013 #line 8599 "gram_minimal.y" /* yacc.c:1646  */
37014     {
37015 					RenameStmt *n = makeNode(RenameStmt);
37016 					n->renameType = OBJECT_DATABASE;
37017 					n->subname = (yyvsp[-3].str);
37018 					n->newname = (yyvsp[0].str);
37019 					n->missing_ok = false;
37020 					(yyval.node) = (Node *)n;
37021 				}
37022 #line 37023 "gram_minimal.c" /* yacc.c:1646  */
37023     break;
37024 
37025   case 1262:
37026 #line 8608 "gram_minimal.y" /* yacc.c:1646  */
37027     {
37028 					RenameStmt *n = makeNode(RenameStmt);
37029 					n->renameType = OBJECT_DOMAIN;
37030 					n->object = (Node *) (yyvsp[-3].list);
37031 					n->newname = (yyvsp[0].str);
37032 					n->missing_ok = false;
37033 					(yyval.node) = (Node *)n;
37034 				}
37035 #line 37036 "gram_minimal.c" /* yacc.c:1646  */
37036     break;
37037 
37038   case 1263:
37039 #line 8617 "gram_minimal.y" /* yacc.c:1646  */
37040     {
37041 					RenameStmt *n = makeNode(RenameStmt);
37042 					n->renameType = OBJECT_DOMCONSTRAINT;
37043 					n->object = (Node *) (yyvsp[-5].list);
37044 					n->subname = (yyvsp[-2].str);
37045 					n->newname = (yyvsp[0].str);
37046 					(yyval.node) = (Node *)n;
37047 				}
37048 #line 37049 "gram_minimal.c" /* yacc.c:1646  */
37049     break;
37050 
37051   case 1264:
37052 #line 8626 "gram_minimal.y" /* yacc.c:1646  */
37053     {
37054 					RenameStmt *n = makeNode(RenameStmt);
37055 					n->renameType = OBJECT_FDW;
37056 					n->object = (Node *) makeString((yyvsp[-3].str));
37057 					n->newname = (yyvsp[0].str);
37058 					n->missing_ok = false;
37059 					(yyval.node) = (Node *)n;
37060 				}
37061 #line 37062 "gram_minimal.c" /* yacc.c:1646  */
37062     break;
37063 
37064   case 1265:
37065 #line 8635 "gram_minimal.y" /* yacc.c:1646  */
37066     {
37067 					RenameStmt *n = makeNode(RenameStmt);
37068 					n->renameType = OBJECT_FUNCTION;
37069 					n->object = (Node *) (yyvsp[-3].objwithargs);
37070 					n->newname = (yyvsp[0].str);
37071 					n->missing_ok = false;
37072 					(yyval.node) = (Node *)n;
37073 				}
37074 #line 37075 "gram_minimal.c" /* yacc.c:1646  */
37075     break;
37076 
37077   case 1266:
37078 #line 8644 "gram_minimal.y" /* yacc.c:1646  */
37079     {
37080 					RenameStmt *n = makeNode(RenameStmt);
37081 					n->renameType = OBJECT_ROLE;
37082 					n->subname = (yyvsp[-3].str);
37083 					n->newname = (yyvsp[0].str);
37084 					n->missing_ok = false;
37085 					(yyval.node) = (Node *)n;
37086 				}
37087 #line 37088 "gram_minimal.c" /* yacc.c:1646  */
37088     break;
37089 
37090   case 1267:
37091 #line 8653 "gram_minimal.y" /* yacc.c:1646  */
37092     {
37093 					RenameStmt *n = makeNode(RenameStmt);
37094 					n->renameType = OBJECT_LANGUAGE;
37095 					n->object = (Node *) makeString((yyvsp[-3].str));
37096 					n->newname = (yyvsp[0].str);
37097 					n->missing_ok = false;
37098 					(yyval.node) = (Node *)n;
37099 				}
37100 #line 37101 "gram_minimal.c" /* yacc.c:1646  */
37101     break;
37102 
37103   case 1268:
37104 #line 8662 "gram_minimal.y" /* yacc.c:1646  */
37105     {
37106 					RenameStmt *n = makeNode(RenameStmt);
37107 					n->renameType = OBJECT_OPCLASS;
37108 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
37109 					n->newname = (yyvsp[0].str);
37110 					n->missing_ok = false;
37111 					(yyval.node) = (Node *)n;
37112 				}
37113 #line 37114 "gram_minimal.c" /* yacc.c:1646  */
37114     break;
37115 
37116   case 1269:
37117 #line 8671 "gram_minimal.y" /* yacc.c:1646  */
37118     {
37119 					RenameStmt *n = makeNode(RenameStmt);
37120 					n->renameType = OBJECT_OPFAMILY;
37121 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
37122 					n->newname = (yyvsp[0].str);
37123 					n->missing_ok = false;
37124 					(yyval.node) = (Node *)n;
37125 				}
37126 #line 37127 "gram_minimal.c" /* yacc.c:1646  */
37127     break;
37128 
37129   case 1270:
37130 #line 8680 "gram_minimal.y" /* yacc.c:1646  */
37131     {
37132 					RenameStmt *n = makeNode(RenameStmt);
37133 					n->renameType = OBJECT_POLICY;
37134 					n->relation = (yyvsp[-3].range);
37135 					n->subname = (yyvsp[-5].str);
37136 					n->newname = (yyvsp[0].str);
37137 					n->missing_ok = false;
37138 					(yyval.node) = (Node *)n;
37139 				}
37140 #line 37141 "gram_minimal.c" /* yacc.c:1646  */
37141     break;
37142 
37143   case 1271:
37144 #line 8690 "gram_minimal.y" /* yacc.c:1646  */
37145     {
37146 					RenameStmt *n = makeNode(RenameStmt);
37147 					n->renameType = OBJECT_POLICY;
37148 					n->relation = (yyvsp[-3].range);
37149 					n->subname = (yyvsp[-5].str);
37150 					n->newname = (yyvsp[0].str);
37151 					n->missing_ok = true;
37152 					(yyval.node) = (Node *)n;
37153 				}
37154 #line 37155 "gram_minimal.c" /* yacc.c:1646  */
37155     break;
37156 
37157   case 1272:
37158 #line 8700 "gram_minimal.y" /* yacc.c:1646  */
37159     {
37160 					RenameStmt *n = makeNode(RenameStmt);
37161 					n->renameType = OBJECT_PROCEDURE;
37162 					n->object = (Node *) (yyvsp[-3].objwithargs);
37163 					n->newname = (yyvsp[0].str);
37164 					n->missing_ok = false;
37165 					(yyval.node) = (Node *)n;
37166 				}
37167 #line 37168 "gram_minimal.c" /* yacc.c:1646  */
37168     break;
37169 
37170   case 1273:
37171 #line 8709 "gram_minimal.y" /* yacc.c:1646  */
37172     {
37173 					RenameStmt *n = makeNode(RenameStmt);
37174 					n->renameType = OBJECT_PUBLICATION;
37175 					n->object = (Node *) makeString((yyvsp[-3].str));
37176 					n->newname = (yyvsp[0].str);
37177 					n->missing_ok = false;
37178 					(yyval.node) = (Node *)n;
37179 				}
37180 #line 37181 "gram_minimal.c" /* yacc.c:1646  */
37181     break;
37182 
37183   case 1274:
37184 #line 8718 "gram_minimal.y" /* yacc.c:1646  */
37185     {
37186 					RenameStmt *n = makeNode(RenameStmt);
37187 					n->renameType = OBJECT_ROUTINE;
37188 					n->object = (Node *) (yyvsp[-3].objwithargs);
37189 					n->newname = (yyvsp[0].str);
37190 					n->missing_ok = false;
37191 					(yyval.node) = (Node *)n;
37192 				}
37193 #line 37194 "gram_minimal.c" /* yacc.c:1646  */
37194     break;
37195 
37196   case 1275:
37197 #line 8727 "gram_minimal.y" /* yacc.c:1646  */
37198     {
37199 					RenameStmt *n = makeNode(RenameStmt);
37200 					n->renameType = OBJECT_SCHEMA;
37201 					n->subname = (yyvsp[-3].str);
37202 					n->newname = (yyvsp[0].str);
37203 					n->missing_ok = false;
37204 					(yyval.node) = (Node *)n;
37205 				}
37206 #line 37207 "gram_minimal.c" /* yacc.c:1646  */
37207     break;
37208 
37209   case 1276:
37210 #line 8736 "gram_minimal.y" /* yacc.c:1646  */
37211     {
37212 					RenameStmt *n = makeNode(RenameStmt);
37213 					n->renameType = OBJECT_FOREIGN_SERVER;
37214 					n->object = (Node *) makeString((yyvsp[-3].str));
37215 					n->newname = (yyvsp[0].str);
37216 					n->missing_ok = false;
37217 					(yyval.node) = (Node *)n;
37218 				}
37219 #line 37220 "gram_minimal.c" /* yacc.c:1646  */
37220     break;
37221 
37222   case 1277:
37223 #line 8745 "gram_minimal.y" /* yacc.c:1646  */
37224     {
37225 					RenameStmt *n = makeNode(RenameStmt);
37226 					n->renameType = OBJECT_SUBSCRIPTION;
37227 					n->object = (Node *) makeString((yyvsp[-3].str));
37228 					n->newname = (yyvsp[0].str);
37229 					n->missing_ok = false;
37230 					(yyval.node) = (Node *)n;
37231 				}
37232 #line 37233 "gram_minimal.c" /* yacc.c:1646  */
37233     break;
37234 
37235   case 1278:
37236 #line 8754 "gram_minimal.y" /* yacc.c:1646  */
37237     {
37238 					RenameStmt *n = makeNode(RenameStmt);
37239 					n->renameType = OBJECT_TABLE;
37240 					n->relation = (yyvsp[-3].range);
37241 					n->subname = NULL;
37242 					n->newname = (yyvsp[0].str);
37243 					n->missing_ok = false;
37244 					(yyval.node) = (Node *)n;
37245 				}
37246 #line 37247 "gram_minimal.c" /* yacc.c:1646  */
37247     break;
37248 
37249   case 1279:
37250 #line 8764 "gram_minimal.y" /* yacc.c:1646  */
37251     {
37252 					RenameStmt *n = makeNode(RenameStmt);
37253 					n->renameType = OBJECT_TABLE;
37254 					n->relation = (yyvsp[-3].range);
37255 					n->subname = NULL;
37256 					n->newname = (yyvsp[0].str);
37257 					n->missing_ok = true;
37258 					(yyval.node) = (Node *)n;
37259 				}
37260 #line 37261 "gram_minimal.c" /* yacc.c:1646  */
37261     break;
37262 
37263   case 1280:
37264 #line 8774 "gram_minimal.y" /* yacc.c:1646  */
37265     {
37266 					RenameStmt *n = makeNode(RenameStmt);
37267 					n->renameType = OBJECT_SEQUENCE;
37268 					n->relation = (yyvsp[-3].range);
37269 					n->subname = NULL;
37270 					n->newname = (yyvsp[0].str);
37271 					n->missing_ok = false;
37272 					(yyval.node) = (Node *)n;
37273 				}
37274 #line 37275 "gram_minimal.c" /* yacc.c:1646  */
37275     break;
37276 
37277   case 1281:
37278 #line 8784 "gram_minimal.y" /* yacc.c:1646  */
37279     {
37280 					RenameStmt *n = makeNode(RenameStmt);
37281 					n->renameType = OBJECT_SEQUENCE;
37282 					n->relation = (yyvsp[-3].range);
37283 					n->subname = NULL;
37284 					n->newname = (yyvsp[0].str);
37285 					n->missing_ok = true;
37286 					(yyval.node) = (Node *)n;
37287 				}
37288 #line 37289 "gram_minimal.c" /* yacc.c:1646  */
37289     break;
37290 
37291   case 1282:
37292 #line 8794 "gram_minimal.y" /* yacc.c:1646  */
37293     {
37294 					RenameStmt *n = makeNode(RenameStmt);
37295 					n->renameType = OBJECT_VIEW;
37296 					n->relation = (yyvsp[-3].range);
37297 					n->subname = NULL;
37298 					n->newname = (yyvsp[0].str);
37299 					n->missing_ok = false;
37300 					(yyval.node) = (Node *)n;
37301 				}
37302 #line 37303 "gram_minimal.c" /* yacc.c:1646  */
37303     break;
37304 
37305   case 1283:
37306 #line 8804 "gram_minimal.y" /* yacc.c:1646  */
37307     {
37308 					RenameStmt *n = makeNode(RenameStmt);
37309 					n->renameType = OBJECT_VIEW;
37310 					n->relation = (yyvsp[-3].range);
37311 					n->subname = NULL;
37312 					n->newname = (yyvsp[0].str);
37313 					n->missing_ok = true;
37314 					(yyval.node) = (Node *)n;
37315 				}
37316 #line 37317 "gram_minimal.c" /* yacc.c:1646  */
37317     break;
37318 
37319   case 1284:
37320 #line 8814 "gram_minimal.y" /* yacc.c:1646  */
37321     {
37322 					RenameStmt *n = makeNode(RenameStmt);
37323 					n->renameType = OBJECT_MATVIEW;
37324 					n->relation = (yyvsp[-3].range);
37325 					n->subname = NULL;
37326 					n->newname = (yyvsp[0].str);
37327 					n->missing_ok = false;
37328 					(yyval.node) = (Node *)n;
37329 				}
37330 #line 37331 "gram_minimal.c" /* yacc.c:1646  */
37331     break;
37332 
37333   case 1285:
37334 #line 8824 "gram_minimal.y" /* yacc.c:1646  */
37335     {
37336 					RenameStmt *n = makeNode(RenameStmt);
37337 					n->renameType = OBJECT_MATVIEW;
37338 					n->relation = (yyvsp[-3].range);
37339 					n->subname = NULL;
37340 					n->newname = (yyvsp[0].str);
37341 					n->missing_ok = true;
37342 					(yyval.node) = (Node *)n;
37343 				}
37344 #line 37345 "gram_minimal.c" /* yacc.c:1646  */
37345     break;
37346 
37347   case 1286:
37348 #line 8834 "gram_minimal.y" /* yacc.c:1646  */
37349     {
37350 					RenameStmt *n = makeNode(RenameStmt);
37351 					n->renameType = OBJECT_INDEX;
37352 					n->relation = (yyvsp[-3].range);
37353 					n->subname = NULL;
37354 					n->newname = (yyvsp[0].str);
37355 					n->missing_ok = false;
37356 					(yyval.node) = (Node *)n;
37357 				}
37358 #line 37359 "gram_minimal.c" /* yacc.c:1646  */
37359     break;
37360 
37361   case 1287:
37362 #line 8844 "gram_minimal.y" /* yacc.c:1646  */
37363     {
37364 					RenameStmt *n = makeNode(RenameStmt);
37365 					n->renameType = OBJECT_INDEX;
37366 					n->relation = (yyvsp[-3].range);
37367 					n->subname = NULL;
37368 					n->newname = (yyvsp[0].str);
37369 					n->missing_ok = true;
37370 					(yyval.node) = (Node *)n;
37371 				}
37372 #line 37373 "gram_minimal.c" /* yacc.c:1646  */
37373     break;
37374 
37375   case 1288:
37376 #line 8854 "gram_minimal.y" /* yacc.c:1646  */
37377     {
37378 					RenameStmt *n = makeNode(RenameStmt);
37379 					n->renameType = OBJECT_FOREIGN_TABLE;
37380 					n->relation = (yyvsp[-3].range);
37381 					n->subname = NULL;
37382 					n->newname = (yyvsp[0].str);
37383 					n->missing_ok = false;
37384 					(yyval.node) = (Node *)n;
37385 				}
37386 #line 37387 "gram_minimal.c" /* yacc.c:1646  */
37387     break;
37388 
37389   case 1289:
37390 #line 8864 "gram_minimal.y" /* yacc.c:1646  */
37391     {
37392 					RenameStmt *n = makeNode(RenameStmt);
37393 					n->renameType = OBJECT_FOREIGN_TABLE;
37394 					n->relation = (yyvsp[-3].range);
37395 					n->subname = NULL;
37396 					n->newname = (yyvsp[0].str);
37397 					n->missing_ok = true;
37398 					(yyval.node) = (Node *)n;
37399 				}
37400 #line 37401 "gram_minimal.c" /* yacc.c:1646  */
37401     break;
37402 
37403   case 1290:
37404 #line 8874 "gram_minimal.y" /* yacc.c:1646  */
37405     {
37406 					RenameStmt *n = makeNode(RenameStmt);
37407 					n->renameType = OBJECT_COLUMN;
37408 					n->relationType = OBJECT_TABLE;
37409 					n->relation = (yyvsp[-5].range);
37410 					n->subname = (yyvsp[-2].str);
37411 					n->newname = (yyvsp[0].str);
37412 					n->missing_ok = false;
37413 					(yyval.node) = (Node *)n;
37414 				}
37415 #line 37416 "gram_minimal.c" /* yacc.c:1646  */
37416     break;
37417 
37418   case 1291:
37419 #line 8885 "gram_minimal.y" /* yacc.c:1646  */
37420     {
37421 					RenameStmt *n = makeNode(RenameStmt);
37422 					n->renameType = OBJECT_COLUMN;
37423 					n->relationType = OBJECT_TABLE;
37424 					n->relation = (yyvsp[-5].range);
37425 					n->subname = (yyvsp[-2].str);
37426 					n->newname = (yyvsp[0].str);
37427 					n->missing_ok = true;
37428 					(yyval.node) = (Node *)n;
37429 				}
37430 #line 37431 "gram_minimal.c" /* yacc.c:1646  */
37431     break;
37432 
37433   case 1292:
37434 #line 8896 "gram_minimal.y" /* yacc.c:1646  */
37435     {
37436 					RenameStmt *n = makeNode(RenameStmt);
37437 					n->renameType = OBJECT_COLUMN;
37438 					n->relationType = OBJECT_VIEW;
37439 					n->relation = (yyvsp[-5].range);
37440 					n->subname = (yyvsp[-2].str);
37441 					n->newname = (yyvsp[0].str);
37442 					n->missing_ok = false;
37443 					(yyval.node) = (Node *)n;
37444 				}
37445 #line 37446 "gram_minimal.c" /* yacc.c:1646  */
37446     break;
37447 
37448   case 1293:
37449 #line 8907 "gram_minimal.y" /* yacc.c:1646  */
37450     {
37451 					RenameStmt *n = makeNode(RenameStmt);
37452 					n->renameType = OBJECT_COLUMN;
37453 					n->relationType = OBJECT_VIEW;
37454 					n->relation = (yyvsp[-5].range);
37455 					n->subname = (yyvsp[-2].str);
37456 					n->newname = (yyvsp[0].str);
37457 					n->missing_ok = true;
37458 					(yyval.node) = (Node *)n;
37459 				}
37460 #line 37461 "gram_minimal.c" /* yacc.c:1646  */
37461     break;
37462 
37463   case 1294:
37464 #line 8918 "gram_minimal.y" /* yacc.c:1646  */
37465     {
37466 					RenameStmt *n = makeNode(RenameStmt);
37467 					n->renameType = OBJECT_COLUMN;
37468 					n->relationType = OBJECT_MATVIEW;
37469 					n->relation = (yyvsp[-5].range);
37470 					n->subname = (yyvsp[-2].str);
37471 					n->newname = (yyvsp[0].str);
37472 					n->missing_ok = false;
37473 					(yyval.node) = (Node *)n;
37474 				}
37475 #line 37476 "gram_minimal.c" /* yacc.c:1646  */
37476     break;
37477 
37478   case 1295:
37479 #line 8929 "gram_minimal.y" /* yacc.c:1646  */
37480     {
37481 					RenameStmt *n = makeNode(RenameStmt);
37482 					n->renameType = OBJECT_COLUMN;
37483 					n->relationType = OBJECT_MATVIEW;
37484 					n->relation = (yyvsp[-5].range);
37485 					n->subname = (yyvsp[-2].str);
37486 					n->newname = (yyvsp[0].str);
37487 					n->missing_ok = true;
37488 					(yyval.node) = (Node *)n;
37489 				}
37490 #line 37491 "gram_minimal.c" /* yacc.c:1646  */
37491     break;
37492 
37493   case 1296:
37494 #line 8940 "gram_minimal.y" /* yacc.c:1646  */
37495     {
37496 					RenameStmt *n = makeNode(RenameStmt);
37497 					n->renameType = OBJECT_TABCONSTRAINT;
37498 					n->relation = (yyvsp[-5].range);
37499 					n->subname = (yyvsp[-2].str);
37500 					n->newname = (yyvsp[0].str);
37501 					n->missing_ok = false;
37502 					(yyval.node) = (Node *)n;
37503 				}
37504 #line 37505 "gram_minimal.c" /* yacc.c:1646  */
37505     break;
37506 
37507   case 1297:
37508 #line 8950 "gram_minimal.y" /* yacc.c:1646  */
37509     {
37510 					RenameStmt *n = makeNode(RenameStmt);
37511 					n->renameType = OBJECT_TABCONSTRAINT;
37512 					n->relation = (yyvsp[-5].range);
37513 					n->subname = (yyvsp[-2].str);
37514 					n->newname = (yyvsp[0].str);
37515 					n->missing_ok = true;
37516 					(yyval.node) = (Node *)n;
37517 				}
37518 #line 37519 "gram_minimal.c" /* yacc.c:1646  */
37519     break;
37520 
37521   case 1298:
37522 #line 8960 "gram_minimal.y" /* yacc.c:1646  */
37523     {
37524 					RenameStmt *n = makeNode(RenameStmt);
37525 					n->renameType = OBJECT_COLUMN;
37526 					n->relationType = OBJECT_FOREIGN_TABLE;
37527 					n->relation = (yyvsp[-5].range);
37528 					n->subname = (yyvsp[-2].str);
37529 					n->newname = (yyvsp[0].str);
37530 					n->missing_ok = false;
37531 					(yyval.node) = (Node *)n;
37532 				}
37533 #line 37534 "gram_minimal.c" /* yacc.c:1646  */
37534     break;
37535 
37536   case 1299:
37537 #line 8971 "gram_minimal.y" /* yacc.c:1646  */
37538     {
37539 					RenameStmt *n = makeNode(RenameStmt);
37540 					n->renameType = OBJECT_COLUMN;
37541 					n->relationType = OBJECT_FOREIGN_TABLE;
37542 					n->relation = (yyvsp[-5].range);
37543 					n->subname = (yyvsp[-2].str);
37544 					n->newname = (yyvsp[0].str);
37545 					n->missing_ok = true;
37546 					(yyval.node) = (Node *)n;
37547 				}
37548 #line 37549 "gram_minimal.c" /* yacc.c:1646  */
37549     break;
37550 
37551   case 1300:
37552 #line 8982 "gram_minimal.y" /* yacc.c:1646  */
37553     {
37554 					RenameStmt *n = makeNode(RenameStmt);
37555 					n->renameType = OBJECT_RULE;
37556 					n->relation = (yyvsp[-3].range);
37557 					n->subname = (yyvsp[-5].str);
37558 					n->newname = (yyvsp[0].str);
37559 					n->missing_ok = false;
37560 					(yyval.node) = (Node *)n;
37561 				}
37562 #line 37563 "gram_minimal.c" /* yacc.c:1646  */
37563     break;
37564 
37565   case 1301:
37566 #line 8992 "gram_minimal.y" /* yacc.c:1646  */
37567     {
37568 					RenameStmt *n = makeNode(RenameStmt);
37569 					n->renameType = OBJECT_TRIGGER;
37570 					n->relation = (yyvsp[-3].range);
37571 					n->subname = (yyvsp[-5].str);
37572 					n->newname = (yyvsp[0].str);
37573 					n->missing_ok = false;
37574 					(yyval.node) = (Node *)n;
37575 				}
37576 #line 37577 "gram_minimal.c" /* yacc.c:1646  */
37577     break;
37578 
37579   case 1302:
37580 #line 9002 "gram_minimal.y" /* yacc.c:1646  */
37581     {
37582 					RenameStmt *n = makeNode(RenameStmt);
37583 					n->renameType = OBJECT_EVENT_TRIGGER;
37584 					n->object = (Node *) makeString((yyvsp[-3].str));
37585 					n->newname = (yyvsp[0].str);
37586 					(yyval.node) = (Node *)n;
37587 				}
37588 #line 37589 "gram_minimal.c" /* yacc.c:1646  */
37589     break;
37590 
37591   case 1303:
37592 #line 9010 "gram_minimal.y" /* yacc.c:1646  */
37593     {
37594 					RenameStmt *n = makeNode(RenameStmt);
37595 					n->renameType = OBJECT_ROLE;
37596 					n->subname = (yyvsp[-3].str);
37597 					n->newname = (yyvsp[0].str);
37598 					n->missing_ok = false;
37599 					(yyval.node) = (Node *)n;
37600 				}
37601 #line 37602 "gram_minimal.c" /* yacc.c:1646  */
37602     break;
37603 
37604   case 1304:
37605 #line 9019 "gram_minimal.y" /* yacc.c:1646  */
37606     {
37607 					RenameStmt *n = makeNode(RenameStmt);
37608 					n->renameType = OBJECT_ROLE;
37609 					n->subname = (yyvsp[-3].str);
37610 					n->newname = (yyvsp[0].str);
37611 					n->missing_ok = false;
37612 					(yyval.node) = (Node *)n;
37613 				}
37614 #line 37615 "gram_minimal.c" /* yacc.c:1646  */
37615     break;
37616 
37617   case 1305:
37618 #line 9028 "gram_minimal.y" /* yacc.c:1646  */
37619     {
37620 					RenameStmt *n = makeNode(RenameStmt);
37621 					n->renameType = OBJECT_TABLESPACE;
37622 					n->subname = (yyvsp[-3].str);
37623 					n->newname = (yyvsp[0].str);
37624 					n->missing_ok = false;
37625 					(yyval.node) = (Node *)n;
37626 				}
37627 #line 37628 "gram_minimal.c" /* yacc.c:1646  */
37628     break;
37629 
37630   case 1306:
37631 #line 9037 "gram_minimal.y" /* yacc.c:1646  */
37632     {
37633 					RenameStmt *n = makeNode(RenameStmt);
37634 					n->renameType = OBJECT_STATISTIC_EXT;
37635 					n->object = (Node *) (yyvsp[-3].list);
37636 					n->newname = (yyvsp[0].str);
37637 					n->missing_ok = false;
37638 					(yyval.node) = (Node *)n;
37639 				}
37640 #line 37641 "gram_minimal.c" /* yacc.c:1646  */
37641     break;
37642 
37643   case 1307:
37644 #line 9046 "gram_minimal.y" /* yacc.c:1646  */
37645     {
37646 					RenameStmt *n = makeNode(RenameStmt);
37647 					n->renameType = OBJECT_TSPARSER;
37648 					n->object = (Node *) (yyvsp[-3].list);
37649 					n->newname = (yyvsp[0].str);
37650 					n->missing_ok = false;
37651 					(yyval.node) = (Node *)n;
37652 				}
37653 #line 37654 "gram_minimal.c" /* yacc.c:1646  */
37654     break;
37655 
37656   case 1308:
37657 #line 9055 "gram_minimal.y" /* yacc.c:1646  */
37658     {
37659 					RenameStmt *n = makeNode(RenameStmt);
37660 					n->renameType = OBJECT_TSDICTIONARY;
37661 					n->object = (Node *) (yyvsp[-3].list);
37662 					n->newname = (yyvsp[0].str);
37663 					n->missing_ok = false;
37664 					(yyval.node) = (Node *)n;
37665 				}
37666 #line 37667 "gram_minimal.c" /* yacc.c:1646  */
37667     break;
37668 
37669   case 1309:
37670 #line 9064 "gram_minimal.y" /* yacc.c:1646  */
37671     {
37672 					RenameStmt *n = makeNode(RenameStmt);
37673 					n->renameType = OBJECT_TSTEMPLATE;
37674 					n->object = (Node *) (yyvsp[-3].list);
37675 					n->newname = (yyvsp[0].str);
37676 					n->missing_ok = false;
37677 					(yyval.node) = (Node *)n;
37678 				}
37679 #line 37680 "gram_minimal.c" /* yacc.c:1646  */
37680     break;
37681 
37682   case 1310:
37683 #line 9073 "gram_minimal.y" /* yacc.c:1646  */
37684     {
37685 					RenameStmt *n = makeNode(RenameStmt);
37686 					n->renameType = OBJECT_TSCONFIGURATION;
37687 					n->object = (Node *) (yyvsp[-3].list);
37688 					n->newname = (yyvsp[0].str);
37689 					n->missing_ok = false;
37690 					(yyval.node) = (Node *)n;
37691 				}
37692 #line 37693 "gram_minimal.c" /* yacc.c:1646  */
37693     break;
37694 
37695   case 1311:
37696 #line 9082 "gram_minimal.y" /* yacc.c:1646  */
37697     {
37698 					RenameStmt *n = makeNode(RenameStmt);
37699 					n->renameType = OBJECT_TYPE;
37700 					n->object = (Node *) (yyvsp[-3].list);
37701 					n->newname = (yyvsp[0].str);
37702 					n->missing_ok = false;
37703 					(yyval.node) = (Node *)n;
37704 				}
37705 #line 37706 "gram_minimal.c" /* yacc.c:1646  */
37706     break;
37707 
37708   case 1312:
37709 #line 9091 "gram_minimal.y" /* yacc.c:1646  */
37710     {
37711 					RenameStmt *n = makeNode(RenameStmt);
37712 					n->renameType = OBJECT_ATTRIBUTE;
37713 					n->relationType = OBJECT_TYPE;
37714 					n->relation = makeRangeVarFromAnyName((yyvsp[-6].list), (yylsp[-6]), yyscanner);
37715 					n->subname = (yyvsp[-3].str);
37716 					n->newname = (yyvsp[-1].str);
37717 					n->behavior = (yyvsp[0].dbehavior);
37718 					n->missing_ok = false;
37719 					(yyval.node) = (Node *)n;
37720 				}
37721 #line 37722 "gram_minimal.c" /* yacc.c:1646  */
37722     break;
37723 
37724   case 1313:
37725 #line 9104 "gram_minimal.y" /* yacc.c:1646  */
37726     { (yyval.ival) = COLUMN; }
37727 #line 37728 "gram_minimal.c" /* yacc.c:1646  */
37728     break;
37729 
37730   case 1314:
37731 #line 9105 "gram_minimal.y" /* yacc.c:1646  */
37732     { (yyval.ival) = 0; }
37733 #line 37734 "gram_minimal.c" /* yacc.c:1646  */
37734     break;
37735 
37736   case 1315:
37737 #line 9108 "gram_minimal.y" /* yacc.c:1646  */
37738     { (yyval.ival) = 1; }
37739 #line 37740 "gram_minimal.c" /* yacc.c:1646  */
37740     break;
37741 
37742   case 1316:
37743 #line 9109 "gram_minimal.y" /* yacc.c:1646  */
37744     { (yyval.ival) = 0; }
37745 #line 37746 "gram_minimal.c" /* yacc.c:1646  */
37746     break;
37747 
37748   case 1317:
37749 #line 9120 "gram_minimal.y" /* yacc.c:1646  */
37750     {
37751 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37752 					n->objectType = OBJECT_FUNCTION;
37753 					n->object = (Node *) (yyvsp[-5].objwithargs);
37754 					n->extname = makeString((yyvsp[0].str));
37755 					n->remove = (yyvsp[-4].boolean);
37756 					(yyval.node) = (Node *)n;
37757 				}
37758 #line 37759 "gram_minimal.c" /* yacc.c:1646  */
37759     break;
37760 
37761   case 1318:
37762 #line 9129 "gram_minimal.y" /* yacc.c:1646  */
37763     {
37764 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37765 					n->objectType = OBJECT_PROCEDURE;
37766 					n->object = (Node *) (yyvsp[-5].objwithargs);
37767 					n->extname = makeString((yyvsp[0].str));
37768 					n->remove = (yyvsp[-4].boolean);
37769 					(yyval.node) = (Node *)n;
37770 				}
37771 #line 37772 "gram_minimal.c" /* yacc.c:1646  */
37772     break;
37773 
37774   case 1319:
37775 #line 9138 "gram_minimal.y" /* yacc.c:1646  */
37776     {
37777 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37778 					n->objectType = OBJECT_ROUTINE;
37779 					n->object = (Node *) (yyvsp[-5].objwithargs);
37780 					n->extname = makeString((yyvsp[0].str));
37781 					n->remove = (yyvsp[-4].boolean);
37782 					(yyval.node) = (Node *)n;
37783 				}
37784 #line 37785 "gram_minimal.c" /* yacc.c:1646  */
37785     break;
37786 
37787   case 1320:
37788 #line 9147 "gram_minimal.y" /* yacc.c:1646  */
37789     {
37790 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37791 					n->objectType = OBJECT_TRIGGER;
37792 					n->relation = (yyvsp[-5].range);
37793 					n->object = (Node *) list_make1(makeString((yyvsp[-7].str)));
37794 					n->extname = makeString((yyvsp[0].str));
37795 					n->remove = (yyvsp[-4].boolean);
37796 					(yyval.node) = (Node *)n;
37797 				}
37798 #line 37799 "gram_minimal.c" /* yacc.c:1646  */
37799     break;
37800 
37801   case 1321:
37802 #line 9157 "gram_minimal.y" /* yacc.c:1646  */
37803     {
37804 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37805 					n->objectType = OBJECT_MATVIEW;
37806 					n->relation = (yyvsp[-5].range);
37807 					n->extname = makeString((yyvsp[0].str));
37808 					n->remove = (yyvsp[-4].boolean);
37809 					(yyval.node) = (Node *)n;
37810 				}
37811 #line 37812 "gram_minimal.c" /* yacc.c:1646  */
37812     break;
37813 
37814   case 1322:
37815 #line 9166 "gram_minimal.y" /* yacc.c:1646  */
37816     {
37817 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
37818 					n->objectType = OBJECT_INDEX;
37819 					n->relation = (yyvsp[-5].range);
37820 					n->extname = makeString((yyvsp[0].str));
37821 					n->remove = (yyvsp[-4].boolean);
37822 					(yyval.node) = (Node *)n;
37823 				}
37824 #line 37825 "gram_minimal.c" /* yacc.c:1646  */
37825     break;
37826 
37827   case 1323:
37828 #line 9176 "gram_minimal.y" /* yacc.c:1646  */
37829     { (yyval.boolean) = true; }
37830 #line 37831 "gram_minimal.c" /* yacc.c:1646  */
37831     break;
37832 
37833   case 1324:
37834 #line 9177 "gram_minimal.y" /* yacc.c:1646  */
37835     { (yyval.boolean) = false;	}
37836 #line 37837 "gram_minimal.c" /* yacc.c:1646  */
37837     break;
37838 
37839   case 1325:
37840 #line 9188 "gram_minimal.y" /* yacc.c:1646  */
37841     {
37842 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37843 					n->objectType = OBJECT_AGGREGATE;
37844 					n->object = (Node *) (yyvsp[-3].objwithargs);
37845 					n->newschema = (yyvsp[0].str);
37846 					n->missing_ok = false;
37847 					(yyval.node) = (Node *)n;
37848 				}
37849 #line 37850 "gram_minimal.c" /* yacc.c:1646  */
37850     break;
37851 
37852   case 1326:
37853 #line 9197 "gram_minimal.y" /* yacc.c:1646  */
37854     {
37855 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37856 					n->objectType = OBJECT_COLLATION;
37857 					n->object = (Node *) (yyvsp[-3].list);
37858 					n->newschema = (yyvsp[0].str);
37859 					n->missing_ok = false;
37860 					(yyval.node) = (Node *)n;
37861 				}
37862 #line 37863 "gram_minimal.c" /* yacc.c:1646  */
37863     break;
37864 
37865   case 1327:
37866 #line 9206 "gram_minimal.y" /* yacc.c:1646  */
37867     {
37868 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37869 					n->objectType = OBJECT_CONVERSION;
37870 					n->object = (Node *) (yyvsp[-3].list);
37871 					n->newschema = (yyvsp[0].str);
37872 					n->missing_ok = false;
37873 					(yyval.node) = (Node *)n;
37874 				}
37875 #line 37876 "gram_minimal.c" /* yacc.c:1646  */
37876     break;
37877 
37878   case 1328:
37879 #line 9215 "gram_minimal.y" /* yacc.c:1646  */
37880     {
37881 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37882 					n->objectType = OBJECT_DOMAIN;
37883 					n->object = (Node *) (yyvsp[-3].list);
37884 					n->newschema = (yyvsp[0].str);
37885 					n->missing_ok = false;
37886 					(yyval.node) = (Node *)n;
37887 				}
37888 #line 37889 "gram_minimal.c" /* yacc.c:1646  */
37889     break;
37890 
37891   case 1329:
37892 #line 9224 "gram_minimal.y" /* yacc.c:1646  */
37893     {
37894 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37895 					n->objectType = OBJECT_EXTENSION;
37896 					n->object = (Node *) makeString((yyvsp[-3].str));
37897 					n->newschema = (yyvsp[0].str);
37898 					n->missing_ok = false;
37899 					(yyval.node) = (Node *)n;
37900 				}
37901 #line 37902 "gram_minimal.c" /* yacc.c:1646  */
37902     break;
37903 
37904   case 1330:
37905 #line 9233 "gram_minimal.y" /* yacc.c:1646  */
37906     {
37907 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37908 					n->objectType = OBJECT_FUNCTION;
37909 					n->object = (Node *) (yyvsp[-3].objwithargs);
37910 					n->newschema = (yyvsp[0].str);
37911 					n->missing_ok = false;
37912 					(yyval.node) = (Node *)n;
37913 				}
37914 #line 37915 "gram_minimal.c" /* yacc.c:1646  */
37915     break;
37916 
37917   case 1331:
37918 #line 9242 "gram_minimal.y" /* yacc.c:1646  */
37919     {
37920 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37921 					n->objectType = OBJECT_OPERATOR;
37922 					n->object = (Node *) (yyvsp[-3].objwithargs);
37923 					n->newschema = (yyvsp[0].str);
37924 					n->missing_ok = false;
37925 					(yyval.node) = (Node *)n;
37926 				}
37927 #line 37928 "gram_minimal.c" /* yacc.c:1646  */
37928     break;
37929 
37930   case 1332:
37931 #line 9251 "gram_minimal.y" /* yacc.c:1646  */
37932     {
37933 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37934 					n->objectType = OBJECT_OPCLASS;
37935 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
37936 					n->newschema = (yyvsp[0].str);
37937 					n->missing_ok = false;
37938 					(yyval.node) = (Node *)n;
37939 				}
37940 #line 37941 "gram_minimal.c" /* yacc.c:1646  */
37941     break;
37942 
37943   case 1333:
37944 #line 9260 "gram_minimal.y" /* yacc.c:1646  */
37945     {
37946 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37947 					n->objectType = OBJECT_OPFAMILY;
37948 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
37949 					n->newschema = (yyvsp[0].str);
37950 					n->missing_ok = false;
37951 					(yyval.node) = (Node *)n;
37952 				}
37953 #line 37954 "gram_minimal.c" /* yacc.c:1646  */
37954     break;
37955 
37956   case 1334:
37957 #line 9269 "gram_minimal.y" /* yacc.c:1646  */
37958     {
37959 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37960 					n->objectType = OBJECT_PROCEDURE;
37961 					n->object = (Node *) (yyvsp[-3].objwithargs);
37962 					n->newschema = (yyvsp[0].str);
37963 					n->missing_ok = false;
37964 					(yyval.node) = (Node *)n;
37965 				}
37966 #line 37967 "gram_minimal.c" /* yacc.c:1646  */
37967     break;
37968 
37969   case 1335:
37970 #line 9278 "gram_minimal.y" /* yacc.c:1646  */
37971     {
37972 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37973 					n->objectType = OBJECT_ROUTINE;
37974 					n->object = (Node *) (yyvsp[-3].objwithargs);
37975 					n->newschema = (yyvsp[0].str);
37976 					n->missing_ok = false;
37977 					(yyval.node) = (Node *)n;
37978 				}
37979 #line 37980 "gram_minimal.c" /* yacc.c:1646  */
37980     break;
37981 
37982   case 1336:
37983 #line 9287 "gram_minimal.y" /* yacc.c:1646  */
37984     {
37985 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37986 					n->objectType = OBJECT_TABLE;
37987 					n->relation = (yyvsp[-3].range);
37988 					n->newschema = (yyvsp[0].str);
37989 					n->missing_ok = false;
37990 					(yyval.node) = (Node *)n;
37991 				}
37992 #line 37993 "gram_minimal.c" /* yacc.c:1646  */
37993     break;
37994 
37995   case 1337:
37996 #line 9296 "gram_minimal.y" /* yacc.c:1646  */
37997     {
37998 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
37999 					n->objectType = OBJECT_TABLE;
38000 					n->relation = (yyvsp[-3].range);
38001 					n->newschema = (yyvsp[0].str);
38002 					n->missing_ok = true;
38003 					(yyval.node) = (Node *)n;
38004 				}
38005 #line 38006 "gram_minimal.c" /* yacc.c:1646  */
38006     break;
38007 
38008   case 1338:
38009 #line 9305 "gram_minimal.y" /* yacc.c:1646  */
38010     {
38011 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38012 					n->objectType = OBJECT_STATISTIC_EXT;
38013 					n->object = (Node *) (yyvsp[-3].list);
38014 					n->newschema = (yyvsp[0].str);
38015 					n->missing_ok = false;
38016 					(yyval.node) = (Node *)n;
38017 				}
38018 #line 38019 "gram_minimal.c" /* yacc.c:1646  */
38019     break;
38020 
38021   case 1339:
38022 #line 9314 "gram_minimal.y" /* yacc.c:1646  */
38023     {
38024 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38025 					n->objectType = OBJECT_TSPARSER;
38026 					n->object = (Node *) (yyvsp[-3].list);
38027 					n->newschema = (yyvsp[0].str);
38028 					n->missing_ok = false;
38029 					(yyval.node) = (Node *)n;
38030 				}
38031 #line 38032 "gram_minimal.c" /* yacc.c:1646  */
38032     break;
38033 
38034   case 1340:
38035 #line 9323 "gram_minimal.y" /* yacc.c:1646  */
38036     {
38037 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38038 					n->objectType = OBJECT_TSDICTIONARY;
38039 					n->object = (Node *) (yyvsp[-3].list);
38040 					n->newschema = (yyvsp[0].str);
38041 					n->missing_ok = false;
38042 					(yyval.node) = (Node *)n;
38043 				}
38044 #line 38045 "gram_minimal.c" /* yacc.c:1646  */
38045     break;
38046 
38047   case 1341:
38048 #line 9332 "gram_minimal.y" /* yacc.c:1646  */
38049     {
38050 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38051 					n->objectType = OBJECT_TSTEMPLATE;
38052 					n->object = (Node *) (yyvsp[-3].list);
38053 					n->newschema = (yyvsp[0].str);
38054 					n->missing_ok = false;
38055 					(yyval.node) = (Node *)n;
38056 				}
38057 #line 38058 "gram_minimal.c" /* yacc.c:1646  */
38058     break;
38059 
38060   case 1342:
38061 #line 9341 "gram_minimal.y" /* yacc.c:1646  */
38062     {
38063 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38064 					n->objectType = OBJECT_TSCONFIGURATION;
38065 					n->object = (Node *) (yyvsp[-3].list);
38066 					n->newschema = (yyvsp[0].str);
38067 					n->missing_ok = false;
38068 					(yyval.node) = (Node *)n;
38069 				}
38070 #line 38071 "gram_minimal.c" /* yacc.c:1646  */
38071     break;
38072 
38073   case 1343:
38074 #line 9350 "gram_minimal.y" /* yacc.c:1646  */
38075     {
38076 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38077 					n->objectType = OBJECT_SEQUENCE;
38078 					n->relation = (yyvsp[-3].range);
38079 					n->newschema = (yyvsp[0].str);
38080 					n->missing_ok = false;
38081 					(yyval.node) = (Node *)n;
38082 				}
38083 #line 38084 "gram_minimal.c" /* yacc.c:1646  */
38084     break;
38085 
38086   case 1344:
38087 #line 9359 "gram_minimal.y" /* yacc.c:1646  */
38088     {
38089 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38090 					n->objectType = OBJECT_SEQUENCE;
38091 					n->relation = (yyvsp[-3].range);
38092 					n->newschema = (yyvsp[0].str);
38093 					n->missing_ok = true;
38094 					(yyval.node) = (Node *)n;
38095 				}
38096 #line 38097 "gram_minimal.c" /* yacc.c:1646  */
38097     break;
38098 
38099   case 1345:
38100 #line 9368 "gram_minimal.y" /* yacc.c:1646  */
38101     {
38102 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38103 					n->objectType = OBJECT_VIEW;
38104 					n->relation = (yyvsp[-3].range);
38105 					n->newschema = (yyvsp[0].str);
38106 					n->missing_ok = false;
38107 					(yyval.node) = (Node *)n;
38108 				}
38109 #line 38110 "gram_minimal.c" /* yacc.c:1646  */
38110     break;
38111 
38112   case 1346:
38113 #line 9377 "gram_minimal.y" /* yacc.c:1646  */
38114     {
38115 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38116 					n->objectType = OBJECT_VIEW;
38117 					n->relation = (yyvsp[-3].range);
38118 					n->newschema = (yyvsp[0].str);
38119 					n->missing_ok = true;
38120 					(yyval.node) = (Node *)n;
38121 				}
38122 #line 38123 "gram_minimal.c" /* yacc.c:1646  */
38123     break;
38124 
38125   case 1347:
38126 #line 9386 "gram_minimal.y" /* yacc.c:1646  */
38127     {
38128 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38129 					n->objectType = OBJECT_MATVIEW;
38130 					n->relation = (yyvsp[-3].range);
38131 					n->newschema = (yyvsp[0].str);
38132 					n->missing_ok = false;
38133 					(yyval.node) = (Node *)n;
38134 				}
38135 #line 38136 "gram_minimal.c" /* yacc.c:1646  */
38136     break;
38137 
38138   case 1348:
38139 #line 9395 "gram_minimal.y" /* yacc.c:1646  */
38140     {
38141 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38142 					n->objectType = OBJECT_MATVIEW;
38143 					n->relation = (yyvsp[-3].range);
38144 					n->newschema = (yyvsp[0].str);
38145 					n->missing_ok = true;
38146 					(yyval.node) = (Node *)n;
38147 				}
38148 #line 38149 "gram_minimal.c" /* yacc.c:1646  */
38149     break;
38150 
38151   case 1349:
38152 #line 9404 "gram_minimal.y" /* yacc.c:1646  */
38153     {
38154 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38155 					n->objectType = OBJECT_FOREIGN_TABLE;
38156 					n->relation = (yyvsp[-3].range);
38157 					n->newschema = (yyvsp[0].str);
38158 					n->missing_ok = false;
38159 					(yyval.node) = (Node *)n;
38160 				}
38161 #line 38162 "gram_minimal.c" /* yacc.c:1646  */
38162     break;
38163 
38164   case 1350:
38165 #line 9413 "gram_minimal.y" /* yacc.c:1646  */
38166     {
38167 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38168 					n->objectType = OBJECT_FOREIGN_TABLE;
38169 					n->relation = (yyvsp[-3].range);
38170 					n->newschema = (yyvsp[0].str);
38171 					n->missing_ok = true;
38172 					(yyval.node) = (Node *)n;
38173 				}
38174 #line 38175 "gram_minimal.c" /* yacc.c:1646  */
38175     break;
38176 
38177   case 1351:
38178 #line 9422 "gram_minimal.y" /* yacc.c:1646  */
38179     {
38180 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
38181 					n->objectType = OBJECT_TYPE;
38182 					n->object = (Node *) (yyvsp[-3].list);
38183 					n->newschema = (yyvsp[0].str);
38184 					n->missing_ok = false;
38185 					(yyval.node) = (Node *)n;
38186 				}
38187 #line 38188 "gram_minimal.c" /* yacc.c:1646  */
38188     break;
38189 
38190   case 1352:
38191 #line 9440 "gram_minimal.y" /* yacc.c:1646  */
38192     {
38193 					AlterOperatorStmt *n = makeNode(AlterOperatorStmt);
38194 					n->opername = (yyvsp[-4].objwithargs);
38195 					n->options = (yyvsp[-1].list);
38196 					(yyval.node) = (Node *)n;
38197 				}
38198 #line 38199 "gram_minimal.c" /* yacc.c:1646  */
38199     break;
38200 
38201   case 1353:
38202 #line 9448 "gram_minimal.y" /* yacc.c:1646  */
38203     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
38204 #line 38205 "gram_minimal.c" /* yacc.c:1646  */
38205     break;
38206 
38207   case 1354:
38208 #line 9449 "gram_minimal.y" /* yacc.c:1646  */
38209     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
38210 #line 38211 "gram_minimal.c" /* yacc.c:1646  */
38211     break;
38212 
38213   case 1355:
38214 #line 9453 "gram_minimal.y" /* yacc.c:1646  */
38215     { (yyval.defelt) = makeDefElem((yyvsp[-2].str), NULL, (yylsp[-2])); }
38216 #line 38217 "gram_minimal.c" /* yacc.c:1646  */
38217     break;
38218 
38219   case 1356:
38220 #line 9455 "gram_minimal.y" /* yacc.c:1646  */
38221     { (yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *) (yyvsp[0].node), (yylsp[-2])); }
38222 #line 38223 "gram_minimal.c" /* yacc.c:1646  */
38223     break;
38224 
38225   case 1357:
38226 #line 9460 "gram_minimal.y" /* yacc.c:1646  */
38227     { (yyval.node) = (Node *)(yyvsp[0].typnam); }
38228 #line 38229 "gram_minimal.c" /* yacc.c:1646  */
38229     break;
38230 
38231   case 1358:
38232 #line 9461 "gram_minimal.y" /* yacc.c:1646  */
38233     { (yyval.node) = (Node *)makeString(pstrdup((yyvsp[0].keyword))); }
38234 #line 38235 "gram_minimal.c" /* yacc.c:1646  */
38235     break;
38236 
38237   case 1359:
38238 #line 9462 "gram_minimal.y" /* yacc.c:1646  */
38239     { (yyval.node) = (Node *)(yyvsp[0].list); }
38240 #line 38241 "gram_minimal.c" /* yacc.c:1646  */
38241     break;
38242 
38243   case 1360:
38244 #line 9463 "gram_minimal.y" /* yacc.c:1646  */
38245     { (yyval.node) = (Node *)(yyvsp[0].value); }
38246 #line 38247 "gram_minimal.c" /* yacc.c:1646  */
38247     break;
38248 
38249   case 1361:
38250 #line 9464 "gram_minimal.y" /* yacc.c:1646  */
38251     { (yyval.node) = (Node *)makeString((yyvsp[0].str)); }
38252 #line 38253 "gram_minimal.c" /* yacc.c:1646  */
38253     break;
38254 
38255   case 1362:
38256 #line 9477 "gram_minimal.y" /* yacc.c:1646  */
38257     {
38258 					AlterTypeStmt *n = makeNode(AlterTypeStmt);
38259 					n->typeName = (yyvsp[-4].list);
38260 					n->options = (yyvsp[-1].list);
38261 					(yyval.node) = (Node *)n;
38262 				}
38263 #line 38264 "gram_minimal.c" /* yacc.c:1646  */
38264     break;
38265 
38266   case 1363:
38267 #line 9492 "gram_minimal.y" /* yacc.c:1646  */
38268     {
38269 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38270 					n->objectType = OBJECT_AGGREGATE;
38271 					n->object = (Node *) (yyvsp[-3].objwithargs);
38272 					n->newowner = (yyvsp[0].rolespec);
38273 					(yyval.node) = (Node *)n;
38274 				}
38275 #line 38276 "gram_minimal.c" /* yacc.c:1646  */
38276     break;
38277 
38278   case 1364:
38279 #line 9500 "gram_minimal.y" /* yacc.c:1646  */
38280     {
38281 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38282 					n->objectType = OBJECT_COLLATION;
38283 					n->object = (Node *) (yyvsp[-3].list);
38284 					n->newowner = (yyvsp[0].rolespec);
38285 					(yyval.node) = (Node *)n;
38286 				}
38287 #line 38288 "gram_minimal.c" /* yacc.c:1646  */
38288     break;
38289 
38290   case 1365:
38291 #line 9508 "gram_minimal.y" /* yacc.c:1646  */
38292     {
38293 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38294 					n->objectType = OBJECT_CONVERSION;
38295 					n->object = (Node *) (yyvsp[-3].list);
38296 					n->newowner = (yyvsp[0].rolespec);
38297 					(yyval.node) = (Node *)n;
38298 				}
38299 #line 38300 "gram_minimal.c" /* yacc.c:1646  */
38300     break;
38301 
38302   case 1366:
38303 #line 9516 "gram_minimal.y" /* yacc.c:1646  */
38304     {
38305 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38306 					n->objectType = OBJECT_DATABASE;
38307 					n->object = (Node *) makeString((yyvsp[-3].str));
38308 					n->newowner = (yyvsp[0].rolespec);
38309 					(yyval.node) = (Node *)n;
38310 				}
38311 #line 38312 "gram_minimal.c" /* yacc.c:1646  */
38312     break;
38313 
38314   case 1367:
38315 #line 9524 "gram_minimal.y" /* yacc.c:1646  */
38316     {
38317 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38318 					n->objectType = OBJECT_DOMAIN;
38319 					n->object = (Node *) (yyvsp[-3].list);
38320 					n->newowner = (yyvsp[0].rolespec);
38321 					(yyval.node) = (Node *)n;
38322 				}
38323 #line 38324 "gram_minimal.c" /* yacc.c:1646  */
38324     break;
38325 
38326   case 1368:
38327 #line 9532 "gram_minimal.y" /* yacc.c:1646  */
38328     {
38329 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38330 					n->objectType = OBJECT_FUNCTION;
38331 					n->object = (Node *) (yyvsp[-3].objwithargs);
38332 					n->newowner = (yyvsp[0].rolespec);
38333 					(yyval.node) = (Node *)n;
38334 				}
38335 #line 38336 "gram_minimal.c" /* yacc.c:1646  */
38336     break;
38337 
38338   case 1369:
38339 #line 9540 "gram_minimal.y" /* yacc.c:1646  */
38340     {
38341 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38342 					n->objectType = OBJECT_LANGUAGE;
38343 					n->object = (Node *) makeString((yyvsp[-3].str));
38344 					n->newowner = (yyvsp[0].rolespec);
38345 					(yyval.node) = (Node *)n;
38346 				}
38347 #line 38348 "gram_minimal.c" /* yacc.c:1646  */
38348     break;
38349 
38350   case 1370:
38351 #line 9548 "gram_minimal.y" /* yacc.c:1646  */
38352     {
38353 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38354 					n->objectType = OBJECT_LARGEOBJECT;
38355 					n->object = (Node *) (yyvsp[-3].value);
38356 					n->newowner = (yyvsp[0].rolespec);
38357 					(yyval.node) = (Node *)n;
38358 				}
38359 #line 38360 "gram_minimal.c" /* yacc.c:1646  */
38360     break;
38361 
38362   case 1371:
38363 #line 9556 "gram_minimal.y" /* yacc.c:1646  */
38364     {
38365 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38366 					n->objectType = OBJECT_OPERATOR;
38367 					n->object = (Node *) (yyvsp[-3].objwithargs);
38368 					n->newowner = (yyvsp[0].rolespec);
38369 					(yyval.node) = (Node *)n;
38370 				}
38371 #line 38372 "gram_minimal.c" /* yacc.c:1646  */
38372     break;
38373 
38374   case 1372:
38375 #line 9564 "gram_minimal.y" /* yacc.c:1646  */
38376     {
38377 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38378 					n->objectType = OBJECT_OPCLASS;
38379 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
38380 					n->newowner = (yyvsp[0].rolespec);
38381 					(yyval.node) = (Node *)n;
38382 				}
38383 #line 38384 "gram_minimal.c" /* yacc.c:1646  */
38384     break;
38385 
38386   case 1373:
38387 #line 9572 "gram_minimal.y" /* yacc.c:1646  */
38388     {
38389 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38390 					n->objectType = OBJECT_OPFAMILY;
38391 					n->object = (Node *) lcons(makeString((yyvsp[-3].str)), (yyvsp[-5].list));
38392 					n->newowner = (yyvsp[0].rolespec);
38393 					(yyval.node) = (Node *)n;
38394 				}
38395 #line 38396 "gram_minimal.c" /* yacc.c:1646  */
38396     break;
38397 
38398   case 1374:
38399 #line 9580 "gram_minimal.y" /* yacc.c:1646  */
38400     {
38401 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38402 					n->objectType = OBJECT_PROCEDURE;
38403 					n->object = (Node *) (yyvsp[-3].objwithargs);
38404 					n->newowner = (yyvsp[0].rolespec);
38405 					(yyval.node) = (Node *)n;
38406 				}
38407 #line 38408 "gram_minimal.c" /* yacc.c:1646  */
38408     break;
38409 
38410   case 1375:
38411 #line 9588 "gram_minimal.y" /* yacc.c:1646  */
38412     {
38413 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38414 					n->objectType = OBJECT_ROUTINE;
38415 					n->object = (Node *) (yyvsp[-3].objwithargs);
38416 					n->newowner = (yyvsp[0].rolespec);
38417 					(yyval.node) = (Node *)n;
38418 				}
38419 #line 38420 "gram_minimal.c" /* yacc.c:1646  */
38420     break;
38421 
38422   case 1376:
38423 #line 9596 "gram_minimal.y" /* yacc.c:1646  */
38424     {
38425 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38426 					n->objectType = OBJECT_SCHEMA;
38427 					n->object = (Node *) makeString((yyvsp[-3].str));
38428 					n->newowner = (yyvsp[0].rolespec);
38429 					(yyval.node) = (Node *)n;
38430 				}
38431 #line 38432 "gram_minimal.c" /* yacc.c:1646  */
38432     break;
38433 
38434   case 1377:
38435 #line 9604 "gram_minimal.y" /* yacc.c:1646  */
38436     {
38437 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38438 					n->objectType = OBJECT_TYPE;
38439 					n->object = (Node *) (yyvsp[-3].list);
38440 					n->newowner = (yyvsp[0].rolespec);
38441 					(yyval.node) = (Node *)n;
38442 				}
38443 #line 38444 "gram_minimal.c" /* yacc.c:1646  */
38444     break;
38445 
38446   case 1378:
38447 #line 9612 "gram_minimal.y" /* yacc.c:1646  */
38448     {
38449 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38450 					n->objectType = OBJECT_TABLESPACE;
38451 					n->object = (Node *) makeString((yyvsp[-3].str));
38452 					n->newowner = (yyvsp[0].rolespec);
38453 					(yyval.node) = (Node *)n;
38454 				}
38455 #line 38456 "gram_minimal.c" /* yacc.c:1646  */
38456     break;
38457 
38458   case 1379:
38459 #line 9620 "gram_minimal.y" /* yacc.c:1646  */
38460     {
38461 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38462 					n->objectType = OBJECT_STATISTIC_EXT;
38463 					n->object = (Node *) (yyvsp[-3].list);
38464 					n->newowner = (yyvsp[0].rolespec);
38465 					(yyval.node) = (Node *)n;
38466 				}
38467 #line 38468 "gram_minimal.c" /* yacc.c:1646  */
38468     break;
38469 
38470   case 1380:
38471 #line 9628 "gram_minimal.y" /* yacc.c:1646  */
38472     {
38473 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38474 					n->objectType = OBJECT_TSDICTIONARY;
38475 					n->object = (Node *) (yyvsp[-3].list);
38476 					n->newowner = (yyvsp[0].rolespec);
38477 					(yyval.node) = (Node *)n;
38478 				}
38479 #line 38480 "gram_minimal.c" /* yacc.c:1646  */
38480     break;
38481 
38482   case 1381:
38483 #line 9636 "gram_minimal.y" /* yacc.c:1646  */
38484     {
38485 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38486 					n->objectType = OBJECT_TSCONFIGURATION;
38487 					n->object = (Node *) (yyvsp[-3].list);
38488 					n->newowner = (yyvsp[0].rolespec);
38489 					(yyval.node) = (Node *)n;
38490 				}
38491 #line 38492 "gram_minimal.c" /* yacc.c:1646  */
38492     break;
38493 
38494   case 1382:
38495 #line 9644 "gram_minimal.y" /* yacc.c:1646  */
38496     {
38497 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38498 					n->objectType = OBJECT_FDW;
38499 					n->object = (Node *) makeString((yyvsp[-3].str));
38500 					n->newowner = (yyvsp[0].rolespec);
38501 					(yyval.node) = (Node *)n;
38502 				}
38503 #line 38504 "gram_minimal.c" /* yacc.c:1646  */
38504     break;
38505 
38506   case 1383:
38507 #line 9652 "gram_minimal.y" /* yacc.c:1646  */
38508     {
38509 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38510 					n->objectType = OBJECT_FOREIGN_SERVER;
38511 					n->object = (Node *) makeString((yyvsp[-3].str));
38512 					n->newowner = (yyvsp[0].rolespec);
38513 					(yyval.node) = (Node *)n;
38514 				}
38515 #line 38516 "gram_minimal.c" /* yacc.c:1646  */
38516     break;
38517 
38518   case 1384:
38519 #line 9660 "gram_minimal.y" /* yacc.c:1646  */
38520     {
38521 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38522 					n->objectType = OBJECT_EVENT_TRIGGER;
38523 					n->object = (Node *) makeString((yyvsp[-3].str));
38524 					n->newowner = (yyvsp[0].rolespec);
38525 					(yyval.node) = (Node *)n;
38526 				}
38527 #line 38528 "gram_minimal.c" /* yacc.c:1646  */
38528     break;
38529 
38530   case 1385:
38531 #line 9668 "gram_minimal.y" /* yacc.c:1646  */
38532     {
38533 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38534 					n->objectType = OBJECT_PUBLICATION;
38535 					n->object = (Node *) makeString((yyvsp[-3].str));
38536 					n->newowner = (yyvsp[0].rolespec);
38537 					(yyval.node) = (Node *)n;
38538 				}
38539 #line 38540 "gram_minimal.c" /* yacc.c:1646  */
38540     break;
38541 
38542   case 1386:
38543 #line 9676 "gram_minimal.y" /* yacc.c:1646  */
38544     {
38545 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
38546 					n->objectType = OBJECT_SUBSCRIPTION;
38547 					n->object = (Node *) makeString((yyvsp[-3].str));
38548 					n->newowner = (yyvsp[0].rolespec);
38549 					(yyval.node) = (Node *)n;
38550 				}
38551 #line 38552 "gram_minimal.c" /* yacc.c:1646  */
38552     break;
38553 
38554   case 1387:
38555 #line 9694 "gram_minimal.y" /* yacc.c:1646  */
38556     {
38557 					CreatePublicationStmt *n = makeNode(CreatePublicationStmt);
38558 					n->pubname = (yyvsp[-2].str);
38559 					n->options = (yyvsp[0].list);
38560 					if ((yyvsp[-1].node) != NULL)
38561 					{
38562 						/* FOR TABLE */
38563 						if (IsA((yyvsp[-1].node), List))
38564 							n->tables = (List *)(yyvsp[-1].node);
38565 						/* FOR ALL TABLES */
38566 						else
38567 							n->for_all_tables = true;
38568 					}
38569 					(yyval.node) = (Node *)n;
38570 				}
38571 #line 38572 "gram_minimal.c" /* yacc.c:1646  */
38572     break;
38573 
38574   case 1388:
38575 #line 9712 "gram_minimal.y" /* yacc.c:1646  */
38576     { (yyval.node) = (yyvsp[0].node); }
38577 #line 38578 "gram_minimal.c" /* yacc.c:1646  */
38578     break;
38579 
38580   case 1389:
38581 #line 9713 "gram_minimal.y" /* yacc.c:1646  */
38582     { (yyval.node) = NULL; }
38583 #line 38584 "gram_minimal.c" /* yacc.c:1646  */
38584     break;
38585 
38586   case 1390:
38587 #line 9718 "gram_minimal.y" /* yacc.c:1646  */
38588     {
38589 					(yyval.node) = (Node *) (yyvsp[0].list);
38590 				}
38591 #line 38592 "gram_minimal.c" /* yacc.c:1646  */
38592     break;
38593 
38594   case 1391:
38595 #line 9722 "gram_minimal.y" /* yacc.c:1646  */
38596     {
38597 					(yyval.node) = (Node *) makeInteger(true);
38598 				}
38599 #line 38600 "gram_minimal.c" /* yacc.c:1646  */
38600     break;
38601 
38602   case 1392:
38603 #line 9742 "gram_minimal.y" /* yacc.c:1646  */
38604     {
38605 					AlterPublicationStmt *n = makeNode(AlterPublicationStmt);
38606 					n->pubname = (yyvsp[-2].str);
38607 					n->options = (yyvsp[0].list);
38608 					(yyval.node) = (Node *)n;
38609 				}
38610 #line 38611 "gram_minimal.c" /* yacc.c:1646  */
38611     break;
38612 
38613   case 1393:
38614 #line 9749 "gram_minimal.y" /* yacc.c:1646  */
38615     {
38616 					AlterPublicationStmt *n = makeNode(AlterPublicationStmt);
38617 					n->pubname = (yyvsp[-3].str);
38618 					n->tables = (yyvsp[0].list);
38619 					n->tableAction = DEFELEM_ADD;
38620 					(yyval.node) = (Node *)n;
38621 				}
38622 #line 38623 "gram_minimal.c" /* yacc.c:1646  */
38623     break;
38624 
38625   case 1394:
38626 #line 9757 "gram_minimal.y" /* yacc.c:1646  */
38627     {
38628 					AlterPublicationStmt *n = makeNode(AlterPublicationStmt);
38629 					n->pubname = (yyvsp[-3].str);
38630 					n->tables = (yyvsp[0].list);
38631 					n->tableAction = DEFELEM_SET;
38632 					(yyval.node) = (Node *)n;
38633 				}
38634 #line 38635 "gram_minimal.c" /* yacc.c:1646  */
38635     break;
38636 
38637   case 1395:
38638 #line 9765 "gram_minimal.y" /* yacc.c:1646  */
38639     {
38640 					AlterPublicationStmt *n = makeNode(AlterPublicationStmt);
38641 					n->pubname = (yyvsp[-3].str);
38642 					n->tables = (yyvsp[0].list);
38643 					n->tableAction = DEFELEM_DROP;
38644 					(yyval.node) = (Node *)n;
38645 				}
38646 #line 38647 "gram_minimal.c" /* yacc.c:1646  */
38647     break;
38648 
38649   case 1396:
38650 #line 9782 "gram_minimal.y" /* yacc.c:1646  */
38651     {
38652 					CreateSubscriptionStmt *n =
38653 						makeNode(CreateSubscriptionStmt);
38654 					n->subname = (yyvsp[-5].str);
38655 					n->conninfo = (yyvsp[-3].str);
38656 					n->publication = (yyvsp[-1].list);
38657 					n->options = (yyvsp[0].list);
38658 					(yyval.node) = (Node *)n;
38659 				}
38660 #line 38661 "gram_minimal.c" /* yacc.c:1646  */
38661     break;
38662 
38663   case 1397:
38664 #line 9795 "gram_minimal.y" /* yacc.c:1646  */
38665     {
38666 					(yyval.list) = list_make1((yyvsp[0].value));
38667 				}
38668 #line 38669 "gram_minimal.c" /* yacc.c:1646  */
38669     break;
38670 
38671   case 1398:
38672 #line 9799 "gram_minimal.y" /* yacc.c:1646  */
38673     {
38674 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].value));
38675 				}
38676 #line 38677 "gram_minimal.c" /* yacc.c:1646  */
38677     break;
38678 
38679   case 1399:
38680 #line 9805 "gram_minimal.y" /* yacc.c:1646  */
38681     { (yyval.value) = makeString((yyvsp[0].str)); }
38682 #line 38683 "gram_minimal.c" /* yacc.c:1646  */
38683     break;
38684 
38685   case 1400:
38686 #line 9815 "gram_minimal.y" /* yacc.c:1646  */
38687     {
38688 					AlterSubscriptionStmt *n =
38689 						makeNode(AlterSubscriptionStmt);
38690 					n->kind = ALTER_SUBSCRIPTION_OPTIONS;
38691 					n->subname = (yyvsp[-2].str);
38692 					n->options = (yyvsp[0].list);
38693 					(yyval.node) = (Node *)n;
38694 				}
38695 #line 38696 "gram_minimal.c" /* yacc.c:1646  */
38696     break;
38697 
38698   case 1401:
38699 #line 9824 "gram_minimal.y" /* yacc.c:1646  */
38700     {
38701 					AlterSubscriptionStmt *n =
38702 						makeNode(AlterSubscriptionStmt);
38703 					n->kind = ALTER_SUBSCRIPTION_CONNECTION;
38704 					n->subname = (yyvsp[-2].str);
38705 					n->conninfo = (yyvsp[0].str);
38706 					(yyval.node) = (Node *)n;
38707 				}
38708 #line 38709 "gram_minimal.c" /* yacc.c:1646  */
38709     break;
38710 
38711   case 1402:
38712 #line 9833 "gram_minimal.y" /* yacc.c:1646  */
38713     {
38714 					AlterSubscriptionStmt *n =
38715 						makeNode(AlterSubscriptionStmt);
38716 					n->kind = ALTER_SUBSCRIPTION_REFRESH;
38717 					n->subname = (yyvsp[-3].str);
38718 					n->options = (yyvsp[0].list);
38719 					(yyval.node) = (Node *)n;
38720 				}
38721 #line 38722 "gram_minimal.c" /* yacc.c:1646  */
38722     break;
38723 
38724   case 1403:
38725 #line 9842 "gram_minimal.y" /* yacc.c:1646  */
38726     {
38727 					AlterSubscriptionStmt *n =
38728 						makeNode(AlterSubscriptionStmt);
38729 					n->kind = ALTER_SUBSCRIPTION_PUBLICATION;
38730 					n->subname = (yyvsp[-4].str);
38731 					n->publication = (yyvsp[-1].list);
38732 					n->options = (yyvsp[0].list);
38733 					(yyval.node) = (Node *)n;
38734 				}
38735 #line 38736 "gram_minimal.c" /* yacc.c:1646  */
38736     break;
38737 
38738   case 1404:
38739 #line 9852 "gram_minimal.y" /* yacc.c:1646  */
38740     {
38741 					AlterSubscriptionStmt *n =
38742 						makeNode(AlterSubscriptionStmt);
38743 					n->kind = ALTER_SUBSCRIPTION_ENABLED;
38744 					n->subname = (yyvsp[-1].str);
38745 					n->options = list_make1(makeDefElem("enabled",
38746 											(Node *)makeInteger(true), (yylsp[-3])));
38747 					(yyval.node) = (Node *)n;
38748 				}
38749 #line 38750 "gram_minimal.c" /* yacc.c:1646  */
38750     break;
38751 
38752   case 1405:
38753 #line 9862 "gram_minimal.y" /* yacc.c:1646  */
38754     {
38755 					AlterSubscriptionStmt *n =
38756 						makeNode(AlterSubscriptionStmt);
38757 					n->kind = ALTER_SUBSCRIPTION_ENABLED;
38758 					n->subname = (yyvsp[-1].str);
38759 					n->options = list_make1(makeDefElem("enabled",
38760 											(Node *)makeInteger(false), (yylsp[-3])));
38761 					(yyval.node) = (Node *)n;
38762 				}
38763 #line 38764 "gram_minimal.c" /* yacc.c:1646  */
38764     break;
38765 
38766   case 1406:
38767 #line 9880 "gram_minimal.y" /* yacc.c:1646  */
38768     {
38769 					DropSubscriptionStmt *n = makeNode(DropSubscriptionStmt);
38770 					n->subname = (yyvsp[-1].str);
38771 					n->missing_ok = false;
38772 					n->behavior = (yyvsp[0].dbehavior);
38773 					(yyval.node) = (Node *) n;
38774 				}
38775 #line 38776 "gram_minimal.c" /* yacc.c:1646  */
38776     break;
38777 
38778   case 1407:
38779 #line 9888 "gram_minimal.y" /* yacc.c:1646  */
38780     {
38781 					DropSubscriptionStmt *n = makeNode(DropSubscriptionStmt);
38782 					n->subname = (yyvsp[-1].str);
38783 					n->missing_ok = true;
38784 					n->behavior = (yyvsp[0].dbehavior);
38785 					(yyval.node) = (Node *) n;
38786 				}
38787 #line 38788 "gram_minimal.c" /* yacc.c:1646  */
38788     break;
38789 
38790   case 1408:
38791 #line 9906 "gram_minimal.y" /* yacc.c:1646  */
38792     {
38793 					RuleStmt *n = makeNode(RuleStmt);
38794 					n->replace = (yyvsp[-11].boolean);
38795 					n->relation = (yyvsp[-4].range);
38796 					n->rulename = (yyvsp[-9].str);
38797 					n->whereClause = (yyvsp[-3].node);
38798 					n->event = (yyvsp[-6].ival);
38799 					n->instead = (yyvsp[-1].boolean);
38800 					n->actions = (yyvsp[0].list);
38801 					(yyval.node) = (Node *)n;
38802 				}
38803 #line 38804 "gram_minimal.c" /* yacc.c:1646  */
38804     break;
38805 
38806   case 1409:
38807 #line 9920 "gram_minimal.y" /* yacc.c:1646  */
38808     { (yyval.list) = NIL; }
38809 #line 38810 "gram_minimal.c" /* yacc.c:1646  */
38810     break;
38811 
38812   case 1410:
38813 #line 9921 "gram_minimal.y" /* yacc.c:1646  */
38814     { (yyval.list) = list_make1((yyvsp[0].node)); }
38815 #line 38816 "gram_minimal.c" /* yacc.c:1646  */
38816     break;
38817 
38818   case 1411:
38819 #line 9922 "gram_minimal.y" /* yacc.c:1646  */
38820     { (yyval.list) = (yyvsp[-1].list); }
38821 #line 38822 "gram_minimal.c" /* yacc.c:1646  */
38822     break;
38823 
38824   case 1412:
38825 #line 9928 "gram_minimal.y" /* yacc.c:1646  */
38826     { if ((yyvsp[0].node) != NULL)
38827 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
38828 				  else
38829 					(yyval.list) = (yyvsp[-2].list);
38830 				}
38831 #line 38832 "gram_minimal.c" /* yacc.c:1646  */
38832     break;
38833 
38834   case 1413:
38835 #line 9934 "gram_minimal.y" /* yacc.c:1646  */
38836     { if ((yyvsp[0].node) != NULL)
38837 					(yyval.list) = list_make1((yyvsp[0].node));
38838 				  else
38839 					(yyval.list) = NIL;
38840 				}
38841 #line 38842 "gram_minimal.c" /* yacc.c:1646  */
38842     break;
38843 
38844   case 1419:
38845 #line 9950 "gram_minimal.y" /* yacc.c:1646  */
38846     { (yyval.node) = (yyvsp[0].node); }
38847 #line 38848 "gram_minimal.c" /* yacc.c:1646  */
38848     break;
38849 
38850   case 1420:
38851 #line 9951 "gram_minimal.y" /* yacc.c:1646  */
38852     { (yyval.node) = NULL; }
38853 #line 38854 "gram_minimal.c" /* yacc.c:1646  */
38854     break;
38855 
38856   case 1421:
38857 #line 9954 "gram_minimal.y" /* yacc.c:1646  */
38858     { (yyval.ival) = CMD_SELECT; }
38859 #line 38860 "gram_minimal.c" /* yacc.c:1646  */
38860     break;
38861 
38862   case 1422:
38863 #line 9955 "gram_minimal.y" /* yacc.c:1646  */
38864     { (yyval.ival) = CMD_UPDATE; }
38865 #line 38866 "gram_minimal.c" /* yacc.c:1646  */
38866     break;
38867 
38868   case 1423:
38869 #line 9956 "gram_minimal.y" /* yacc.c:1646  */
38870     { (yyval.ival) = CMD_DELETE; }
38871 #line 38872 "gram_minimal.c" /* yacc.c:1646  */
38872     break;
38873 
38874   case 1424:
38875 #line 9957 "gram_minimal.y" /* yacc.c:1646  */
38876     { (yyval.ival) = CMD_INSERT; }
38877 #line 38878 "gram_minimal.c" /* yacc.c:1646  */
38878     break;
38879 
38880   case 1425:
38881 #line 9961 "gram_minimal.y" /* yacc.c:1646  */
38882     { (yyval.boolean) = true; }
38883 #line 38884 "gram_minimal.c" /* yacc.c:1646  */
38884     break;
38885 
38886   case 1426:
38887 #line 9962 "gram_minimal.y" /* yacc.c:1646  */
38888     { (yyval.boolean) = false; }
38889 #line 38890 "gram_minimal.c" /* yacc.c:1646  */
38890     break;
38891 
38892   case 1427:
38893 #line 9963 "gram_minimal.y" /* yacc.c:1646  */
38894     { (yyval.boolean) = false; }
38895 #line 38896 "gram_minimal.c" /* yacc.c:1646  */
38896     break;
38897 
38898   case 1428:
38899 #line 9976 "gram_minimal.y" /* yacc.c:1646  */
38900     {
38901 					NotifyStmt *n = makeNode(NotifyStmt);
38902 					n->conditionname = (yyvsp[-1].str);
38903 					n->payload = (yyvsp[0].str);
38904 					(yyval.node) = (Node *)n;
38905 				}
38906 #line 38907 "gram_minimal.c" /* yacc.c:1646  */
38907     break;
38908 
38909   case 1429:
38910 #line 9985 "gram_minimal.y" /* yacc.c:1646  */
38911     { (yyval.str) = (yyvsp[0].str); }
38912 #line 38913 "gram_minimal.c" /* yacc.c:1646  */
38913     break;
38914 
38915   case 1430:
38916 #line 9986 "gram_minimal.y" /* yacc.c:1646  */
38917     { (yyval.str) = NULL; }
38918 #line 38919 "gram_minimal.c" /* yacc.c:1646  */
38919     break;
38920 
38921   case 1431:
38922 #line 9990 "gram_minimal.y" /* yacc.c:1646  */
38923     {
38924 					ListenStmt *n = makeNode(ListenStmt);
38925 					n->conditionname = (yyvsp[0].str);
38926 					(yyval.node) = (Node *)n;
38927 				}
38928 #line 38929 "gram_minimal.c" /* yacc.c:1646  */
38929     break;
38930 
38931   case 1432:
38932 #line 9999 "gram_minimal.y" /* yacc.c:1646  */
38933     {
38934 					UnlistenStmt *n = makeNode(UnlistenStmt);
38935 					n->conditionname = (yyvsp[0].str);
38936 					(yyval.node) = (Node *)n;
38937 				}
38938 #line 38939 "gram_minimal.c" /* yacc.c:1646  */
38939     break;
38940 
38941   case 1433:
38942 #line 10005 "gram_minimal.y" /* yacc.c:1646  */
38943     {
38944 					UnlistenStmt *n = makeNode(UnlistenStmt);
38945 					n->conditionname = NULL;
38946 					(yyval.node) = (Node *)n;
38947 				}
38948 #line 38949 "gram_minimal.c" /* yacc.c:1646  */
38949     break;
38950 
38951   case 1434:
38952 #line 10024 "gram_minimal.y" /* yacc.c:1646  */
38953     {
38954 					TransactionStmt *n = makeNode(TransactionStmt);
38955 					n->kind = TRANS_STMT_ROLLBACK;
38956 					n->options = NIL;
38957 					n->chain = (yyvsp[0].boolean);
38958 					(yyval.node) = (Node *)n;
38959 				}
38960 #line 38961 "gram_minimal.c" /* yacc.c:1646  */
38961     break;
38962 
38963   case 1435:
38964 #line 10032 "gram_minimal.y" /* yacc.c:1646  */
38965     {
38966 					TransactionStmt *n = makeNode(TransactionStmt);
38967 					n->kind = TRANS_STMT_BEGIN;
38968 					n->options = (yyvsp[0].list);
38969 					(yyval.node) = (Node *)n;
38970 				}
38971 #line 38972 "gram_minimal.c" /* yacc.c:1646  */
38972     break;
38973 
38974   case 1436:
38975 #line 10039 "gram_minimal.y" /* yacc.c:1646  */
38976     {
38977 					TransactionStmt *n = makeNode(TransactionStmt);
38978 					n->kind = TRANS_STMT_START;
38979 					n->options = (yyvsp[0].list);
38980 					(yyval.node) = (Node *)n;
38981 				}
38982 #line 38983 "gram_minimal.c" /* yacc.c:1646  */
38983     break;
38984 
38985   case 1437:
38986 #line 10046 "gram_minimal.y" /* yacc.c:1646  */
38987     {
38988 					TransactionStmt *n = makeNode(TransactionStmt);
38989 					n->kind = TRANS_STMT_COMMIT;
38990 					n->options = NIL;
38991 					n->chain = (yyvsp[0].boolean);
38992 					(yyval.node) = (Node *)n;
38993 				}
38994 #line 38995 "gram_minimal.c" /* yacc.c:1646  */
38995     break;
38996 
38997   case 1438:
38998 #line 10054 "gram_minimal.y" /* yacc.c:1646  */
38999     {
39000 					TransactionStmt *n = makeNode(TransactionStmt);
39001 					n->kind = TRANS_STMT_COMMIT;
39002 					n->options = NIL;
39003 					n->chain = (yyvsp[0].boolean);
39004 					(yyval.node) = (Node *)n;
39005 				}
39006 #line 39007 "gram_minimal.c" /* yacc.c:1646  */
39007     break;
39008 
39009   case 1439:
39010 #line 10062 "gram_minimal.y" /* yacc.c:1646  */
39011     {
39012 					TransactionStmt *n = makeNode(TransactionStmt);
39013 					n->kind = TRANS_STMT_ROLLBACK;
39014 					n->options = NIL;
39015 					n->chain = (yyvsp[0].boolean);
39016 					(yyval.node) = (Node *)n;
39017 				}
39018 #line 39019 "gram_minimal.c" /* yacc.c:1646  */
39019     break;
39020 
39021   case 1440:
39022 #line 10070 "gram_minimal.y" /* yacc.c:1646  */
39023     {
39024 					TransactionStmt *n = makeNode(TransactionStmt);
39025 					n->kind = TRANS_STMT_SAVEPOINT;
39026 					n->savepoint_name = (yyvsp[0].str);
39027 					(yyval.node) = (Node *)n;
39028 				}
39029 #line 39030 "gram_minimal.c" /* yacc.c:1646  */
39030     break;
39031 
39032   case 1441:
39033 #line 10077 "gram_minimal.y" /* yacc.c:1646  */
39034     {
39035 					TransactionStmt *n = makeNode(TransactionStmt);
39036 					n->kind = TRANS_STMT_RELEASE;
39037 					n->savepoint_name = (yyvsp[0].str);
39038 					(yyval.node) = (Node *)n;
39039 				}
39040 #line 39041 "gram_minimal.c" /* yacc.c:1646  */
39041     break;
39042 
39043   case 1442:
39044 #line 10084 "gram_minimal.y" /* yacc.c:1646  */
39045     {
39046 					TransactionStmt *n = makeNode(TransactionStmt);
39047 					n->kind = TRANS_STMT_RELEASE;
39048 					n->savepoint_name = (yyvsp[0].str);
39049 					(yyval.node) = (Node *)n;
39050 				}
39051 #line 39052 "gram_minimal.c" /* yacc.c:1646  */
39052     break;
39053 
39054   case 1443:
39055 #line 10091 "gram_minimal.y" /* yacc.c:1646  */
39056     {
39057 					TransactionStmt *n = makeNode(TransactionStmt);
39058 					n->kind = TRANS_STMT_ROLLBACK_TO;
39059 					n->savepoint_name = (yyvsp[0].str);
39060 					(yyval.node) = (Node *)n;
39061 				}
39062 #line 39063 "gram_minimal.c" /* yacc.c:1646  */
39063     break;
39064 
39065   case 1444:
39066 #line 10098 "gram_minimal.y" /* yacc.c:1646  */
39067     {
39068 					TransactionStmt *n = makeNode(TransactionStmt);
39069 					n->kind = TRANS_STMT_ROLLBACK_TO;
39070 					n->savepoint_name = (yyvsp[0].str);
39071 					(yyval.node) = (Node *)n;
39072 				}
39073 #line 39074 "gram_minimal.c" /* yacc.c:1646  */
39074     break;
39075 
39076   case 1445:
39077 #line 10105 "gram_minimal.y" /* yacc.c:1646  */
39078     {
39079 					TransactionStmt *n = makeNode(TransactionStmt);
39080 					n->kind = TRANS_STMT_PREPARE;
39081 					n->gid = (yyvsp[0].str);
39082 					(yyval.node) = (Node *)n;
39083 				}
39084 #line 39085 "gram_minimal.c" /* yacc.c:1646  */
39085     break;
39086 
39087   case 1446:
39088 #line 10112 "gram_minimal.y" /* yacc.c:1646  */
39089     {
39090 					TransactionStmt *n = makeNode(TransactionStmt);
39091 					n->kind = TRANS_STMT_COMMIT_PREPARED;
39092 					n->gid = (yyvsp[0].str);
39093 					(yyval.node) = (Node *)n;
39094 				}
39095 #line 39096 "gram_minimal.c" /* yacc.c:1646  */
39096     break;
39097 
39098   case 1447:
39099 #line 10119 "gram_minimal.y" /* yacc.c:1646  */
39100     {
39101 					TransactionStmt *n = makeNode(TransactionStmt);
39102 					n->kind = TRANS_STMT_ROLLBACK_PREPARED;
39103 					n->gid = (yyvsp[0].str);
39104 					(yyval.node) = (Node *)n;
39105 				}
39106 #line 39107 "gram_minimal.c" /* yacc.c:1646  */
39107     break;
39108 
39109   case 1448:
39110 #line 10127 "gram_minimal.y" /* yacc.c:1646  */
39111     {}
39112 #line 39113 "gram_minimal.c" /* yacc.c:1646  */
39113     break;
39114 
39115   case 1449:
39116 #line 10128 "gram_minimal.y" /* yacc.c:1646  */
39117     {}
39118 #line 39119 "gram_minimal.c" /* yacc.c:1646  */
39119     break;
39120 
39121   case 1450:
39122 #line 10129 "gram_minimal.y" /* yacc.c:1646  */
39123     {}
39124 #line 39125 "gram_minimal.c" /* yacc.c:1646  */
39125     break;
39126 
39127   case 1451:
39128 #line 10134 "gram_minimal.y" /* yacc.c:1646  */
39129     { (yyval.defelt) = makeDefElem("transaction_isolation",
39130 									   makeStringConst((yyvsp[0].str), (yylsp[0])), (yylsp[-2])); }
39131 #line 39132 "gram_minimal.c" /* yacc.c:1646  */
39132     break;
39133 
39134   case 1452:
39135 #line 10137 "gram_minimal.y" /* yacc.c:1646  */
39136     { (yyval.defelt) = makeDefElem("transaction_read_only",
39137 									   makeIntConst(true, (yylsp[-1])), (yylsp[-1])); }
39138 #line 39139 "gram_minimal.c" /* yacc.c:1646  */
39139     break;
39140 
39141   case 1453:
39142 #line 10140 "gram_minimal.y" /* yacc.c:1646  */
39143     { (yyval.defelt) = makeDefElem("transaction_read_only",
39144 									   makeIntConst(false, (yylsp[-1])), (yylsp[-1])); }
39145 #line 39146 "gram_minimal.c" /* yacc.c:1646  */
39146     break;
39147 
39148   case 1454:
39149 #line 10143 "gram_minimal.y" /* yacc.c:1646  */
39150     { (yyval.defelt) = makeDefElem("transaction_deferrable",
39151 									   makeIntConst(true, (yylsp[0])), (yylsp[0])); }
39152 #line 39153 "gram_minimal.c" /* yacc.c:1646  */
39153     break;
39154 
39155   case 1455:
39156 #line 10146 "gram_minimal.y" /* yacc.c:1646  */
39157     { (yyval.defelt) = makeDefElem("transaction_deferrable",
39158 									   makeIntConst(false, (yylsp[-1])), (yylsp[-1])); }
39159 #line 39160 "gram_minimal.c" /* yacc.c:1646  */
39160     break;
39161 
39162   case 1456:
39163 #line 10153 "gram_minimal.y" /* yacc.c:1646  */
39164     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
39165 #line 39166 "gram_minimal.c" /* yacc.c:1646  */
39166     break;
39167 
39168   case 1457:
39169 #line 10155 "gram_minimal.y" /* yacc.c:1646  */
39170     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt)); }
39171 #line 39172 "gram_minimal.c" /* yacc.c:1646  */
39172     break;
39173 
39174   case 1458:
39175 #line 10157 "gram_minimal.y" /* yacc.c:1646  */
39176     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
39177 #line 39178 "gram_minimal.c" /* yacc.c:1646  */
39178     break;
39179 
39180   case 1460:
39181 #line 10163 "gram_minimal.y" /* yacc.c:1646  */
39182     { (yyval.list) = NIL; }
39183 #line 39184 "gram_minimal.c" /* yacc.c:1646  */
39184     break;
39185 
39186   case 1461:
39187 #line 10167 "gram_minimal.y" /* yacc.c:1646  */
39188     { (yyval.boolean) = true; }
39189 #line 39190 "gram_minimal.c" /* yacc.c:1646  */
39190     break;
39191 
39192   case 1462:
39193 #line 10168 "gram_minimal.y" /* yacc.c:1646  */
39194     { (yyval.boolean) = false; }
39195 #line 39196 "gram_minimal.c" /* yacc.c:1646  */
39196     break;
39197 
39198   case 1463:
39199 #line 10169 "gram_minimal.y" /* yacc.c:1646  */
39200     { (yyval.boolean) = false; }
39201 #line 39202 "gram_minimal.c" /* yacc.c:1646  */
39202     break;
39203 
39204   case 1464:
39205 #line 10183 "gram_minimal.y" /* yacc.c:1646  */
39206     {
39207 					ViewStmt *n = makeNode(ViewStmt);
39208 					n->view = (yyvsp[-5].range);
39209 					n->view->relpersistence = (yyvsp[-7].ival);
39210 					n->aliases = (yyvsp[-4].list);
39211 					n->query = (yyvsp[-1].node);
39212 					n->replace = false;
39213 					n->options = (yyvsp[-3].list);
39214 					n->withCheckOption = (yyvsp[0].ival);
39215 					(yyval.node) = (Node *) n;
39216 				}
39217 #line 39218 "gram_minimal.c" /* yacc.c:1646  */
39218     break;
39219 
39220   case 1465:
39221 #line 10196 "gram_minimal.y" /* yacc.c:1646  */
39222     {
39223 					ViewStmt *n = makeNode(ViewStmt);
39224 					n->view = (yyvsp[-5].range);
39225 					n->view->relpersistence = (yyvsp[-7].ival);
39226 					n->aliases = (yyvsp[-4].list);
39227 					n->query = (yyvsp[-1].node);
39228 					n->replace = true;
39229 					n->options = (yyvsp[-3].list);
39230 					n->withCheckOption = (yyvsp[0].ival);
39231 					(yyval.node) = (Node *) n;
39232 				}
39233 #line 39234 "gram_minimal.c" /* yacc.c:1646  */
39234     break;
39235 
39236   case 1466:
39237 #line 10209 "gram_minimal.y" /* yacc.c:1646  */
39238     {
39239 					ViewStmt *n = makeNode(ViewStmt);
39240 					n->view = (yyvsp[-7].range);
39241 					n->view->relpersistence = (yyvsp[-10].ival);
39242 					n->aliases = (yyvsp[-5].list);
39243 					n->query = makeRecursiveViewSelect(n->view->relname, n->aliases, (yyvsp[-1].node));
39244 					n->replace = false;
39245 					n->options = (yyvsp[-3].list);
39246 					n->withCheckOption = (yyvsp[0].ival);
39247 					if (n->withCheckOption != NO_CHECK_OPTION)
39248 						ereport(ERROR,
39249 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
39250 								 errmsg("WITH CHECK OPTION not supported on recursive views"),
39251 								 parser_errposition((yylsp[0]))));
39252 					(yyval.node) = (Node *) n;
39253 				}
39254 #line 39255 "gram_minimal.c" /* yacc.c:1646  */
39255     break;
39256 
39257   case 1467:
39258 #line 10227 "gram_minimal.y" /* yacc.c:1646  */
39259     {
39260 					ViewStmt *n = makeNode(ViewStmt);
39261 					n->view = (yyvsp[-7].range);
39262 					n->view->relpersistence = (yyvsp[-10].ival);
39263 					n->aliases = (yyvsp[-5].list);
39264 					n->query = makeRecursiveViewSelect(n->view->relname, n->aliases, (yyvsp[-1].node));
39265 					n->replace = true;
39266 					n->options = (yyvsp[-3].list);
39267 					n->withCheckOption = (yyvsp[0].ival);
39268 					if (n->withCheckOption != NO_CHECK_OPTION)
39269 						ereport(ERROR,
39270 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
39271 								 errmsg("WITH CHECK OPTION not supported on recursive views"),
39272 								 parser_errposition((yylsp[0]))));
39273 					(yyval.node) = (Node *) n;
39274 				}
39275 #line 39276 "gram_minimal.c" /* yacc.c:1646  */
39276     break;
39277 
39278   case 1468:
39279 #line 10246 "gram_minimal.y" /* yacc.c:1646  */
39280     { (yyval.ival) = CASCADED_CHECK_OPTION; }
39281 #line 39282 "gram_minimal.c" /* yacc.c:1646  */
39282     break;
39283 
39284   case 1469:
39285 #line 10247 "gram_minimal.y" /* yacc.c:1646  */
39286     { (yyval.ival) = CASCADED_CHECK_OPTION; }
39287 #line 39288 "gram_minimal.c" /* yacc.c:1646  */
39288     break;
39289 
39290   case 1470:
39291 #line 10248 "gram_minimal.y" /* yacc.c:1646  */
39292     { (yyval.ival) = LOCAL_CHECK_OPTION; }
39293 #line 39294 "gram_minimal.c" /* yacc.c:1646  */
39294     break;
39295 
39296   case 1471:
39297 #line 10249 "gram_minimal.y" /* yacc.c:1646  */
39298     { (yyval.ival) = NO_CHECK_OPTION; }
39299 #line 39300 "gram_minimal.c" /* yacc.c:1646  */
39300     break;
39301 
39302   case 1472:
39303 #line 10260 "gram_minimal.y" /* yacc.c:1646  */
39304     {
39305 					LoadStmt *n = makeNode(LoadStmt);
39306 					n->filename = (yyvsp[0].str);
39307 					(yyval.node) = (Node *)n;
39308 				}
39309 #line 39310 "gram_minimal.c" /* yacc.c:1646  */
39310     break;
39311 
39312   case 1473:
39313 #line 10276 "gram_minimal.y" /* yacc.c:1646  */
39314     {
39315 					CreatedbStmt *n = makeNode(CreatedbStmt);
39316 					n->dbname = (yyvsp[-2].str);
39317 					n->options = (yyvsp[0].list);
39318 					(yyval.node) = (Node *)n;
39319 				}
39320 #line 39321 "gram_minimal.c" /* yacc.c:1646  */
39321     break;
39322 
39323   case 1474:
39324 #line 10285 "gram_minimal.y" /* yacc.c:1646  */
39325     { (yyval.list) = (yyvsp[0].list); }
39326 #line 39327 "gram_minimal.c" /* yacc.c:1646  */
39327     break;
39328 
39329   case 1475:
39330 #line 10286 "gram_minimal.y" /* yacc.c:1646  */
39331     { (yyval.list) = NIL; }
39332 #line 39333 "gram_minimal.c" /* yacc.c:1646  */
39333     break;
39334 
39335   case 1476:
39336 #line 10290 "gram_minimal.y" /* yacc.c:1646  */
39337     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
39338 #line 39339 "gram_minimal.c" /* yacc.c:1646  */
39339     break;
39340 
39341   case 1477:
39342 #line 10291 "gram_minimal.y" /* yacc.c:1646  */
39343     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
39344 #line 39345 "gram_minimal.c" /* yacc.c:1646  */
39345     break;
39346 
39347   case 1478:
39348 #line 10296 "gram_minimal.y" /* yacc.c:1646  */
39349     {
39350 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *)makeInteger((yyvsp[0].ival)), (yylsp[-2]));
39351 				}
39352 #line 39353 "gram_minimal.c" /* yacc.c:1646  */
39353     break;
39354 
39355   case 1479:
39356 #line 10300 "gram_minimal.y" /* yacc.c:1646  */
39357     {
39358 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), (Node *)makeString((yyvsp[0].str)), (yylsp[-2]));
39359 				}
39360 #line 39361 "gram_minimal.c" /* yacc.c:1646  */
39361     break;
39362 
39363   case 1480:
39364 #line 10304 "gram_minimal.y" /* yacc.c:1646  */
39365     {
39366 					(yyval.defelt) = makeDefElem((yyvsp[-2].str), NULL, (yylsp[-2]));
39367 				}
39368 #line 39369 "gram_minimal.c" /* yacc.c:1646  */
39369     break;
39370 
39371   case 1481:
39372 #line 10321 "gram_minimal.y" /* yacc.c:1646  */
39373     { (yyval.str) = (yyvsp[0].str); }
39374 #line 39375 "gram_minimal.c" /* yacc.c:1646  */
39375     break;
39376 
39377   case 1482:
39378 #line 10322 "gram_minimal.y" /* yacc.c:1646  */
39379     { (yyval.str) = pstrdup("connection_limit"); }
39380 #line 39381 "gram_minimal.c" /* yacc.c:1646  */
39381     break;
39382 
39383   case 1483:
39384 #line 10323 "gram_minimal.y" /* yacc.c:1646  */
39385     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
39386 #line 39387 "gram_minimal.c" /* yacc.c:1646  */
39387     break;
39388 
39389   case 1484:
39390 #line 10324 "gram_minimal.y" /* yacc.c:1646  */
39391     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
39392 #line 39393 "gram_minimal.c" /* yacc.c:1646  */
39393     break;
39394 
39395   case 1485:
39396 #line 10325 "gram_minimal.y" /* yacc.c:1646  */
39397     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
39398 #line 39399 "gram_minimal.c" /* yacc.c:1646  */
39399     break;
39400 
39401   case 1486:
39402 #line 10326 "gram_minimal.y" /* yacc.c:1646  */
39403     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
39404 #line 39405 "gram_minimal.c" /* yacc.c:1646  */
39405     break;
39406 
39407   case 1487:
39408 #line 10327 "gram_minimal.y" /* yacc.c:1646  */
39409     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
39410 #line 39411 "gram_minimal.c" /* yacc.c:1646  */
39411     break;
39412 
39413   case 1488:
39414 #line 10334 "gram_minimal.y" /* yacc.c:1646  */
39415     {}
39416 #line 39417 "gram_minimal.c" /* yacc.c:1646  */
39417     break;
39418 
39419   case 1489:
39420 #line 10335 "gram_minimal.y" /* yacc.c:1646  */
39421     {}
39422 #line 39423 "gram_minimal.c" /* yacc.c:1646  */
39423     break;
39424 
39425   case 1490:
39426 #line 10347 "gram_minimal.y" /* yacc.c:1646  */
39427     {
39428 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
39429 					n->dbname = (yyvsp[-2].str);
39430 					n->options = (yyvsp[0].list);
39431 					(yyval.node) = (Node *)n;
39432 				 }
39433 #line 39434 "gram_minimal.c" /* yacc.c:1646  */
39434     break;
39435 
39436   case 1491:
39437 #line 10354 "gram_minimal.y" /* yacc.c:1646  */
39438     {
39439 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
39440 					n->dbname = (yyvsp[-1].str);
39441 					n->options = (yyvsp[0].list);
39442 					(yyval.node) = (Node *)n;
39443 				 }
39444 #line 39445 "gram_minimal.c" /* yacc.c:1646  */
39445     break;
39446 
39447   case 1492:
39448 #line 10361 "gram_minimal.y" /* yacc.c:1646  */
39449     {
39450 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
39451 					n->dbname = (yyvsp[-3].str);
39452 					n->options = list_make1(makeDefElem("tablespace",
39453 														(Node *)makeString((yyvsp[0].str)), (yylsp[0])));
39454 					(yyval.node) = (Node *)n;
39455 				 }
39456 #line 39457 "gram_minimal.c" /* yacc.c:1646  */
39457     break;
39458 
39459   case 1493:
39460 #line 10372 "gram_minimal.y" /* yacc.c:1646  */
39461     {
39462 					AlterDatabaseSetStmt *n = makeNode(AlterDatabaseSetStmt);
39463 					n->dbname = (yyvsp[-1].str);
39464 					n->setstmt = (yyvsp[0].vsetstmt);
39465 					(yyval.node) = (Node *)n;
39466 				}
39467 #line 39468 "gram_minimal.c" /* yacc.c:1646  */
39468     break;
39469 
39470   case 1494:
39471 #line 10389 "gram_minimal.y" /* yacc.c:1646  */
39472     {
39473 					DropdbStmt *n = makeNode(DropdbStmt);
39474 					n->dbname = (yyvsp[0].str);
39475 					n->missing_ok = false;
39476 					n->options = NULL;
39477 					(yyval.node) = (Node *)n;
39478 				}
39479 #line 39480 "gram_minimal.c" /* yacc.c:1646  */
39480     break;
39481 
39482   case 1495:
39483 #line 10397 "gram_minimal.y" /* yacc.c:1646  */
39484     {
39485 					DropdbStmt *n = makeNode(DropdbStmt);
39486 					n->dbname = (yyvsp[0].str);
39487 					n->missing_ok = true;
39488 					n->options = NULL;
39489 					(yyval.node) = (Node *)n;
39490 				}
39491 #line 39492 "gram_minimal.c" /* yacc.c:1646  */
39492     break;
39493 
39494   case 1496:
39495 #line 10405 "gram_minimal.y" /* yacc.c:1646  */
39496     {
39497 					DropdbStmt *n = makeNode(DropdbStmt);
39498 					n->dbname = (yyvsp[-4].str);
39499 					n->missing_ok = false;
39500 					n->options = (yyvsp[-1].list);
39501 					(yyval.node) = (Node *)n;
39502 				}
39503 #line 39504 "gram_minimal.c" /* yacc.c:1646  */
39504     break;
39505 
39506   case 1497:
39507 #line 10413 "gram_minimal.y" /* yacc.c:1646  */
39508     {
39509 					DropdbStmt *n = makeNode(DropdbStmt);
39510 					n->dbname = (yyvsp[-4].str);
39511 					n->missing_ok = true;
39512 					n->options = (yyvsp[-1].list);
39513 					(yyval.node) = (Node *)n;
39514 				}
39515 #line 39516 "gram_minimal.c" /* yacc.c:1646  */
39516     break;
39517 
39518   case 1498:
39519 #line 10424 "gram_minimal.y" /* yacc.c:1646  */
39520     {
39521 					(yyval.list) = list_make1((Node *) (yyvsp[0].defelt));
39522 				}
39523 #line 39524 "gram_minimal.c" /* yacc.c:1646  */
39524     break;
39525 
39526   case 1499:
39527 #line 10428 "gram_minimal.y" /* yacc.c:1646  */
39528     {
39529 					(yyval.list) = lappend((yyvsp[-2].list), (Node *) (yyvsp[0].defelt));
39530 				}
39531 #line 39532 "gram_minimal.c" /* yacc.c:1646  */
39532     break;
39533 
39534   case 1500:
39535 #line 10439 "gram_minimal.y" /* yacc.c:1646  */
39536     {
39537 					(yyval.defelt) = makeDefElem("force", NULL, (yylsp[0]));
39538 				}
39539 #line 39540 "gram_minimal.c" /* yacc.c:1646  */
39540     break;
39541 
39542   case 1501:
39543 #line 10451 "gram_minimal.y" /* yacc.c:1646  */
39544     {
39545 					AlterCollationStmt *n = makeNode(AlterCollationStmt);
39546 					n->collname = (yyvsp[-2].list);
39547 					(yyval.node) = (Node *)n;
39548 				}
39549 #line 39550 "gram_minimal.c" /* yacc.c:1646  */
39550     break;
39551 
39552   case 1502:
39553 #line 10468 "gram_minimal.y" /* yacc.c:1646  */
39554     {
39555 					AlterSystemStmt *n = makeNode(AlterSystemStmt);
39556 					n->setstmt = (yyvsp[0].vsetstmt);
39557 					(yyval.node) = (Node *)n;
39558 				}
39559 #line 39560 "gram_minimal.c" /* yacc.c:1646  */
39560     break;
39561 
39562   case 1503:
39563 #line 10474 "gram_minimal.y" /* yacc.c:1646  */
39564     {
39565 					AlterSystemStmt *n = makeNode(AlterSystemStmt);
39566 					n->setstmt = (yyvsp[0].vsetstmt);
39567 					(yyval.node) = (Node *)n;
39568 				}
39569 #line 39570 "gram_minimal.c" /* yacc.c:1646  */
39570     break;
39571 
39572   case 1504:
39573 #line 10490 "gram_minimal.y" /* yacc.c:1646  */
39574     {
39575 					CreateDomainStmt *n = makeNode(CreateDomainStmt);
39576 					n->domainname = (yyvsp[-3].list);
39577 					n->typeName = (yyvsp[-1].typnam);
39578 					SplitColQualList((yyvsp[0].list), &n->constraints, &n->collClause,
39579 									 yyscanner);
39580 					(yyval.node) = (Node *)n;
39581 				}
39582 #line 39583 "gram_minimal.c" /* yacc.c:1646  */
39583     break;
39584 
39585   case 1505:
39586 #line 10503 "gram_minimal.y" /* yacc.c:1646  */
39587     {
39588 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39589 					n->subtype = 'T';
39590 					n->typeName = (yyvsp[-1].list);
39591 					n->def = (yyvsp[0].node);
39592 					(yyval.node) = (Node *)n;
39593 				}
39594 #line 39595 "gram_minimal.c" /* yacc.c:1646  */
39595     break;
39596 
39597   case 1506:
39598 #line 10512 "gram_minimal.y" /* yacc.c:1646  */
39599     {
39600 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39601 					n->subtype = 'N';
39602 					n->typeName = (yyvsp[-3].list);
39603 					(yyval.node) = (Node *)n;
39604 				}
39605 #line 39606 "gram_minimal.c" /* yacc.c:1646  */
39606     break;
39607 
39608   case 1507:
39609 #line 10520 "gram_minimal.y" /* yacc.c:1646  */
39610     {
39611 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39612 					n->subtype = 'O';
39613 					n->typeName = (yyvsp[-3].list);
39614 					(yyval.node) = (Node *)n;
39615 				}
39616 #line 39617 "gram_minimal.c" /* yacc.c:1646  */
39617     break;
39618 
39619   case 1508:
39620 #line 10528 "gram_minimal.y" /* yacc.c:1646  */
39621     {
39622 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39623 					n->subtype = 'C';
39624 					n->typeName = (yyvsp[-2].list);
39625 					n->def = (yyvsp[0].node);
39626 					(yyval.node) = (Node *)n;
39627 				}
39628 #line 39629 "gram_minimal.c" /* yacc.c:1646  */
39629     break;
39630 
39631   case 1509:
39632 #line 10537 "gram_minimal.y" /* yacc.c:1646  */
39633     {
39634 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39635 					n->subtype = 'X';
39636 					n->typeName = (yyvsp[-4].list);
39637 					n->name = (yyvsp[-1].str);
39638 					n->behavior = (yyvsp[0].dbehavior);
39639 					n->missing_ok = false;
39640 					(yyval.node) = (Node *)n;
39641 				}
39642 #line 39643 "gram_minimal.c" /* yacc.c:1646  */
39643     break;
39644 
39645   case 1510:
39646 #line 10548 "gram_minimal.y" /* yacc.c:1646  */
39647     {
39648 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39649 					n->subtype = 'X';
39650 					n->typeName = (yyvsp[-6].list);
39651 					n->name = (yyvsp[-1].str);
39652 					n->behavior = (yyvsp[0].dbehavior);
39653 					n->missing_ok = true;
39654 					(yyval.node) = (Node *)n;
39655 				}
39656 #line 39657 "gram_minimal.c" /* yacc.c:1646  */
39657     break;
39658 
39659   case 1511:
39660 #line 10559 "gram_minimal.y" /* yacc.c:1646  */
39661     {
39662 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
39663 					n->subtype = 'V';
39664 					n->typeName = (yyvsp[-3].list);
39665 					n->name = (yyvsp[0].str);
39666 					(yyval.node) = (Node *)n;
39667 				}
39668 #line 39669 "gram_minimal.c" /* yacc.c:1646  */
39669     break;
39670 
39671   case 1512:
39672 #line 10568 "gram_minimal.y" /* yacc.c:1646  */
39673     {}
39674 #line 39675 "gram_minimal.c" /* yacc.c:1646  */
39675     break;
39676 
39677   case 1513:
39678 #line 10569 "gram_minimal.y" /* yacc.c:1646  */
39679     {}
39680 #line 39681 "gram_minimal.c" /* yacc.c:1646  */
39681     break;
39682 
39683   case 1514:
39684 #line 10581 "gram_minimal.y" /* yacc.c:1646  */
39685     {
39686 					AlterTSDictionaryStmt *n = makeNode(AlterTSDictionaryStmt);
39687 					n->dictname = (yyvsp[-1].list);
39688 					n->options = (yyvsp[0].list);
39689 					(yyval.node) = (Node *)n;
39690 				}
39691 #line 39692 "gram_minimal.c" /* yacc.c:1646  */
39692     break;
39693 
39694   case 1515:
39695 #line 10591 "gram_minimal.y" /* yacc.c:1646  */
39696     {
39697 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39698 					n->kind = ALTER_TSCONFIG_ADD_MAPPING;
39699 					n->cfgname = (yyvsp[-6].list);
39700 					n->tokentype = (yyvsp[-2].list);
39701 					n->dicts = (yyvsp[0].list);
39702 					n->override = false;
39703 					n->replace = false;
39704 					(yyval.node) = (Node*)n;
39705 				}
39706 #line 39707 "gram_minimal.c" /* yacc.c:1646  */
39707     break;
39708 
39709   case 1516:
39710 #line 10602 "gram_minimal.y" /* yacc.c:1646  */
39711     {
39712 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39713 					n->kind = ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN;
39714 					n->cfgname = (yyvsp[-6].list);
39715 					n->tokentype = (yyvsp[-2].list);
39716 					n->dicts = (yyvsp[0].list);
39717 					n->override = true;
39718 					n->replace = false;
39719 					(yyval.node) = (Node*)n;
39720 				}
39721 #line 39722 "gram_minimal.c" /* yacc.c:1646  */
39722     break;
39723 
39724   case 1517:
39725 #line 10613 "gram_minimal.y" /* yacc.c:1646  */
39726     {
39727 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39728 					n->kind = ALTER_TSCONFIG_REPLACE_DICT;
39729 					n->cfgname = (yyvsp[-6].list);
39730 					n->tokentype = NIL;
39731 					n->dicts = list_make2((yyvsp[-2].list),(yyvsp[0].list));
39732 					n->override = false;
39733 					n->replace = true;
39734 					(yyval.node) = (Node*)n;
39735 				}
39736 #line 39737 "gram_minimal.c" /* yacc.c:1646  */
39737     break;
39738 
39739   case 1518:
39740 #line 10624 "gram_minimal.y" /* yacc.c:1646  */
39741     {
39742 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39743 					n->kind = ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN;
39744 					n->cfgname = (yyvsp[-8].list);
39745 					n->tokentype = (yyvsp[-4].list);
39746 					n->dicts = list_make2((yyvsp[-2].list),(yyvsp[0].list));
39747 					n->override = false;
39748 					n->replace = true;
39749 					(yyval.node) = (Node*)n;
39750 				}
39751 #line 39752 "gram_minimal.c" /* yacc.c:1646  */
39752     break;
39753 
39754   case 1519:
39755 #line 10635 "gram_minimal.y" /* yacc.c:1646  */
39756     {
39757 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39758 					n->kind = ALTER_TSCONFIG_DROP_MAPPING;
39759 					n->cfgname = (yyvsp[-4].list);
39760 					n->tokentype = (yyvsp[0].list);
39761 					n->missing_ok = false;
39762 					(yyval.node) = (Node*)n;
39763 				}
39764 #line 39765 "gram_minimal.c" /* yacc.c:1646  */
39765     break;
39766 
39767   case 1520:
39768 #line 10644 "gram_minimal.y" /* yacc.c:1646  */
39769     {
39770 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
39771 					n->kind = ALTER_TSCONFIG_DROP_MAPPING;
39772 					n->cfgname = (yyvsp[-6].list);
39773 					n->tokentype = (yyvsp[0].list);
39774 					n->missing_ok = true;
39775 					(yyval.node) = (Node*)n;
39776 				}
39777 #line 39778 "gram_minimal.c" /* yacc.c:1646  */
39778     break;
39779 
39780   case 1521:
39781 #line 10655 "gram_minimal.y" /* yacc.c:1646  */
39782     {}
39783 #line 39784 "gram_minimal.c" /* yacc.c:1646  */
39784     break;
39785 
39786   case 1522:
39787 #line 10656 "gram_minimal.y" /* yacc.c:1646  */
39788     {}
39789 #line 39790 "gram_minimal.c" /* yacc.c:1646  */
39790     break;
39791 
39792   case 1523:
39793 #line 10672 "gram_minimal.y" /* yacc.c:1646  */
39794     {
39795 				CreateConversionStmt *n = makeNode(CreateConversionStmt);
39796 				n->conversion_name = (yyvsp[-6].list);
39797 				n->for_encoding_name = (yyvsp[-4].str);
39798 				n->to_encoding_name = (yyvsp[-2].str);
39799 				n->func_name = (yyvsp[0].list);
39800 				n->def = (yyvsp[-8].boolean);
39801 				(yyval.node) = (Node *)n;
39802 			}
39803 #line 39804 "gram_minimal.c" /* yacc.c:1646  */
39804     break;
39805 
39806   case 1524:
39807 #line 10694 "gram_minimal.y" /* yacc.c:1646  */
39808     {
39809 					ClusterStmt *n = makeNode(ClusterStmt);
39810 					n->relation = (yyvsp[-1].range);
39811 					n->indexname = (yyvsp[0].str);
39812 					n->options = 0;
39813 					if ((yyvsp[-2].boolean))
39814 						n->options |= CLUOPT_VERBOSE;
39815 					(yyval.node) = (Node*)n;
39816 				}
39817 #line 39818 "gram_minimal.c" /* yacc.c:1646  */
39818     break;
39819 
39820   case 1525:
39821 #line 10704 "gram_minimal.y" /* yacc.c:1646  */
39822     {
39823 					ClusterStmt *n = makeNode(ClusterStmt);
39824 					n->relation = NULL;
39825 					n->indexname = NULL;
39826 					n->options = 0;
39827 					if ((yyvsp[0].boolean))
39828 						n->options |= CLUOPT_VERBOSE;
39829 					(yyval.node) = (Node*)n;
39830 				}
39831 #line 39832 "gram_minimal.c" /* yacc.c:1646  */
39832     break;
39833 
39834   case 1526:
39835 #line 10715 "gram_minimal.y" /* yacc.c:1646  */
39836     {
39837 					ClusterStmt *n = makeNode(ClusterStmt);
39838 					n->relation = (yyvsp[0].range);
39839 					n->indexname = (yyvsp[-2].str);
39840 					n->options = 0;
39841 					if ((yyvsp[-3].boolean))
39842 						n->options |= CLUOPT_VERBOSE;
39843 					(yyval.node) = (Node*)n;
39844 				}
39845 #line 39846 "gram_minimal.c" /* yacc.c:1646  */
39846     break;
39847 
39848   case 1527:
39849 #line 10727 "gram_minimal.y" /* yacc.c:1646  */
39850     { (yyval.str) = (yyvsp[0].str); }
39851 #line 39852 "gram_minimal.c" /* yacc.c:1646  */
39852     break;
39853 
39854   case 1528:
39855 #line 10728 "gram_minimal.y" /* yacc.c:1646  */
39856     { (yyval.str) = NULL; }
39857 #line 39858 "gram_minimal.c" /* yacc.c:1646  */
39858     break;
39859 
39860   case 1529:
39861 #line 10741 "gram_minimal.y" /* yacc.c:1646  */
39862     {
39863 					VacuumStmt *n = makeNode(VacuumStmt);
39864 					n->options = NIL;
39865 					if ((yyvsp[-4].boolean))
39866 						n->options = lappend(n->options,
39867 											 makeDefElem("full", NULL, (yylsp[-4])));
39868 					if ((yyvsp[-3].boolean))
39869 						n->options = lappend(n->options,
39870 											 makeDefElem("freeze", NULL, (yylsp[-3])));
39871 					if ((yyvsp[-2].boolean))
39872 						n->options = lappend(n->options,
39873 											 makeDefElem("verbose", NULL, (yylsp[-2])));
39874 					if ((yyvsp[-1].boolean))
39875 						n->options = lappend(n->options,
39876 											 makeDefElem("analyze", NULL, (yylsp[-1])));
39877 					n->rels = (yyvsp[0].list);
39878 					n->is_vacuumcmd = true;
39879 					(yyval.node) = (Node *)n;
39880 				}
39881 #line 39882 "gram_minimal.c" /* yacc.c:1646  */
39882     break;
39883 
39884   case 1530:
39885 #line 10761 "gram_minimal.y" /* yacc.c:1646  */
39886     {
39887 					VacuumStmt *n = makeNode(VacuumStmt);
39888 					n->options = (yyvsp[-2].list);
39889 					n->rels = (yyvsp[0].list);
39890 					n->is_vacuumcmd = true;
39891 					(yyval.node) = (Node *) n;
39892 				}
39893 #line 39894 "gram_minimal.c" /* yacc.c:1646  */
39894     break;
39895 
39896   case 1531:
39897 #line 10771 "gram_minimal.y" /* yacc.c:1646  */
39898     {
39899 					VacuumStmt *n = makeNode(VacuumStmt);
39900 					n->options = NIL;
39901 					if ((yyvsp[-1].boolean))
39902 						n->options = lappend(n->options,
39903 											 makeDefElem("verbose", NULL, (yylsp[-1])));
39904 					n->rels = (yyvsp[0].list);
39905 					n->is_vacuumcmd = false;
39906 					(yyval.node) = (Node *)n;
39907 				}
39908 #line 39909 "gram_minimal.c" /* yacc.c:1646  */
39909     break;
39910 
39911   case 1532:
39912 #line 10782 "gram_minimal.y" /* yacc.c:1646  */
39913     {
39914 					VacuumStmt *n = makeNode(VacuumStmt);
39915 					n->options = (yyvsp[-2].list);
39916 					n->rels = (yyvsp[0].list);
39917 					n->is_vacuumcmd = false;
39918 					(yyval.node) = (Node *) n;
39919 				}
39920 #line 39921 "gram_minimal.c" /* yacc.c:1646  */
39921     break;
39922 
39923   case 1533:
39924 #line 10793 "gram_minimal.y" /* yacc.c:1646  */
39925     {
39926 					(yyval.list) = list_make1((yyvsp[0].defelt));
39927 				}
39928 #line 39929 "gram_minimal.c" /* yacc.c:1646  */
39929     break;
39930 
39931   case 1534:
39932 #line 10797 "gram_minimal.y" /* yacc.c:1646  */
39933     {
39934 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
39935 				}
39936 #line 39937 "gram_minimal.c" /* yacc.c:1646  */
39937     break;
39938 
39939   case 1535:
39940 #line 10803 "gram_minimal.y" /* yacc.c:1646  */
39941     {}
39942 #line 39943 "gram_minimal.c" /* yacc.c:1646  */
39943     break;
39944 
39945   case 1536:
39946 #line 10804 "gram_minimal.y" /* yacc.c:1646  */
39947     {}
39948 #line 39949 "gram_minimal.c" /* yacc.c:1646  */
39949     break;
39950 
39951   case 1537:
39952 #line 10809 "gram_minimal.y" /* yacc.c:1646  */
39953     {
39954 					(yyval.defelt) = makeDefElem((yyvsp[-1].str), (yyvsp[0].node), (yylsp[-1]));
39955 				}
39956 #line 39957 "gram_minimal.c" /* yacc.c:1646  */
39957     break;
39958 
39959   case 1538:
39960 #line 10815 "gram_minimal.y" /* yacc.c:1646  */
39961     { (yyval.str) = (yyvsp[0].str); }
39962 #line 39963 "gram_minimal.c" /* yacc.c:1646  */
39963     break;
39964 
39965   case 1539:
39966 #line 10816 "gram_minimal.y" /* yacc.c:1646  */
39967     { (yyval.str) = "analyze"; }
39968 #line 39969 "gram_minimal.c" /* yacc.c:1646  */
39969     break;
39970 
39971   case 1540:
39972 #line 10820 "gram_minimal.y" /* yacc.c:1646  */
39973     { (yyval.node) = (Node *) makeString((yyvsp[0].str)); }
39974 #line 39975 "gram_minimal.c" /* yacc.c:1646  */
39975     break;
39976 
39977   case 1541:
39978 #line 10821 "gram_minimal.y" /* yacc.c:1646  */
39979     { (yyval.node) = (Node *) (yyvsp[0].value); }
39980 #line 39981 "gram_minimal.c" /* yacc.c:1646  */
39981     break;
39982 
39983   case 1542:
39984 #line 10822 "gram_minimal.y" /* yacc.c:1646  */
39985     { (yyval.node) = NULL; }
39986 #line 39987 "gram_minimal.c" /* yacc.c:1646  */
39987     break;
39988 
39989   case 1543:
39990 #line 10826 "gram_minimal.y" /* yacc.c:1646  */
39991     { (yyval.boolean) = true; }
39992 #line 39993 "gram_minimal.c" /* yacc.c:1646  */
39993     break;
39994 
39995   case 1544:
39996 #line 10827 "gram_minimal.y" /* yacc.c:1646  */
39997     { (yyval.boolean) = false; }
39998 #line 39999 "gram_minimal.c" /* yacc.c:1646  */
39999     break;
40000 
40001   case 1545:
40002 #line 10831 "gram_minimal.y" /* yacc.c:1646  */
40003     { (yyval.boolean) = true; }
40004 #line 40005 "gram_minimal.c" /* yacc.c:1646  */
40005     break;
40006 
40007   case 1546:
40008 #line 10832 "gram_minimal.y" /* yacc.c:1646  */
40009     { (yyval.boolean) = false; }
40010 #line 40011 "gram_minimal.c" /* yacc.c:1646  */
40011     break;
40012 
40013   case 1547:
40014 #line 10835 "gram_minimal.y" /* yacc.c:1646  */
40015     { (yyval.boolean) = true; }
40016 #line 40017 "gram_minimal.c" /* yacc.c:1646  */
40017     break;
40018 
40019   case 1548:
40020 #line 10836 "gram_minimal.y" /* yacc.c:1646  */
40021     { (yyval.boolean) = false; }
40022 #line 40023 "gram_minimal.c" /* yacc.c:1646  */
40023     break;
40024 
40025   case 1549:
40026 #line 10839 "gram_minimal.y" /* yacc.c:1646  */
40027     { (yyval.boolean) = true; }
40028 #line 40029 "gram_minimal.c" /* yacc.c:1646  */
40029     break;
40030 
40031   case 1550:
40032 #line 10840 "gram_minimal.y" /* yacc.c:1646  */
40033     { (yyval.boolean) = false; }
40034 #line 40035 "gram_minimal.c" /* yacc.c:1646  */
40035     break;
40036 
40037   case 1551:
40038 #line 10844 "gram_minimal.y" /* yacc.c:1646  */
40039     { (yyval.list) = (yyvsp[-1].list); }
40040 #line 40041 "gram_minimal.c" /* yacc.c:1646  */
40041     break;
40042 
40043   case 1552:
40044 #line 10845 "gram_minimal.y" /* yacc.c:1646  */
40045     { (yyval.list) = NIL; }
40046 #line 40047 "gram_minimal.c" /* yacc.c:1646  */
40047     break;
40048 
40049   case 1553:
40050 #line 10850 "gram_minimal.y" /* yacc.c:1646  */
40051     {
40052 					(yyval.node) = (Node *) makeVacuumRelation((yyvsp[-1].range), InvalidOid, (yyvsp[0].list));
40053 				}
40054 #line 40055 "gram_minimal.c" /* yacc.c:1646  */
40055     break;
40056 
40057   case 1554:
40058 #line 10857 "gram_minimal.y" /* yacc.c:1646  */
40059     { (yyval.list) = list_make1((yyvsp[0].node)); }
40060 #line 40061 "gram_minimal.c" /* yacc.c:1646  */
40061     break;
40062 
40063   case 1555:
40064 #line 10859 "gram_minimal.y" /* yacc.c:1646  */
40065     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
40066 #line 40067 "gram_minimal.c" /* yacc.c:1646  */
40067     break;
40068 
40069   case 1556:
40070 #line 10863 "gram_minimal.y" /* yacc.c:1646  */
40071     { (yyval.list) = (yyvsp[0].list); }
40072 #line 40073 "gram_minimal.c" /* yacc.c:1646  */
40073     break;
40074 
40075   case 1557:
40076 #line 10864 "gram_minimal.y" /* yacc.c:1646  */
40077     { (yyval.list) = NIL; }
40078 #line 40079 "gram_minimal.c" /* yacc.c:1646  */
40079     break;
40080 
40081   case 1558:
40082 #line 10878 "gram_minimal.y" /* yacc.c:1646  */
40083     {
40084 					ExplainStmt *n = makeNode(ExplainStmt);
40085 					n->query = (yyvsp[0].node);
40086 					n->options = NIL;
40087 					(yyval.node) = (Node *) n;
40088 				}
40089 #line 40090 "gram_minimal.c" /* yacc.c:1646  */
40090     break;
40091 
40092   case 1559:
40093 #line 10885 "gram_minimal.y" /* yacc.c:1646  */
40094     {
40095 					ExplainStmt *n = makeNode(ExplainStmt);
40096 					n->query = (yyvsp[0].node);
40097 					n->options = list_make1(makeDefElem("analyze", NULL, (yylsp[-2])));
40098 					if ((yyvsp[-1].boolean))
40099 						n->options = lappend(n->options,
40100 											 makeDefElem("verbose", NULL, (yylsp[-1])));
40101 					(yyval.node) = (Node *) n;
40102 				}
40103 #line 40104 "gram_minimal.c" /* yacc.c:1646  */
40104     break;
40105 
40106   case 1560:
40107 #line 10895 "gram_minimal.y" /* yacc.c:1646  */
40108     {
40109 					ExplainStmt *n = makeNode(ExplainStmt);
40110 					n->query = (yyvsp[0].node);
40111 					n->options = list_make1(makeDefElem("verbose", NULL, (yylsp[-1])));
40112 					(yyval.node) = (Node *) n;
40113 				}
40114 #line 40115 "gram_minimal.c" /* yacc.c:1646  */
40115     break;
40116 
40117   case 1561:
40118 #line 10902 "gram_minimal.y" /* yacc.c:1646  */
40119     {
40120 					ExplainStmt *n = makeNode(ExplainStmt);
40121 					n->query = (yyvsp[0].node);
40122 					n->options = (yyvsp[-2].list);
40123 					(yyval.node) = (Node *) n;
40124 				}
40125 #line 40126 "gram_minimal.c" /* yacc.c:1646  */
40126     break;
40127 
40128   case 1571:
40129 #line 10924 "gram_minimal.y" /* yacc.c:1646  */
40130     {
40131 					(yyval.list) = list_make1((yyvsp[0].defelt));
40132 				}
40133 #line 40134 "gram_minimal.c" /* yacc.c:1646  */
40134     break;
40135 
40136   case 1572:
40137 #line 10928 "gram_minimal.y" /* yacc.c:1646  */
40138     {
40139 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].defelt));
40140 				}
40141 #line 40142 "gram_minimal.c" /* yacc.c:1646  */
40142     break;
40143 
40144   case 1573:
40145 #line 10935 "gram_minimal.y" /* yacc.c:1646  */
40146     {
40147 					(yyval.defelt) = makeDefElem((yyvsp[-1].str), (yyvsp[0].node), (yylsp[-1]));
40148 				}
40149 #line 40150 "gram_minimal.c" /* yacc.c:1646  */
40150     break;
40151 
40152   case 1574:
40153 #line 10941 "gram_minimal.y" /* yacc.c:1646  */
40154     { (yyval.str) = (yyvsp[0].str); }
40155 #line 40156 "gram_minimal.c" /* yacc.c:1646  */
40156     break;
40157 
40158   case 1575:
40159 #line 10942 "gram_minimal.y" /* yacc.c:1646  */
40160     { (yyval.str) = "analyze"; }
40161 #line 40162 "gram_minimal.c" /* yacc.c:1646  */
40162     break;
40163 
40164   case 1576:
40165 #line 10946 "gram_minimal.y" /* yacc.c:1646  */
40166     { (yyval.node) = (Node *) makeString((yyvsp[0].str)); }
40167 #line 40168 "gram_minimal.c" /* yacc.c:1646  */
40168     break;
40169 
40170   case 1577:
40171 #line 10947 "gram_minimal.y" /* yacc.c:1646  */
40172     { (yyval.node) = (Node *) (yyvsp[0].value); }
40173 #line 40174 "gram_minimal.c" /* yacc.c:1646  */
40174     break;
40175 
40176   case 1578:
40177 #line 10948 "gram_minimal.y" /* yacc.c:1646  */
40178     { (yyval.node) = NULL; }
40179 #line 40180 "gram_minimal.c" /* yacc.c:1646  */
40180     break;
40181 
40182   case 1579:
40183 #line 10959 "gram_minimal.y" /* yacc.c:1646  */
40184     {
40185 					PrepareStmt *n = makeNode(PrepareStmt);
40186 					n->name = (yyvsp[-3].str);
40187 					n->argtypes = (yyvsp[-2].list);
40188 					n->query = (yyvsp[0].node);
40189 					(yyval.node) = (Node *) n;
40190 				}
40191 #line 40192 "gram_minimal.c" /* yacc.c:1646  */
40192     break;
40193 
40194   case 1580:
40195 #line 10968 "gram_minimal.y" /* yacc.c:1646  */
40196     { (yyval.list) = (yyvsp[-1].list); }
40197 #line 40198 "gram_minimal.c" /* yacc.c:1646  */
40198     break;
40199 
40200   case 1581:
40201 #line 10969 "gram_minimal.y" /* yacc.c:1646  */
40202     { (yyval.list) = NIL; }
40203 #line 40204 "gram_minimal.c" /* yacc.c:1646  */
40204     break;
40205 
40206   case 1586:
40207 #line 10987 "gram_minimal.y" /* yacc.c:1646  */
40208     {
40209 					ExecuteStmt *n = makeNode(ExecuteStmt);
40210 					n->name = (yyvsp[-1].str);
40211 					n->params = (yyvsp[0].list);
40212 					(yyval.node) = (Node *) n;
40213 				}
40214 #line 40215 "gram_minimal.c" /* yacc.c:1646  */
40215     break;
40216 
40217   case 1587:
40218 #line 10995 "gram_minimal.y" /* yacc.c:1646  */
40219     {
40220 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
40221 					ExecuteStmt *n = makeNode(ExecuteStmt);
40222 					n->name = (yyvsp[-2].str);
40223 					n->params = (yyvsp[-1].list);
40224 					ctas->query = (Node *) n;
40225 					ctas->into = (yyvsp[-5].into);
40226 					ctas->relkind = OBJECT_TABLE;
40227 					ctas->is_select_into = false;
40228 					ctas->if_not_exists = false;
40229 					/* cram additional flags into the IntoClause */
40230 					(yyvsp[-5].into)->rel->relpersistence = (yyvsp[-7].ival);
40231 					(yyvsp[-5].into)->skipData = !((yyvsp[0].boolean));
40232 					(yyval.node) = (Node *) ctas;
40233 				}
40234 #line 40235 "gram_minimal.c" /* yacc.c:1646  */
40235     break;
40236 
40237   case 1588:
40238 #line 11012 "gram_minimal.y" /* yacc.c:1646  */
40239     {
40240 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
40241 					ExecuteStmt *n = makeNode(ExecuteStmt);
40242 					n->name = (yyvsp[-2].str);
40243 					n->params = (yyvsp[-1].list);
40244 					ctas->query = (Node *) n;
40245 					ctas->into = (yyvsp[-5].into);
40246 					ctas->relkind = OBJECT_TABLE;
40247 					ctas->is_select_into = false;
40248 					ctas->if_not_exists = true;
40249 					/* cram additional flags into the IntoClause */
40250 					(yyvsp[-5].into)->rel->relpersistence = (yyvsp[-10].ival);
40251 					(yyvsp[-5].into)->skipData = !((yyvsp[0].boolean));
40252 					(yyval.node) = (Node *) ctas;
40253 				}
40254 #line 40255 "gram_minimal.c" /* yacc.c:1646  */
40255     break;
40256 
40257   case 1589:
40258 #line 11029 "gram_minimal.y" /* yacc.c:1646  */
40259     { (yyval.list) = (yyvsp[-1].list); }
40260 #line 40261 "gram_minimal.c" /* yacc.c:1646  */
40261     break;
40262 
40263   case 1590:
40264 #line 11030 "gram_minimal.y" /* yacc.c:1646  */
40265     { (yyval.list) = NIL; }
40266 #line 40267 "gram_minimal.c" /* yacc.c:1646  */
40267     break;
40268 
40269   case 1591:
40270 #line 11041 "gram_minimal.y" /* yacc.c:1646  */
40271     {
40272 						DeallocateStmt *n = makeNode(DeallocateStmt);
40273 						n->name = (yyvsp[0].str);
40274 						(yyval.node) = (Node *) n;
40275 					}
40276 #line 40277 "gram_minimal.c" /* yacc.c:1646  */
40277     break;
40278 
40279   case 1592:
40280 #line 11047 "gram_minimal.y" /* yacc.c:1646  */
40281     {
40282 						DeallocateStmt *n = makeNode(DeallocateStmt);
40283 						n->name = (yyvsp[0].str);
40284 						(yyval.node) = (Node *) n;
40285 					}
40286 #line 40287 "gram_minimal.c" /* yacc.c:1646  */
40287     break;
40288 
40289   case 1593:
40290 #line 11053 "gram_minimal.y" /* yacc.c:1646  */
40291     {
40292 						DeallocateStmt *n = makeNode(DeallocateStmt);
40293 						n->name = NULL;
40294 						(yyval.node) = (Node *) n;
40295 					}
40296 #line 40297 "gram_minimal.c" /* yacc.c:1646  */
40297     break;
40298 
40299   case 1594:
40300 #line 11059 "gram_minimal.y" /* yacc.c:1646  */
40301     {
40302 						DeallocateStmt *n = makeNode(DeallocateStmt);
40303 						n->name = NULL;
40304 						(yyval.node) = (Node *) n;
40305 					}
40306 #line 40307 "gram_minimal.c" /* yacc.c:1646  */
40307     break;
40308 
40309   case 1595:
40310 #line 11076 "gram_minimal.y" /* yacc.c:1646  */
40311     {
40312 					(yyvsp[-2].istmt)->relation = (yyvsp[-3].range);
40313 					(yyvsp[-2].istmt)->onConflictClause = (yyvsp[-1].onconflict);
40314 					(yyvsp[-2].istmt)->returningList = (yyvsp[0].list);
40315 					(yyvsp[-2].istmt)->withClause = (yyvsp[-6].with);
40316 					(yyval.node) = (Node *) (yyvsp[-2].istmt);
40317 				}
40318 #line 40319 "gram_minimal.c" /* yacc.c:1646  */
40319     break;
40320 
40321   case 1596:
40322 #line 11086 "gram_minimal.y" /* yacc.c:1646  */
40323     {
40324 				InsertStmt *insert = makeNode(InsertStmt);
40325 				insert->relation = (yyvsp[0].range);
40326 				(yyval.node) = (Node *) insert;
40327 				/*
40328 				 * Assign the node directly to the parsetree and exit the scanner
40329 				 * we don't want to keep parsing for information we don't need
40330 				 */
40331 				pg_yyget_extra(yyscanner)->parsetree = list_make1(makeRawStmt((yyval.node), 0));
40332 				YYACCEPT;
40333 			}
40334 #line 40335 "gram_minimal.c" /* yacc.c:1646  */
40335     break;
40336 
40337   case 1597:
40338 #line 11107 "gram_minimal.y" /* yacc.c:1646  */
40339     {
40340 					(yyval.range) = (yyvsp[0].range);
40341 				}
40342 #line 40343 "gram_minimal.c" /* yacc.c:1646  */
40343     break;
40344 
40345   case 1598:
40346 #line 11111 "gram_minimal.y" /* yacc.c:1646  */
40347     {
40348 					(yyvsp[-2].range)->alias = makeAlias((yyvsp[0].str), NIL);
40349 					(yyval.range) = (yyvsp[-2].range);
40350 				}
40351 #line 40352 "gram_minimal.c" /* yacc.c:1646  */
40352     break;
40353 
40354   case 1599:
40355 #line 11119 "gram_minimal.y" /* yacc.c:1646  */
40356     {
40357 					(yyval.istmt) = makeNode(InsertStmt);
40358 					(yyval.istmt)->cols = NIL;
40359 					(yyval.istmt)->selectStmt = (yyvsp[0].node);
40360 				}
40361 #line 40362 "gram_minimal.c" /* yacc.c:1646  */
40362     break;
40363 
40364   case 1600:
40365 #line 11125 "gram_minimal.y" /* yacc.c:1646  */
40366     {
40367 					(yyval.istmt) = makeNode(InsertStmt);
40368 					(yyval.istmt)->cols = NIL;
40369 					(yyval.istmt)->override = (yyvsp[-2].ival);
40370 					(yyval.istmt)->selectStmt = (yyvsp[0].node);
40371 				}
40372 #line 40373 "gram_minimal.c" /* yacc.c:1646  */
40373     break;
40374 
40375   case 1601:
40376 #line 11132 "gram_minimal.y" /* yacc.c:1646  */
40377     {
40378 					(yyval.istmt) = makeNode(InsertStmt);
40379 					(yyval.istmt)->cols = (yyvsp[-2].list);
40380 					(yyval.istmt)->selectStmt = (yyvsp[0].node);
40381 				}
40382 #line 40383 "gram_minimal.c" /* yacc.c:1646  */
40383     break;
40384 
40385   case 1602:
40386 #line 11138 "gram_minimal.y" /* yacc.c:1646  */
40387     {
40388 					(yyval.istmt) = makeNode(InsertStmt);
40389 					(yyval.istmt)->cols = (yyvsp[-5].list);
40390 					(yyval.istmt)->override = (yyvsp[-2].ival);
40391 					(yyval.istmt)->selectStmt = (yyvsp[0].node);
40392 				}
40393 #line 40394 "gram_minimal.c" /* yacc.c:1646  */
40394     break;
40395 
40396   case 1603:
40397 #line 11145 "gram_minimal.y" /* yacc.c:1646  */
40398     {
40399 					(yyval.istmt) = makeNode(InsertStmt);
40400 					(yyval.istmt)->cols = NIL;
40401 					(yyval.istmt)->selectStmt = NULL;
40402 				}
40403 #line 40404 "gram_minimal.c" /* yacc.c:1646  */
40404     break;
40405 
40406   case 1604:
40407 #line 11153 "gram_minimal.y" /* yacc.c:1646  */
40408     { (yyval.ival) = OVERRIDING_USER_VALUE; }
40409 #line 40410 "gram_minimal.c" /* yacc.c:1646  */
40410     break;
40411 
40412   case 1605:
40413 #line 11154 "gram_minimal.y" /* yacc.c:1646  */
40414     { (yyval.ival) = OVERRIDING_SYSTEM_VALUE; }
40415 #line 40416 "gram_minimal.c" /* yacc.c:1646  */
40416     break;
40417 
40418   case 1606:
40419 #line 11159 "gram_minimal.y" /* yacc.c:1646  */
40420     { (yyval.list) = list_make1((yyvsp[0].target)); }
40421 #line 40422 "gram_minimal.c" /* yacc.c:1646  */
40422     break;
40423 
40424   case 1607:
40425 #line 11161 "gram_minimal.y" /* yacc.c:1646  */
40426     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].target)); }
40427 #line 40428 "gram_minimal.c" /* yacc.c:1646  */
40428     break;
40429 
40430   case 1608:
40431 #line 11166 "gram_minimal.y" /* yacc.c:1646  */
40432     {
40433 					(yyval.target) = makeNode(ResTarget);
40434 					(yyval.target)->name = (yyvsp[-1].str);
40435 					(yyval.target)->indirection = check_indirection((yyvsp[0].list), yyscanner);
40436 					(yyval.target)->val = NULL;
40437 					(yyval.target)->location = (yylsp[-1]);
40438 				}
40439 #line 40440 "gram_minimal.c" /* yacc.c:1646  */
40440     break;
40441 
40442   case 1609:
40443 #line 11177 "gram_minimal.y" /* yacc.c:1646  */
40444     {
40445 					(yyval.onconflict) = makeNode(OnConflictClause);
40446 					(yyval.onconflict)->action = ONCONFLICT_UPDATE;
40447 					(yyval.onconflict)->infer = (yyvsp[-5].infer);
40448 					(yyval.onconflict)->targetList = (yyvsp[-1].list);
40449 					(yyval.onconflict)->whereClause = (yyvsp[0].node);
40450 					(yyval.onconflict)->location = (yylsp[-7]);
40451 				}
40452 #line 40453 "gram_minimal.c" /* yacc.c:1646  */
40453     break;
40454 
40455   case 1610:
40456 #line 11187 "gram_minimal.y" /* yacc.c:1646  */
40457     {
40458 					(yyval.onconflict) = makeNode(OnConflictClause);
40459 					(yyval.onconflict)->action = ONCONFLICT_NOTHING;
40460 					(yyval.onconflict)->infer = (yyvsp[-2].infer);
40461 					(yyval.onconflict)->targetList = NIL;
40462 					(yyval.onconflict)->whereClause = NULL;
40463 					(yyval.onconflict)->location = (yylsp[-4]);
40464 				}
40465 #line 40466 "gram_minimal.c" /* yacc.c:1646  */
40466     break;
40467 
40468   case 1611:
40469 #line 11196 "gram_minimal.y" /* yacc.c:1646  */
40470     {
40471 					(yyval.onconflict) = NULL;
40472 				}
40473 #line 40474 "gram_minimal.c" /* yacc.c:1646  */
40474     break;
40475 
40476   case 1612:
40477 #line 11203 "gram_minimal.y" /* yacc.c:1646  */
40478     {
40479 					(yyval.infer) = makeNode(InferClause);
40480 					(yyval.infer)->indexElems = (yyvsp[-2].list);
40481 					(yyval.infer)->whereClause = (yyvsp[0].node);
40482 					(yyval.infer)->conname = NULL;
40483 					(yyval.infer)->location = (yylsp[-3]);
40484 				}
40485 #line 40486 "gram_minimal.c" /* yacc.c:1646  */
40486     break;
40487 
40488   case 1613:
40489 #line 11212 "gram_minimal.y" /* yacc.c:1646  */
40490     {
40491 					(yyval.infer) = makeNode(InferClause);
40492 					(yyval.infer)->indexElems = NIL;
40493 					(yyval.infer)->whereClause = NULL;
40494 					(yyval.infer)->conname = (yyvsp[0].str);
40495 					(yyval.infer)->location = (yylsp[-2]);
40496 				}
40497 #line 40498 "gram_minimal.c" /* yacc.c:1646  */
40498     break;
40499 
40500   case 1614:
40501 #line 11220 "gram_minimal.y" /* yacc.c:1646  */
40502     {
40503 					(yyval.infer) = NULL;
40504 				}
40505 #line 40506 "gram_minimal.c" /* yacc.c:1646  */
40506     break;
40507 
40508   case 1615:
40509 #line 11226 "gram_minimal.y" /* yacc.c:1646  */
40510     { (yyval.list) = (yyvsp[0].list); }
40511 #line 40512 "gram_minimal.c" /* yacc.c:1646  */
40512     break;
40513 
40514   case 1616:
40515 #line 11227 "gram_minimal.y" /* yacc.c:1646  */
40516     { (yyval.list) = NIL; }
40517 #line 40518 "gram_minimal.c" /* yacc.c:1646  */
40518     break;
40519 
40520   case 1617:
40521 #line 11240 "gram_minimal.y" /* yacc.c:1646  */
40522     {
40523 					DeleteStmt *n = makeNode(DeleteStmt);
40524 					n->relation = (yyvsp[-3].range);
40525 					n->usingClause = (yyvsp[-2].list);
40526 					n->whereClause = (yyvsp[-1].node);
40527 					n->returningList = (yyvsp[0].list);
40528 					n->withClause = (yyvsp[-6].with);
40529 					(yyval.node) = (Node *)n;
40530 				}
40531 #line 40532 "gram_minimal.c" /* yacc.c:1646  */
40532     break;
40533 
40534   case 1618:
40535 #line 11252 "gram_minimal.y" /* yacc.c:1646  */
40536     { (yyval.list) = (yyvsp[0].list); }
40537 #line 40538 "gram_minimal.c" /* yacc.c:1646  */
40538     break;
40539 
40540   case 1619:
40541 #line 11253 "gram_minimal.y" /* yacc.c:1646  */
40542     { (yyval.list) = NIL; }
40543 #line 40544 "gram_minimal.c" /* yacc.c:1646  */
40544     break;
40545 
40546   case 1620:
40547 #line 11265 "gram_minimal.y" /* yacc.c:1646  */
40548     {
40549 					LockStmt *n = makeNode(LockStmt);
40550 
40551 					n->relations = (yyvsp[-2].list);
40552 					n->mode = (yyvsp[-1].ival);
40553 					n->nowait = (yyvsp[0].boolean);
40554 					(yyval.node) = (Node *)n;
40555 				}
40556 #line 40557 "gram_minimal.c" /* yacc.c:1646  */
40557     break;
40558 
40559   case 1621:
40560 #line 11275 "gram_minimal.y" /* yacc.c:1646  */
40561     { (yyval.ival) = (yyvsp[-1].ival); }
40562 #line 40563 "gram_minimal.c" /* yacc.c:1646  */
40563     break;
40564 
40565   case 1622:
40566 #line 11276 "gram_minimal.y" /* yacc.c:1646  */
40567     { (yyval.ival) = AccessExclusiveLock; }
40568 #line 40569 "gram_minimal.c" /* yacc.c:1646  */
40569     break;
40570 
40571   case 1623:
40572 #line 11279 "gram_minimal.y" /* yacc.c:1646  */
40573     { (yyval.ival) = AccessShareLock; }
40574 #line 40575 "gram_minimal.c" /* yacc.c:1646  */
40575     break;
40576 
40577   case 1624:
40578 #line 11280 "gram_minimal.y" /* yacc.c:1646  */
40579     { (yyval.ival) = RowShareLock; }
40580 #line 40581 "gram_minimal.c" /* yacc.c:1646  */
40581     break;
40582 
40583   case 1625:
40584 #line 11281 "gram_minimal.y" /* yacc.c:1646  */
40585     { (yyval.ival) = RowExclusiveLock; }
40586 #line 40587 "gram_minimal.c" /* yacc.c:1646  */
40587     break;
40588 
40589   case 1626:
40590 #line 11282 "gram_minimal.y" /* yacc.c:1646  */
40591     { (yyval.ival) = ShareUpdateExclusiveLock; }
40592 #line 40593 "gram_minimal.c" /* yacc.c:1646  */
40593     break;
40594 
40595   case 1627:
40596 #line 11283 "gram_minimal.y" /* yacc.c:1646  */
40597     { (yyval.ival) = ShareLock; }
40598 #line 40599 "gram_minimal.c" /* yacc.c:1646  */
40599     break;
40600 
40601   case 1628:
40602 #line 11284 "gram_minimal.y" /* yacc.c:1646  */
40603     { (yyval.ival) = ShareRowExclusiveLock; }
40604 #line 40605 "gram_minimal.c" /* yacc.c:1646  */
40605     break;
40606 
40607   case 1629:
40608 #line 11285 "gram_minimal.y" /* yacc.c:1646  */
40609     { (yyval.ival) = ExclusiveLock; }
40610 #line 40611 "gram_minimal.c" /* yacc.c:1646  */
40611     break;
40612 
40613   case 1630:
40614 #line 11286 "gram_minimal.y" /* yacc.c:1646  */
40615     { (yyval.ival) = AccessExclusiveLock; }
40616 #line 40617 "gram_minimal.c" /* yacc.c:1646  */
40617     break;
40618 
40619   case 1631:
40620 #line 11289 "gram_minimal.y" /* yacc.c:1646  */
40621     { (yyval.boolean) = true; }
40622 #line 40623 "gram_minimal.c" /* yacc.c:1646  */
40623     break;
40624 
40625   case 1632:
40626 #line 11290 "gram_minimal.y" /* yacc.c:1646  */
40627     { (yyval.boolean) = false; }
40628 #line 40629 "gram_minimal.c" /* yacc.c:1646  */
40629     break;
40630 
40631   case 1633:
40632 #line 11294 "gram_minimal.y" /* yacc.c:1646  */
40633     { (yyval.ival) = LockWaitError; }
40634 #line 40635 "gram_minimal.c" /* yacc.c:1646  */
40635     break;
40636 
40637   case 1634:
40638 #line 11295 "gram_minimal.y" /* yacc.c:1646  */
40639     { (yyval.ival) = LockWaitSkip; }
40640 #line 40641 "gram_minimal.c" /* yacc.c:1646  */
40641     break;
40642 
40643   case 1635:
40644 #line 11296 "gram_minimal.y" /* yacc.c:1646  */
40645     { (yyval.ival) = LockWaitBlock; }
40646 #line 40647 "gram_minimal.c" /* yacc.c:1646  */
40647     break;
40648 
40649   case 1636:
40650 #line 11312 "gram_minimal.y" /* yacc.c:1646  */
40651     {
40652 					UpdateStmt *n = makeNode(UpdateStmt);
40653 					n->relation = (yyvsp[-5].range);
40654 					n->targetList = (yyvsp[-3].list);
40655 					n->fromClause = (yyvsp[-2].list);
40656 					n->whereClause = (yyvsp[-1].node);
40657 					n->returningList = (yyvsp[0].list);
40658 					n->withClause = (yyvsp[-7].with);
40659 					(yyval.node) = (Node *)n;
40660 				}
40661 #line 40662 "gram_minimal.c" /* yacc.c:1646  */
40662     break;
40663 
40664   case 1637:
40665 #line 11324 "gram_minimal.y" /* yacc.c:1646  */
40666     {
40667 					UpdateStmt *n = makeNode(UpdateStmt);
40668 					n->relation = (yyvsp[0].range);
40669 					n->targetList = NULL;
40670 					n->fromClause = NULL;
40671 					n->whereClause = NULL;
40672 					n->returningList = NULL;
40673 					n->withClause = (yyvsp[-2].with);
40674 					(yyval.node) = (Node *)n;
40675 					pg_yyget_extra(yyscanner)->parsetree = list_make1(makeRawStmt((yyval.node), 0));
40676 					YYACCEPT;
40677 				}
40678 #line 40679 "gram_minimal.c" /* yacc.c:1646  */
40679     break;
40680 
40681   case 1638:
40682 #line 11338 "gram_minimal.y" /* yacc.c:1646  */
40683     { (yyval.list) = (yyvsp[0].list); }
40684 #line 40685 "gram_minimal.c" /* yacc.c:1646  */
40685     break;
40686 
40687   case 1639:
40688 #line 11339 "gram_minimal.y" /* yacc.c:1646  */
40689     { (yyval.list) = list_concat((yyvsp[-2].list),(yyvsp[0].list)); }
40690 #line 40691 "gram_minimal.c" /* yacc.c:1646  */
40691     break;
40692 
40693   case 1640:
40694 #line 11344 "gram_minimal.y" /* yacc.c:1646  */
40695     {
40696 					(yyvsp[-2].target)->val = (Node *) (yyvsp[0].node);
40697 					(yyval.list) = list_make1((yyvsp[-2].target));
40698 				}
40699 #line 40700 "gram_minimal.c" /* yacc.c:1646  */
40700     break;
40701 
40702   case 1641:
40703 #line 11349 "gram_minimal.y" /* yacc.c:1646  */
40704     {
40705 					int ncolumns = list_length((yyvsp[-3].list));
40706 					int i = 1;
40707 					ListCell *col_cell;
40708 
40709 					/* Create a MultiAssignRef source for each target */
40710 					foreach(col_cell, (yyvsp[-3].list))
40711 					{
40712 						ResTarget *res_col = (ResTarget *) lfirst(col_cell);
40713 						MultiAssignRef *r = makeNode(MultiAssignRef);
40714 
40715 						r->source = (Node *) (yyvsp[0].node);
40716 						r->colno = i;
40717 						r->ncolumns = ncolumns;
40718 						res_col->val = (Node *) r;
40719 						i++;
40720 					}
40721 
40722 					(yyval.list) = (yyvsp[-3].list);
40723 				}
40724 #line 40725 "gram_minimal.c" /* yacc.c:1646  */
40725     break;
40726 
40727   case 1642:
40728 #line 11373 "gram_minimal.y" /* yacc.c:1646  */
40729     {
40730 					(yyval.target) = makeNode(ResTarget);
40731 					(yyval.target)->name = (yyvsp[-1].str);
40732 					(yyval.target)->indirection = check_indirection((yyvsp[0].list), yyscanner);
40733 					(yyval.target)->val = NULL;	/* upper production sets this */
40734 					(yyval.target)->location = (yylsp[-1]);
40735 				}
40736 #line 40737 "gram_minimal.c" /* yacc.c:1646  */
40737     break;
40738 
40739   case 1643:
40740 #line 11383 "gram_minimal.y" /* yacc.c:1646  */
40741     { (yyval.list) = list_make1((yyvsp[0].target)); }
40742 #line 40743 "gram_minimal.c" /* yacc.c:1646  */
40743     break;
40744 
40745   case 1644:
40746 #line 11384 "gram_minimal.y" /* yacc.c:1646  */
40747     { (yyval.list) = lappend((yyvsp[-2].list),(yyvsp[0].target)); }
40748 #line 40749 "gram_minimal.c" /* yacc.c:1646  */
40749     break;
40750 
40751   case 1645:
40752 #line 11395 "gram_minimal.y" /* yacc.c:1646  */
40753     {
40754 					DeclareCursorStmt *n = makeNode(DeclareCursorStmt);
40755 					n->portalname = (yyvsp[-5].str);
40756 					/* currently we always set FAST_PLAN option */
40757 					n->options = (yyvsp[-4].ival) | (yyvsp[-2].ival) | CURSOR_OPT_FAST_PLAN;
40758 					n->query = (yyvsp[0].node);
40759 					(yyval.node) = (Node *)n;
40760 				}
40761 #line 40762 "gram_minimal.c" /* yacc.c:1646  */
40762     break;
40763 
40764   case 1646:
40765 #line 11405 "gram_minimal.y" /* yacc.c:1646  */
40766     { (yyval.str) = (yyvsp[0].str); }
40767 #line 40768 "gram_minimal.c" /* yacc.c:1646  */
40768     break;
40769 
40770   case 1647:
40771 #line 11408 "gram_minimal.y" /* yacc.c:1646  */
40772     { (yyval.ival) = 0; }
40773 #line 40774 "gram_minimal.c" /* yacc.c:1646  */
40774     break;
40775 
40776   case 1648:
40777 #line 11409 "gram_minimal.y" /* yacc.c:1646  */
40778     { (yyval.ival) = (yyvsp[-2].ival) | CURSOR_OPT_NO_SCROLL; }
40779 #line 40780 "gram_minimal.c" /* yacc.c:1646  */
40780     break;
40781 
40782   case 1649:
40783 #line 11410 "gram_minimal.y" /* yacc.c:1646  */
40784     { (yyval.ival) = (yyvsp[-1].ival) | CURSOR_OPT_SCROLL; }
40785 #line 40786 "gram_minimal.c" /* yacc.c:1646  */
40786     break;
40787 
40788   case 1650:
40789 #line 11411 "gram_minimal.y" /* yacc.c:1646  */
40790     { (yyval.ival) = (yyvsp[-1].ival) | CURSOR_OPT_BINARY; }
40791 #line 40792 "gram_minimal.c" /* yacc.c:1646  */
40792     break;
40793 
40794   case 1651:
40795 #line 11412 "gram_minimal.y" /* yacc.c:1646  */
40796     { (yyval.ival) = (yyvsp[-1].ival) | CURSOR_OPT_INSENSITIVE; }
40797 #line 40798 "gram_minimal.c" /* yacc.c:1646  */
40798     break;
40799 
40800   case 1652:
40801 #line 11415 "gram_minimal.y" /* yacc.c:1646  */
40802     { (yyval.ival) = 0; }
40803 #line 40804 "gram_minimal.c" /* yacc.c:1646  */
40804     break;
40805 
40806   case 1653:
40807 #line 11416 "gram_minimal.y" /* yacc.c:1646  */
40808     { (yyval.ival) = CURSOR_OPT_HOLD; }
40809 #line 40810 "gram_minimal.c" /* yacc.c:1646  */
40810     break;
40811 
40812   case 1654:
40813 #line 11417 "gram_minimal.y" /* yacc.c:1646  */
40814     { (yyval.ival) = 0; }
40815 #line 40816 "gram_minimal.c" /* yacc.c:1646  */
40816     break;
40817 
40818   case 1657:
40819 #line 11470 "gram_minimal.y" /* yacc.c:1646  */
40820     { (yyval.node) = (yyvsp[-1].node); }
40821 #line 40822 "gram_minimal.c" /* yacc.c:1646  */
40822     break;
40823 
40824   case 1658:
40825 #line 11471 "gram_minimal.y" /* yacc.c:1646  */
40826     { (yyval.node) = (yyvsp[-1].node); }
40827 #line 40828 "gram_minimal.c" /* yacc.c:1646  */
40828     break;
40829 
40830   case 1659:
40831 #line 11486 "gram_minimal.y" /* yacc.c:1646  */
40832     { (yyval.node) = (yyvsp[0].node); }
40833 #line 40834 "gram_minimal.c" /* yacc.c:1646  */
40834     break;
40835 
40836   case 1660:
40837 #line 11488 "gram_minimal.y" /* yacc.c:1646  */
40838     {
40839 					insertSelectOptions((SelectStmt *) (yyvsp[-1].node), (yyvsp[0].list), NIL,
40840 										NULL, NULL,
40841 										yyscanner);
40842 					(yyval.node) = (yyvsp[-1].node);
40843 				}
40844 #line 40845 "gram_minimal.c" /* yacc.c:1646  */
40845     break;
40846 
40847   case 1661:
40848 #line 11495 "gram_minimal.y" /* yacc.c:1646  */
40849     {
40850 					insertSelectOptions((SelectStmt *) (yyvsp[-3].node), (yyvsp[-2].list), (yyvsp[-1].list),
40851 										(yyvsp[0].selectlimit),
40852 										NULL,
40853 										yyscanner);
40854 					(yyval.node) = (yyvsp[-3].node);
40855 				}
40856 #line 40857 "gram_minimal.c" /* yacc.c:1646  */
40857     break;
40858 
40859   case 1662:
40860 #line 11503 "gram_minimal.y" /* yacc.c:1646  */
40861     {
40862 					insertSelectOptions((SelectStmt *) (yyvsp[-3].node), (yyvsp[-2].list), (yyvsp[0].list),
40863 										(yyvsp[-1].selectlimit),
40864 										NULL,
40865 										yyscanner);
40866 					(yyval.node) = (yyvsp[-3].node);
40867 				}
40868 #line 40869 "gram_minimal.c" /* yacc.c:1646  */
40869     break;
40870 
40871   case 1663:
40872 #line 11511 "gram_minimal.y" /* yacc.c:1646  */
40873     {
40874 					insertSelectOptions((SelectStmt *) (yyvsp[0].node), NULL, NIL,
40875 										NULL,
40876 										(yyvsp[-1].with),
40877 										yyscanner);
40878 					(yyval.node) = (yyvsp[0].node);
40879 				}
40880 #line 40881 "gram_minimal.c" /* yacc.c:1646  */
40881     break;
40882 
40883   case 1664:
40884 #line 11519 "gram_minimal.y" /* yacc.c:1646  */
40885     {
40886 					insertSelectOptions((SelectStmt *) (yyvsp[-1].node), (yyvsp[0].list), NIL,
40887 										NULL,
40888 										(yyvsp[-2].with),
40889 										yyscanner);
40890 					(yyval.node) = (yyvsp[-1].node);
40891 				}
40892 #line 40893 "gram_minimal.c" /* yacc.c:1646  */
40893     break;
40894 
40895   case 1665:
40896 #line 11527 "gram_minimal.y" /* yacc.c:1646  */
40897     {
40898 					insertSelectOptions((SelectStmt *) (yyvsp[-3].node), (yyvsp[-2].list), (yyvsp[-1].list),
40899 										(yyvsp[0].selectlimit),
40900 										(yyvsp[-4].with),
40901 										yyscanner);
40902 					(yyval.node) = (yyvsp[-3].node);
40903 				}
40904 #line 40905 "gram_minimal.c" /* yacc.c:1646  */
40905     break;
40906 
40907   case 1666:
40908 #line 11535 "gram_minimal.y" /* yacc.c:1646  */
40909     {
40910 					insertSelectOptions((SelectStmt *) (yyvsp[-3].node), (yyvsp[-2].list), (yyvsp[0].list),
40911 										(yyvsp[-1].selectlimit),
40912 										(yyvsp[-4].with),
40913 										yyscanner);
40914 					(yyval.node) = (yyvsp[-3].node);
40915 				}
40916 #line 40917 "gram_minimal.c" /* yacc.c:1646  */
40917     break;
40918 
40919   case 1667:
40920 #line 11545 "gram_minimal.y" /* yacc.c:1646  */
40921     { (yyval.node) = (yyvsp[0].node); }
40922 #line 40923 "gram_minimal.c" /* yacc.c:1646  */
40923     break;
40924 
40925   case 1668:
40926 #line 11546 "gram_minimal.y" /* yacc.c:1646  */
40927     { (yyval.node) = (yyvsp[0].node); }
40928 #line 40929 "gram_minimal.c" /* yacc.c:1646  */
40929     break;
40930 
40931   case 1669:
40932 #line 11576 "gram_minimal.y" /* yacc.c:1646  */
40933     {
40934 					SelectStmt *n = makeNode(SelectStmt);
40935 					n->targetList = (yyvsp[-6].list);
40936 					n->intoClause = (yyvsp[-5].into);
40937 					n->fromClause = (yyvsp[-4].list);
40938 					n->whereClause = (yyvsp[-3].node);
40939 					n->groupClause = (yyvsp[-2].list);
40940 					n->havingClause = (yyvsp[-1].node);
40941 					n->windowClause = (yyvsp[0].list);
40942 					(yyval.node) = (Node *)n;
40943 				}
40944 #line 40945 "gram_minimal.c" /* yacc.c:1646  */
40945     break;
40946 
40947   case 1670:
40948 #line 11590 "gram_minimal.y" /* yacc.c:1646  */
40949     {
40950 					SelectStmt *n = makeNode(SelectStmt);
40951 					n->distinctClause = (yyvsp[-7].list);
40952 					n->targetList = (yyvsp[-6].list);
40953 					n->intoClause = (yyvsp[-5].into);
40954 					n->fromClause = (yyvsp[-4].list);
40955 					n->whereClause = (yyvsp[-3].node);
40956 					n->groupClause = (yyvsp[-2].list);
40957 					n->havingClause = (yyvsp[-1].node);
40958 					n->windowClause = (yyvsp[0].list);
40959 					(yyval.node) = (Node *)n;
40960 				}
40961 #line 40962 "gram_minimal.c" /* yacc.c:1646  */
40962     break;
40963 
40964   case 1671:
40965 #line 11602 "gram_minimal.y" /* yacc.c:1646  */
40966     { (yyval.node) = (yyvsp[0].node); }
40967 #line 40968 "gram_minimal.c" /* yacc.c:1646  */
40968     break;
40969 
40970   case 1672:
40971 #line 11604 "gram_minimal.y" /* yacc.c:1646  */
40972     {
40973 					/* same as SELECT * FROM relation_expr */
40974 					ColumnRef *cr = makeNode(ColumnRef);
40975 					ResTarget *rt = makeNode(ResTarget);
40976 					SelectStmt *n = makeNode(SelectStmt);
40977 
40978 					cr->fields = list_make1(makeNode(A_Star));
40979 					cr->location = -1;
40980 
40981 					rt->name = NULL;
40982 					rt->indirection = NIL;
40983 					rt->val = (Node *)cr;
40984 					rt->location = -1;
40985 
40986 					n->targetList = list_make1(rt);
40987 					n->fromClause = list_make1((yyvsp[0].range));
40988 					(yyval.node) = (Node *)n;
40989 				}
40990 #line 40991 "gram_minimal.c" /* yacc.c:1646  */
40991     break;
40992 
40993   case 1673:
40994 #line 11623 "gram_minimal.y" /* yacc.c:1646  */
40995     {
40996 					(yyval.node) = makeSetOp(SETOP_UNION, (yyvsp[-1].boolean), (yyvsp[-3].node), (yyvsp[0].node));
40997 				}
40998 #line 40999 "gram_minimal.c" /* yacc.c:1646  */
40999     break;
41000 
41001   case 1674:
41002 #line 11627 "gram_minimal.y" /* yacc.c:1646  */
41003     {
41004 					(yyval.node) = makeSetOp(SETOP_INTERSECT, (yyvsp[-1].boolean), (yyvsp[-3].node), (yyvsp[0].node));
41005 				}
41006 #line 41007 "gram_minimal.c" /* yacc.c:1646  */
41007     break;
41008 
41009   case 1675:
41010 #line 11631 "gram_minimal.y" /* yacc.c:1646  */
41011     {
41012 					(yyval.node) = makeSetOp(SETOP_EXCEPT, (yyvsp[-1].boolean), (yyvsp[-3].node), (yyvsp[0].node));
41013 				}
41014 #line 41015 "gram_minimal.c" /* yacc.c:1646  */
41015     break;
41016 
41017   case 1676:
41018 #line 11648 "gram_minimal.y" /* yacc.c:1646  */
41019     {
41020 				(yyval.with) = makeNode(WithClause);
41021 				(yyval.with)->ctes = (yyvsp[0].list);
41022 				(yyval.with)->recursive = false;
41023 				(yyval.with)->location = (yylsp[-1]);
41024 			}
41025 #line 41026 "gram_minimal.c" /* yacc.c:1646  */
41026     break;
41027 
41028   case 1677:
41029 #line 11655 "gram_minimal.y" /* yacc.c:1646  */
41030     {
41031 				(yyval.with) = makeNode(WithClause);
41032 				(yyval.with)->ctes = (yyvsp[0].list);
41033 				(yyval.with)->recursive = false;
41034 				(yyval.with)->location = (yylsp[-1]);
41035 			}
41036 #line 41037 "gram_minimal.c" /* yacc.c:1646  */
41037     break;
41038 
41039   case 1678:
41040 #line 11662 "gram_minimal.y" /* yacc.c:1646  */
41041     {
41042 				(yyval.with) = makeNode(WithClause);
41043 				(yyval.with)->ctes = (yyvsp[0].list);
41044 				(yyval.with)->recursive = true;
41045 				(yyval.with)->location = (yylsp[-2]);
41046 			}
41047 #line 41048 "gram_minimal.c" /* yacc.c:1646  */
41048     break;
41049 
41050   case 1679:
41051 #line 11671 "gram_minimal.y" /* yacc.c:1646  */
41052     { (yyval.list) = list_make1((yyvsp[0].node)); }
41053 #line 41054 "gram_minimal.c" /* yacc.c:1646  */
41054     break;
41055 
41056   case 1680:
41057 #line 11672 "gram_minimal.y" /* yacc.c:1646  */
41058     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
41059 #line 41060 "gram_minimal.c" /* yacc.c:1646  */
41060     break;
41061 
41062   case 1681:
41063 #line 11676 "gram_minimal.y" /* yacc.c:1646  */
41064     {
41065 				CommonTableExpr *n = makeNode(CommonTableExpr);
41066 				n->ctename = (yyvsp[-6].str);
41067 				n->aliascolnames = (yyvsp[-5].list);
41068 				n->ctematerialized = (yyvsp[-3].ival);
41069 				n->ctequery = (yyvsp[-1].node);
41070 				n->location = (yylsp[-6]);
41071 				(yyval.node) = (Node *) n;
41072 			}
41073 #line 41074 "gram_minimal.c" /* yacc.c:1646  */
41074     break;
41075 
41076   case 1682:
41077 #line 11688 "gram_minimal.y" /* yacc.c:1646  */
41078     { (yyval.ival) = CTEMaterializeAlways; }
41079 #line 41080 "gram_minimal.c" /* yacc.c:1646  */
41080     break;
41081 
41082   case 1683:
41083 #line 11689 "gram_minimal.y" /* yacc.c:1646  */
41084     { (yyval.ival) = CTEMaterializeNever; }
41085 #line 41086 "gram_minimal.c" /* yacc.c:1646  */
41086     break;
41087 
41088   case 1684:
41089 #line 11690 "gram_minimal.y" /* yacc.c:1646  */
41090     { (yyval.ival) = CTEMaterializeDefault; }
41091 #line 41092 "gram_minimal.c" /* yacc.c:1646  */
41092     break;
41093 
41094   case 1685:
41095 #line 11694 "gram_minimal.y" /* yacc.c:1646  */
41096     { (yyval.with) = (yyvsp[0].with); }
41097 #line 41098 "gram_minimal.c" /* yacc.c:1646  */
41098     break;
41099 
41100   case 1686:
41101 #line 11695 "gram_minimal.y" /* yacc.c:1646  */
41102     { (yyval.with) = NULL; }
41103 #line 41104 "gram_minimal.c" /* yacc.c:1646  */
41104     break;
41105 
41106   case 1687:
41107 #line 11700 "gram_minimal.y" /* yacc.c:1646  */
41108     {
41109 					(yyval.into) = makeNode(IntoClause);
41110 					(yyval.into)->rel = (yyvsp[0].range);
41111 					(yyval.into)->colNames = NIL;
41112 					(yyval.into)->options = NIL;
41113 					(yyval.into)->onCommit = ONCOMMIT_NOOP;
41114 					(yyval.into)->tableSpaceName = NULL;
41115 					(yyval.into)->viewQuery = NULL;
41116 					(yyval.into)->skipData = false;
41117 				}
41118 #line 41119 "gram_minimal.c" /* yacc.c:1646  */
41119     break;
41120 
41121   case 1688:
41122 #line 11711 "gram_minimal.y" /* yacc.c:1646  */
41123     { (yyval.into) = NULL; }
41124 #line 41125 "gram_minimal.c" /* yacc.c:1646  */
41125     break;
41126 
41127   case 1689:
41128 #line 11720 "gram_minimal.y" /* yacc.c:1646  */
41129     {
41130 					(yyval.range) = (yyvsp[0].range);
41131 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41132 				}
41133 #line 41134 "gram_minimal.c" /* yacc.c:1646  */
41134     break;
41135 
41136   case 1690:
41137 #line 11725 "gram_minimal.y" /* yacc.c:1646  */
41138     {
41139 					(yyval.range) = (yyvsp[0].range);
41140 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41141 				}
41142 #line 41143 "gram_minimal.c" /* yacc.c:1646  */
41143     break;
41144 
41145   case 1691:
41146 #line 11730 "gram_minimal.y" /* yacc.c:1646  */
41147     {
41148 					(yyval.range) = (yyvsp[0].range);
41149 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41150 				}
41151 #line 41152 "gram_minimal.c" /* yacc.c:1646  */
41152     break;
41153 
41154   case 1692:
41155 #line 11735 "gram_minimal.y" /* yacc.c:1646  */
41156     {
41157 					(yyval.range) = (yyvsp[0].range);
41158 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41159 				}
41160 #line 41161 "gram_minimal.c" /* yacc.c:1646  */
41161     break;
41162 
41163   case 1693:
41164 #line 11740 "gram_minimal.y" /* yacc.c:1646  */
41165     {
41166 					ereport(WARNING,
41167 							(errmsg("GLOBAL is deprecated in temporary table creation"),
41168 							 parser_errposition((yylsp[-3]))));
41169 					(yyval.range) = (yyvsp[0].range);
41170 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41171 				}
41172 #line 41173 "gram_minimal.c" /* yacc.c:1646  */
41173     break;
41174 
41175   case 1694:
41176 #line 11748 "gram_minimal.y" /* yacc.c:1646  */
41177     {
41178 					ereport(WARNING,
41179 							(errmsg("GLOBAL is deprecated in temporary table creation"),
41180 							 parser_errposition((yylsp[-3]))));
41181 					(yyval.range) = (yyvsp[0].range);
41182 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
41183 				}
41184 #line 41185 "gram_minimal.c" /* yacc.c:1646  */
41185     break;
41186 
41187   case 1695:
41188 #line 11756 "gram_minimal.y" /* yacc.c:1646  */
41189     {
41190 					(yyval.range) = (yyvsp[0].range);
41191 					(yyval.range)->relpersistence = RELPERSISTENCE_UNLOGGED;
41192 				}
41193 #line 41194 "gram_minimal.c" /* yacc.c:1646  */
41194     break;
41195 
41196   case 1696:
41197 #line 11761 "gram_minimal.y" /* yacc.c:1646  */
41198     {
41199 					(yyval.range) = (yyvsp[0].range);
41200 					(yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT;
41201 				}
41202 #line 41203 "gram_minimal.c" /* yacc.c:1646  */
41203     break;
41204 
41205   case 1697:
41206 #line 11766 "gram_minimal.y" /* yacc.c:1646  */
41207     {
41208 					(yyval.range) = (yyvsp[0].range);
41209 					(yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT;
41210 				}
41211 #line 41212 "gram_minimal.c" /* yacc.c:1646  */
41212     break;
41213 
41214   case 1698:
41215 #line 11772 "gram_minimal.y" /* yacc.c:1646  */
41216     {}
41217 #line 41218 "gram_minimal.c" /* yacc.c:1646  */
41218     break;
41219 
41220   case 1699:
41221 #line 11773 "gram_minimal.y" /* yacc.c:1646  */
41222     {}
41223 #line 41224 "gram_minimal.c" /* yacc.c:1646  */
41224     break;
41225 
41226   case 1700:
41227 #line 11777 "gram_minimal.y" /* yacc.c:1646  */
41228     { (yyval.boolean) = true; }
41229 #line 41230 "gram_minimal.c" /* yacc.c:1646  */
41230     break;
41231 
41232   case 1701:
41233 #line 11778 "gram_minimal.y" /* yacc.c:1646  */
41234     { (yyval.boolean) = false; }
41235 #line 41236 "gram_minimal.c" /* yacc.c:1646  */
41236     break;
41237 
41238   case 1702:
41239 #line 11779 "gram_minimal.y" /* yacc.c:1646  */
41240     { (yyval.boolean) = false; }
41241 #line 41242 "gram_minimal.c" /* yacc.c:1646  */
41242     break;
41243 
41244   case 1703:
41245 #line 11786 "gram_minimal.y" /* yacc.c:1646  */
41246     { (yyval.list) = list_make1(NIL); }
41247 #line 41248 "gram_minimal.c" /* yacc.c:1646  */
41248     break;
41249 
41250   case 1704:
41251 #line 11787 "gram_minimal.y" /* yacc.c:1646  */
41252     { (yyval.list) = (yyvsp[-1].list); }
41253 #line 41254 "gram_minimal.c" /* yacc.c:1646  */
41254     break;
41255 
41256   case 1705:
41257 #line 11791 "gram_minimal.y" /* yacc.c:1646  */
41258     { (yyval.list) = NIL;}
41259 #line 41260 "gram_minimal.c" /* yacc.c:1646  */
41260     break;
41261 
41262   case 1706:
41263 #line 11792 "gram_minimal.y" /* yacc.c:1646  */
41264     { (yyval.list) = NIL; }
41265 #line 41266 "gram_minimal.c" /* yacc.c:1646  */
41266     break;
41267 
41268   case 1707:
41269 #line 11796 "gram_minimal.y" /* yacc.c:1646  */
41270     { (yyval.list) = (yyvsp[0].list);}
41271 #line 41272 "gram_minimal.c" /* yacc.c:1646  */
41272     break;
41273 
41274   case 1708:
41275 #line 11797 "gram_minimal.y" /* yacc.c:1646  */
41276     { (yyval.list) = NIL; }
41277 #line 41278 "gram_minimal.c" /* yacc.c:1646  */
41278     break;
41279 
41280   case 1709:
41281 #line 11801 "gram_minimal.y" /* yacc.c:1646  */
41282     { (yyval.list) = (yyvsp[0].list); }
41283 #line 41284 "gram_minimal.c" /* yacc.c:1646  */
41284     break;
41285 
41286   case 1710:
41287 #line 11805 "gram_minimal.y" /* yacc.c:1646  */
41288     { (yyval.list) = list_make1((yyvsp[0].sortby)); }
41289 #line 41290 "gram_minimal.c" /* yacc.c:1646  */
41290     break;
41291 
41292   case 1711:
41293 #line 11806 "gram_minimal.y" /* yacc.c:1646  */
41294     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].sortby)); }
41295 #line 41296 "gram_minimal.c" /* yacc.c:1646  */
41296     break;
41297 
41298   case 1712:
41299 #line 11810 "gram_minimal.y" /* yacc.c:1646  */
41300     {
41301 					(yyval.sortby) = makeNode(SortBy);
41302 					(yyval.sortby)->node = (yyvsp[-3].node);
41303 					(yyval.sortby)->sortby_dir = SORTBY_USING;
41304 					(yyval.sortby)->sortby_nulls = (yyvsp[0].ival);
41305 					(yyval.sortby)->useOp = (yyvsp[-1].list);
41306 					(yyval.sortby)->location = (yylsp[-1]);
41307 				}
41308 #line 41309 "gram_minimal.c" /* yacc.c:1646  */
41309     break;
41310 
41311   case 1713:
41312 #line 11819 "gram_minimal.y" /* yacc.c:1646  */
41313     {
41314 					(yyval.sortby) = makeNode(SortBy);
41315 					(yyval.sortby)->node = (yyvsp[-2].node);
41316 					(yyval.sortby)->sortby_dir = (yyvsp[-1].ival);
41317 					(yyval.sortby)->sortby_nulls = (yyvsp[0].ival);
41318 					(yyval.sortby)->useOp = NIL;
41319 					(yyval.sortby)->location = -1;		/* no operator */
41320 				}
41321 #line 41322 "gram_minimal.c" /* yacc.c:1646  */
41322     break;
41323 
41324   case 1714:
41325 #line 11832 "gram_minimal.y" /* yacc.c:1646  */
41326     {
41327 					(yyval.selectlimit) = (yyvsp[-1].selectlimit);
41328 					((yyval.selectlimit))->limitOffset = (yyvsp[0].node);
41329 				}
41330 #line 41331 "gram_minimal.c" /* yacc.c:1646  */
41331     break;
41332 
41333   case 1715:
41334 #line 11837 "gram_minimal.y" /* yacc.c:1646  */
41335     {
41336 					(yyval.selectlimit) = (yyvsp[0].selectlimit);
41337 					((yyval.selectlimit))->limitOffset = (yyvsp[-1].node);
41338 				}
41339 #line 41340 "gram_minimal.c" /* yacc.c:1646  */
41340     break;
41341 
41342   case 1716:
41343 #line 11842 "gram_minimal.y" /* yacc.c:1646  */
41344     {
41345 					(yyval.selectlimit) = (yyvsp[0].selectlimit);
41346 				}
41347 #line 41348 "gram_minimal.c" /* yacc.c:1646  */
41348     break;
41349 
41350   case 1717:
41351 #line 11846 "gram_minimal.y" /* yacc.c:1646  */
41352     {
41353 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41354 					n->limitOffset = (yyvsp[0].node);
41355 					n->limitCount = NULL;
41356 					n->limitOption = LIMIT_OPTION_COUNT;
41357 					(yyval.selectlimit) = n;
41358 				}
41359 #line 41360 "gram_minimal.c" /* yacc.c:1646  */
41360     break;
41361 
41362   case 1718:
41363 #line 11856 "gram_minimal.y" /* yacc.c:1646  */
41364     { (yyval.selectlimit) = (yyvsp[0].selectlimit); }
41365 #line 41366 "gram_minimal.c" /* yacc.c:1646  */
41366     break;
41367 
41368   case 1719:
41369 #line 11857 "gram_minimal.y" /* yacc.c:1646  */
41370     { (yyval.selectlimit) = NULL; }
41371 #line 41372 "gram_minimal.c" /* yacc.c:1646  */
41372     break;
41373 
41374   case 1720:
41375 #line 11862 "gram_minimal.y" /* yacc.c:1646  */
41376     {
41377 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41378 					n->limitOffset = NULL;
41379 					n->limitCount = (yyvsp[0].node);
41380 					n->limitOption = LIMIT_OPTION_COUNT;
41381 					(yyval.selectlimit) = n;
41382 				}
41383 #line 41384 "gram_minimal.c" /* yacc.c:1646  */
41384     break;
41385 
41386   case 1721:
41387 #line 11870 "gram_minimal.y" /* yacc.c:1646  */
41388     {
41389 					/* Disabled because it was too confusing, bjm 2002-02-18 */
41390 					ereport(ERROR,
41391 							(errcode(ERRCODE_SYNTAX_ERROR),
41392 							 errmsg("LIMIT #,# syntax is not supported"),
41393 							 errhint("Use separate LIMIT and OFFSET clauses."),
41394 							 parser_errposition((yylsp[-3]))));
41395 				}
41396 #line 41397 "gram_minimal.c" /* yacc.c:1646  */
41397     break;
41398 
41399   case 1722:
41400 #line 11886 "gram_minimal.y" /* yacc.c:1646  */
41401     {
41402 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41403 					n->limitOffset = NULL;
41404 					n->limitCount = (yyvsp[-2].node);
41405 					n->limitOption = LIMIT_OPTION_COUNT;
41406 					(yyval.selectlimit) = n;
41407 				}
41408 #line 41409 "gram_minimal.c" /* yacc.c:1646  */
41409     break;
41410 
41411   case 1723:
41412 #line 11894 "gram_minimal.y" /* yacc.c:1646  */
41413     {
41414 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41415 					n->limitOffset = NULL;
41416 					n->limitCount = (yyvsp[-3].node);
41417 					n->limitOption = LIMIT_OPTION_WITH_TIES;
41418 					(yyval.selectlimit) = n;
41419 				}
41420 #line 41421 "gram_minimal.c" /* yacc.c:1646  */
41421     break;
41422 
41423   case 1724:
41424 #line 11902 "gram_minimal.y" /* yacc.c:1646  */
41425     {
41426 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41427 					n->limitOffset = NULL;
41428 					n->limitCount = makeIntConst(1, -1);
41429 					n->limitOption = LIMIT_OPTION_COUNT;
41430 					(yyval.selectlimit) = n;
41431 				}
41432 #line 41433 "gram_minimal.c" /* yacc.c:1646  */
41433     break;
41434 
41435   case 1725:
41436 #line 11910 "gram_minimal.y" /* yacc.c:1646  */
41437     {
41438 					SelectLimit *n = (SelectLimit *) palloc(sizeof(SelectLimit));
41439 					n->limitOffset = NULL;
41440 					n->limitCount = makeIntConst(1, -1);
41441 					n->limitOption = LIMIT_OPTION_WITH_TIES;
41442 					(yyval.selectlimit) = n;
41443 				}
41444 #line 41445 "gram_minimal.c" /* yacc.c:1646  */
41445     break;
41446 
41447   case 1726:
41448 #line 11921 "gram_minimal.y" /* yacc.c:1646  */
41449     { (yyval.node) = (yyvsp[0].node); }
41450 #line 41451 "gram_minimal.c" /* yacc.c:1646  */
41451     break;
41452 
41453   case 1727:
41454 #line 11924 "gram_minimal.y" /* yacc.c:1646  */
41455     { (yyval.node) = (yyvsp[-1].node); }
41456 #line 41457 "gram_minimal.c" /* yacc.c:1646  */
41457     break;
41458 
41459   case 1728:
41460 #line 11928 "gram_minimal.y" /* yacc.c:1646  */
41461     { (yyval.node) = (yyvsp[0].node); }
41462 #line 41463 "gram_minimal.c" /* yacc.c:1646  */
41463     break;
41464 
41465   case 1729:
41466 #line 11930 "gram_minimal.y" /* yacc.c:1646  */
41467     {
41468 					/* LIMIT ALL is represented as a NULL constant */
41469 					(yyval.node) = makeNullAConst((yylsp[0]));
41470 				}
41471 #line 41472 "gram_minimal.c" /* yacc.c:1646  */
41472     break;
41473 
41474   case 1730:
41475 #line 11937 "gram_minimal.y" /* yacc.c:1646  */
41476     { (yyval.node) = (yyvsp[0].node); }
41477 #line 41478 "gram_minimal.c" /* yacc.c:1646  */
41478     break;
41479 
41480   case 1731:
41481 #line 11957 "gram_minimal.y" /* yacc.c:1646  */
41482     { (yyval.node) = (yyvsp[0].node); }
41483 #line 41484 "gram_minimal.c" /* yacc.c:1646  */
41484     break;
41485 
41486   case 1732:
41487 #line 11959 "gram_minimal.y" /* yacc.c:1646  */
41488     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[0].node), (yylsp[-1])); }
41489 #line 41490 "gram_minimal.c" /* yacc.c:1646  */
41490     break;
41491 
41492   case 1733:
41493 #line 11961 "gram_minimal.y" /* yacc.c:1646  */
41494     { (yyval.node) = doNegate((yyvsp[0].node), (yylsp[-1])); }
41495 #line 41496 "gram_minimal.c" /* yacc.c:1646  */
41496     break;
41497 
41498   case 1734:
41499 #line 11965 "gram_minimal.y" /* yacc.c:1646  */
41500     { (yyval.node) = makeIntConst((yyvsp[0].ival),(yylsp[0])); }
41501 #line 41502 "gram_minimal.c" /* yacc.c:1646  */
41502     break;
41503 
41504   case 1735:
41505 #line 11966 "gram_minimal.y" /* yacc.c:1646  */
41506     { (yyval.node) = makeFloatConst((yyvsp[0].str),(yylsp[0])); }
41507 #line 41508 "gram_minimal.c" /* yacc.c:1646  */
41508     break;
41509 
41510   case 1736:
41511 #line 11970 "gram_minimal.y" /* yacc.c:1646  */
41512     { (yyval.ival) = 0; }
41513 #line 41514 "gram_minimal.c" /* yacc.c:1646  */
41514     break;
41515 
41516   case 1737:
41517 #line 11971 "gram_minimal.y" /* yacc.c:1646  */
41518     { (yyval.ival) = 0; }
41519 #line 41520 "gram_minimal.c" /* yacc.c:1646  */
41520     break;
41521 
41522   case 1738:
41523 #line 11974 "gram_minimal.y" /* yacc.c:1646  */
41524     { (yyval.ival) = 0; }
41525 #line 41526 "gram_minimal.c" /* yacc.c:1646  */
41526     break;
41527 
41528   case 1739:
41529 #line 11975 "gram_minimal.y" /* yacc.c:1646  */
41530     { (yyval.ival) = 0; }
41531 #line 41532 "gram_minimal.c" /* yacc.c:1646  */
41532     break;
41533 
41534   case 1740:
41535 #line 12000 "gram_minimal.y" /* yacc.c:1646  */
41536     { (yyval.list) = (yyvsp[0].list); }
41537 #line 41538 "gram_minimal.c" /* yacc.c:1646  */
41538     break;
41539 
41540   case 1741:
41541 #line 12001 "gram_minimal.y" /* yacc.c:1646  */
41542     { (yyval.list) = NIL; }
41543 #line 41544 "gram_minimal.c" /* yacc.c:1646  */
41544     break;
41545 
41546   case 1742:
41547 #line 12005 "gram_minimal.y" /* yacc.c:1646  */
41548     { (yyval.list) = list_make1((yyvsp[0].node)); }
41549 #line 41550 "gram_minimal.c" /* yacc.c:1646  */
41550     break;
41551 
41552   case 1743:
41553 #line 12006 "gram_minimal.y" /* yacc.c:1646  */
41554     { (yyval.list) = lappend((yyvsp[-2].list),(yyvsp[0].node)); }
41555 #line 41556 "gram_minimal.c" /* yacc.c:1646  */
41556     break;
41557 
41558   case 1744:
41559 #line 12010 "gram_minimal.y" /* yacc.c:1646  */
41560     { (yyval.node) = (yyvsp[0].node); }
41561 #line 41562 "gram_minimal.c" /* yacc.c:1646  */
41562     break;
41563 
41564   case 1745:
41565 #line 12011 "gram_minimal.y" /* yacc.c:1646  */
41566     { (yyval.node) = (yyvsp[0].node); }
41567 #line 41568 "gram_minimal.c" /* yacc.c:1646  */
41568     break;
41569 
41570   case 1746:
41571 #line 12012 "gram_minimal.y" /* yacc.c:1646  */
41572     { (yyval.node) = (yyvsp[0].node); }
41573 #line 41574 "gram_minimal.c" /* yacc.c:1646  */
41574     break;
41575 
41576   case 1747:
41577 #line 12013 "gram_minimal.y" /* yacc.c:1646  */
41578     { (yyval.node) = (yyvsp[0].node); }
41579 #line 41580 "gram_minimal.c" /* yacc.c:1646  */
41580     break;
41581 
41582   case 1748:
41583 #line 12014 "gram_minimal.y" /* yacc.c:1646  */
41584     { (yyval.node) = (yyvsp[0].node); }
41585 #line 41586 "gram_minimal.c" /* yacc.c:1646  */
41586     break;
41587 
41588   case 1749:
41589 #line 12019 "gram_minimal.y" /* yacc.c:1646  */
41590     {
41591 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_EMPTY, NIL, (yylsp[-1]));
41592 				}
41593 #line 41594 "gram_minimal.c" /* yacc.c:1646  */
41594     break;
41595 
41596   case 1750:
41597 #line 12032 "gram_minimal.y" /* yacc.c:1646  */
41598     {
41599 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_ROLLUP, (yyvsp[-1].list), (yylsp[-3]));
41600 				}
41601 #line 41602 "gram_minimal.c" /* yacc.c:1646  */
41602     break;
41603 
41604   case 1751:
41605 #line 12039 "gram_minimal.y" /* yacc.c:1646  */
41606     {
41607 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_CUBE, (yyvsp[-1].list), (yylsp[-3]));
41608 				}
41609 #line 41610 "gram_minimal.c" /* yacc.c:1646  */
41610     break;
41611 
41612   case 1752:
41613 #line 12046 "gram_minimal.y" /* yacc.c:1646  */
41614     {
41615 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_SETS, (yyvsp[-1].list), (yylsp[-4]));
41616 				}
41617 #line 41618 "gram_minimal.c" /* yacc.c:1646  */
41618     break;
41619 
41620   case 1753:
41621 #line 12052 "gram_minimal.y" /* yacc.c:1646  */
41622     { (yyval.node) = (yyvsp[0].node); }
41623 #line 41624 "gram_minimal.c" /* yacc.c:1646  */
41624     break;
41625 
41626   case 1754:
41627 #line 12053 "gram_minimal.y" /* yacc.c:1646  */
41628     { (yyval.node) = NULL; }
41629 #line 41630 "gram_minimal.c" /* yacc.c:1646  */
41630     break;
41631 
41632   case 1755:
41633 #line 12057 "gram_minimal.y" /* yacc.c:1646  */
41634     { (yyval.list) = (yyvsp[0].list); }
41635 #line 41636 "gram_minimal.c" /* yacc.c:1646  */
41636     break;
41637 
41638   case 1756:
41639 #line 12058 "gram_minimal.y" /* yacc.c:1646  */
41640     { (yyval.list) = NIL; }
41641 #line 41642 "gram_minimal.c" /* yacc.c:1646  */
41642     break;
41643 
41644   case 1757:
41645 #line 12062 "gram_minimal.y" /* yacc.c:1646  */
41646     { (yyval.list) = (yyvsp[0].list); }
41647 #line 41648 "gram_minimal.c" /* yacc.c:1646  */
41648     break;
41649 
41650   case 1758:
41651 #line 12063 "gram_minimal.y" /* yacc.c:1646  */
41652     { (yyval.list) = NIL; }
41653 #line 41654 "gram_minimal.c" /* yacc.c:1646  */
41654     break;
41655 
41656   case 1759:
41657 #line 12067 "gram_minimal.y" /* yacc.c:1646  */
41658     { (yyval.list) = list_make1((yyvsp[0].node)); }
41659 #line 41660 "gram_minimal.c" /* yacc.c:1646  */
41660     break;
41661 
41662   case 1760:
41663 #line 12068 "gram_minimal.y" /* yacc.c:1646  */
41664     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
41665 #line 41666 "gram_minimal.c" /* yacc.c:1646  */
41666     break;
41667 
41668   case 1761:
41669 #line 12073 "gram_minimal.y" /* yacc.c:1646  */
41670     {
41671 					LockingClause *n = makeNode(LockingClause);
41672 					n->lockedRels = (yyvsp[-1].list);
41673 					n->strength = (yyvsp[-2].ival);
41674 					n->waitPolicy = (yyvsp[0].ival);
41675 					(yyval.node) = (Node *) n;
41676 				}
41677 #line 41678 "gram_minimal.c" /* yacc.c:1646  */
41678     break;
41679 
41680   case 1762:
41681 #line 12083 "gram_minimal.y" /* yacc.c:1646  */
41682     { (yyval.ival) = LCS_FORUPDATE; }
41683 #line 41684 "gram_minimal.c" /* yacc.c:1646  */
41684     break;
41685 
41686   case 1763:
41687 #line 12084 "gram_minimal.y" /* yacc.c:1646  */
41688     { (yyval.ival) = LCS_FORNOKEYUPDATE; }
41689 #line 41690 "gram_minimal.c" /* yacc.c:1646  */
41690     break;
41691 
41692   case 1764:
41693 #line 12085 "gram_minimal.y" /* yacc.c:1646  */
41694     { (yyval.ival) = LCS_FORSHARE; }
41695 #line 41696 "gram_minimal.c" /* yacc.c:1646  */
41696     break;
41697 
41698   case 1765:
41699 #line 12086 "gram_minimal.y" /* yacc.c:1646  */
41700     { (yyval.ival) = LCS_FORKEYSHARE; }
41701 #line 41702 "gram_minimal.c" /* yacc.c:1646  */
41702     break;
41703 
41704   case 1766:
41705 #line 12090 "gram_minimal.y" /* yacc.c:1646  */
41706     { (yyval.list) = (yyvsp[0].list); }
41707 #line 41708 "gram_minimal.c" /* yacc.c:1646  */
41708     break;
41709 
41710   case 1767:
41711 #line 12091 "gram_minimal.y" /* yacc.c:1646  */
41712     { (yyval.list) = NIL; }
41713 #line 41714 "gram_minimal.c" /* yacc.c:1646  */
41714     break;
41715 
41716   case 1768:
41717 #line 12102 "gram_minimal.y" /* yacc.c:1646  */
41718     {
41719 					SelectStmt *n = makeNode(SelectStmt);
41720 					n->valuesLists = list_make1((yyvsp[-1].list));
41721 					(yyval.node) = (Node *) n;
41722 				}
41723 #line 41724 "gram_minimal.c" /* yacc.c:1646  */
41724     break;
41725 
41726   case 1769:
41727 #line 12108 "gram_minimal.y" /* yacc.c:1646  */
41728     {
41729 					SelectStmt *n = (SelectStmt *) (yyvsp[-4].node);
41730 					n->valuesLists = lappend(n->valuesLists, (yyvsp[-1].list));
41731 					(yyval.node) = (Node *) n;
41732 				}
41733 #line 41734 "gram_minimal.c" /* yacc.c:1646  */
41734     break;
41735 
41736   case 1770:
41737 #line 12125 "gram_minimal.y" /* yacc.c:1646  */
41738     { (yyval.list) = (yyvsp[0].list); }
41739 #line 41740 "gram_minimal.c" /* yacc.c:1646  */
41740     break;
41741 
41742   case 1771:
41743 #line 12126 "gram_minimal.y" /* yacc.c:1646  */
41744     { (yyval.list) = NIL; }
41745 #line 41746 "gram_minimal.c" /* yacc.c:1646  */
41746     break;
41747 
41748   case 1772:
41749 #line 12130 "gram_minimal.y" /* yacc.c:1646  */
41750     { (yyval.list) = list_make1((yyvsp[0].node)); }
41751 #line 41752 "gram_minimal.c" /* yacc.c:1646  */
41752     break;
41753 
41754   case 1773:
41755 #line 12131 "gram_minimal.y" /* yacc.c:1646  */
41756     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
41757 #line 41758 "gram_minimal.c" /* yacc.c:1646  */
41758     break;
41759 
41760   case 1774:
41761 #line 12138 "gram_minimal.y" /* yacc.c:1646  */
41762     {
41763 					(yyvsp[-1].range)->alias = (yyvsp[0].alias);
41764 					(yyval.node) = (Node *) (yyvsp[-1].range);
41765 				}
41766 #line 41767 "gram_minimal.c" /* yacc.c:1646  */
41767     break;
41768 
41769   case 1775:
41770 #line 12143 "gram_minimal.y" /* yacc.c:1646  */
41771     {
41772 					RangeTableSample *n = (RangeTableSample *) (yyvsp[0].node);
41773 					(yyvsp[-2].range)->alias = (yyvsp[-1].alias);
41774 					/* relation_expr goes inside the RangeTableSample node */
41775 					n->relation = (Node *) (yyvsp[-2].range);
41776 					(yyval.node) = (Node *) n;
41777 				}
41778 #line 41779 "gram_minimal.c" /* yacc.c:1646  */
41779     break;
41780 
41781   case 1776:
41782 #line 12151 "gram_minimal.y" /* yacc.c:1646  */
41783     {
41784 					RangeFunction *n = (RangeFunction *) (yyvsp[-1].node);
41785 					n->alias = linitial((yyvsp[0].list));
41786 					n->coldeflist = lsecond((yyvsp[0].list));
41787 					(yyval.node) = (Node *) n;
41788 				}
41789 #line 41790 "gram_minimal.c" /* yacc.c:1646  */
41790     break;
41791 
41792   case 1777:
41793 #line 12158 "gram_minimal.y" /* yacc.c:1646  */
41794     {
41795 					RangeFunction *n = (RangeFunction *) (yyvsp[-1].node);
41796 					n->lateral = true;
41797 					n->alias = linitial((yyvsp[0].list));
41798 					n->coldeflist = lsecond((yyvsp[0].list));
41799 					(yyval.node) = (Node *) n;
41800 				}
41801 #line 41802 "gram_minimal.c" /* yacc.c:1646  */
41802     break;
41803 
41804   case 1778:
41805 #line 12166 "gram_minimal.y" /* yacc.c:1646  */
41806     {
41807 					RangeTableFunc *n = (RangeTableFunc *) (yyvsp[-1].node);
41808 					n->alias = (yyvsp[0].alias);
41809 					(yyval.node) = (Node *) n;
41810 				}
41811 #line 41812 "gram_minimal.c" /* yacc.c:1646  */
41812     break;
41813 
41814   case 1779:
41815 #line 12172 "gram_minimal.y" /* yacc.c:1646  */
41816     {
41817 					RangeTableFunc *n = (RangeTableFunc *) (yyvsp[-1].node);
41818 					n->lateral = true;
41819 					n->alias = (yyvsp[0].alias);
41820 					(yyval.node) = (Node *) n;
41821 				}
41822 #line 41823 "gram_minimal.c" /* yacc.c:1646  */
41823     break;
41824 
41825   case 1780:
41826 #line 12179 "gram_minimal.y" /* yacc.c:1646  */
41827     {
41828 					RangeSubselect *n = makeNode(RangeSubselect);
41829 					n->lateral = false;
41830 					n->subquery = (yyvsp[-1].node);
41831 					n->alias = (yyvsp[0].alias);
41832 					/*
41833 					 * The SQL spec does not permit a subselect
41834 					 * (<derived_table>) without an alias clause,
41835 					 * so we don't either.  This avoids the problem
41836 					 * of needing to invent a unique refname for it.
41837 					 * That could be surmounted if there's sufficient
41838 					 * popular demand, but for now let's just implement
41839 					 * the spec and see if anyone complains.
41840 					 * However, it does seem like a good idea to emit
41841 					 * an error message that's better than "syntax error".
41842 					 */
41843 					if ((yyvsp[0].alias) == NULL)
41844 					{
41845 						if (IsA((yyvsp[-1].node), SelectStmt) &&
41846 							((SelectStmt *) (yyvsp[-1].node))->valuesLists)
41847 							ereport(ERROR,
41848 									(errcode(ERRCODE_SYNTAX_ERROR),
41849 									 errmsg("VALUES in FROM must have an alias"),
41850 									 errhint("For example, FROM (VALUES ...) [AS] foo."),
41851 									 parser_errposition((yylsp[-1]))));
41852 						else
41853 							ereport(ERROR,
41854 									(errcode(ERRCODE_SYNTAX_ERROR),
41855 									 errmsg("subquery in FROM must have an alias"),
41856 									 errhint("For example, FROM (SELECT ...) [AS] foo."),
41857 									 parser_errposition((yylsp[-1]))));
41858 					}
41859 					(yyval.node) = (Node *) n;
41860 				}
41861 #line 41862 "gram_minimal.c" /* yacc.c:1646  */
41862     break;
41863 
41864   case 1781:
41865 #line 12214 "gram_minimal.y" /* yacc.c:1646  */
41866     {
41867 					RangeSubselect *n = makeNode(RangeSubselect);
41868 					n->lateral = true;
41869 					n->subquery = (yyvsp[-1].node);
41870 					n->alias = (yyvsp[0].alias);
41871 					/* same comment as above */
41872 					if ((yyvsp[0].alias) == NULL)
41873 					{
41874 						if (IsA((yyvsp[-1].node), SelectStmt) &&
41875 							((SelectStmt *) (yyvsp[-1].node))->valuesLists)
41876 							ereport(ERROR,
41877 									(errcode(ERRCODE_SYNTAX_ERROR),
41878 									 errmsg("VALUES in FROM must have an alias"),
41879 									 errhint("For example, FROM (VALUES ...) [AS] foo."),
41880 									 parser_errposition((yylsp[-1]))));
41881 						else
41882 							ereport(ERROR,
41883 									(errcode(ERRCODE_SYNTAX_ERROR),
41884 									 errmsg("subquery in FROM must have an alias"),
41885 									 errhint("For example, FROM (SELECT ...) [AS] foo."),
41886 									 parser_errposition((yylsp[-1]))));
41887 					}
41888 					(yyval.node) = (Node *) n;
41889 				}
41890 #line 41891 "gram_minimal.c" /* yacc.c:1646  */
41891     break;
41892 
41893   case 1782:
41894 #line 12239 "gram_minimal.y" /* yacc.c:1646  */
41895     {
41896 					(yyval.node) = (Node *) (yyvsp[0].jexpr);
41897 				}
41898 #line 41899 "gram_minimal.c" /* yacc.c:1646  */
41899     break;
41900 
41901   case 1783:
41902 #line 12243 "gram_minimal.y" /* yacc.c:1646  */
41903     {
41904 					(yyvsp[-2].jexpr)->alias = (yyvsp[0].alias);
41905 					(yyval.node) = (Node *) (yyvsp[-2].jexpr);
41906 				}
41907 #line 41908 "gram_minimal.c" /* yacc.c:1646  */
41908     break;
41909 
41910   case 1784:
41911 #line 12269 "gram_minimal.y" /* yacc.c:1646  */
41912     {
41913 					(yyval.jexpr) = (yyvsp[-1].jexpr);
41914 				}
41915 #line 41916 "gram_minimal.c" /* yacc.c:1646  */
41916     break;
41917 
41918   case 1785:
41919 #line 12273 "gram_minimal.y" /* yacc.c:1646  */
41920     {
41921 					/* CROSS JOIN is same as unqualified inner join */
41922 					JoinExpr *n = makeNode(JoinExpr);
41923 					n->jointype = JOIN_INNER;
41924 					n->isNatural = false;
41925 					n->larg = (yyvsp[-3].node);
41926 					n->rarg = (yyvsp[0].node);
41927 					n->usingClause = NIL;
41928 					n->quals = NULL;
41929 					(yyval.jexpr) = n;
41930 				}
41931 #line 41932 "gram_minimal.c" /* yacc.c:1646  */
41932     break;
41933 
41934   case 1786:
41935 #line 12285 "gram_minimal.y" /* yacc.c:1646  */
41936     {
41937 					JoinExpr *n = makeNode(JoinExpr);
41938 					n->jointype = (yyvsp[-3].jtype);
41939 					n->isNatural = false;
41940 					n->larg = (yyvsp[-4].node);
41941 					n->rarg = (yyvsp[-1].node);
41942 					if ((yyvsp[0].node) != NULL && IsA((yyvsp[0].node), List))
41943 						n->usingClause = (List *) (yyvsp[0].node); /* USING clause */
41944 					else
41945 						n->quals = (yyvsp[0].node); /* ON clause */
41946 					(yyval.jexpr) = n;
41947 				}
41948 #line 41949 "gram_minimal.c" /* yacc.c:1646  */
41949     break;
41950 
41951   case 1787:
41952 #line 12298 "gram_minimal.y" /* yacc.c:1646  */
41953     {
41954 					/* letting join_type reduce to empty doesn't work */
41955 					JoinExpr *n = makeNode(JoinExpr);
41956 					n->jointype = JOIN_INNER;
41957 					n->isNatural = false;
41958 					n->larg = (yyvsp[-3].node);
41959 					n->rarg = (yyvsp[-1].node);
41960 					if ((yyvsp[0].node) != NULL && IsA((yyvsp[0].node), List))
41961 						n->usingClause = (List *) (yyvsp[0].node); /* USING clause */
41962 					else
41963 						n->quals = (yyvsp[0].node); /* ON clause */
41964 					(yyval.jexpr) = n;
41965 				}
41966 #line 41967 "gram_minimal.c" /* yacc.c:1646  */
41967     break;
41968 
41969   case 1788:
41970 #line 12312 "gram_minimal.y" /* yacc.c:1646  */
41971     {
41972 					JoinExpr *n = makeNode(JoinExpr);
41973 					n->jointype = (yyvsp[-2].jtype);
41974 					n->isNatural = true;
41975 					n->larg = (yyvsp[-4].node);
41976 					n->rarg = (yyvsp[0].node);
41977 					n->usingClause = NIL; /* figure out which columns later... */
41978 					n->quals = NULL; /* fill later */
41979 					(yyval.jexpr) = n;
41980 				}
41981 #line 41982 "gram_minimal.c" /* yacc.c:1646  */
41982     break;
41983 
41984   case 1789:
41985 #line 12323 "gram_minimal.y" /* yacc.c:1646  */
41986     {
41987 					/* letting join_type reduce to empty doesn't work */
41988 					JoinExpr *n = makeNode(JoinExpr);
41989 					n->jointype = JOIN_INNER;
41990 					n->isNatural = true;
41991 					n->larg = (yyvsp[-3].node);
41992 					n->rarg = (yyvsp[0].node);
41993 					n->usingClause = NIL; /* figure out which columns later... */
41994 					n->quals = NULL; /* fill later */
41995 					(yyval.jexpr) = n;
41996 				}
41997 #line 41998 "gram_minimal.c" /* yacc.c:1646  */
41998     break;
41999 
42000   case 1790:
42001 #line 12338 "gram_minimal.y" /* yacc.c:1646  */
42002     {
42003 					(yyval.alias) = makeNode(Alias);
42004 					(yyval.alias)->aliasname = (yyvsp[-3].str);
42005 					(yyval.alias)->colnames = (yyvsp[-1].list);
42006 				}
42007 #line 42008 "gram_minimal.c" /* yacc.c:1646  */
42008     break;
42009 
42010   case 1791:
42011 #line 12344 "gram_minimal.y" /* yacc.c:1646  */
42012     {
42013 					(yyval.alias) = makeNode(Alias);
42014 					(yyval.alias)->aliasname = (yyvsp[0].str);
42015 				}
42016 #line 42017 "gram_minimal.c" /* yacc.c:1646  */
42017     break;
42018 
42019   case 1792:
42020 #line 12349 "gram_minimal.y" /* yacc.c:1646  */
42021     {
42022 					(yyval.alias) = makeNode(Alias);
42023 					(yyval.alias)->aliasname = (yyvsp[-3].str);
42024 					(yyval.alias)->colnames = (yyvsp[-1].list);
42025 				}
42026 #line 42027 "gram_minimal.c" /* yacc.c:1646  */
42027     break;
42028 
42029   case 1793:
42030 #line 12355 "gram_minimal.y" /* yacc.c:1646  */
42031     {
42032 					(yyval.alias) = makeNode(Alias);
42033 					(yyval.alias)->aliasname = (yyvsp[0].str);
42034 				}
42035 #line 42036 "gram_minimal.c" /* yacc.c:1646  */
42036     break;
42037 
42038   case 1794:
42039 #line 12361 "gram_minimal.y" /* yacc.c:1646  */
42040     { (yyval.alias) = (yyvsp[0].alias); }
42041 #line 42042 "gram_minimal.c" /* yacc.c:1646  */
42042     break;
42043 
42044   case 1795:
42045 #line 12362 "gram_minimal.y" /* yacc.c:1646  */
42046     { (yyval.alias) = NULL; }
42047 #line 42048 "gram_minimal.c" /* yacc.c:1646  */
42048     break;
42049 
42050   case 1796:
42051 #line 12371 "gram_minimal.y" /* yacc.c:1646  */
42052     {
42053 					(yyval.list) = list_make2((yyvsp[0].alias), NIL);
42054 				}
42055 #line 42056 "gram_minimal.c" /* yacc.c:1646  */
42056     break;
42057 
42058   case 1797:
42059 #line 12375 "gram_minimal.y" /* yacc.c:1646  */
42060     {
42061 					(yyval.list) = list_make2(NULL, (yyvsp[-1].list));
42062 				}
42063 #line 42064 "gram_minimal.c" /* yacc.c:1646  */
42064     break;
42065 
42066   case 1798:
42067 #line 12379 "gram_minimal.y" /* yacc.c:1646  */
42068     {
42069 					Alias *a = makeNode(Alias);
42070 					a->aliasname = (yyvsp[-3].str);
42071 					(yyval.list) = list_make2(a, (yyvsp[-1].list));
42072 				}
42073 #line 42074 "gram_minimal.c" /* yacc.c:1646  */
42074     break;
42075 
42076   case 1799:
42077 #line 12385 "gram_minimal.y" /* yacc.c:1646  */
42078     {
42079 					Alias *a = makeNode(Alias);
42080 					a->aliasname = (yyvsp[-3].str);
42081 					(yyval.list) = list_make2(a, (yyvsp[-1].list));
42082 				}
42083 #line 42084 "gram_minimal.c" /* yacc.c:1646  */
42084     break;
42085 
42086   case 1800:
42087 #line 12391 "gram_minimal.y" /* yacc.c:1646  */
42088     {
42089 					(yyval.list) = list_make2(NULL, NIL);
42090 				}
42091 #line 42092 "gram_minimal.c" /* yacc.c:1646  */
42092     break;
42093 
42094   case 1801:
42095 #line 12396 "gram_minimal.y" /* yacc.c:1646  */
42096     { (yyval.jtype) = JOIN_FULL; }
42097 #line 42098 "gram_minimal.c" /* yacc.c:1646  */
42098     break;
42099 
42100   case 1802:
42101 #line 12397 "gram_minimal.y" /* yacc.c:1646  */
42102     { (yyval.jtype) = JOIN_LEFT; }
42103 #line 42104 "gram_minimal.c" /* yacc.c:1646  */
42104     break;
42105 
42106   case 1803:
42107 #line 12398 "gram_minimal.y" /* yacc.c:1646  */
42108     { (yyval.jtype) = JOIN_RIGHT; }
42109 #line 42110 "gram_minimal.c" /* yacc.c:1646  */
42110     break;
42111 
42112   case 1804:
42113 #line 12399 "gram_minimal.y" /* yacc.c:1646  */
42114     { (yyval.jtype) = JOIN_INNER; }
42115 #line 42116 "gram_minimal.c" /* yacc.c:1646  */
42116     break;
42117 
42118   case 1805:
42119 #line 12403 "gram_minimal.y" /* yacc.c:1646  */
42120     { (yyval.node) = NULL; }
42121 #line 42122 "gram_minimal.c" /* yacc.c:1646  */
42122     break;
42123 
42124   case 1806:
42125 #line 12404 "gram_minimal.y" /* yacc.c:1646  */
42126     { (yyval.node) = NULL; }
42127 #line 42128 "gram_minimal.c" /* yacc.c:1646  */
42128     break;
42129 
42130   case 1807:
42131 #line 12416 "gram_minimal.y" /* yacc.c:1646  */
42132     { (yyval.node) = (Node *) (yyvsp[-1].list); }
42133 #line 42134 "gram_minimal.c" /* yacc.c:1646  */
42134     break;
42135 
42136   case 1808:
42137 #line 12417 "gram_minimal.y" /* yacc.c:1646  */
42138     { (yyval.node) = (yyvsp[0].node); }
42139 #line 42140 "gram_minimal.c" /* yacc.c:1646  */
42140     break;
42141 
42142   case 1809:
42143 #line 12423 "gram_minimal.y" /* yacc.c:1646  */
42144     {
42145 					/* inheritance query, implicitly */
42146 					(yyval.range) = (yyvsp[0].range);
42147 					(yyval.range)->inh = true;
42148 					(yyval.range)->alias = NULL;
42149 				}
42150 #line 42151 "gram_minimal.c" /* yacc.c:1646  */
42151     break;
42152 
42153   case 1810:
42154 #line 12430 "gram_minimal.y" /* yacc.c:1646  */
42155     {
42156 					/* inheritance query, explicitly */
42157 					(yyval.range) = (yyvsp[-1].range);
42158 					(yyval.range)->inh = true;
42159 					(yyval.range)->alias = NULL;
42160 				}
42161 #line 42162 "gram_minimal.c" /* yacc.c:1646  */
42162     break;
42163 
42164   case 1811:
42165 #line 12437 "gram_minimal.y" /* yacc.c:1646  */
42166     {
42167 					/* no inheritance */
42168 					(yyval.range) = (yyvsp[0].range);
42169 					(yyval.range)->inh = false;
42170 					(yyval.range)->alias = NULL;
42171 				}
42172 #line 42173 "gram_minimal.c" /* yacc.c:1646  */
42173     break;
42174 
42175   case 1812:
42176 #line 12444 "gram_minimal.y" /* yacc.c:1646  */
42177     {
42178 					/* no inheritance, SQL99-style syntax */
42179 					(yyval.range) = (yyvsp[-1].range);
42180 					(yyval.range)->inh = false;
42181 					(yyval.range)->alias = NULL;
42182 				}
42183 #line 42184 "gram_minimal.c" /* yacc.c:1646  */
42184     break;
42185 
42186   case 1813:
42187 #line 12454 "gram_minimal.y" /* yacc.c:1646  */
42188     { (yyval.list) = list_make1((yyvsp[0].range)); }
42189 #line 42190 "gram_minimal.c" /* yacc.c:1646  */
42190     break;
42191 
42192   case 1814:
42193 #line 12455 "gram_minimal.y" /* yacc.c:1646  */
42194     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].range)); }
42195 #line 42196 "gram_minimal.c" /* yacc.c:1646  */
42196     break;
42197 
42198   case 1815:
42199 #line 12469 "gram_minimal.y" /* yacc.c:1646  */
42200     {
42201 					(yyval.range) = (yyvsp[0].range);
42202 				}
42203 #line 42204 "gram_minimal.c" /* yacc.c:1646  */
42204     break;
42205 
42206   case 1816:
42207 #line 12473 "gram_minimal.y" /* yacc.c:1646  */
42208     {
42209 					Alias *alias = makeNode(Alias);
42210 					alias->aliasname = (yyvsp[0].str);
42211 					(yyvsp[-1].range)->alias = alias;
42212 					(yyval.range) = (yyvsp[-1].range);
42213 				}
42214 #line 42215 "gram_minimal.c" /* yacc.c:1646  */
42215     break;
42216 
42217   case 1817:
42218 #line 12480 "gram_minimal.y" /* yacc.c:1646  */
42219     {
42220 					Alias *alias = makeNode(Alias);
42221 					alias->aliasname = (yyvsp[0].str);
42222 					(yyvsp[-2].range)->alias = alias;
42223 					(yyval.range) = (yyvsp[-2].range);
42224 				}
42225 #line 42226 "gram_minimal.c" /* yacc.c:1646  */
42226     break;
42227 
42228   case 1818:
42229 #line 12493 "gram_minimal.y" /* yacc.c:1646  */
42230     {
42231 					RangeTableSample *n = makeNode(RangeTableSample);
42232 					/* n->relation will be filled in later */
42233 					n->method = (yyvsp[-4].list);
42234 					n->args = (yyvsp[-2].list);
42235 					n->repeatable = (yyvsp[0].node);
42236 					n->location = (yylsp[-4]);
42237 					(yyval.node) = (Node *) n;
42238 				}
42239 #line 42240 "gram_minimal.c" /* yacc.c:1646  */
42240     break;
42241 
42242   case 1819:
42243 #line 12505 "gram_minimal.y" /* yacc.c:1646  */
42244     { (yyval.node) = (Node *) (yyvsp[-1].node); }
42245 #line 42246 "gram_minimal.c" /* yacc.c:1646  */
42246     break;
42247 
42248   case 1820:
42249 #line 12506 "gram_minimal.y" /* yacc.c:1646  */
42250     { (yyval.node) = NULL; }
42251 #line 42252 "gram_minimal.c" /* yacc.c:1646  */
42252     break;
42253 
42254   case 1821:
42255 #line 12522 "gram_minimal.y" /* yacc.c:1646  */
42256     {
42257 					RangeFunction *n = makeNode(RangeFunction);
42258 					n->lateral = false;
42259 					n->ordinality = (yyvsp[0].boolean);
42260 					n->is_rowsfrom = false;
42261 					n->functions = list_make1(list_make2((yyvsp[-1].node), NIL));
42262 					/* alias and coldeflist are set by table_ref production */
42263 					(yyval.node) = (Node *) n;
42264 				}
42265 #line 42266 "gram_minimal.c" /* yacc.c:1646  */
42266     break;
42267 
42268   case 1822:
42269 #line 12532 "gram_minimal.y" /* yacc.c:1646  */
42270     {
42271 					RangeFunction *n = makeNode(RangeFunction);
42272 					n->lateral = false;
42273 					n->ordinality = (yyvsp[0].boolean);
42274 					n->is_rowsfrom = true;
42275 					n->functions = (yyvsp[-2].list);
42276 					/* alias and coldeflist are set by table_ref production */
42277 					(yyval.node) = (Node *) n;
42278 				}
42279 #line 42280 "gram_minimal.c" /* yacc.c:1646  */
42280     break;
42281 
42282   case 1823:
42283 #line 12544 "gram_minimal.y" /* yacc.c:1646  */
42284     { (yyval.list) = list_make2((yyvsp[-1].node), (yyvsp[0].list)); }
42285 #line 42286 "gram_minimal.c" /* yacc.c:1646  */
42286     break;
42287 
42288   case 1824:
42289 #line 12548 "gram_minimal.y" /* yacc.c:1646  */
42290     { (yyval.list) = list_make1((yyvsp[0].list)); }
42291 #line 42292 "gram_minimal.c" /* yacc.c:1646  */
42292     break;
42293 
42294   case 1825:
42295 #line 12549 "gram_minimal.y" /* yacc.c:1646  */
42296     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].list)); }
42297 #line 42298 "gram_minimal.c" /* yacc.c:1646  */
42298     break;
42299 
42300   case 1826:
42301 #line 12552 "gram_minimal.y" /* yacc.c:1646  */
42302     { (yyval.list) = (yyvsp[-1].list); }
42303 #line 42304 "gram_minimal.c" /* yacc.c:1646  */
42304     break;
42305 
42306   case 1827:
42307 #line 12553 "gram_minimal.y" /* yacc.c:1646  */
42308     { (yyval.list) = NIL; }
42309 #line 42310 "gram_minimal.c" /* yacc.c:1646  */
42310     break;
42311 
42312   case 1828:
42313 #line 12556 "gram_minimal.y" /* yacc.c:1646  */
42314     { (yyval.boolean) = true; }
42315 #line 42316 "gram_minimal.c" /* yacc.c:1646  */
42316     break;
42317 
42318   case 1829:
42319 #line 12557 "gram_minimal.y" /* yacc.c:1646  */
42320     { (yyval.boolean) = false; }
42321 #line 42322 "gram_minimal.c" /* yacc.c:1646  */
42322     break;
42323 
42324   case 1830:
42325 #line 12562 "gram_minimal.y" /* yacc.c:1646  */
42326     { (yyval.node) = (yyvsp[0].node); }
42327 #line 42328 "gram_minimal.c" /* yacc.c:1646  */
42328     break;
42329 
42330   case 1831:
42331 #line 12563 "gram_minimal.y" /* yacc.c:1646  */
42332     { (yyval.node) = NULL; }
42333 #line 42334 "gram_minimal.c" /* yacc.c:1646  */
42334     break;
42335 
42336   case 1832:
42337 #line 12568 "gram_minimal.y" /* yacc.c:1646  */
42338     { (yyval.node) = (yyvsp[0].node); }
42339 #line 42340 "gram_minimal.c" /* yacc.c:1646  */
42340     break;
42341 
42342   case 1833:
42343 #line 12570 "gram_minimal.y" /* yacc.c:1646  */
42344     {
42345 					CurrentOfExpr *n = makeNode(CurrentOfExpr);
42346 					/* cvarno is filled in by parse analysis */
42347 					n->cursor_name = (yyvsp[0].str);
42348 					n->cursor_param = 0;
42349 					(yyval.node) = (Node *) n;
42350 				}
42351 #line 42352 "gram_minimal.c" /* yacc.c:1646  */
42352     break;
42353 
42354   case 1834:
42355 #line 12577 "gram_minimal.y" /* yacc.c:1646  */
42356     { (yyval.node) = NULL; }
42357 #line 42358 "gram_minimal.c" /* yacc.c:1646  */
42358     break;
42359 
42360   case 1835:
42361 #line 12582 "gram_minimal.y" /* yacc.c:1646  */
42362     { (yyval.list) = (yyvsp[0].list); }
42363 #line 42364 "gram_minimal.c" /* yacc.c:1646  */
42364     break;
42365 
42366   case 1836:
42367 #line 12583 "gram_minimal.y" /* yacc.c:1646  */
42368     { (yyval.list) = NIL; }
42369 #line 42370 "gram_minimal.c" /* yacc.c:1646  */
42370     break;
42371 
42372   case 1837:
42373 #line 12588 "gram_minimal.y" /* yacc.c:1646  */
42374     {
42375 					(yyval.list) = list_make1((yyvsp[0].node));
42376 				}
42377 #line 42378 "gram_minimal.c" /* yacc.c:1646  */
42378     break;
42379 
42380   case 1838:
42381 #line 12592 "gram_minimal.y" /* yacc.c:1646  */
42382     {
42383 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
42384 				}
42385 #line 42386 "gram_minimal.c" /* yacc.c:1646  */
42386     break;
42387 
42388   case 1839:
42389 #line 12598 "gram_minimal.y" /* yacc.c:1646  */
42390     {
42391 					ColumnDef *n = makeNode(ColumnDef);
42392 					n->colname = (yyvsp[-2].str);
42393 					n->typeName = (yyvsp[-1].typnam);
42394 					n->inhcount = 0;
42395 					n->is_local = true;
42396 					n->is_not_null = false;
42397 					n->is_from_type = false;
42398 					n->storage = 0;
42399 					n->raw_default = NULL;
42400 					n->cooked_default = NULL;
42401 					n->collClause = (CollateClause *) (yyvsp[0].node);
42402 					n->collOid = InvalidOid;
42403 					n->constraints = NIL;
42404 					n->location = (yylsp[-2]);
42405 					(yyval.node) = (Node *)n;
42406 				}
42407 #line 42408 "gram_minimal.c" /* yacc.c:1646  */
42408     break;
42409 
42410   case 1840:
42411 #line 12622 "gram_minimal.y" /* yacc.c:1646  */
42412     {
42413 					RangeTableFunc *n = makeNode(RangeTableFunc);
42414 					n->rowexpr = (yyvsp[-4].node);
42415 					n->docexpr = (yyvsp[-3].node);
42416 					n->columns = (yyvsp[-1].list);
42417 					n->namespaces = NIL;
42418 					n->location = (yylsp[-6]);
42419 					(yyval.node) = (Node *)n;
42420 				}
42421 #line 42422 "gram_minimal.c" /* yacc.c:1646  */
42422     break;
42423 
42424   case 1841:
42425 #line 12633 "gram_minimal.y" /* yacc.c:1646  */
42426     {
42427 					RangeTableFunc *n = makeNode(RangeTableFunc);
42428 					n->rowexpr = (yyvsp[-4].node);
42429 					n->docexpr = (yyvsp[-3].node);
42430 					n->columns = (yyvsp[-1].list);
42431 					n->namespaces = (yyvsp[-7].list);
42432 					n->location = (yylsp[-11]);
42433 					(yyval.node) = (Node *)n;
42434 				}
42435 #line 42436 "gram_minimal.c" /* yacc.c:1646  */
42436     break;
42437 
42438   case 1842:
42439 #line 12644 "gram_minimal.y" /* yacc.c:1646  */
42440     { (yyval.list) = list_make1((yyvsp[0].node)); }
42441 #line 42442 "gram_minimal.c" /* yacc.c:1646  */
42442     break;
42443 
42444   case 1843:
42445 #line 12645 "gram_minimal.y" /* yacc.c:1646  */
42446     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
42447 #line 42448 "gram_minimal.c" /* yacc.c:1646  */
42448     break;
42449 
42450   case 1844:
42451 #line 12650 "gram_minimal.y" /* yacc.c:1646  */
42452     {
42453 					RangeTableFuncCol	   *fc = makeNode(RangeTableFuncCol);
42454 
42455 					fc->colname = (yyvsp[-1].str);
42456 					fc->for_ordinality = false;
42457 					fc->typeName = (yyvsp[0].typnam);
42458 					fc->is_not_null = false;
42459 					fc->colexpr = NULL;
42460 					fc->coldefexpr = NULL;
42461 					fc->location = (yylsp[-1]);
42462 
42463 					(yyval.node) = (Node *) fc;
42464 				}
42465 #line 42466 "gram_minimal.c" /* yacc.c:1646  */
42466     break;
42467 
42468   case 1845:
42469 #line 12664 "gram_minimal.y" /* yacc.c:1646  */
42470     {
42471 					RangeTableFuncCol	   *fc = makeNode(RangeTableFuncCol);
42472 					ListCell		   *option;
42473 					bool				nullability_seen = false;
42474 
42475 					fc->colname = (yyvsp[-2].str);
42476 					fc->typeName = (yyvsp[-1].typnam);
42477 					fc->for_ordinality = false;
42478 					fc->is_not_null = false;
42479 					fc->colexpr = NULL;
42480 					fc->coldefexpr = NULL;
42481 					fc->location = (yylsp[-2]);
42482 
42483 					foreach(option, (yyvsp[0].list))
42484 					{
42485 						DefElem   *defel = (DefElem *) lfirst(option);
42486 
42487 						if (strcmp(defel->defname, "default") == 0)
42488 						{
42489 							if (fc->coldefexpr != NULL)
42490 								ereport(ERROR,
42491 										(errcode(ERRCODE_SYNTAX_ERROR),
42492 										 errmsg("only one DEFAULT value is allowed"),
42493 										 parser_errposition(defel->location)));
42494 							fc->coldefexpr = defel->arg;
42495 						}
42496 						else if (strcmp(defel->defname, "path") == 0)
42497 						{
42498 							if (fc->colexpr != NULL)
42499 								ereport(ERROR,
42500 										(errcode(ERRCODE_SYNTAX_ERROR),
42501 										 errmsg("only one PATH value per column is allowed"),
42502 										 parser_errposition(defel->location)));
42503 							fc->colexpr = defel->arg;
42504 						}
42505 						else if (strcmp(defel->defname, "is_not_null") == 0)
42506 						{
42507 							if (nullability_seen)
42508 								ereport(ERROR,
42509 										(errcode(ERRCODE_SYNTAX_ERROR),
42510 										 errmsg("conflicting or redundant NULL / NOT NULL declarations for column \"%s\"", fc->colname),
42511 										 parser_errposition(defel->location)));
42512 							fc->is_not_null = intVal(defel->arg);
42513 							nullability_seen = true;
42514 						}
42515 						else
42516 						{
42517 							ereport(ERROR,
42518 									(errcode(ERRCODE_SYNTAX_ERROR),
42519 									 errmsg("unrecognized column option \"%s\"",
42520 											defel->defname),
42521 									 parser_errposition(defel->location)));
42522 						}
42523 					}
42524 					(yyval.node) = (Node *) fc;
42525 				}
42526 #line 42527 "gram_minimal.c" /* yacc.c:1646  */
42527     break;
42528 
42529   case 1846:
42530 #line 12721 "gram_minimal.y" /* yacc.c:1646  */
42531     {
42532 					RangeTableFuncCol	   *fc = makeNode(RangeTableFuncCol);
42533 
42534 					fc->colname = (yyvsp[-2].str);
42535 					fc->for_ordinality = true;
42536 					/* other fields are ignored, initialized by makeNode */
42537 					fc->location = (yylsp[-2]);
42538 
42539 					(yyval.node) = (Node *) fc;
42540 				}
42541 #line 42542 "gram_minimal.c" /* yacc.c:1646  */
42542     break;
42543 
42544   case 1847:
42545 #line 12735 "gram_minimal.y" /* yacc.c:1646  */
42546     { (yyval.list) = list_make1((yyvsp[0].defelt)); }
42547 #line 42548 "gram_minimal.c" /* yacc.c:1646  */
42548     break;
42549 
42550   case 1848:
42551 #line 12737 "gram_minimal.y" /* yacc.c:1646  */
42552     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].defelt)); }
42553 #line 42554 "gram_minimal.c" /* yacc.c:1646  */
42554     break;
42555 
42556   case 1849:
42557 #line 12742 "gram_minimal.y" /* yacc.c:1646  */
42558     { (yyval.defelt) = makeDefElem((yyvsp[-1].str), (yyvsp[0].node), (yylsp[-1])); }
42559 #line 42560 "gram_minimal.c" /* yacc.c:1646  */
42560     break;
42561 
42562   case 1850:
42563 #line 12744 "gram_minimal.y" /* yacc.c:1646  */
42564     { (yyval.defelt) = makeDefElem("default", (yyvsp[0].node), (yylsp[-1])); }
42565 #line 42566 "gram_minimal.c" /* yacc.c:1646  */
42566     break;
42567 
42568   case 1851:
42569 #line 12746 "gram_minimal.y" /* yacc.c:1646  */
42570     { (yyval.defelt) = makeDefElem("is_not_null", (Node *) makeInteger(true), (yylsp[-1])); }
42571 #line 42572 "gram_minimal.c" /* yacc.c:1646  */
42572     break;
42573 
42574   case 1852:
42575 #line 12748 "gram_minimal.y" /* yacc.c:1646  */
42576     { (yyval.defelt) = makeDefElem("is_not_null", (Node *) makeInteger(false), (yylsp[0])); }
42577 #line 42578 "gram_minimal.c" /* yacc.c:1646  */
42578     break;
42579 
42580   case 1853:
42581 #line 12753 "gram_minimal.y" /* yacc.c:1646  */
42582     { (yyval.list) = list_make1((yyvsp[0].target)); }
42583 #line 42584 "gram_minimal.c" /* yacc.c:1646  */
42584     break;
42585 
42586   case 1854:
42587 #line 12755 "gram_minimal.y" /* yacc.c:1646  */
42588     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].target)); }
42589 #line 42590 "gram_minimal.c" /* yacc.c:1646  */
42590     break;
42591 
42592   case 1855:
42593 #line 12760 "gram_minimal.y" /* yacc.c:1646  */
42594     {
42595 					(yyval.target) = makeNode(ResTarget);
42596 					(yyval.target)->name = (yyvsp[0].str);
42597 					(yyval.target)->indirection = NIL;
42598 					(yyval.target)->val = (yyvsp[-2].node);
42599 					(yyval.target)->location = (yylsp[-2]);
42600 				}
42601 #line 42602 "gram_minimal.c" /* yacc.c:1646  */
42602     break;
42603 
42604   case 1856:
42605 #line 12768 "gram_minimal.y" /* yacc.c:1646  */
42606     {
42607 					(yyval.target) = makeNode(ResTarget);
42608 					(yyval.target)->name = NULL;
42609 					(yyval.target)->indirection = NIL;
42610 					(yyval.target)->val = (yyvsp[0].node);
42611 					(yyval.target)->location = (yylsp[-1]);
42612 				}
42613 #line 42614 "gram_minimal.c" /* yacc.c:1646  */
42614     break;
42615 
42616   case 1857:
42617 #line 12788 "gram_minimal.y" /* yacc.c:1646  */
42618     {
42619 					(yyval.typnam) = (yyvsp[-1].typnam);
42620 					(yyval.typnam)->arrayBounds = (yyvsp[0].list);
42621 				}
42622 #line 42623 "gram_minimal.c" /* yacc.c:1646  */
42623     break;
42624 
42625   case 1858:
42626 #line 12793 "gram_minimal.y" /* yacc.c:1646  */
42627     {
42628 					(yyval.typnam) = (yyvsp[-1].typnam);
42629 					(yyval.typnam)->arrayBounds = (yyvsp[0].list);
42630 					(yyval.typnam)->setof = true;
42631 				}
42632 #line 42633 "gram_minimal.c" /* yacc.c:1646  */
42633     break;
42634 
42635   case 1859:
42636 #line 12800 "gram_minimal.y" /* yacc.c:1646  */
42637     {
42638 					(yyval.typnam) = (yyvsp[-4].typnam);
42639 					(yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[-1].ival)));
42640 				}
42641 #line 42642 "gram_minimal.c" /* yacc.c:1646  */
42642     break;
42643 
42644   case 1860:
42645 #line 12805 "gram_minimal.y" /* yacc.c:1646  */
42646     {
42647 					(yyval.typnam) = (yyvsp[-4].typnam);
42648 					(yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[-1].ival)));
42649 					(yyval.typnam)->setof = true;
42650 				}
42651 #line 42652 "gram_minimal.c" /* yacc.c:1646  */
42652     break;
42653 
42654   case 1861:
42655 #line 12811 "gram_minimal.y" /* yacc.c:1646  */
42656     {
42657 					(yyval.typnam) = (yyvsp[-1].typnam);
42658 					(yyval.typnam)->arrayBounds = list_make1(makeInteger(-1));
42659 				}
42660 #line 42661 "gram_minimal.c" /* yacc.c:1646  */
42661     break;
42662 
42663   case 1862:
42664 #line 12816 "gram_minimal.y" /* yacc.c:1646  */
42665     {
42666 					(yyval.typnam) = (yyvsp[-1].typnam);
42667 					(yyval.typnam)->arrayBounds = list_make1(makeInteger(-1));
42668 					(yyval.typnam)->setof = true;
42669 				}
42670 #line 42671 "gram_minimal.c" /* yacc.c:1646  */
42671     break;
42672 
42673   case 1863:
42674 #line 12825 "gram_minimal.y" /* yacc.c:1646  */
42675     {  (yyval.list) = lappend((yyvsp[-2].list), makeInteger(-1)); }
42676 #line 42677 "gram_minimal.c" /* yacc.c:1646  */
42677     break;
42678 
42679   case 1864:
42680 #line 12827 "gram_minimal.y" /* yacc.c:1646  */
42681     {  (yyval.list) = lappend((yyvsp[-3].list), makeInteger((yyvsp[-1].ival))); }
42682 #line 42683 "gram_minimal.c" /* yacc.c:1646  */
42683     break;
42684 
42685   case 1865:
42686 #line 12829 "gram_minimal.y" /* yacc.c:1646  */
42687     {  (yyval.list) = NIL; }
42688 #line 42689 "gram_minimal.c" /* yacc.c:1646  */
42689     break;
42690 
42691   case 1866:
42692 #line 12833 "gram_minimal.y" /* yacc.c:1646  */
42693     { (yyval.typnam) = (yyvsp[0].typnam); }
42694 #line 42695 "gram_minimal.c" /* yacc.c:1646  */
42695     break;
42696 
42697   case 1867:
42698 #line 12834 "gram_minimal.y" /* yacc.c:1646  */
42699     { (yyval.typnam) = (yyvsp[0].typnam); }
42700 #line 42701 "gram_minimal.c" /* yacc.c:1646  */
42701     break;
42702 
42703   case 1868:
42704 #line 12835 "gram_minimal.y" /* yacc.c:1646  */
42705     { (yyval.typnam) = (yyvsp[0].typnam); }
42706 #line 42707 "gram_minimal.c" /* yacc.c:1646  */
42707     break;
42708 
42709   case 1869:
42710 #line 12836 "gram_minimal.y" /* yacc.c:1646  */
42711     { (yyval.typnam) = (yyvsp[0].typnam); }
42712 #line 42713 "gram_minimal.c" /* yacc.c:1646  */
42713     break;
42714 
42715   case 1870:
42716 #line 12837 "gram_minimal.y" /* yacc.c:1646  */
42717     { (yyval.typnam) = (yyvsp[0].typnam); }
42718 #line 42719 "gram_minimal.c" /* yacc.c:1646  */
42719     break;
42720 
42721   case 1871:
42722 #line 12839 "gram_minimal.y" /* yacc.c:1646  */
42723     {
42724 					(yyval.typnam) = (yyvsp[-1].typnam);
42725 					(yyval.typnam)->typmods = (yyvsp[0].list);
42726 				}
42727 #line 42728 "gram_minimal.c" /* yacc.c:1646  */
42728     break;
42729 
42730   case 1872:
42731 #line 12844 "gram_minimal.y" /* yacc.c:1646  */
42732     {
42733 					(yyval.typnam) = (yyvsp[-3].typnam);
42734 					(yyval.typnam)->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
42735 											 makeIntConst((yyvsp[-1].ival), (yylsp[-1])));
42736 				}
42737 #line 42738 "gram_minimal.c" /* yacc.c:1646  */
42738     break;
42739 
42740   case 1873:
42741 #line 12863 "gram_minimal.y" /* yacc.c:1646  */
42742     { (yyval.typnam) = (yyvsp[0].typnam); }
42743 #line 42744 "gram_minimal.c" /* yacc.c:1646  */
42744     break;
42745 
42746   case 1874:
42747 #line 12864 "gram_minimal.y" /* yacc.c:1646  */
42748     { (yyval.typnam) = (yyvsp[0].typnam); }
42749 #line 42750 "gram_minimal.c" /* yacc.c:1646  */
42750     break;
42751 
42752   case 1875:
42753 #line 12865 "gram_minimal.y" /* yacc.c:1646  */
42754     { (yyval.typnam) = (yyvsp[0].typnam); }
42755 #line 42756 "gram_minimal.c" /* yacc.c:1646  */
42756     break;
42757 
42758   case 1876:
42759 #line 12866 "gram_minimal.y" /* yacc.c:1646  */
42760     { (yyval.typnam) = (yyvsp[0].typnam); }
42761 #line 42762 "gram_minimal.c" /* yacc.c:1646  */
42762     break;
42763 
42764   case 1877:
42765 #line 12878 "gram_minimal.y" /* yacc.c:1646  */
42766     {
42767 					(yyval.typnam) = makeTypeName((yyvsp[-1].str));
42768 					(yyval.typnam)->typmods = (yyvsp[0].list);
42769 					(yyval.typnam)->location = (yylsp[-1]);
42770 				}
42771 #line 42772 "gram_minimal.c" /* yacc.c:1646  */
42772     break;
42773 
42774   case 1878:
42775 #line 12884 "gram_minimal.y" /* yacc.c:1646  */
42776     {
42777 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[-2].str)), (yyvsp[-1].list)));
42778 					(yyval.typnam)->typmods = (yyvsp[0].list);
42779 					(yyval.typnam)->location = (yylsp[-2]);
42780 				}
42781 #line 42782 "gram_minimal.c" /* yacc.c:1646  */
42782     break;
42783 
42784   case 1879:
42785 #line 12891 "gram_minimal.y" /* yacc.c:1646  */
42786     { (yyval.list) = (yyvsp[-1].list); }
42787 #line 42788 "gram_minimal.c" /* yacc.c:1646  */
42788     break;
42789 
42790   case 1880:
42791 #line 12892 "gram_minimal.y" /* yacc.c:1646  */
42792     { (yyval.list) = NIL; }
42793 #line 42794 "gram_minimal.c" /* yacc.c:1646  */
42794     break;
42795 
42796   case 1881:
42797 #line 12899 "gram_minimal.y" /* yacc.c:1646  */
42798     {
42799 					(yyval.typnam) = SystemTypeName("int4");
42800 					(yyval.typnam)->location = (yylsp[0]);
42801 				}
42802 #line 42803 "gram_minimal.c" /* yacc.c:1646  */
42803     break;
42804 
42805   case 1882:
42806 #line 12904 "gram_minimal.y" /* yacc.c:1646  */
42807     {
42808 					(yyval.typnam) = SystemTypeName("int4");
42809 					(yyval.typnam)->location = (yylsp[0]);
42810 				}
42811 #line 42812 "gram_minimal.c" /* yacc.c:1646  */
42812     break;
42813 
42814   case 1883:
42815 #line 12909 "gram_minimal.y" /* yacc.c:1646  */
42816     {
42817 					(yyval.typnam) = SystemTypeName("int2");
42818 					(yyval.typnam)->location = (yylsp[0]);
42819 				}
42820 #line 42821 "gram_minimal.c" /* yacc.c:1646  */
42821     break;
42822 
42823   case 1884:
42824 #line 12914 "gram_minimal.y" /* yacc.c:1646  */
42825     {
42826 					(yyval.typnam) = SystemTypeName("int8");
42827 					(yyval.typnam)->location = (yylsp[0]);
42828 				}
42829 #line 42830 "gram_minimal.c" /* yacc.c:1646  */
42830     break;
42831 
42832   case 1885:
42833 #line 12919 "gram_minimal.y" /* yacc.c:1646  */
42834     {
42835 					(yyval.typnam) = SystemTypeName("float4");
42836 					(yyval.typnam)->location = (yylsp[0]);
42837 				}
42838 #line 42839 "gram_minimal.c" /* yacc.c:1646  */
42839     break;
42840 
42841   case 1886:
42842 #line 12924 "gram_minimal.y" /* yacc.c:1646  */
42843     {
42844 					(yyval.typnam) = (yyvsp[0].typnam);
42845 					(yyval.typnam)->location = (yylsp[-1]);
42846 				}
42847 #line 42848 "gram_minimal.c" /* yacc.c:1646  */
42848     break;
42849 
42850   case 1887:
42851 #line 12929 "gram_minimal.y" /* yacc.c:1646  */
42852     {
42853 					(yyval.typnam) = SystemTypeName("float8");
42854 					(yyval.typnam)->location = (yylsp[-1]);
42855 				}
42856 #line 42857 "gram_minimal.c" /* yacc.c:1646  */
42857     break;
42858 
42859   case 1888:
42860 #line 12934 "gram_minimal.y" /* yacc.c:1646  */
42861     {
42862 					(yyval.typnam) = SystemTypeName("numeric");
42863 					(yyval.typnam)->typmods = (yyvsp[0].list);
42864 					(yyval.typnam)->location = (yylsp[-1]);
42865 				}
42866 #line 42867 "gram_minimal.c" /* yacc.c:1646  */
42867     break;
42868 
42869   case 1889:
42870 #line 12940 "gram_minimal.y" /* yacc.c:1646  */
42871     {
42872 					(yyval.typnam) = SystemTypeName("numeric");
42873 					(yyval.typnam)->typmods = (yyvsp[0].list);
42874 					(yyval.typnam)->location = (yylsp[-1]);
42875 				}
42876 #line 42877 "gram_minimal.c" /* yacc.c:1646  */
42877     break;
42878 
42879   case 1890:
42880 #line 12946 "gram_minimal.y" /* yacc.c:1646  */
42881     {
42882 					(yyval.typnam) = SystemTypeName("numeric");
42883 					(yyval.typnam)->typmods = (yyvsp[0].list);
42884 					(yyval.typnam)->location = (yylsp[-1]);
42885 				}
42886 #line 42887 "gram_minimal.c" /* yacc.c:1646  */
42887     break;
42888 
42889   case 1891:
42890 #line 12952 "gram_minimal.y" /* yacc.c:1646  */
42891     {
42892 					(yyval.typnam) = SystemTypeName("bool");
42893 					(yyval.typnam)->location = (yylsp[0]);
42894 				}
42895 #line 42896 "gram_minimal.c" /* yacc.c:1646  */
42896     break;
42897 
42898   case 1892:
42899 #line 12959 "gram_minimal.y" /* yacc.c:1646  */
42900     {
42901 					/*
42902 					 * Check FLOAT() precision limits assuming IEEE floating
42903 					 * types - thomas 1997-09-18
42904 					 */
42905 					if ((yyvsp[-1].ival) < 1)
42906 						ereport(ERROR,
42907 								(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
42908 								 errmsg("precision for type float must be at least 1 bit"),
42909 								 parser_errposition((yylsp[-1]))));
42910 					else if ((yyvsp[-1].ival) <= 24)
42911 						(yyval.typnam) = SystemTypeName("float4");
42912 					else if ((yyvsp[-1].ival) <= 53)
42913 						(yyval.typnam) = SystemTypeName("float8");
42914 					else
42915 						ereport(ERROR,
42916 								(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
42917 								 errmsg("precision for type float must be less than 54 bits"),
42918 								 parser_errposition((yylsp[-1]))));
42919 				}
42920 #line 42921 "gram_minimal.c" /* yacc.c:1646  */
42921     break;
42922 
42923   case 1893:
42924 #line 12980 "gram_minimal.y" /* yacc.c:1646  */
42925     {
42926 					(yyval.typnam) = SystemTypeName("float8");
42927 				}
42928 #line 42929 "gram_minimal.c" /* yacc.c:1646  */
42929     break;
42930 
42931   case 1894:
42932 #line 12990 "gram_minimal.y" /* yacc.c:1646  */
42933     {
42934 					(yyval.typnam) = (yyvsp[0].typnam);
42935 				}
42936 #line 42937 "gram_minimal.c" /* yacc.c:1646  */
42937     break;
42938 
42939   case 1895:
42940 #line 12994 "gram_minimal.y" /* yacc.c:1646  */
42941     {
42942 					(yyval.typnam) = (yyvsp[0].typnam);
42943 				}
42944 #line 42945 "gram_minimal.c" /* yacc.c:1646  */
42945     break;
42946 
42947   case 1896:
42948 #line 13002 "gram_minimal.y" /* yacc.c:1646  */
42949     {
42950 					(yyval.typnam) = (yyvsp[0].typnam);
42951 				}
42952 #line 42953 "gram_minimal.c" /* yacc.c:1646  */
42953     break;
42954 
42955   case 1897:
42956 #line 13006 "gram_minimal.y" /* yacc.c:1646  */
42957     {
42958 					(yyval.typnam) = (yyvsp[0].typnam);
42959 					(yyval.typnam)->typmods = NIL;
42960 				}
42961 #line 42962 "gram_minimal.c" /* yacc.c:1646  */
42962     break;
42963 
42964   case 1898:
42965 #line 13014 "gram_minimal.y" /* yacc.c:1646  */
42966     {
42967 					char *typname;
42968 
42969 					typname = (yyvsp[-3].boolean) ? "varbit" : "bit";
42970 					(yyval.typnam) = SystemTypeName(typname);
42971 					(yyval.typnam)->typmods = (yyvsp[-1].list);
42972 					(yyval.typnam)->location = (yylsp[-4]);
42973 				}
42974 #line 42975 "gram_minimal.c" /* yacc.c:1646  */
42975     break;
42976 
42977   case 1899:
42978 #line 13026 "gram_minimal.y" /* yacc.c:1646  */
42979     {
42980 					/* bit defaults to bit(1), varbit to no limit */
42981 					if ((yyvsp[0].boolean))
42982 					{
42983 						(yyval.typnam) = SystemTypeName("varbit");
42984 					}
42985 					else
42986 					{
42987 						(yyval.typnam) = SystemTypeName("bit");
42988 						(yyval.typnam)->typmods = list_make1(makeIntConst(1, -1));
42989 					}
42990 					(yyval.typnam)->location = (yylsp[-1]);
42991 				}
42992 #line 42993 "gram_minimal.c" /* yacc.c:1646  */
42993     break;
42994 
42995   case 1900:
42996 #line 13047 "gram_minimal.y" /* yacc.c:1646  */
42997     {
42998 					(yyval.typnam) = (yyvsp[0].typnam);
42999 				}
43000 #line 43001 "gram_minimal.c" /* yacc.c:1646  */
43001     break;
43002 
43003   case 1901:
43004 #line 13051 "gram_minimal.y" /* yacc.c:1646  */
43005     {
43006 					(yyval.typnam) = (yyvsp[0].typnam);
43007 				}
43008 #line 43009 "gram_minimal.c" /* yacc.c:1646  */
43009     break;
43010 
43011   case 1902:
43012 #line 13057 "gram_minimal.y" /* yacc.c:1646  */
43013     {
43014 					(yyval.typnam) = (yyvsp[0].typnam);
43015 				}
43016 #line 43017 "gram_minimal.c" /* yacc.c:1646  */
43017     break;
43018 
43019   case 1903:
43020 #line 13061 "gram_minimal.y" /* yacc.c:1646  */
43021     {
43022 					/* Length was not specified so allow to be unrestricted.
43023 					 * This handles problems with fixed-length (bpchar) strings
43024 					 * which in column definitions must default to a length
43025 					 * of one, but should not be constrained if the length
43026 					 * was not specified.
43027 					 */
43028 					(yyval.typnam) = (yyvsp[0].typnam);
43029 					(yyval.typnam)->typmods = NIL;
43030 				}
43031 #line 43032 "gram_minimal.c" /* yacc.c:1646  */
43032     break;
43033 
43034   case 1904:
43035 #line 13074 "gram_minimal.y" /* yacc.c:1646  */
43036     {
43037 					(yyval.typnam) = SystemTypeName((yyvsp[-3].str));
43038 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[-1].ival), (yylsp[-1])));
43039 					(yyval.typnam)->location = (yylsp[-3]);
43040 				}
43041 #line 43042 "gram_minimal.c" /* yacc.c:1646  */
43042     break;
43043 
43044   case 1905:
43045 #line 13082 "gram_minimal.y" /* yacc.c:1646  */
43046     {
43047 					(yyval.typnam) = SystemTypeName((yyvsp[0].str));
43048 					/* char defaults to char(1), varchar to no limit */
43049 					if (strcmp((yyvsp[0].str), "bpchar") == 0)
43050 						(yyval.typnam)->typmods = list_make1(makeIntConst(1, -1));
43051 					(yyval.typnam)->location = (yylsp[0]);
43052 				}
43053 #line 43054 "gram_minimal.c" /* yacc.c:1646  */
43054     break;
43055 
43056   case 1906:
43057 #line 13092 "gram_minimal.y" /* yacc.c:1646  */
43058     { (yyval.str) = (yyvsp[0].boolean) ? "varchar": "bpchar"; }
43059 #line 43060 "gram_minimal.c" /* yacc.c:1646  */
43060     break;
43061 
43062   case 1907:
43063 #line 13094 "gram_minimal.y" /* yacc.c:1646  */
43064     { (yyval.str) = (yyvsp[0].boolean) ? "varchar": "bpchar"; }
43065 #line 43066 "gram_minimal.c" /* yacc.c:1646  */
43066     break;
43067 
43068   case 1908:
43069 #line 13096 "gram_minimal.y" /* yacc.c:1646  */
43070     { (yyval.str) = "varchar"; }
43071 #line 43072 "gram_minimal.c" /* yacc.c:1646  */
43072     break;
43073 
43074   case 1909:
43075 #line 13098 "gram_minimal.y" /* yacc.c:1646  */
43076     { (yyval.str) = (yyvsp[0].boolean) ? "varchar": "bpchar"; }
43077 #line 43078 "gram_minimal.c" /* yacc.c:1646  */
43078     break;
43079 
43080   case 1910:
43081 #line 13100 "gram_minimal.y" /* yacc.c:1646  */
43082     { (yyval.str) = (yyvsp[0].boolean) ? "varchar": "bpchar"; }
43083 #line 43084 "gram_minimal.c" /* yacc.c:1646  */
43084     break;
43085 
43086   case 1911:
43087 #line 13102 "gram_minimal.y" /* yacc.c:1646  */
43088     { (yyval.str) = (yyvsp[0].boolean) ? "varchar": "bpchar"; }
43089 #line 43090 "gram_minimal.c" /* yacc.c:1646  */
43090     break;
43091 
43092   case 1912:
43093 #line 13106 "gram_minimal.y" /* yacc.c:1646  */
43094     { (yyval.boolean) = true; }
43095 #line 43096 "gram_minimal.c" /* yacc.c:1646  */
43096     break;
43097 
43098   case 1913:
43099 #line 13107 "gram_minimal.y" /* yacc.c:1646  */
43100     { (yyval.boolean) = false; }
43101 #line 43102 "gram_minimal.c" /* yacc.c:1646  */
43102     break;
43103 
43104   case 1914:
43105 #line 13115 "gram_minimal.y" /* yacc.c:1646  */
43106     {
43107 					if ((yyvsp[0].boolean))
43108 						(yyval.typnam) = SystemTypeName("timestamptz");
43109 					else
43110 						(yyval.typnam) = SystemTypeName("timestamp");
43111 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[-2].ival), (yylsp[-2])));
43112 					(yyval.typnam)->location = (yylsp[-4]);
43113 				}
43114 #line 43115 "gram_minimal.c" /* yacc.c:1646  */
43115     break;
43116 
43117   case 1915:
43118 #line 13124 "gram_minimal.y" /* yacc.c:1646  */
43119     {
43120 					if ((yyvsp[0].boolean))
43121 						(yyval.typnam) = SystemTypeName("timestamptz");
43122 					else
43123 						(yyval.typnam) = SystemTypeName("timestamp");
43124 					(yyval.typnam)->location = (yylsp[-1]);
43125 				}
43126 #line 43127 "gram_minimal.c" /* yacc.c:1646  */
43127     break;
43128 
43129   case 1916:
43130 #line 13132 "gram_minimal.y" /* yacc.c:1646  */
43131     {
43132 					if ((yyvsp[0].boolean))
43133 						(yyval.typnam) = SystemTypeName("timetz");
43134 					else
43135 						(yyval.typnam) = SystemTypeName("time");
43136 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[-2].ival), (yylsp[-2])));
43137 					(yyval.typnam)->location = (yylsp[-4]);
43138 				}
43139 #line 43140 "gram_minimal.c" /* yacc.c:1646  */
43140     break;
43141 
43142   case 1917:
43143 #line 13141 "gram_minimal.y" /* yacc.c:1646  */
43144     {
43145 					if ((yyvsp[0].boolean))
43146 						(yyval.typnam) = SystemTypeName("timetz");
43147 					else
43148 						(yyval.typnam) = SystemTypeName("time");
43149 					(yyval.typnam)->location = (yylsp[-1]);
43150 				}
43151 #line 43152 "gram_minimal.c" /* yacc.c:1646  */
43152     break;
43153 
43154   case 1918:
43155 #line 13152 "gram_minimal.y" /* yacc.c:1646  */
43156     {
43157 					(yyval.typnam) = SystemTypeName("interval");
43158 					(yyval.typnam)->location = (yylsp[0]);
43159 				}
43160 #line 43161 "gram_minimal.c" /* yacc.c:1646  */
43161     break;
43162 
43163   case 1919:
43164 #line 13159 "gram_minimal.y" /* yacc.c:1646  */
43165     { (yyval.boolean) = true; }
43166 #line 43167 "gram_minimal.c" /* yacc.c:1646  */
43167     break;
43168 
43169   case 1920:
43170 #line 13160 "gram_minimal.y" /* yacc.c:1646  */
43171     { (yyval.boolean) = false; }
43172 #line 43173 "gram_minimal.c" /* yacc.c:1646  */
43173     break;
43174 
43175   case 1921:
43176 #line 13161 "gram_minimal.y" /* yacc.c:1646  */
43177     { (yyval.boolean) = false; }
43178 #line 43179 "gram_minimal.c" /* yacc.c:1646  */
43179     break;
43180 
43181   case 1922:
43182 #line 13166 "gram_minimal.y" /* yacc.c:1646  */
43183     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR), (yylsp[0]))); }
43184 #line 43185 "gram_minimal.c" /* yacc.c:1646  */
43185     break;
43186 
43187   case 1923:
43188 #line 13168 "gram_minimal.y" /* yacc.c:1646  */
43189     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MONTH), (yylsp[0]))); }
43190 #line 43191 "gram_minimal.c" /* yacc.c:1646  */
43191     break;
43192 
43193   case 1924:
43194 #line 13170 "gram_minimal.y" /* yacc.c:1646  */
43195     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY), (yylsp[0]))); }
43196 #line 43197 "gram_minimal.c" /* yacc.c:1646  */
43197     break;
43198 
43199   case 1925:
43200 #line 13172 "gram_minimal.y" /* yacc.c:1646  */
43201     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR), (yylsp[0]))); }
43202 #line 43203 "gram_minimal.c" /* yacc.c:1646  */
43203     break;
43204 
43205   case 1926:
43206 #line 13174 "gram_minimal.y" /* yacc.c:1646  */
43207     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MINUTE), (yylsp[0]))); }
43208 #line 43209 "gram_minimal.c" /* yacc.c:1646  */
43209     break;
43210 
43211   case 1927:
43212 #line 13176 "gram_minimal.y" /* yacc.c:1646  */
43213     { (yyval.list) = (yyvsp[0].list); }
43214 #line 43215 "gram_minimal.c" /* yacc.c:1646  */
43215     break;
43216 
43217   case 1928:
43218 #line 13178 "gram_minimal.y" /* yacc.c:1646  */
43219     {
43220 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR) |
43221 												 INTERVAL_MASK(MONTH), (yylsp[-2])));
43222 				}
43223 #line 43224 "gram_minimal.c" /* yacc.c:1646  */
43224     break;
43225 
43226   case 1929:
43227 #line 13183 "gram_minimal.y" /* yacc.c:1646  */
43228     {
43229 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
43230 												 INTERVAL_MASK(HOUR), (yylsp[-2])));
43231 				}
43232 #line 43233 "gram_minimal.c" /* yacc.c:1646  */
43233     break;
43234 
43235   case 1930:
43236 #line 13188 "gram_minimal.y" /* yacc.c:1646  */
43237     {
43238 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
43239 												 INTERVAL_MASK(HOUR) |
43240 												 INTERVAL_MASK(MINUTE), (yylsp[-2])));
43241 				}
43242 #line 43243 "gram_minimal.c" /* yacc.c:1646  */
43243     break;
43244 
43245   case 1931:
43246 #line 13194 "gram_minimal.y" /* yacc.c:1646  */
43247     {
43248 					(yyval.list) = (yyvsp[0].list);
43249 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(DAY) |
43250 												INTERVAL_MASK(HOUR) |
43251 												INTERVAL_MASK(MINUTE) |
43252 												INTERVAL_MASK(SECOND), (yylsp[-2]));
43253 				}
43254 #line 43255 "gram_minimal.c" /* yacc.c:1646  */
43255     break;
43256 
43257   case 1932:
43258 #line 13202 "gram_minimal.y" /* yacc.c:1646  */
43259     {
43260 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR) |
43261 												 INTERVAL_MASK(MINUTE), (yylsp[-2])));
43262 				}
43263 #line 43264 "gram_minimal.c" /* yacc.c:1646  */
43264     break;
43265 
43266   case 1933:
43267 #line 13207 "gram_minimal.y" /* yacc.c:1646  */
43268     {
43269 					(yyval.list) = (yyvsp[0].list);
43270 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(HOUR) |
43271 												INTERVAL_MASK(MINUTE) |
43272 												INTERVAL_MASK(SECOND), (yylsp[-2]));
43273 				}
43274 #line 43275 "gram_minimal.c" /* yacc.c:1646  */
43275     break;
43276 
43277   case 1934:
43278 #line 13214 "gram_minimal.y" /* yacc.c:1646  */
43279     {
43280 					(yyval.list) = (yyvsp[0].list);
43281 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(MINUTE) |
43282 												INTERVAL_MASK(SECOND), (yylsp[-2]));
43283 				}
43284 #line 43285 "gram_minimal.c" /* yacc.c:1646  */
43285     break;
43286 
43287   case 1935:
43288 #line 13220 "gram_minimal.y" /* yacc.c:1646  */
43289     { (yyval.list) = NIL; }
43290 #line 43291 "gram_minimal.c" /* yacc.c:1646  */
43291     break;
43292 
43293   case 1936:
43294 #line 13225 "gram_minimal.y" /* yacc.c:1646  */
43295     {
43296 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[0])));
43297 				}
43298 #line 43299 "gram_minimal.c" /* yacc.c:1646  */
43299     break;
43300 
43301   case 1937:
43302 #line 13229 "gram_minimal.y" /* yacc.c:1646  */
43303     {
43304 					(yyval.list) = list_make2(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[-3])),
43305 									makeIntConst((yyvsp[-1].ival), (yylsp[-1])));
43306 				}
43307 #line 43308 "gram_minimal.c" /* yacc.c:1646  */
43308     break;
43309 
43310   case 1938:
43311 #line 13264 "gram_minimal.y" /* yacc.c:1646  */
43312     { (yyval.node) = (yyvsp[0].node); }
43313 #line 43314 "gram_minimal.c" /* yacc.c:1646  */
43314     break;
43315 
43316   case 1939:
43317 #line 13266 "gram_minimal.y" /* yacc.c:1646  */
43318     { (yyval.node) = makeTypeCast((yyvsp[-2].node), (yyvsp[0].typnam), (yylsp[-1])); }
43319 #line 43320 "gram_minimal.c" /* yacc.c:1646  */
43320     break;
43321 
43322   case 1940:
43323 #line 13268 "gram_minimal.y" /* yacc.c:1646  */
43324     {
43325 					CollateClause *n = makeNode(CollateClause);
43326 					n->arg = (yyvsp[-2].node);
43327 					n->collname = (yyvsp[0].list);
43328 					n->location = (yylsp[-1]);
43329 					(yyval.node) = (Node *) n;
43330 				}
43331 #line 43332 "gram_minimal.c" /* yacc.c:1646  */
43332     break;
43333 
43334   case 1941:
43335 #line 13276 "gram_minimal.y" /* yacc.c:1646  */
43336     {
43337 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("timezone"),
43338 											   list_make2((yyvsp[0].node), (yyvsp[-4].node)),
43339 											   (yylsp[-3]));
43340 				}
43341 #line 43342 "gram_minimal.c" /* yacc.c:1646  */
43342     break;
43343 
43344   case 1942:
43345 #line 13291 "gram_minimal.y" /* yacc.c:1646  */
43346     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[0].node), (yylsp[-1])); }
43347 #line 43348 "gram_minimal.c" /* yacc.c:1646  */
43348     break;
43349 
43350   case 1943:
43351 #line 13293 "gram_minimal.y" /* yacc.c:1646  */
43352     { (yyval.node) = doNegate((yyvsp[0].node), (yylsp[-1])); }
43353 #line 43354 "gram_minimal.c" /* yacc.c:1646  */
43354     break;
43355 
43356   case 1944:
43357 #line 13295 "gram_minimal.y" /* yacc.c:1646  */
43358     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43359 #line 43360 "gram_minimal.c" /* yacc.c:1646  */
43360     break;
43361 
43362   case 1945:
43363 #line 13297 "gram_minimal.y" /* yacc.c:1646  */
43364     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43365 #line 43366 "gram_minimal.c" /* yacc.c:1646  */
43366     break;
43367 
43368   case 1946:
43369 #line 13299 "gram_minimal.y" /* yacc.c:1646  */
43370     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43371 #line 43372 "gram_minimal.c" /* yacc.c:1646  */
43372     break;
43373 
43374   case 1947:
43375 #line 13301 "gram_minimal.y" /* yacc.c:1646  */
43376     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43377 #line 43378 "gram_minimal.c" /* yacc.c:1646  */
43378     break;
43379 
43380   case 1948:
43381 #line 13303 "gram_minimal.y" /* yacc.c:1646  */
43382     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43383 #line 43384 "gram_minimal.c" /* yacc.c:1646  */
43384     break;
43385 
43386   case 1949:
43387 #line 13305 "gram_minimal.y" /* yacc.c:1646  */
43388     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43389 #line 43390 "gram_minimal.c" /* yacc.c:1646  */
43390     break;
43391 
43392   case 1950:
43393 #line 13307 "gram_minimal.y" /* yacc.c:1646  */
43394     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43395 #line 43396 "gram_minimal.c" /* yacc.c:1646  */
43396     break;
43397 
43398   case 1951:
43399 #line 13309 "gram_minimal.y" /* yacc.c:1646  */
43400     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43401 #line 43402 "gram_minimal.c" /* yacc.c:1646  */
43402     break;
43403 
43404   case 1952:
43405 #line 13311 "gram_minimal.y" /* yacc.c:1646  */
43406     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43407 #line 43408 "gram_minimal.c" /* yacc.c:1646  */
43408     break;
43409 
43410   case 1953:
43411 #line 13313 "gram_minimal.y" /* yacc.c:1646  */
43412     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43413 #line 43414 "gram_minimal.c" /* yacc.c:1646  */
43414     break;
43415 
43416   case 1954:
43417 #line 13315 "gram_minimal.y" /* yacc.c:1646  */
43418     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43419 #line 43420 "gram_minimal.c" /* yacc.c:1646  */
43420     break;
43421 
43422   case 1955:
43423 #line 13317 "gram_minimal.y" /* yacc.c:1646  */
43424     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43425 #line 43426 "gram_minimal.c" /* yacc.c:1646  */
43426     break;
43427 
43428   case 1956:
43429 #line 13320 "gram_minimal.y" /* yacc.c:1646  */
43430     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[-1].list), (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43431 #line 43432 "gram_minimal.c" /* yacc.c:1646  */
43432     break;
43433 
43434   case 1957:
43435 #line 13322 "gram_minimal.y" /* yacc.c:1646  */
43436     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[-1].list), NULL, (yyvsp[0].node), (yylsp[-1])); }
43437 #line 43438 "gram_minimal.c" /* yacc.c:1646  */
43438     break;
43439 
43440   case 1958:
43441 #line 13324 "gram_minimal.y" /* yacc.c:1646  */
43442     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[0].list), (yyvsp[-1].node), NULL, (yylsp[0])); }
43443 #line 43444 "gram_minimal.c" /* yacc.c:1646  */
43444     break;
43445 
43446   case 1959:
43447 #line 13327 "gram_minimal.y" /* yacc.c:1646  */
43448     { (yyval.node) = makeAndExpr((yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43449 #line 43450 "gram_minimal.c" /* yacc.c:1646  */
43450     break;
43451 
43452   case 1960:
43453 #line 13329 "gram_minimal.y" /* yacc.c:1646  */
43454     { (yyval.node) = makeOrExpr((yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
43455 #line 43456 "gram_minimal.c" /* yacc.c:1646  */
43456     break;
43457 
43458   case 1961:
43459 #line 13331 "gram_minimal.y" /* yacc.c:1646  */
43460     { (yyval.node) = makeNotExpr((yyvsp[0].node), (yylsp[-1])); }
43461 #line 43462 "gram_minimal.c" /* yacc.c:1646  */
43462     break;
43463 
43464   case 1962:
43465 #line 13333 "gram_minimal.y" /* yacc.c:1646  */
43466     { (yyval.node) = makeNotExpr((yyvsp[0].node), (yylsp[-1])); }
43467 #line 43468 "gram_minimal.c" /* yacc.c:1646  */
43468     break;
43469 
43470   case 1963:
43471 #line 13336 "gram_minimal.y" /* yacc.c:1646  */
43472     {
43473 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "~~",
43474 												   (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1]));
43475 				}
43476 #line 43477 "gram_minimal.c" /* yacc.c:1646  */
43477     break;
43478 
43479   case 1964:
43480 #line 13341 "gram_minimal.y" /* yacc.c:1646  */
43481     {
43482 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
43483 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43484 											   (yylsp[-3]));
43485 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "~~",
43486 												   (yyvsp[-4].node), (Node *) n, (yylsp[-3]));
43487 				}
43488 #line 43489 "gram_minimal.c" /* yacc.c:1646  */
43489     break;
43490 
43491   case 1965:
43492 #line 13349 "gram_minimal.y" /* yacc.c:1646  */
43493     {
43494 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "!~~",
43495 												   (yyvsp[-3].node), (yyvsp[0].node), (yylsp[-2]));
43496 				}
43497 #line 43498 "gram_minimal.c" /* yacc.c:1646  */
43498     break;
43499 
43500   case 1966:
43501 #line 13354 "gram_minimal.y" /* yacc.c:1646  */
43502     {
43503 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
43504 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43505 											   (yylsp[-4]));
43506 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "!~~",
43507 												   (yyvsp[-5].node), (Node *) n, (yylsp[-4]));
43508 				}
43509 #line 43510 "gram_minimal.c" /* yacc.c:1646  */
43510     break;
43511 
43512   case 1967:
43513 #line 13362 "gram_minimal.y" /* yacc.c:1646  */
43514     {
43515 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "~~*",
43516 												   (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1]));
43517 				}
43518 #line 43519 "gram_minimal.c" /* yacc.c:1646  */
43519     break;
43520 
43521   case 1968:
43522 #line 13367 "gram_minimal.y" /* yacc.c:1646  */
43523     {
43524 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
43525 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43526 											   (yylsp[-3]));
43527 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "~~*",
43528 												   (yyvsp[-4].node), (Node *) n, (yylsp[-3]));
43529 				}
43530 #line 43531 "gram_minimal.c" /* yacc.c:1646  */
43531     break;
43532 
43533   case 1969:
43534 #line 13375 "gram_minimal.y" /* yacc.c:1646  */
43535     {
43536 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "!~~*",
43537 												   (yyvsp[-3].node), (yyvsp[0].node), (yylsp[-2]));
43538 				}
43539 #line 43540 "gram_minimal.c" /* yacc.c:1646  */
43540     break;
43541 
43542   case 1970:
43543 #line 13380 "gram_minimal.y" /* yacc.c:1646  */
43544     {
43545 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
43546 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43547 											   (yylsp[-4]));
43548 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "!~~*",
43549 												   (yyvsp[-5].node), (Node *) n, (yylsp[-4]));
43550 				}
43551 #line 43552 "gram_minimal.c" /* yacc.c:1646  */
43552     break;
43553 
43554   case 1971:
43555 #line 13389 "gram_minimal.y" /* yacc.c:1646  */
43556     {
43557 					FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"),
43558 											   list_make1((yyvsp[0].node)),
43559 											   (yylsp[-2]));
43560 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "~",
43561 												   (yyvsp[-3].node), (Node *) n, (yylsp[-2]));
43562 				}
43563 #line 43564 "gram_minimal.c" /* yacc.c:1646  */
43564     break;
43565 
43566   case 1972:
43567 #line 13397 "gram_minimal.y" /* yacc.c:1646  */
43568     {
43569 					FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"),
43570 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43571 											   (yylsp[-4]));
43572 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "~",
43573 												   (yyvsp[-5].node), (Node *) n, (yylsp[-4]));
43574 				}
43575 #line 43576 "gram_minimal.c" /* yacc.c:1646  */
43576     break;
43577 
43578   case 1973:
43579 #line 13405 "gram_minimal.y" /* yacc.c:1646  */
43580     {
43581 					FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"),
43582 											   list_make1((yyvsp[0].node)),
43583 											   (yylsp[-3]));
43584 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "!~",
43585 												   (yyvsp[-4].node), (Node *) n, (yylsp[-3]));
43586 				}
43587 #line 43588 "gram_minimal.c" /* yacc.c:1646  */
43588     break;
43589 
43590   case 1974:
43591 #line 13413 "gram_minimal.y" /* yacc.c:1646  */
43592     {
43593 					FuncCall *n = makeFuncCall(SystemFuncName("similar_to_escape"),
43594 											   list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43595 											   (yylsp[-5]));
43596 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "!~",
43597 												   (yyvsp[-6].node), (Node *) n, (yylsp[-5]));
43598 				}
43599 #line 43600 "gram_minimal.c" /* yacc.c:1646  */
43600     break;
43601 
43602   case 1975:
43603 #line 13431 "gram_minimal.y" /* yacc.c:1646  */
43604     {
43605 					NullTest *n = makeNode(NullTest);
43606 					n->arg = (Expr *) (yyvsp[-2].node);
43607 					n->nulltesttype = IS_NULL;
43608 					n->location = (yylsp[-1]);
43609 					(yyval.node) = (Node *)n;
43610 				}
43611 #line 43612 "gram_minimal.c" /* yacc.c:1646  */
43612     break;
43613 
43614   case 1976:
43615 #line 13439 "gram_minimal.y" /* yacc.c:1646  */
43616     {
43617 					NullTest *n = makeNode(NullTest);
43618 					n->arg = (Expr *) (yyvsp[-1].node);
43619 					n->nulltesttype = IS_NULL;
43620 					n->location = (yylsp[0]);
43621 					(yyval.node) = (Node *)n;
43622 				}
43623 #line 43624 "gram_minimal.c" /* yacc.c:1646  */
43624     break;
43625 
43626   case 1977:
43627 #line 13447 "gram_minimal.y" /* yacc.c:1646  */
43628     {
43629 					NullTest *n = makeNode(NullTest);
43630 					n->arg = (Expr *) (yyvsp[-3].node);
43631 					n->nulltesttype = IS_NOT_NULL;
43632 					n->location = (yylsp[-2]);
43633 					(yyval.node) = (Node *)n;
43634 				}
43635 #line 43636 "gram_minimal.c" /* yacc.c:1646  */
43636     break;
43637 
43638   case 1978:
43639 #line 13455 "gram_minimal.y" /* yacc.c:1646  */
43640     {
43641 					NullTest *n = makeNode(NullTest);
43642 					n->arg = (Expr *) (yyvsp[-1].node);
43643 					n->nulltesttype = IS_NOT_NULL;
43644 					n->location = (yylsp[0]);
43645 					(yyval.node) = (Node *)n;
43646 				}
43647 #line 43648 "gram_minimal.c" /* yacc.c:1646  */
43648     break;
43649 
43650   case 1979:
43651 #line 13463 "gram_minimal.y" /* yacc.c:1646  */
43652     {
43653 					if (list_length((yyvsp[-2].list)) != 2)
43654 						ereport(ERROR,
43655 								(errcode(ERRCODE_SYNTAX_ERROR),
43656 								 errmsg("wrong number of parameters on left side of OVERLAPS expression"),
43657 								 parser_errposition((yylsp[-2]))));
43658 					if (list_length((yyvsp[0].list)) != 2)
43659 						ereport(ERROR,
43660 								(errcode(ERRCODE_SYNTAX_ERROR),
43661 								 errmsg("wrong number of parameters on right side of OVERLAPS expression"),
43662 								 parser_errposition((yylsp[0]))));
43663 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("overlaps"),
43664 											   list_concat((yyvsp[-2].list), (yyvsp[0].list)),
43665 											   (yylsp[-1]));
43666 				}
43667 #line 43668 "gram_minimal.c" /* yacc.c:1646  */
43668     break;
43669 
43670   case 1980:
43671 #line 13479 "gram_minimal.y" /* yacc.c:1646  */
43672     {
43673 					BooleanTest *b = makeNode(BooleanTest);
43674 					b->arg = (Expr *) (yyvsp[-2].node);
43675 					b->booltesttype = IS_TRUE;
43676 					b->location = (yylsp[-1]);
43677 					(yyval.node) = (Node *)b;
43678 				}
43679 #line 43680 "gram_minimal.c" /* yacc.c:1646  */
43680     break;
43681 
43682   case 1981:
43683 #line 13487 "gram_minimal.y" /* yacc.c:1646  */
43684     {
43685 					BooleanTest *b = makeNode(BooleanTest);
43686 					b->arg = (Expr *) (yyvsp[-3].node);
43687 					b->booltesttype = IS_NOT_TRUE;
43688 					b->location = (yylsp[-2]);
43689 					(yyval.node) = (Node *)b;
43690 				}
43691 #line 43692 "gram_minimal.c" /* yacc.c:1646  */
43692     break;
43693 
43694   case 1982:
43695 #line 13495 "gram_minimal.y" /* yacc.c:1646  */
43696     {
43697 					BooleanTest *b = makeNode(BooleanTest);
43698 					b->arg = (Expr *) (yyvsp[-2].node);
43699 					b->booltesttype = IS_FALSE;
43700 					b->location = (yylsp[-1]);
43701 					(yyval.node) = (Node *)b;
43702 				}
43703 #line 43704 "gram_minimal.c" /* yacc.c:1646  */
43704     break;
43705 
43706   case 1983:
43707 #line 13503 "gram_minimal.y" /* yacc.c:1646  */
43708     {
43709 					BooleanTest *b = makeNode(BooleanTest);
43710 					b->arg = (Expr *) (yyvsp[-3].node);
43711 					b->booltesttype = IS_NOT_FALSE;
43712 					b->location = (yylsp[-2]);
43713 					(yyval.node) = (Node *)b;
43714 				}
43715 #line 43716 "gram_minimal.c" /* yacc.c:1646  */
43716     break;
43717 
43718   case 1984:
43719 #line 13511 "gram_minimal.y" /* yacc.c:1646  */
43720     {
43721 					BooleanTest *b = makeNode(BooleanTest);
43722 					b->arg = (Expr *) (yyvsp[-2].node);
43723 					b->booltesttype = IS_UNKNOWN;
43724 					b->location = (yylsp[-1]);
43725 					(yyval.node) = (Node *)b;
43726 				}
43727 #line 43728 "gram_minimal.c" /* yacc.c:1646  */
43728     break;
43729 
43730   case 1985:
43731 #line 13519 "gram_minimal.y" /* yacc.c:1646  */
43732     {
43733 					BooleanTest *b = makeNode(BooleanTest);
43734 					b->arg = (Expr *) (yyvsp[-3].node);
43735 					b->booltesttype = IS_NOT_UNKNOWN;
43736 					b->location = (yylsp[-2]);
43737 					(yyval.node) = (Node *)b;
43738 				}
43739 #line 43740 "gram_minimal.c" /* yacc.c:1646  */
43740     break;
43741 
43742   case 1986:
43743 #line 13527 "gram_minimal.y" /* yacc.c:1646  */
43744     {
43745 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[-4].node), (yyvsp[0].node), (yylsp[-3]));
43746 				}
43747 #line 43748 "gram_minimal.c" /* yacc.c:1646  */
43748     break;
43749 
43750   case 1987:
43751 #line 13531 "gram_minimal.y" /* yacc.c:1646  */
43752     {
43753                     (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_DISTINCT, "=", (yyvsp[-5].node), (yyvsp[0].node), (yylsp[-4]));
43754 				}
43755 #line 43756 "gram_minimal.c" /* yacc.c:1646  */
43756     break;
43757 
43758   case 1988:
43759 #line 13535 "gram_minimal.y" /* yacc.c:1646  */
43760     {
43761 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[-5].node), (Node *) (yyvsp[-1].list), (yylsp[-4]));
43762 				}
43763 #line 43764 "gram_minimal.c" /* yacc.c:1646  */
43764     break;
43765 
43766   case 1989:
43767 #line 13539 "gram_minimal.y" /* yacc.c:1646  */
43768     {
43769 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "<>", (yyvsp[-6].node), (Node *) (yyvsp[-1].list), (yylsp[-5]));
43770 				}
43771 #line 43772 "gram_minimal.c" /* yacc.c:1646  */
43772     break;
43773 
43774   case 1990:
43775 #line 13543 "gram_minimal.y" /* yacc.c:1646  */
43776     {
43777 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN,
43778 												   "BETWEEN",
43779 												   (yyvsp[-5].node),
43780 												   (Node *) list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43781 												   (yylsp[-4]));
43782 				}
43783 #line 43784 "gram_minimal.c" /* yacc.c:1646  */
43784     break;
43785 
43786   case 1991:
43787 #line 13551 "gram_minimal.y" /* yacc.c:1646  */
43788     {
43789 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN,
43790 												   "NOT BETWEEN",
43791 												   (yyvsp[-6].node),
43792 												   (Node *) list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43793 												   (yylsp[-5]));
43794 				}
43795 #line 43796 "gram_minimal.c" /* yacc.c:1646  */
43796     break;
43797 
43798   case 1992:
43799 #line 13559 "gram_minimal.y" /* yacc.c:1646  */
43800     {
43801 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN_SYM,
43802 												   "BETWEEN SYMMETRIC",
43803 												   (yyvsp[-5].node),
43804 												   (Node *) list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43805 												   (yylsp[-4]));
43806 				}
43807 #line 43808 "gram_minimal.c" /* yacc.c:1646  */
43808     break;
43809 
43810   case 1993:
43811 #line 13567 "gram_minimal.y" /* yacc.c:1646  */
43812     {
43813 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN_SYM,
43814 												   "NOT BETWEEN SYMMETRIC",
43815 												   (yyvsp[-6].node),
43816 												   (Node *) list_make2((yyvsp[-2].node), (yyvsp[0].node)),
43817 												   (yylsp[-5]));
43818 				}
43819 #line 43820 "gram_minimal.c" /* yacc.c:1646  */
43820     break;
43821 
43822   case 1994:
43823 #line 13575 "gram_minimal.y" /* yacc.c:1646  */
43824     {
43825 					/* in_expr returns a SubLink or a list of a_exprs */
43826 					if (IsA((yyvsp[0].node), SubLink))
43827 					{
43828 						/* generate foo = ANY (subquery) */
43829 						SubLink *n = (SubLink *) (yyvsp[0].node);
43830 						n->subLinkType = ANY_SUBLINK;
43831 						n->subLinkId = 0;
43832 						n->testexpr = (yyvsp[-2].node);
43833 						n->operName = NIL;		/* show it's IN not = ANY */
43834 						n->location = (yylsp[-1]);
43835 						(yyval.node) = (Node *)n;
43836 					}
43837 					else
43838 					{
43839 						/* generate scalar IN expression */
43840 						(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_IN, "=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1]));
43841 					}
43842 				}
43843 #line 43844 "gram_minimal.c" /* yacc.c:1646  */
43844     break;
43845 
43846   case 1995:
43847 #line 13595 "gram_minimal.y" /* yacc.c:1646  */
43848     {
43849 					/* in_expr returns a SubLink or a list of a_exprs */
43850 					if (IsA((yyvsp[0].node), SubLink))
43851 					{
43852 						/* generate NOT (foo = ANY (subquery)) */
43853 						/* Make an = ANY node */
43854 						SubLink *n = (SubLink *) (yyvsp[0].node);
43855 						n->subLinkType = ANY_SUBLINK;
43856 						n->subLinkId = 0;
43857 						n->testexpr = (yyvsp[-3].node);
43858 						n->operName = NIL;		/* show it's IN not = ANY */
43859 						n->location = (yylsp[-2]);
43860 						/* Stick a NOT on top; must have same parse location */
43861 						(yyval.node) = makeNotExpr((Node *) n, (yylsp[-2]));
43862 					}
43863 					else
43864 					{
43865 						/* generate scalar NOT IN expression */
43866 						(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_IN, "<>", (yyvsp[-3].node), (yyvsp[0].node), (yylsp[-2]));
43867 					}
43868 				}
43869 #line 43870 "gram_minimal.c" /* yacc.c:1646  */
43870     break;
43871 
43872   case 1996:
43873 #line 13617 "gram_minimal.y" /* yacc.c:1646  */
43874     {
43875 					SubLink *n = makeNode(SubLink);
43876 					n->subLinkType = (yyvsp[-1].ival);
43877 					n->subLinkId = 0;
43878 					n->testexpr = (yyvsp[-3].node);
43879 					n->operName = (yyvsp[-2].list);
43880 					n->subselect = (yyvsp[0].node);
43881 					n->location = (yylsp[-2]);
43882 					(yyval.node) = (Node *)n;
43883 				}
43884 #line 43885 "gram_minimal.c" /* yacc.c:1646  */
43885     break;
43886 
43887   case 1997:
43888 #line 13628 "gram_minimal.y" /* yacc.c:1646  */
43889     {
43890 					if ((yyvsp[-3].ival) == ANY_SUBLINK)
43891 						(yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ANY, (yyvsp[-4].list), (yyvsp[-5].node), (yyvsp[-1].node), (yylsp[-4]));
43892 					else
43893 						(yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ALL, (yyvsp[-4].list), (yyvsp[-5].node), (yyvsp[-1].node), (yylsp[-4]));
43894 				}
43895 #line 43896 "gram_minimal.c" /* yacc.c:1646  */
43896     break;
43897 
43898   case 1998:
43899 #line 13635 "gram_minimal.y" /* yacc.c:1646  */
43900     {
43901 					/* Not sure how to get rid of the parentheses
43902 					 * but there are lots of shift/reduce errors without them.
43903 					 *
43904 					 * Should be able to implement this by plopping the entire
43905 					 * select into a node, then transforming the target expressions
43906 					 * from whatever they are into count(*), and testing the
43907 					 * entire result equal to one.
43908 					 * But, will probably implement a separate node in the executor.
43909 					 */
43910 					ereport(ERROR,
43911 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
43912 							 errmsg("UNIQUE predicate is not yet implemented"),
43913 							 parser_errposition((yylsp[-1]))));
43914 				}
43915 #line 43916 "gram_minimal.c" /* yacc.c:1646  */
43916     break;
43917 
43918   case 1999:
43919 #line 13651 "gram_minimal.y" /* yacc.c:1646  */
43920     {
43921 					(yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL,
43922 									 list_make1((yyvsp[-2].node)), (yylsp[-1]));
43923 				}
43924 #line 43925 "gram_minimal.c" /* yacc.c:1646  */
43925     break;
43926 
43927   case 2000:
43928 #line 13656 "gram_minimal.y" /* yacc.c:1646  */
43929     {
43930 					(yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL,
43931 												 list_make1((yyvsp[-3].node)), (yylsp[-2])),
43932 									 (yylsp[-2]));
43933 				}
43934 #line 43935 "gram_minimal.c" /* yacc.c:1646  */
43935     break;
43936 
43937   case 2001:
43938 #line 13662 "gram_minimal.y" /* yacc.c:1646  */
43939     {
43940 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make1((yyvsp[-2].node)), (yylsp[-1]));
43941 				}
43942 #line 43943 "gram_minimal.c" /* yacc.c:1646  */
43943     break;
43944 
43945   case 2002:
43946 #line 13666 "gram_minimal.y" /* yacc.c:1646  */
43947     {
43948 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make2((yyvsp[-3].node), makeStringConst((yyvsp[-1].str), (yylsp[-1]))), (yylsp[-2]));
43949 				}
43950 #line 43951 "gram_minimal.c" /* yacc.c:1646  */
43951     break;
43952 
43953   case 2003:
43954 #line 13670 "gram_minimal.y" /* yacc.c:1646  */
43955     {
43956 					(yyval.node) = makeNotExpr((Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make1((yyvsp[-3].node)), (yylsp[-2])), (yylsp[-2]));
43957 				}
43958 #line 43959 "gram_minimal.c" /* yacc.c:1646  */
43959     break;
43960 
43961   case 2004:
43962 #line 13674 "gram_minimal.y" /* yacc.c:1646  */
43963     {
43964 					(yyval.node) = makeNotExpr((Node *) makeFuncCall(SystemFuncName("is_normalized"), list_make2((yyvsp[-4].node), makeStringConst((yyvsp[-1].str), (yylsp[-1]))), (yylsp[-3])), (yylsp[-3]));
43965 				}
43966 #line 43967 "gram_minimal.c" /* yacc.c:1646  */
43967     break;
43968 
43969   case 2005:
43970 #line 13678 "gram_minimal.y" /* yacc.c:1646  */
43971     {
43972 					/*
43973 					 * The SQL spec only allows DEFAULT in "contextually typed
43974 					 * expressions", but for us, it's easier to allow it in
43975 					 * any a_expr and then throw error during parse analysis
43976 					 * if it's in an inappropriate context.  This way also
43977 					 * lets us say something smarter than "syntax error".
43978 					 */
43979 					SetToDefault *n = makeNode(SetToDefault);
43980 					/* parse analysis will fill in the rest */
43981 					n->location = (yylsp[0]);
43982 					(yyval.node) = (Node *)n;
43983 				}
43984 #line 43985 "gram_minimal.c" /* yacc.c:1646  */
43985     break;
43986 
43987   case 2006:
43988 #line 13703 "gram_minimal.y" /* yacc.c:1646  */
43989     { (yyval.node) = (yyvsp[0].node); }
43990 #line 43991 "gram_minimal.c" /* yacc.c:1646  */
43991     break;
43992 
43993   case 2007:
43994 #line 13705 "gram_minimal.y" /* yacc.c:1646  */
43995     { (yyval.node) = makeTypeCast((yyvsp[-2].node), (yyvsp[0].typnam), (yylsp[-1])); }
43996 #line 43997 "gram_minimal.c" /* yacc.c:1646  */
43997     break;
43998 
43999   case 2008:
44000 #line 13707 "gram_minimal.y" /* yacc.c:1646  */
44001     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[0].node), (yylsp[-1])); }
44002 #line 44003 "gram_minimal.c" /* yacc.c:1646  */
44003     break;
44004 
44005   case 2009:
44006 #line 13709 "gram_minimal.y" /* yacc.c:1646  */
44007     { (yyval.node) = doNegate((yyvsp[0].node), (yylsp[-1])); }
44008 #line 44009 "gram_minimal.c" /* yacc.c:1646  */
44009     break;
44010 
44011   case 2010:
44012 #line 13711 "gram_minimal.y" /* yacc.c:1646  */
44013     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44014 #line 44015 "gram_minimal.c" /* yacc.c:1646  */
44015     break;
44016 
44017   case 2011:
44018 #line 13713 "gram_minimal.y" /* yacc.c:1646  */
44019     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44020 #line 44021 "gram_minimal.c" /* yacc.c:1646  */
44021     break;
44022 
44023   case 2012:
44024 #line 13715 "gram_minimal.y" /* yacc.c:1646  */
44025     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44026 #line 44027 "gram_minimal.c" /* yacc.c:1646  */
44027     break;
44028 
44029   case 2013:
44030 #line 13717 "gram_minimal.y" /* yacc.c:1646  */
44031     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44032 #line 44033 "gram_minimal.c" /* yacc.c:1646  */
44033     break;
44034 
44035   case 2014:
44036 #line 13719 "gram_minimal.y" /* yacc.c:1646  */
44037     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44038 #line 44039 "gram_minimal.c" /* yacc.c:1646  */
44039     break;
44040 
44041   case 2015:
44042 #line 13721 "gram_minimal.y" /* yacc.c:1646  */
44043     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44044 #line 44045 "gram_minimal.c" /* yacc.c:1646  */
44045     break;
44046 
44047   case 2016:
44048 #line 13723 "gram_minimal.y" /* yacc.c:1646  */
44049     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44050 #line 44051 "gram_minimal.c" /* yacc.c:1646  */
44051     break;
44052 
44053   case 2017:
44054 #line 13725 "gram_minimal.y" /* yacc.c:1646  */
44055     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44056 #line 44057 "gram_minimal.c" /* yacc.c:1646  */
44057     break;
44058 
44059   case 2018:
44060 #line 13727 "gram_minimal.y" /* yacc.c:1646  */
44061     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44062 #line 44063 "gram_minimal.c" /* yacc.c:1646  */
44063     break;
44064 
44065   case 2019:
44066 #line 13729 "gram_minimal.y" /* yacc.c:1646  */
44067     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44068 #line 44069 "gram_minimal.c" /* yacc.c:1646  */
44069     break;
44070 
44071   case 2020:
44072 #line 13731 "gram_minimal.y" /* yacc.c:1646  */
44073     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44074 #line 44075 "gram_minimal.c" /* yacc.c:1646  */
44075     break;
44076 
44077   case 2021:
44078 #line 13733 "gram_minimal.y" /* yacc.c:1646  */
44079     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44080 #line 44081 "gram_minimal.c" /* yacc.c:1646  */
44081     break;
44082 
44083   case 2022:
44084 #line 13735 "gram_minimal.y" /* yacc.c:1646  */
44085     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[-1].list), (yyvsp[-2].node), (yyvsp[0].node), (yylsp[-1])); }
44086 #line 44087 "gram_minimal.c" /* yacc.c:1646  */
44087     break;
44088 
44089   case 2023:
44090 #line 13737 "gram_minimal.y" /* yacc.c:1646  */
44091     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[-1].list), NULL, (yyvsp[0].node), (yylsp[-1])); }
44092 #line 44093 "gram_minimal.c" /* yacc.c:1646  */
44093     break;
44094 
44095   case 2024:
44096 #line 13739 "gram_minimal.y" /* yacc.c:1646  */
44097     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[0].list), (yyvsp[-1].node), NULL, (yylsp[0])); }
44098 #line 44099 "gram_minimal.c" /* yacc.c:1646  */
44099     break;
44100 
44101   case 2025:
44102 #line 13741 "gram_minimal.y" /* yacc.c:1646  */
44103     {
44104 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[-4].node), (yyvsp[0].node), (yylsp[-3]));
44105 				}
44106 #line 44107 "gram_minimal.c" /* yacc.c:1646  */
44107     break;
44108 
44109   case 2026:
44110 #line 13745 "gram_minimal.y" /* yacc.c:1646  */
44111     {
44112                     (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_DISTINCT, "=", (yyvsp[-5].node), (yyvsp[0].node), (yylsp[-4]));
44113 				}
44114 #line 44115 "gram_minimal.c" /* yacc.c:1646  */
44115     break;
44116 
44117   case 2027:
44118 #line 13749 "gram_minimal.y" /* yacc.c:1646  */
44119     {
44120 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[-5].node), (Node *) (yyvsp[-1].list), (yylsp[-4]));
44121 				}
44122 #line 44123 "gram_minimal.c" /* yacc.c:1646  */
44123     break;
44124 
44125   case 2028:
44126 #line 13753 "gram_minimal.y" /* yacc.c:1646  */
44127     {
44128 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "<>", (yyvsp[-6].node), (Node *) (yyvsp[-1].list), (yylsp[-5]));
44129 				}
44130 #line 44131 "gram_minimal.c" /* yacc.c:1646  */
44131     break;
44132 
44133   case 2029:
44134 #line 13757 "gram_minimal.y" /* yacc.c:1646  */
44135     {
44136 					(yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL,
44137 									 list_make1((yyvsp[-2].node)), (yylsp[-1]));
44138 				}
44139 #line 44140 "gram_minimal.c" /* yacc.c:1646  */
44140     break;
44141 
44142   case 2030:
44143 #line 13762 "gram_minimal.y" /* yacc.c:1646  */
44144     {
44145 					(yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL,
44146 												 list_make1((yyvsp[-3].node)), (yylsp[-2])),
44147 									 (yylsp[-2]));
44148 				}
44149 #line 44150 "gram_minimal.c" /* yacc.c:1646  */
44150     break;
44151 
44152   case 2031:
44153 #line 13777 "gram_minimal.y" /* yacc.c:1646  */
44154     { (yyval.node) = (yyvsp[0].node); }
44155 #line 44156 "gram_minimal.c" /* yacc.c:1646  */
44156     break;
44157 
44158   case 2032:
44159 #line 13778 "gram_minimal.y" /* yacc.c:1646  */
44160     { (yyval.node) = (yyvsp[0].node); }
44161 #line 44162 "gram_minimal.c" /* yacc.c:1646  */
44162     break;
44163 
44164   case 2033:
44165 #line 13780 "gram_minimal.y" /* yacc.c:1646  */
44166     {
44167 					ParamRef *p = makeNode(ParamRef);
44168 					p->number = (yyvsp[-1].ival);
44169 					p->location = (yylsp[-1]);
44170 					if ((yyvsp[0].list))
44171 					{
44172 						A_Indirection *n = makeNode(A_Indirection);
44173 						n->arg = (Node *) p;
44174 						n->indirection = check_indirection((yyvsp[0].list), yyscanner);
44175 						(yyval.node) = (Node *) n;
44176 					}
44177 					else
44178 						(yyval.node) = (Node *) p;
44179 				}
44180 #line 44181 "gram_minimal.c" /* yacc.c:1646  */
44181     break;
44182 
44183   case 2034:
44184 #line 13795 "gram_minimal.y" /* yacc.c:1646  */
44185     {
44186 					if ((yyvsp[0].list))
44187 					{
44188 						A_Indirection *n = makeNode(A_Indirection);
44189 						n->arg = (yyvsp[-2].node);
44190 						n->indirection = check_indirection((yyvsp[0].list), yyscanner);
44191 						(yyval.node) = (Node *)n;
44192 					}
44193 					else if (operator_precedence_warning)
44194 					{
44195 						/*
44196 						 * If precedence warnings are enabled, insert
44197 						 * AEXPR_PAREN nodes wrapping all explicitly
44198 						 * parenthesized subexpressions; this prevents bogus
44199 						 * warnings from being issued when the ordering has
44200 						 * been forced by parentheses.  Take care that an
44201 						 * AEXPR_PAREN node has the same exprLocation as its
44202 						 * child, so as not to cause surprising changes in
44203 						 * error cursor positioning.
44204 						 *
44205 						 * In principle we should not be relying on a GUC to
44206 						 * decide whether to insert AEXPR_PAREN nodes.
44207 						 * However, since they have no effect except to
44208 						 * suppress warnings, it's probably safe enough; and
44209 						 * we'd just as soon not waste cycles on dummy parse
44210 						 * nodes if we don't have to.
44211 						 */
44212 						(yyval.node) = (Node *) makeA_Expr(AEXPR_PAREN, NIL, (yyvsp[-2].node), NULL,
44213 												 exprLocation((yyvsp[-2].node)));
44214 					}
44215 					else
44216 						(yyval.node) = (yyvsp[-2].node);
44217 				}
44218 #line 44219 "gram_minimal.c" /* yacc.c:1646  */
44219     break;
44220 
44221   case 2035:
44222 #line 13829 "gram_minimal.y" /* yacc.c:1646  */
44223     { (yyval.node) = (yyvsp[0].node); }
44224 #line 44225 "gram_minimal.c" /* yacc.c:1646  */
44225     break;
44226 
44227   case 2036:
44228 #line 13831 "gram_minimal.y" /* yacc.c:1646  */
44229     { (yyval.node) = (yyvsp[0].node); }
44230 #line 44231 "gram_minimal.c" /* yacc.c:1646  */
44231     break;
44232 
44233   case 2037:
44234 #line 13833 "gram_minimal.y" /* yacc.c:1646  */
44235     {
44236 					SubLink *n = makeNode(SubLink);
44237 					n->subLinkType = EXPR_SUBLINK;
44238 					n->subLinkId = 0;
44239 					n->testexpr = NULL;
44240 					n->operName = NIL;
44241 					n->subselect = (yyvsp[0].node);
44242 					n->location = (yylsp[0]);
44243 					(yyval.node) = (Node *)n;
44244 				}
44245 #line 44246 "gram_minimal.c" /* yacc.c:1646  */
44246     break;
44247 
44248   case 2038:
44249 #line 13844 "gram_minimal.y" /* yacc.c:1646  */
44250     {
44251 					/*
44252 					 * Because the select_with_parens nonterminal is designed
44253 					 * to "eat" as many levels of parens as possible, the
44254 					 * '(' a_expr ')' opt_indirection production above will
44255 					 * fail to match a sub-SELECT with indirection decoration;
44256 					 * the sub-SELECT won't be regarded as an a_expr as long
44257 					 * as there are parens around it.  To support applying
44258 					 * subscripting or field selection to a sub-SELECT result,
44259 					 * we need this redundant-looking production.
44260 					 */
44261 					SubLink *n = makeNode(SubLink);
44262 					A_Indirection *a = makeNode(A_Indirection);
44263 					n->subLinkType = EXPR_SUBLINK;
44264 					n->subLinkId = 0;
44265 					n->testexpr = NULL;
44266 					n->operName = NIL;
44267 					n->subselect = (yyvsp[-1].node);
44268 					n->location = (yylsp[-1]);
44269 					a->arg = (Node *)n;
44270 					a->indirection = check_indirection((yyvsp[0].list), yyscanner);
44271 					(yyval.node) = (Node *)a;
44272 				}
44273 #line 44274 "gram_minimal.c" /* yacc.c:1646  */
44274     break;
44275 
44276   case 2039:
44277 #line 13868 "gram_minimal.y" /* yacc.c:1646  */
44278     {
44279 					SubLink *n = makeNode(SubLink);
44280 					n->subLinkType = EXISTS_SUBLINK;
44281 					n->subLinkId = 0;
44282 					n->testexpr = NULL;
44283 					n->operName = NIL;
44284 					n->subselect = (yyvsp[0].node);
44285 					n->location = (yylsp[-1]);
44286 					(yyval.node) = (Node *)n;
44287 				}
44288 #line 44289 "gram_minimal.c" /* yacc.c:1646  */
44289     break;
44290 
44291   case 2040:
44292 #line 13879 "gram_minimal.y" /* yacc.c:1646  */
44293     {
44294 					SubLink *n = makeNode(SubLink);
44295 					n->subLinkType = ARRAY_SUBLINK;
44296 					n->subLinkId = 0;
44297 					n->testexpr = NULL;
44298 					n->operName = NIL;
44299 					n->subselect = (yyvsp[0].node);
44300 					n->location = (yylsp[-1]);
44301 					(yyval.node) = (Node *)n;
44302 				}
44303 #line 44304 "gram_minimal.c" /* yacc.c:1646  */
44304     break;
44305 
44306   case 2041:
44307 #line 13890 "gram_minimal.y" /* yacc.c:1646  */
44308     {
44309 					A_ArrayExpr *n = castNode(A_ArrayExpr, (yyvsp[0].node));
44310 					/* point outermost A_ArrayExpr to the ARRAY keyword */
44311 					n->location = (yylsp[-1]);
44312 					(yyval.node) = (Node *)n;
44313 				}
44314 #line 44315 "gram_minimal.c" /* yacc.c:1646  */
44315     break;
44316 
44317   case 2042:
44318 #line 13897 "gram_minimal.y" /* yacc.c:1646  */
44319     {
44320 					RowExpr *r = makeNode(RowExpr);
44321 					r->args = (yyvsp[0].list);
44322 					r->row_typeid = InvalidOid;	/* not analyzed yet */
44323 					r->colnames = NIL;	/* to be filled in during analysis */
44324 					r->row_format = COERCE_EXPLICIT_CALL; /* abuse */
44325 					r->location = (yylsp[0]);
44326 					(yyval.node) = (Node *)r;
44327 				}
44328 #line 44329 "gram_minimal.c" /* yacc.c:1646  */
44329     break;
44330 
44331   case 2043:
44332 #line 13907 "gram_minimal.y" /* yacc.c:1646  */
44333     {
44334 					RowExpr *r = makeNode(RowExpr);
44335 					r->args = (yyvsp[0].list);
44336 					r->row_typeid = InvalidOid;	/* not analyzed yet */
44337 					r->colnames = NIL;	/* to be filled in during analysis */
44338 					r->row_format = COERCE_IMPLICIT_CAST; /* abuse */
44339 					r->location = (yylsp[0]);
44340 					(yyval.node) = (Node *)r;
44341 				}
44342 #line 44343 "gram_minimal.c" /* yacc.c:1646  */
44343     break;
44344 
44345   case 2044:
44346 #line 13917 "gram_minimal.y" /* yacc.c:1646  */
44347     {
44348 				  GroupingFunc *g = makeNode(GroupingFunc);
44349 				  g->args = (yyvsp[-1].list);
44350 				  g->location = (yylsp[-3]);
44351 				  (yyval.node) = (Node *)g;
44352 			  }
44353 #line 44354 "gram_minimal.c" /* yacc.c:1646  */
44354     break;
44355 
44356   case 2045:
44357 #line 13926 "gram_minimal.y" /* yacc.c:1646  */
44358     {
44359 					(yyval.node) = (Node *) makeFuncCall((yyvsp[-2].list), NIL, (yylsp[-2]));
44360 				}
44361 #line 44362 "gram_minimal.c" /* yacc.c:1646  */
44362     break;
44363 
44364   case 2046:
44365 #line 13930 "gram_minimal.y" /* yacc.c:1646  */
44366     {
44367 					FuncCall *n = makeFuncCall((yyvsp[-4].list), (yyvsp[-2].list), (yylsp[-4]));
44368 					n->agg_order = (yyvsp[-1].list);
44369 					(yyval.node) = (Node *)n;
44370 				}
44371 #line 44372 "gram_minimal.c" /* yacc.c:1646  */
44372     break;
44373 
44374   case 2047:
44375 #line 13936 "gram_minimal.y" /* yacc.c:1646  */
44376     {
44377 					FuncCall *n = makeFuncCall((yyvsp[-5].list), list_make1((yyvsp[-2].node)), (yylsp[-5]));
44378 					n->func_variadic = true;
44379 					n->agg_order = (yyvsp[-1].list);
44380 					(yyval.node) = (Node *)n;
44381 				}
44382 #line 44383 "gram_minimal.c" /* yacc.c:1646  */
44383     break;
44384 
44385   case 2048:
44386 #line 13943 "gram_minimal.y" /* yacc.c:1646  */
44387     {
44388 					FuncCall *n = makeFuncCall((yyvsp[-7].list), lappend((yyvsp[-5].list), (yyvsp[-2].node)), (yylsp[-7]));
44389 					n->func_variadic = true;
44390 					n->agg_order = (yyvsp[-1].list);
44391 					(yyval.node) = (Node *)n;
44392 				}
44393 #line 44394 "gram_minimal.c" /* yacc.c:1646  */
44394     break;
44395 
44396   case 2049:
44397 #line 13950 "gram_minimal.y" /* yacc.c:1646  */
44398     {
44399 					FuncCall *n = makeFuncCall((yyvsp[-5].list), (yyvsp[-2].list), (yylsp[-5]));
44400 					n->agg_order = (yyvsp[-1].list);
44401 					/* Ideally we'd mark the FuncCall node to indicate
44402 					 * "must be an aggregate", but there's no provision
44403 					 * for that in FuncCall at the moment.
44404 					 */
44405 					(yyval.node) = (Node *)n;
44406 				}
44407 #line 44408 "gram_minimal.c" /* yacc.c:1646  */
44408     break;
44409 
44410   case 2050:
44411 #line 13960 "gram_minimal.y" /* yacc.c:1646  */
44412     {
44413 					FuncCall *n = makeFuncCall((yyvsp[-5].list), (yyvsp[-2].list), (yylsp[-5]));
44414 					n->agg_order = (yyvsp[-1].list);
44415 					n->agg_distinct = true;
44416 					(yyval.node) = (Node *)n;
44417 				}
44418 #line 44419 "gram_minimal.c" /* yacc.c:1646  */
44419     break;
44420 
44421   case 2051:
44422 #line 13967 "gram_minimal.y" /* yacc.c:1646  */
44423     {
44424 					/*
44425 					 * We consider AGGREGATE(*) to invoke a parameterless
44426 					 * aggregate.  This does the right thing for COUNT(*),
44427 					 * and there are no other aggregates in SQL that accept
44428 					 * '*' as parameter.
44429 					 *
44430 					 * The FuncCall node is also marked agg_star = true,
44431 					 * so that later processing can detect what the argument
44432 					 * really was.
44433 					 */
44434 					FuncCall *n = makeFuncCall((yyvsp[-3].list), NIL, (yylsp[-3]));
44435 					n->agg_star = true;
44436 					(yyval.node) = (Node *)n;
44437 				}
44438 #line 44439 "gram_minimal.c" /* yacc.c:1646  */
44439     break;
44440 
44441   case 2052:
44442 #line 13995 "gram_minimal.y" /* yacc.c:1646  */
44443     {
44444 					FuncCall *n = (FuncCall *) (yyvsp[-3].node);
44445 					/*
44446 					 * The order clause for WITHIN GROUP and the one for
44447 					 * plain-aggregate ORDER BY share a field, so we have to
44448 					 * check here that at most one is present.  We also check
44449 					 * for DISTINCT and VARIADIC here to give a better error
44450 					 * location.  Other consistency checks are deferred to
44451 					 * parse analysis.
44452 					 */
44453 					if ((yyvsp[-2].list) != NIL)
44454 					{
44455 						if (n->agg_order != NIL)
44456 							ereport(ERROR,
44457 									(errcode(ERRCODE_SYNTAX_ERROR),
44458 									 errmsg("cannot use multiple ORDER BY clauses with WITHIN GROUP"),
44459 									 parser_errposition((yylsp[-2]))));
44460 						if (n->agg_distinct)
44461 							ereport(ERROR,
44462 									(errcode(ERRCODE_SYNTAX_ERROR),
44463 									 errmsg("cannot use DISTINCT with WITHIN GROUP"),
44464 									 parser_errposition((yylsp[-2]))));
44465 						if (n->func_variadic)
44466 							ereport(ERROR,
44467 									(errcode(ERRCODE_SYNTAX_ERROR),
44468 									 errmsg("cannot use VARIADIC with WITHIN GROUP"),
44469 									 parser_errposition((yylsp[-2]))));
44470 						n->agg_order = (yyvsp[-2].list);
44471 						n->agg_within_group = true;
44472 					}
44473 					n->agg_filter = (yyvsp[-1].node);
44474 					n->over = (yyvsp[0].windef);
44475 					(yyval.node) = (Node *) n;
44476 				}
44477 #line 44478 "gram_minimal.c" /* yacc.c:1646  */
44478     break;
44479 
44480   case 2053:
44481 #line 14030 "gram_minimal.y" /* yacc.c:1646  */
44482     { (yyval.node) = (yyvsp[0].node); }
44483 #line 44484 "gram_minimal.c" /* yacc.c:1646  */
44484     break;
44485 
44486   case 2054:
44487 #line 14040 "gram_minimal.y" /* yacc.c:1646  */
44488     { (yyval.node) = (yyvsp[0].node); }
44489 #line 44490 "gram_minimal.c" /* yacc.c:1646  */
44490     break;
44491 
44492   case 2055:
44493 #line 14041 "gram_minimal.y" /* yacc.c:1646  */
44494     { (yyval.node) = (yyvsp[0].node); }
44495 #line 44496 "gram_minimal.c" /* yacc.c:1646  */
44496     break;
44497 
44498   case 2056:
44499 #line 14049 "gram_minimal.y" /* yacc.c:1646  */
44500     {
44501 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("pg_collation_for"),
44502 											   list_make1((yyvsp[-1].node)),
44503 											   (yylsp[-4]));
44504 				}
44505 #line 44506 "gram_minimal.c" /* yacc.c:1646  */
44506     break;
44507 
44508   case 2057:
44509 #line 14055 "gram_minimal.y" /* yacc.c:1646  */
44510     {
44511 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_DATE, -1, (yylsp[0]));
44512 				}
44513 #line 44514 "gram_minimal.c" /* yacc.c:1646  */
44514     break;
44515 
44516   case 2058:
44517 #line 14059 "gram_minimal.y" /* yacc.c:1646  */
44518     {
44519 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIME, -1, (yylsp[0]));
44520 				}
44521 #line 44522 "gram_minimal.c" /* yacc.c:1646  */
44522     break;
44523 
44524   case 2059:
44525 #line 14063 "gram_minimal.y" /* yacc.c:1646  */
44526     {
44527 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIME_N, (yyvsp[-1].ival), (yylsp[-3]));
44528 				}
44529 #line 44530 "gram_minimal.c" /* yacc.c:1646  */
44530     break;
44531 
44532   case 2060:
44533 #line 14067 "gram_minimal.y" /* yacc.c:1646  */
44534     {
44535 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIMESTAMP, -1, (yylsp[0]));
44536 				}
44537 #line 44538 "gram_minimal.c" /* yacc.c:1646  */
44538     break;
44539 
44540   case 2061:
44541 #line 14071 "gram_minimal.y" /* yacc.c:1646  */
44542     {
44543 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_TIMESTAMP_N, (yyvsp[-1].ival), (yylsp[-3]));
44544 				}
44545 #line 44546 "gram_minimal.c" /* yacc.c:1646  */
44546     break;
44547 
44548   case 2062:
44549 #line 14075 "gram_minimal.y" /* yacc.c:1646  */
44550     {
44551 					(yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIME, -1, (yylsp[0]));
44552 				}
44553 #line 44554 "gram_minimal.c" /* yacc.c:1646  */
44554     break;
44555 
44556   case 2063:
44557 #line 14079 "gram_minimal.y" /* yacc.c:1646  */
44558     {
44559 					(yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIME_N, (yyvsp[-1].ival), (yylsp[-3]));
44560 				}
44561 #line 44562 "gram_minimal.c" /* yacc.c:1646  */
44562     break;
44563 
44564   case 2064:
44565 #line 14083 "gram_minimal.y" /* yacc.c:1646  */
44566     {
44567 					(yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIMESTAMP, -1, (yylsp[0]));
44568 				}
44569 #line 44570 "gram_minimal.c" /* yacc.c:1646  */
44570     break;
44571 
44572   case 2065:
44573 #line 14087 "gram_minimal.y" /* yacc.c:1646  */
44574     {
44575 					(yyval.node) = makeSQLValueFunction(SVFOP_LOCALTIMESTAMP_N, (yyvsp[-1].ival), (yylsp[-3]));
44576 				}
44577 #line 44578 "gram_minimal.c" /* yacc.c:1646  */
44578     break;
44579 
44580   case 2066:
44581 #line 14091 "gram_minimal.y" /* yacc.c:1646  */
44582     {
44583 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_ROLE, -1, (yylsp[0]));
44584 				}
44585 #line 44586 "gram_minimal.c" /* yacc.c:1646  */
44586     break;
44587 
44588   case 2067:
44589 #line 14095 "gram_minimal.y" /* yacc.c:1646  */
44590     {
44591 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_USER, -1, (yylsp[0]));
44592 				}
44593 #line 44594 "gram_minimal.c" /* yacc.c:1646  */
44594     break;
44595 
44596   case 2068:
44597 #line 14099 "gram_minimal.y" /* yacc.c:1646  */
44598     {
44599 					(yyval.node) = makeSQLValueFunction(SVFOP_SESSION_USER, -1, (yylsp[0]));
44600 				}
44601 #line 44602 "gram_minimal.c" /* yacc.c:1646  */
44602     break;
44603 
44604   case 2069:
44605 #line 14103 "gram_minimal.y" /* yacc.c:1646  */
44606     {
44607 					(yyval.node) = makeSQLValueFunction(SVFOP_USER, -1, (yylsp[0]));
44608 				}
44609 #line 44610 "gram_minimal.c" /* yacc.c:1646  */
44610     break;
44611 
44612   case 2070:
44613 #line 14107 "gram_minimal.y" /* yacc.c:1646  */
44614     {
44615 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_CATALOG, -1, (yylsp[0]));
44616 				}
44617 #line 44618 "gram_minimal.c" /* yacc.c:1646  */
44618     break;
44619 
44620   case 2071:
44621 #line 14111 "gram_minimal.y" /* yacc.c:1646  */
44622     {
44623 					(yyval.node) = makeSQLValueFunction(SVFOP_CURRENT_SCHEMA, -1, (yylsp[0]));
44624 				}
44625 #line 44626 "gram_minimal.c" /* yacc.c:1646  */
44626     break;
44627 
44628   case 2072:
44629 #line 14115 "gram_minimal.y" /* yacc.c:1646  */
44630     { (yyval.node) = makeTypeCast((yyvsp[-3].node), (yyvsp[-1].typnam), (yylsp[-5])); }
44631 #line 44632 "gram_minimal.c" /* yacc.c:1646  */
44632     break;
44633 
44634   case 2073:
44635 #line 14117 "gram_minimal.y" /* yacc.c:1646  */
44636     {
44637 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("date_part"), (yyvsp[-1].list), (yylsp[-3]));
44638 				}
44639 #line 44640 "gram_minimal.c" /* yacc.c:1646  */
44640     break;
44641 
44642   case 2074:
44643 #line 14121 "gram_minimal.y" /* yacc.c:1646  */
44644     {
44645 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("normalize"), list_make1((yyvsp[-1].node)), (yylsp[-3]));
44646 				}
44647 #line 44648 "gram_minimal.c" /* yacc.c:1646  */
44648     break;
44649 
44650   case 2075:
44651 #line 14125 "gram_minimal.y" /* yacc.c:1646  */
44652     {
44653 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("normalize"), list_make2((yyvsp[-3].node), makeStringConst((yyvsp[-1].str), (yylsp[-1]))), (yylsp[-5]));
44654 				}
44655 #line 44656 "gram_minimal.c" /* yacc.c:1646  */
44656     break;
44657 
44658   case 2076:
44659 #line 14129 "gram_minimal.y" /* yacc.c:1646  */
44660     {
44661 					/* overlay(A PLACING B FROM C FOR D) is converted to
44662 					 * overlay(A, B, C, D)
44663 					 * overlay(A PLACING B FROM C) is converted to
44664 					 * overlay(A, B, C)
44665 					 */
44666 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("overlay"), (yyvsp[-1].list), (yylsp[-3]));
44667 				}
44668 #line 44669 "gram_minimal.c" /* yacc.c:1646  */
44669     break;
44670 
44671   case 2077:
44672 #line 14138 "gram_minimal.y" /* yacc.c:1646  */
44673     {
44674 					/* position(A in B) is converted to position(B, A) */
44675 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("position"), (yyvsp[-1].list), (yylsp[-3]));
44676 				}
44677 #line 44678 "gram_minimal.c" /* yacc.c:1646  */
44678     break;
44679 
44680   case 2078:
44681 #line 14143 "gram_minimal.y" /* yacc.c:1646  */
44682     {
44683 					/* substring(A from B for C) is converted to
44684 					 * substring(A, B, C) - thomas 2000-11-28
44685 					 */
44686 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("substring"), (yyvsp[-1].list), (yylsp[-3]));
44687 				}
44688 #line 44689 "gram_minimal.c" /* yacc.c:1646  */
44689     break;
44690 
44691   case 2079:
44692 #line 14150 "gram_minimal.y" /* yacc.c:1646  */
44693     {
44694 					/* TREAT(expr AS target) converts expr of a particular type to target,
44695 					 * which is defined to be a subtype of the original expression.
44696 					 * In SQL99, this is intended for use with structured UDTs,
44697 					 * but let's make this a generally useful form allowing stronger
44698 					 * coercions than are handled by implicit casting.
44699 					 *
44700 					 * Convert SystemTypeName() to SystemFuncName() even though
44701 					 * at the moment they result in the same thing.
44702 					 */
44703 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName(((Value *)llast((yyvsp[-1].typnam)->names))->val.str),
44704 												list_make1((yyvsp[-3].node)),
44705 												(yylsp[-5]));
44706 				}
44707 #line 44708 "gram_minimal.c" /* yacc.c:1646  */
44708     break;
44709 
44710   case 2080:
44711 #line 14165 "gram_minimal.y" /* yacc.c:1646  */
44712     {
44713 					/* various trim expressions are defined in SQL
44714 					 * - thomas 1997-07-19
44715 					 */
44716 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("btrim"), (yyvsp[-1].list), (yylsp[-4]));
44717 				}
44718 #line 44719 "gram_minimal.c" /* yacc.c:1646  */
44719     break;
44720 
44721   case 2081:
44722 #line 14172 "gram_minimal.y" /* yacc.c:1646  */
44723     {
44724 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("ltrim"), (yyvsp[-1].list), (yylsp[-4]));
44725 				}
44726 #line 44727 "gram_minimal.c" /* yacc.c:1646  */
44727     break;
44728 
44729   case 2082:
44730 #line 14176 "gram_minimal.y" /* yacc.c:1646  */
44731     {
44732 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("rtrim"), (yyvsp[-1].list), (yylsp[-4]));
44733 				}
44734 #line 44735 "gram_minimal.c" /* yacc.c:1646  */
44735     break;
44736 
44737   case 2083:
44738 #line 14180 "gram_minimal.y" /* yacc.c:1646  */
44739     {
44740 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("btrim"), (yyvsp[-1].list), (yylsp[-3]));
44741 				}
44742 #line 44743 "gram_minimal.c" /* yacc.c:1646  */
44743     break;
44744 
44745   case 2084:
44746 #line 14184 "gram_minimal.y" /* yacc.c:1646  */
44747     {
44748 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NULLIF, "=", (yyvsp[-3].node), (yyvsp[-1].node), (yylsp[-5]));
44749 				}
44750 #line 44751 "gram_minimal.c" /* yacc.c:1646  */
44751     break;
44752 
44753   case 2085:
44754 #line 14188 "gram_minimal.y" /* yacc.c:1646  */
44755     {
44756 					CoalesceExpr *c = makeNode(CoalesceExpr);
44757 					c->args = (yyvsp[-1].list);
44758 					c->location = (yylsp[-3]);
44759 					(yyval.node) = (Node *)c;
44760 				}
44761 #line 44762 "gram_minimal.c" /* yacc.c:1646  */
44762     break;
44763 
44764   case 2086:
44765 #line 14195 "gram_minimal.y" /* yacc.c:1646  */
44766     {
44767 					MinMaxExpr *v = makeNode(MinMaxExpr);
44768 					v->args = (yyvsp[-1].list);
44769 					v->op = IS_GREATEST;
44770 					v->location = (yylsp[-3]);
44771 					(yyval.node) = (Node *)v;
44772 				}
44773 #line 44774 "gram_minimal.c" /* yacc.c:1646  */
44774     break;
44775 
44776   case 2087:
44777 #line 14203 "gram_minimal.y" /* yacc.c:1646  */
44778     {
44779 					MinMaxExpr *v = makeNode(MinMaxExpr);
44780 					v->args = (yyvsp[-1].list);
44781 					v->op = IS_LEAST;
44782 					v->location = (yylsp[-3]);
44783 					(yyval.node) = (Node *)v;
44784 				}
44785 #line 44786 "gram_minimal.c" /* yacc.c:1646  */
44786     break;
44787 
44788   case 2088:
44789 #line 14211 "gram_minimal.y" /* yacc.c:1646  */
44790     {
44791 					(yyval.node) = makeXmlExpr(IS_XMLCONCAT, NULL, NIL, (yyvsp[-1].list), (yylsp[-3]));
44792 				}
44793 #line 44794 "gram_minimal.c" /* yacc.c:1646  */
44794     break;
44795 
44796   case 2089:
44797 #line 14215 "gram_minimal.y" /* yacc.c:1646  */
44798     {
44799 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[-1].str), NIL, NIL, (yylsp[-4]));
44800 				}
44801 #line 44802 "gram_minimal.c" /* yacc.c:1646  */
44802     break;
44803 
44804   case 2090:
44805 #line 14219 "gram_minimal.y" /* yacc.c:1646  */
44806     {
44807 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[-3].str), (yyvsp[-1].list), NIL, (yylsp[-6]));
44808 				}
44809 #line 44810 "gram_minimal.c" /* yacc.c:1646  */
44810     break;
44811 
44812   case 2091:
44813 #line 14223 "gram_minimal.y" /* yacc.c:1646  */
44814     {
44815 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[-3].str), NIL, (yyvsp[-1].list), (yylsp[-6]));
44816 				}
44817 #line 44818 "gram_minimal.c" /* yacc.c:1646  */
44818     break;
44819 
44820   case 2092:
44821 #line 14227 "gram_minimal.y" /* yacc.c:1646  */
44822     {
44823 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[-5].str), (yyvsp[-3].list), (yyvsp[-1].list), (yylsp[-8]));
44824 				}
44825 #line 44826 "gram_minimal.c" /* yacc.c:1646  */
44826     break;
44827 
44828   case 2093:
44829 #line 14231 "gram_minimal.y" /* yacc.c:1646  */
44830     {
44831 					/* xmlexists(A PASSING [BY REF] B [BY REF]) is
44832 					 * converted to xmlexists(A, B)*/
44833 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("xmlexists"), list_make2((yyvsp[-2].node), (yyvsp[-1].node)), (yylsp[-4]));
44834 				}
44835 #line 44836 "gram_minimal.c" /* yacc.c:1646  */
44836     break;
44837 
44838   case 2094:
44839 #line 14237 "gram_minimal.y" /* yacc.c:1646  */
44840     {
44841 					(yyval.node) = makeXmlExpr(IS_XMLFOREST, NULL, (yyvsp[-1].list), NIL, (yylsp[-3]));
44842 				}
44843 #line 44844 "gram_minimal.c" /* yacc.c:1646  */
44844     break;
44845 
44846   case 2095:
44847 #line 14241 "gram_minimal.y" /* yacc.c:1646  */
44848     {
44849 					XmlExpr *x = (XmlExpr *)
44850 						makeXmlExpr(IS_XMLPARSE, NULL, NIL,
44851 									list_make2((yyvsp[-2].node), makeBoolAConst((yyvsp[-1].boolean), -1)),
44852 									(yylsp[-5]));
44853 					x->xmloption = (yyvsp[-3].ival);
44854 					(yyval.node) = (Node *)x;
44855 				}
44856 #line 44857 "gram_minimal.c" /* yacc.c:1646  */
44857     break;
44858 
44859   case 2096:
44860 #line 14250 "gram_minimal.y" /* yacc.c:1646  */
44861     {
44862 					(yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[-1].str), NULL, NIL, (yylsp[-4]));
44863 				}
44864 #line 44865 "gram_minimal.c" /* yacc.c:1646  */
44865     break;
44866 
44867   case 2097:
44868 #line 14254 "gram_minimal.y" /* yacc.c:1646  */
44869     {
44870 					(yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[-3].str), NULL, list_make1((yyvsp[-1].node)), (yylsp[-6]));
44871 				}
44872 #line 44873 "gram_minimal.c" /* yacc.c:1646  */
44873     break;
44874 
44875   case 2098:
44876 #line 14258 "gram_minimal.y" /* yacc.c:1646  */
44877     {
44878 					(yyval.node) = makeXmlExpr(IS_XMLROOT, NULL, NIL,
44879 									 list_make3((yyvsp[-4].node), (yyvsp[-2].node), (yyvsp[-1].node)), (yylsp[-6]));
44880 				}
44881 #line 44882 "gram_minimal.c" /* yacc.c:1646  */
44882     break;
44883 
44884   case 2099:
44885 #line 14263 "gram_minimal.y" /* yacc.c:1646  */
44886     {
44887 					XmlSerialize *n = makeNode(XmlSerialize);
44888 					n->xmloption = (yyvsp[-4].ival);
44889 					n->expr = (yyvsp[-3].node);
44890 					n->typeName = (yyvsp[-1].typnam);
44891 					n->location = (yylsp[-6]);
44892 					(yyval.node) = (Node *)n;
44893 				}
44894 #line 44895 "gram_minimal.c" /* yacc.c:1646  */
44895     break;
44896 
44897   case 2100:
44898 #line 14277 "gram_minimal.y" /* yacc.c:1646  */
44899     { (yyval.node) = (yyvsp[0].node); }
44900 #line 44901 "gram_minimal.c" /* yacc.c:1646  */
44901     break;
44902 
44903   case 2101:
44904 #line 14279 "gram_minimal.y" /* yacc.c:1646  */
44905     { (yyval.node) = makeNullAConst(-1); }
44906 #line 44907 "gram_minimal.c" /* yacc.c:1646  */
44907     break;
44908 
44909   case 2102:
44910 #line 14283 "gram_minimal.y" /* yacc.c:1646  */
44911     { (yyval.node) = makeIntConst(XML_STANDALONE_YES, -1); }
44912 #line 44913 "gram_minimal.c" /* yacc.c:1646  */
44913     break;
44914 
44915   case 2103:
44916 #line 14285 "gram_minimal.y" /* yacc.c:1646  */
44917     { (yyval.node) = makeIntConst(XML_STANDALONE_NO, -1); }
44918 #line 44919 "gram_minimal.c" /* yacc.c:1646  */
44919     break;
44920 
44921   case 2104:
44922 #line 14287 "gram_minimal.y" /* yacc.c:1646  */
44923     { (yyval.node) = makeIntConst(XML_STANDALONE_NO_VALUE, -1); }
44924 #line 44925 "gram_minimal.c" /* yacc.c:1646  */
44925     break;
44926 
44927   case 2105:
44928 #line 14289 "gram_minimal.y" /* yacc.c:1646  */
44929     { (yyval.node) = makeIntConst(XML_STANDALONE_OMITTED, -1); }
44930 #line 44931 "gram_minimal.c" /* yacc.c:1646  */
44931     break;
44932 
44933   case 2106:
44934 #line 14292 "gram_minimal.y" /* yacc.c:1646  */
44935     { (yyval.list) = (yyvsp[-1].list); }
44936 #line 44937 "gram_minimal.c" /* yacc.c:1646  */
44937     break;
44938 
44939   case 2107:
44940 #line 14295 "gram_minimal.y" /* yacc.c:1646  */
44941     { (yyval.list) = list_make1((yyvsp[0].target)); }
44942 #line 44943 "gram_minimal.c" /* yacc.c:1646  */
44943     break;
44944 
44945   case 2108:
44946 #line 14296 "gram_minimal.y" /* yacc.c:1646  */
44947     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].target)); }
44948 #line 44949 "gram_minimal.c" /* yacc.c:1646  */
44949     break;
44950 
44951   case 2109:
44952 #line 14300 "gram_minimal.y" /* yacc.c:1646  */
44953     {
44954 					(yyval.target) = makeNode(ResTarget);
44955 					(yyval.target)->name = (yyvsp[0].str);
44956 					(yyval.target)->indirection = NIL;
44957 					(yyval.target)->val = (Node *) (yyvsp[-2].node);
44958 					(yyval.target)->location = (yylsp[-2]);
44959 				}
44960 #line 44961 "gram_minimal.c" /* yacc.c:1646  */
44961     break;
44962 
44963   case 2110:
44964 #line 14308 "gram_minimal.y" /* yacc.c:1646  */
44965     {
44966 					(yyval.target) = makeNode(ResTarget);
44967 					(yyval.target)->name = NULL;
44968 					(yyval.target)->indirection = NIL;
44969 					(yyval.target)->val = (Node *) (yyvsp[0].node);
44970 					(yyval.target)->location = (yylsp[0]);
44971 				}
44972 #line 44973 "gram_minimal.c" /* yacc.c:1646  */
44973     break;
44974 
44975   case 2111:
44976 #line 14317 "gram_minimal.y" /* yacc.c:1646  */
44977     { (yyval.ival) = XMLOPTION_DOCUMENT; }
44978 #line 44979 "gram_minimal.c" /* yacc.c:1646  */
44979     break;
44980 
44981   case 2112:
44982 #line 14318 "gram_minimal.y" /* yacc.c:1646  */
44983     { (yyval.ival) = XMLOPTION_CONTENT; }
44984 #line 44985 "gram_minimal.c" /* yacc.c:1646  */
44985     break;
44986 
44987   case 2113:
44988 #line 14321 "gram_minimal.y" /* yacc.c:1646  */
44989     { (yyval.boolean) = true; }
44990 #line 44991 "gram_minimal.c" /* yacc.c:1646  */
44991     break;
44992 
44993   case 2114:
44994 #line 14322 "gram_minimal.y" /* yacc.c:1646  */
44995     { (yyval.boolean) = false; }
44996 #line 44997 "gram_minimal.c" /* yacc.c:1646  */
44997     break;
44998 
44999   case 2115:
45000 #line 14323 "gram_minimal.y" /* yacc.c:1646  */
45001     { (yyval.boolean) = false; }
45002 #line 45003 "gram_minimal.c" /* yacc.c:1646  */
45003     break;
45004 
45005   case 2116:
45006 #line 14329 "gram_minimal.y" /* yacc.c:1646  */
45007     {
45008 					(yyval.node) = (yyvsp[0].node);
45009 				}
45010 #line 45011 "gram_minimal.c" /* yacc.c:1646  */
45011     break;
45012 
45013   case 2117:
45014 #line 14333 "gram_minimal.y" /* yacc.c:1646  */
45015     {
45016 					(yyval.node) = (yyvsp[-1].node);
45017 				}
45018 #line 45019 "gram_minimal.c" /* yacc.c:1646  */
45019     break;
45020 
45021   case 2118:
45022 #line 14337 "gram_minimal.y" /* yacc.c:1646  */
45023     {
45024 					(yyval.node) = (yyvsp[0].node);
45025 				}
45026 #line 45027 "gram_minimal.c" /* yacc.c:1646  */
45027     break;
45028 
45029   case 2119:
45030 #line 14341 "gram_minimal.y" /* yacc.c:1646  */
45031     {
45032 					(yyval.node) = (yyvsp[-1].node);
45033 				}
45034 #line 45035 "gram_minimal.c" /* yacc.c:1646  */
45035     break;
45036 
45037   case 2122:
45038 #line 14356 "gram_minimal.y" /* yacc.c:1646  */
45039     { (yyval.list) = (yyvsp[-1].list); }
45040 #line 45041 "gram_minimal.c" /* yacc.c:1646  */
45041     break;
45042 
45043   case 2123:
45044 #line 14357 "gram_minimal.y" /* yacc.c:1646  */
45045     { (yyval.list) = NIL; }
45046 #line 45047 "gram_minimal.c" /* yacc.c:1646  */
45047     break;
45048 
45049   case 2124:
45050 #line 14361 "gram_minimal.y" /* yacc.c:1646  */
45051     { (yyval.node) = (yyvsp[-1].node); }
45052 #line 45053 "gram_minimal.c" /* yacc.c:1646  */
45053     break;
45054 
45055   case 2125:
45056 #line 14362 "gram_minimal.y" /* yacc.c:1646  */
45057     { (yyval.node) = NULL; }
45058 #line 45059 "gram_minimal.c" /* yacc.c:1646  */
45059     break;
45060 
45061   case 2126:
45062 #line 14370 "gram_minimal.y" /* yacc.c:1646  */
45063     { (yyval.list) = (yyvsp[0].list); }
45064 #line 45065 "gram_minimal.c" /* yacc.c:1646  */
45065     break;
45066 
45067   case 2127:
45068 #line 14371 "gram_minimal.y" /* yacc.c:1646  */
45069     { (yyval.list) = NIL; }
45070 #line 45071 "gram_minimal.c" /* yacc.c:1646  */
45071     break;
45072 
45073   case 2128:
45074 #line 14375 "gram_minimal.y" /* yacc.c:1646  */
45075     { (yyval.list) = list_make1((yyvsp[0].windef)); }
45076 #line 45077 "gram_minimal.c" /* yacc.c:1646  */
45077     break;
45078 
45079   case 2129:
45080 #line 14377 "gram_minimal.y" /* yacc.c:1646  */
45081     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].windef)); }
45082 #line 45083 "gram_minimal.c" /* yacc.c:1646  */
45083     break;
45084 
45085   case 2130:
45086 #line 14382 "gram_minimal.y" /* yacc.c:1646  */
45087     {
45088 					WindowDef *n = (yyvsp[0].windef);
45089 					n->name = (yyvsp[-2].str);
45090 					(yyval.windef) = n;
45091 				}
45092 #line 45093 "gram_minimal.c" /* yacc.c:1646  */
45093     break;
45094 
45095   case 2131:
45096 #line 14390 "gram_minimal.y" /* yacc.c:1646  */
45097     { (yyval.windef) = (yyvsp[0].windef); }
45098 #line 45099 "gram_minimal.c" /* yacc.c:1646  */
45099     break;
45100 
45101   case 2132:
45102 #line 14392 "gram_minimal.y" /* yacc.c:1646  */
45103     {
45104 					WindowDef *n = makeNode(WindowDef);
45105 					n->name = (yyvsp[0].str);
45106 					n->refname = NULL;
45107 					n->partitionClause = NIL;
45108 					n->orderClause = NIL;
45109 					n->frameOptions = FRAMEOPTION_DEFAULTS;
45110 					n->startOffset = NULL;
45111 					n->endOffset = NULL;
45112 					n->location = (yylsp[0]);
45113 					(yyval.windef) = n;
45114 				}
45115 #line 45116 "gram_minimal.c" /* yacc.c:1646  */
45116     break;
45117 
45118   case 2133:
45119 #line 14405 "gram_minimal.y" /* yacc.c:1646  */
45120     { (yyval.windef) = NULL; }
45121 #line 45122 "gram_minimal.c" /* yacc.c:1646  */
45122     break;
45123 
45124   case 2134:
45125 #line 14410 "gram_minimal.y" /* yacc.c:1646  */
45126     {
45127 					WindowDef *n = makeNode(WindowDef);
45128 					n->name = NULL;
45129 					n->refname = (yyvsp[-4].str);
45130 					n->partitionClause = (yyvsp[-3].list);
45131 					n->orderClause = (yyvsp[-2].list);
45132 					/* copy relevant fields of opt_frame_clause */
45133 					n->frameOptions = (yyvsp[-1].windef)->frameOptions;
45134 					n->startOffset = (yyvsp[-1].windef)->startOffset;
45135 					n->endOffset = (yyvsp[-1].windef)->endOffset;
45136 					n->location = (yylsp[-5]);
45137 					(yyval.windef) = n;
45138 				}
45139 #line 45140 "gram_minimal.c" /* yacc.c:1646  */
45140     break;
45141 
45142   case 2135:
45143 #line 14435 "gram_minimal.y" /* yacc.c:1646  */
45144     { (yyval.str) = (yyvsp[0].str); }
45145 #line 45146 "gram_minimal.c" /* yacc.c:1646  */
45146     break;
45147 
45148   case 2136:
45149 #line 14436 "gram_minimal.y" /* yacc.c:1646  */
45150     { (yyval.str) = NULL; }
45151 #line 45152 "gram_minimal.c" /* yacc.c:1646  */
45152     break;
45153 
45154   case 2137:
45155 #line 14439 "gram_minimal.y" /* yacc.c:1646  */
45156     { (yyval.list) = (yyvsp[0].list); }
45157 #line 45158 "gram_minimal.c" /* yacc.c:1646  */
45158     break;
45159 
45160   case 2138:
45161 #line 14440 "gram_minimal.y" /* yacc.c:1646  */
45162     { (yyval.list) = NIL; }
45163 #line 45164 "gram_minimal.c" /* yacc.c:1646  */
45164     break;
45165 
45166   case 2139:
45167 #line 14449 "gram_minimal.y" /* yacc.c:1646  */
45168     {
45169 					WindowDef *n = (yyvsp[-1].windef);
45170 					n->frameOptions |= FRAMEOPTION_NONDEFAULT | FRAMEOPTION_RANGE;
45171 					n->frameOptions |= (yyvsp[0].ival);
45172 					(yyval.windef) = n;
45173 				}
45174 #line 45175 "gram_minimal.c" /* yacc.c:1646  */
45175     break;
45176 
45177   case 2140:
45178 #line 14456 "gram_minimal.y" /* yacc.c:1646  */
45179     {
45180 					WindowDef *n = (yyvsp[-1].windef);
45181 					n->frameOptions |= FRAMEOPTION_NONDEFAULT | FRAMEOPTION_ROWS;
45182 					n->frameOptions |= (yyvsp[0].ival);
45183 					(yyval.windef) = n;
45184 				}
45185 #line 45186 "gram_minimal.c" /* yacc.c:1646  */
45186     break;
45187 
45188   case 2141:
45189 #line 14463 "gram_minimal.y" /* yacc.c:1646  */
45190     {
45191 					WindowDef *n = (yyvsp[-1].windef);
45192 					n->frameOptions |= FRAMEOPTION_NONDEFAULT | FRAMEOPTION_GROUPS;
45193 					n->frameOptions |= (yyvsp[0].ival);
45194 					(yyval.windef) = n;
45195 				}
45196 #line 45197 "gram_minimal.c" /* yacc.c:1646  */
45197     break;
45198 
45199   case 2142:
45200 #line 14470 "gram_minimal.y" /* yacc.c:1646  */
45201     {
45202 					WindowDef *n = makeNode(WindowDef);
45203 					n->frameOptions = FRAMEOPTION_DEFAULTS;
45204 					n->startOffset = NULL;
45205 					n->endOffset = NULL;
45206 					(yyval.windef) = n;
45207 				}
45208 #line 45209 "gram_minimal.c" /* yacc.c:1646  */
45209     break;
45210 
45211   case 2143:
45212 #line 14480 "gram_minimal.y" /* yacc.c:1646  */
45213     {
45214 					WindowDef *n = (yyvsp[0].windef);
45215 					/* reject invalid cases */
45216 					if (n->frameOptions & FRAMEOPTION_START_UNBOUNDED_FOLLOWING)
45217 						ereport(ERROR,
45218 								(errcode(ERRCODE_WINDOWING_ERROR),
45219 								 errmsg("frame start cannot be UNBOUNDED FOLLOWING"),
45220 								 parser_errposition((yylsp[0]))));
45221 					if (n->frameOptions & FRAMEOPTION_START_OFFSET_FOLLOWING)
45222 						ereport(ERROR,
45223 								(errcode(ERRCODE_WINDOWING_ERROR),
45224 								 errmsg("frame starting from following row cannot end with current row"),
45225 								 parser_errposition((yylsp[0]))));
45226 					n->frameOptions |= FRAMEOPTION_END_CURRENT_ROW;
45227 					(yyval.windef) = n;
45228 				}
45229 #line 45230 "gram_minimal.c" /* yacc.c:1646  */
45230     break;
45231 
45232   case 2144:
45233 #line 14497 "gram_minimal.y" /* yacc.c:1646  */
45234     {
45235 					WindowDef *n1 = (yyvsp[-2].windef);
45236 					WindowDef *n2 = (yyvsp[0].windef);
45237 					/* form merged options */
45238 					int		frameOptions = n1->frameOptions;
45239 					/* shift converts START_ options to END_ options */
45240 					frameOptions |= n2->frameOptions << 1;
45241 					frameOptions |= FRAMEOPTION_BETWEEN;
45242 					/* reject invalid cases */
45243 					if (frameOptions & FRAMEOPTION_START_UNBOUNDED_FOLLOWING)
45244 						ereport(ERROR,
45245 								(errcode(ERRCODE_WINDOWING_ERROR),
45246 								 errmsg("frame start cannot be UNBOUNDED FOLLOWING"),
45247 								 parser_errposition((yylsp[-2]))));
45248 					if (frameOptions & FRAMEOPTION_END_UNBOUNDED_PRECEDING)
45249 						ereport(ERROR,
45250 								(errcode(ERRCODE_WINDOWING_ERROR),
45251 								 errmsg("frame end cannot be UNBOUNDED PRECEDING"),
45252 								 parser_errposition((yylsp[0]))));
45253 					if ((frameOptions & FRAMEOPTION_START_CURRENT_ROW) &&
45254 						(frameOptions & FRAMEOPTION_END_OFFSET_PRECEDING))
45255 						ereport(ERROR,
45256 								(errcode(ERRCODE_WINDOWING_ERROR),
45257 								 errmsg("frame starting from current row cannot have preceding rows"),
45258 								 parser_errposition((yylsp[0]))));
45259 					if ((frameOptions & FRAMEOPTION_START_OFFSET_FOLLOWING) &&
45260 						(frameOptions & (FRAMEOPTION_END_OFFSET_PRECEDING |
45261 										 FRAMEOPTION_END_CURRENT_ROW)))
45262 						ereport(ERROR,
45263 								(errcode(ERRCODE_WINDOWING_ERROR),
45264 								 errmsg("frame starting from following row cannot have preceding rows"),
45265 								 parser_errposition((yylsp[0]))));
45266 					n1->frameOptions = frameOptions;
45267 					n1->endOffset = n2->startOffset;
45268 					(yyval.windef) = n1;
45269 				}
45270 #line 45271 "gram_minimal.c" /* yacc.c:1646  */
45271     break;
45272 
45273   case 2145:
45274 #line 14542 "gram_minimal.y" /* yacc.c:1646  */
45275     {
45276 					WindowDef *n = makeNode(WindowDef);
45277 					n->frameOptions = FRAMEOPTION_START_UNBOUNDED_PRECEDING;
45278 					n->startOffset = NULL;
45279 					n->endOffset = NULL;
45280 					(yyval.windef) = n;
45281 				}
45282 #line 45283 "gram_minimal.c" /* yacc.c:1646  */
45283     break;
45284 
45285   case 2146:
45286 #line 14550 "gram_minimal.y" /* yacc.c:1646  */
45287     {
45288 					WindowDef *n = makeNode(WindowDef);
45289 					n->frameOptions = FRAMEOPTION_START_UNBOUNDED_FOLLOWING;
45290 					n->startOffset = NULL;
45291 					n->endOffset = NULL;
45292 					(yyval.windef) = n;
45293 				}
45294 #line 45295 "gram_minimal.c" /* yacc.c:1646  */
45295     break;
45296 
45297   case 2147:
45298 #line 14558 "gram_minimal.y" /* yacc.c:1646  */
45299     {
45300 					WindowDef *n = makeNode(WindowDef);
45301 					n->frameOptions = FRAMEOPTION_START_CURRENT_ROW;
45302 					n->startOffset = NULL;
45303 					n->endOffset = NULL;
45304 					(yyval.windef) = n;
45305 				}
45306 #line 45307 "gram_minimal.c" /* yacc.c:1646  */
45307     break;
45308 
45309   case 2148:
45310 #line 14566 "gram_minimal.y" /* yacc.c:1646  */
45311     {
45312 					WindowDef *n = makeNode(WindowDef);
45313 					n->frameOptions = FRAMEOPTION_START_OFFSET_PRECEDING;
45314 					n->startOffset = (yyvsp[-1].node);
45315 					n->endOffset = NULL;
45316 					(yyval.windef) = n;
45317 				}
45318 #line 45319 "gram_minimal.c" /* yacc.c:1646  */
45319     break;
45320 
45321   case 2149:
45322 #line 14574 "gram_minimal.y" /* yacc.c:1646  */
45323     {
45324 					WindowDef *n = makeNode(WindowDef);
45325 					n->frameOptions = FRAMEOPTION_START_OFFSET_FOLLOWING;
45326 					n->startOffset = (yyvsp[-1].node);
45327 					n->endOffset = NULL;
45328 					(yyval.windef) = n;
45329 				}
45330 #line 45331 "gram_minimal.c" /* yacc.c:1646  */
45331     break;
45332 
45333   case 2150:
45334 #line 14584 "gram_minimal.y" /* yacc.c:1646  */
45335     { (yyval.ival) = FRAMEOPTION_EXCLUDE_CURRENT_ROW; }
45336 #line 45337 "gram_minimal.c" /* yacc.c:1646  */
45337     break;
45338 
45339   case 2151:
45340 #line 14585 "gram_minimal.y" /* yacc.c:1646  */
45341     { (yyval.ival) = FRAMEOPTION_EXCLUDE_GROUP; }
45342 #line 45343 "gram_minimal.c" /* yacc.c:1646  */
45343     break;
45344 
45345   case 2152:
45346 #line 14586 "gram_minimal.y" /* yacc.c:1646  */
45347     { (yyval.ival) = FRAMEOPTION_EXCLUDE_TIES; }
45348 #line 45349 "gram_minimal.c" /* yacc.c:1646  */
45349     break;
45350 
45351   case 2153:
45352 #line 14587 "gram_minimal.y" /* yacc.c:1646  */
45353     { (yyval.ival) = 0; }
45354 #line 45355 "gram_minimal.c" /* yacc.c:1646  */
45355     break;
45356 
45357   case 2154:
45358 #line 14588 "gram_minimal.y" /* yacc.c:1646  */
45359     { (yyval.ival) = 0; }
45360 #line 45361 "gram_minimal.c" /* yacc.c:1646  */
45361     break;
45362 
45363   case 2155:
45364 #line 14602 "gram_minimal.y" /* yacc.c:1646  */
45365     { (yyval.list) = (yyvsp[-1].list); }
45366 #line 45367 "gram_minimal.c" /* yacc.c:1646  */
45367     break;
45368 
45369   case 2156:
45370 #line 14603 "gram_minimal.y" /* yacc.c:1646  */
45371     { (yyval.list) = NIL; }
45372 #line 45373 "gram_minimal.c" /* yacc.c:1646  */
45373     break;
45374 
45375   case 2157:
45376 #line 14604 "gram_minimal.y" /* yacc.c:1646  */
45377     { (yyval.list) = lappend((yyvsp[-3].list), (yyvsp[-1].node)); }
45378 #line 45379 "gram_minimal.c" /* yacc.c:1646  */
45379     break;
45380 
45381   case 2158:
45382 #line 14607 "gram_minimal.y" /* yacc.c:1646  */
45383     { (yyval.list) = (yyvsp[-1].list); }
45384 #line 45385 "gram_minimal.c" /* yacc.c:1646  */
45385     break;
45386 
45387   case 2159:
45388 #line 14608 "gram_minimal.y" /* yacc.c:1646  */
45389     { (yyval.list) = NIL; }
45390 #line 45391 "gram_minimal.c" /* yacc.c:1646  */
45391     break;
45392 
45393   case 2160:
45394 #line 14611 "gram_minimal.y" /* yacc.c:1646  */
45395     { (yyval.list) = lappend((yyvsp[-3].list), (yyvsp[-1].node)); }
45396 #line 45397 "gram_minimal.c" /* yacc.c:1646  */
45397     break;
45398 
45399   case 2161:
45400 #line 14614 "gram_minimal.y" /* yacc.c:1646  */
45401     { (yyval.ival) = ANY_SUBLINK; }
45402 #line 45403 "gram_minimal.c" /* yacc.c:1646  */
45403     break;
45404 
45405   case 2162:
45406 #line 14615 "gram_minimal.y" /* yacc.c:1646  */
45407     { (yyval.ival) = ANY_SUBLINK; }
45408 #line 45409 "gram_minimal.c" /* yacc.c:1646  */
45409     break;
45410 
45411   case 2163:
45412 #line 14616 "gram_minimal.y" /* yacc.c:1646  */
45413     { (yyval.ival) = ALL_SUBLINK; }
45414 #line 45415 "gram_minimal.c" /* yacc.c:1646  */
45415     break;
45416 
45417   case 2164:
45418 #line 14619 "gram_minimal.y" /* yacc.c:1646  */
45419     { (yyval.str) = (yyvsp[0].str); }
45420 #line 45421 "gram_minimal.c" /* yacc.c:1646  */
45421     break;
45422 
45423   case 2165:
45424 #line 14620 "gram_minimal.y" /* yacc.c:1646  */
45425     { (yyval.str) = (yyvsp[0].str); }
45426 #line 45427 "gram_minimal.c" /* yacc.c:1646  */
45427     break;
45428 
45429   case 2166:
45430 #line 14623 "gram_minimal.y" /* yacc.c:1646  */
45431     { (yyval.str) = "+"; }
45432 #line 45433 "gram_minimal.c" /* yacc.c:1646  */
45433     break;
45434 
45435   case 2167:
45436 #line 14624 "gram_minimal.y" /* yacc.c:1646  */
45437     { (yyval.str) = "-"; }
45438 #line 45439 "gram_minimal.c" /* yacc.c:1646  */
45439     break;
45440 
45441   case 2168:
45442 #line 14625 "gram_minimal.y" /* yacc.c:1646  */
45443     { (yyval.str) = "*"; }
45444 #line 45445 "gram_minimal.c" /* yacc.c:1646  */
45445     break;
45446 
45447   case 2169:
45448 #line 14626 "gram_minimal.y" /* yacc.c:1646  */
45449     { (yyval.str) = "/"; }
45450 #line 45451 "gram_minimal.c" /* yacc.c:1646  */
45451     break;
45452 
45453   case 2170:
45454 #line 14627 "gram_minimal.y" /* yacc.c:1646  */
45455     { (yyval.str) = "%"; }
45456 #line 45457 "gram_minimal.c" /* yacc.c:1646  */
45457     break;
45458 
45459   case 2171:
45460 #line 14628 "gram_minimal.y" /* yacc.c:1646  */
45461     { (yyval.str) = "^"; }
45462 #line 45463 "gram_minimal.c" /* yacc.c:1646  */
45463     break;
45464 
45465   case 2172:
45466 #line 14629 "gram_minimal.y" /* yacc.c:1646  */
45467     { (yyval.str) = "<"; }
45468 #line 45469 "gram_minimal.c" /* yacc.c:1646  */
45469     break;
45470 
45471   case 2173:
45472 #line 14630 "gram_minimal.y" /* yacc.c:1646  */
45473     { (yyval.str) = ">"; }
45474 #line 45475 "gram_minimal.c" /* yacc.c:1646  */
45475     break;
45476 
45477   case 2174:
45478 #line 14631 "gram_minimal.y" /* yacc.c:1646  */
45479     { (yyval.str) = "="; }
45480 #line 45481 "gram_minimal.c" /* yacc.c:1646  */
45481     break;
45482 
45483   case 2175:
45484 #line 14632 "gram_minimal.y" /* yacc.c:1646  */
45485     { (yyval.str) = "<="; }
45486 #line 45487 "gram_minimal.c" /* yacc.c:1646  */
45487     break;
45488 
45489   case 2176:
45490 #line 14633 "gram_minimal.y" /* yacc.c:1646  */
45491     { (yyval.str) = ">="; }
45492 #line 45493 "gram_minimal.c" /* yacc.c:1646  */
45493     break;
45494 
45495   case 2177:
45496 #line 14634 "gram_minimal.y" /* yacc.c:1646  */
45497     { (yyval.str) = "<>"; }
45498 #line 45499 "gram_minimal.c" /* yacc.c:1646  */
45499     break;
45500 
45501   case 2178:
45502 #line 14638 "gram_minimal.y" /* yacc.c:1646  */
45503     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
45504 #line 45505 "gram_minimal.c" /* yacc.c:1646  */
45505     break;
45506 
45507   case 2179:
45508 #line 14640 "gram_minimal.y" /* yacc.c:1646  */
45509     { (yyval.list) = (yyvsp[-1].list); }
45510 #line 45511 "gram_minimal.c" /* yacc.c:1646  */
45511     break;
45512 
45513   case 2180:
45514 #line 14645 "gram_minimal.y" /* yacc.c:1646  */
45515     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
45516 #line 45517 "gram_minimal.c" /* yacc.c:1646  */
45517     break;
45518 
45519   case 2181:
45520 #line 14647 "gram_minimal.y" /* yacc.c:1646  */
45521     { (yyval.list) = (yyvsp[-1].list); }
45522 #line 45523 "gram_minimal.c" /* yacc.c:1646  */
45523     break;
45524 
45525   case 2182:
45526 #line 14652 "gram_minimal.y" /* yacc.c:1646  */
45527     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
45528 #line 45529 "gram_minimal.c" /* yacc.c:1646  */
45529     break;
45530 
45531   case 2183:
45532 #line 14654 "gram_minimal.y" /* yacc.c:1646  */
45533     { (yyval.list) = (yyvsp[-1].list); }
45534 #line 45535 "gram_minimal.c" /* yacc.c:1646  */
45535     break;
45536 
45537   case 2184:
45538 #line 14656 "gram_minimal.y" /* yacc.c:1646  */
45539     { (yyval.list) = list_make1(makeString("~~")); }
45540 #line 45541 "gram_minimal.c" /* yacc.c:1646  */
45541     break;
45542 
45543   case 2185:
45544 #line 14658 "gram_minimal.y" /* yacc.c:1646  */
45545     { (yyval.list) = list_make1(makeString("!~~")); }
45546 #line 45547 "gram_minimal.c" /* yacc.c:1646  */
45547     break;
45548 
45549   case 2186:
45550 #line 14660 "gram_minimal.y" /* yacc.c:1646  */
45551     { (yyval.list) = list_make1(makeString("~~*")); }
45552 #line 45553 "gram_minimal.c" /* yacc.c:1646  */
45553     break;
45554 
45555   case 2187:
45556 #line 14662 "gram_minimal.y" /* yacc.c:1646  */
45557     { (yyval.list) = list_make1(makeString("!~~*")); }
45558 #line 45559 "gram_minimal.c" /* yacc.c:1646  */
45559     break;
45560 
45561   case 2188:
45562 #line 14674 "gram_minimal.y" /* yacc.c:1646  */
45563     {
45564 					(yyval.list) = list_make1((yyvsp[0].node));
45565 				}
45566 #line 45567 "gram_minimal.c" /* yacc.c:1646  */
45567     break;
45568 
45569   case 2189:
45570 #line 14678 "gram_minimal.y" /* yacc.c:1646  */
45571     {
45572 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
45573 				}
45574 #line 45575 "gram_minimal.c" /* yacc.c:1646  */
45575     break;
45576 
45577   case 2190:
45578 #line 14685 "gram_minimal.y" /* yacc.c:1646  */
45579     {
45580 					(yyval.list) = list_make1((yyvsp[0].node));
45581 				}
45582 #line 45583 "gram_minimal.c" /* yacc.c:1646  */
45583     break;
45584 
45585   case 2191:
45586 #line 14689 "gram_minimal.y" /* yacc.c:1646  */
45587     {
45588 					(yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node));
45589 				}
45590 #line 45591 "gram_minimal.c" /* yacc.c:1646  */
45591     break;
45592 
45593   case 2192:
45594 #line 14695 "gram_minimal.y" /* yacc.c:1646  */
45595     {
45596 					(yyval.node) = (yyvsp[0].node);
45597 				}
45598 #line 45599 "gram_minimal.c" /* yacc.c:1646  */
45599     break;
45600 
45601   case 2193:
45602 #line 14699 "gram_minimal.y" /* yacc.c:1646  */
45603     {
45604 					NamedArgExpr *na = makeNode(NamedArgExpr);
45605 					na->name = (yyvsp[-2].str);
45606 					na->arg = (Expr *) (yyvsp[0].node);
45607 					na->argnumber = -1;		/* until determined */
45608 					na->location = (yylsp[-2]);
45609 					(yyval.node) = (Node *) na;
45610 				}
45611 #line 45612 "gram_minimal.c" /* yacc.c:1646  */
45612     break;
45613 
45614   case 2194:
45615 #line 14708 "gram_minimal.y" /* yacc.c:1646  */
45616     {
45617 					NamedArgExpr *na = makeNode(NamedArgExpr);
45618 					na->name = (yyvsp[-2].str);
45619 					na->arg = (Expr *) (yyvsp[0].node);
45620 					na->argnumber = -1;		/* until determined */
45621 					na->location = (yylsp[-2]);
45622 					(yyval.node) = (Node *) na;
45623 				}
45624 #line 45625 "gram_minimal.c" /* yacc.c:1646  */
45625     break;
45626 
45627   case 2195:
45628 #line 14718 "gram_minimal.y" /* yacc.c:1646  */
45629     { (yyval.list) = list_make1((yyvsp[0].typnam)); }
45630 #line 45631 "gram_minimal.c" /* yacc.c:1646  */
45631     break;
45632 
45633   case 2196:
45634 #line 14719 "gram_minimal.y" /* yacc.c:1646  */
45635     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].typnam)); }
45636 #line 45637 "gram_minimal.c" /* yacc.c:1646  */
45637     break;
45638 
45639   case 2197:
45640 #line 14723 "gram_minimal.y" /* yacc.c:1646  */
45641     {
45642 					(yyval.node) = makeAArrayExpr((yyvsp[-1].list), (yylsp[-2]));
45643 				}
45644 #line 45645 "gram_minimal.c" /* yacc.c:1646  */
45645     break;
45646 
45647   case 2198:
45648 #line 14727 "gram_minimal.y" /* yacc.c:1646  */
45649     {
45650 					(yyval.node) = makeAArrayExpr((yyvsp[-1].list), (yylsp[-2]));
45651 				}
45652 #line 45653 "gram_minimal.c" /* yacc.c:1646  */
45653     break;
45654 
45655   case 2199:
45656 #line 14731 "gram_minimal.y" /* yacc.c:1646  */
45657     {
45658 					(yyval.node) = makeAArrayExpr(NIL, (yylsp[-1]));
45659 				}
45660 #line 45661 "gram_minimal.c" /* yacc.c:1646  */
45661     break;
45662 
45663   case 2200:
45664 #line 14736 "gram_minimal.y" /* yacc.c:1646  */
45665     { (yyval.list) = list_make1((yyvsp[0].node)); }
45666 #line 45667 "gram_minimal.c" /* yacc.c:1646  */
45667     break;
45668 
45669   case 2201:
45670 #line 14737 "gram_minimal.y" /* yacc.c:1646  */
45671     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].node)); }
45672 #line 45673 "gram_minimal.c" /* yacc.c:1646  */
45673     break;
45674 
45675   case 2202:
45676 #line 14743 "gram_minimal.y" /* yacc.c:1646  */
45677     {
45678 					(yyval.list) = list_make2(makeStringConst((yyvsp[-2].str), (yylsp[-2])), (yyvsp[0].node));
45679 				}
45680 #line 45681 "gram_minimal.c" /* yacc.c:1646  */
45681     break;
45682 
45683   case 2203:
45684 #line 14746 "gram_minimal.y" /* yacc.c:1646  */
45685     { (yyval.list) = NIL; }
45686 #line 45687 "gram_minimal.c" /* yacc.c:1646  */
45687     break;
45688 
45689   case 2204:
45690 #line 14753 "gram_minimal.y" /* yacc.c:1646  */
45691     { (yyval.str) = (yyvsp[0].str); }
45692 #line 45693 "gram_minimal.c" /* yacc.c:1646  */
45693     break;
45694 
45695   case 2205:
45696 #line 14754 "gram_minimal.y" /* yacc.c:1646  */
45697     { (yyval.str) = "year"; }
45698 #line 45699 "gram_minimal.c" /* yacc.c:1646  */
45699     break;
45700 
45701   case 2206:
45702 #line 14755 "gram_minimal.y" /* yacc.c:1646  */
45703     { (yyval.str) = "month"; }
45704 #line 45705 "gram_minimal.c" /* yacc.c:1646  */
45705     break;
45706 
45707   case 2207:
45708 #line 14756 "gram_minimal.y" /* yacc.c:1646  */
45709     { (yyval.str) = "day"; }
45710 #line 45711 "gram_minimal.c" /* yacc.c:1646  */
45711     break;
45712 
45713   case 2208:
45714 #line 14757 "gram_minimal.y" /* yacc.c:1646  */
45715     { (yyval.str) = "hour"; }
45716 #line 45717 "gram_minimal.c" /* yacc.c:1646  */
45717     break;
45718 
45719   case 2209:
45720 #line 14758 "gram_minimal.y" /* yacc.c:1646  */
45721     { (yyval.str) = "minute"; }
45722 #line 45723 "gram_minimal.c" /* yacc.c:1646  */
45723     break;
45724 
45725   case 2210:
45726 #line 14759 "gram_minimal.y" /* yacc.c:1646  */
45727     { (yyval.str) = "second"; }
45728 #line 45729 "gram_minimal.c" /* yacc.c:1646  */
45729     break;
45730 
45731   case 2211:
45732 #line 14760 "gram_minimal.y" /* yacc.c:1646  */
45733     { (yyval.str) = (yyvsp[0].str); }
45734 #line 45735 "gram_minimal.c" /* yacc.c:1646  */
45735     break;
45736 
45737   case 2212:
45738 #line 14764 "gram_minimal.y" /* yacc.c:1646  */
45739     { (yyval.str) = "nfc"; }
45740 #line 45741 "gram_minimal.c" /* yacc.c:1646  */
45741     break;
45742 
45743   case 2213:
45744 #line 14765 "gram_minimal.y" /* yacc.c:1646  */
45745     { (yyval.str) = "nfd"; }
45746 #line 45747 "gram_minimal.c" /* yacc.c:1646  */
45747     break;
45748 
45749   case 2214:
45750 #line 14766 "gram_minimal.y" /* yacc.c:1646  */
45751     { (yyval.str) = "nfkc"; }
45752 #line 45753 "gram_minimal.c" /* yacc.c:1646  */
45753     break;
45754 
45755   case 2215:
45756 #line 14767 "gram_minimal.y" /* yacc.c:1646  */
45757     { (yyval.str) = "nfkd"; }
45758 #line 45759 "gram_minimal.c" /* yacc.c:1646  */
45759     break;
45760 
45761   case 2216:
45762 #line 14778 "gram_minimal.y" /* yacc.c:1646  */
45763     {
45764 					(yyval.list) = list_make4((yyvsp[-3].node), (yyvsp[-2].node), (yyvsp[-1].node), (yyvsp[0].node));
45765 				}
45766 #line 45767 "gram_minimal.c" /* yacc.c:1646  */
45767     break;
45768 
45769   case 2217:
45770 #line 14782 "gram_minimal.y" /* yacc.c:1646  */
45771     {
45772 					(yyval.list) = list_make3((yyvsp[-2].node), (yyvsp[-1].node), (yyvsp[0].node));
45773 				}
45774 #line 45775 "gram_minimal.c" /* yacc.c:1646  */
45775     break;
45776 
45777   case 2218:
45778 #line 14789 "gram_minimal.y" /* yacc.c:1646  */
45779     { (yyval.node) = (yyvsp[0].node); }
45780 #line 45781 "gram_minimal.c" /* yacc.c:1646  */
45781     break;
45782 
45783   case 2219:
45784 #line 14795 "gram_minimal.y" /* yacc.c:1646  */
45785     { (yyval.list) = list_make2((yyvsp[0].node), (yyvsp[-2].node)); }
45786 #line 45787 "gram_minimal.c" /* yacc.c:1646  */
45787     break;
45788 
45789   case 2220:
45790 #line 14796 "gram_minimal.y" /* yacc.c:1646  */
45791     { (yyval.list) = NIL; }
45792 #line 45793 "gram_minimal.c" /* yacc.c:1646  */
45793     break;
45794 
45795   case 2221:
45796 #line 14813 "gram_minimal.y" /* yacc.c:1646  */
45797     {
45798 					(yyval.list) = list_make3((yyvsp[-2].node), (yyvsp[-1].node), (yyvsp[0].node));
45799 				}
45800 #line 45801 "gram_minimal.c" /* yacc.c:1646  */
45801     break;
45802 
45803   case 2222:
45804 #line 14817 "gram_minimal.y" /* yacc.c:1646  */
45805     {
45806 					/* not legal per SQL99, but might as well allow it */
45807 					(yyval.list) = list_make3((yyvsp[-2].node), (yyvsp[0].node), (yyvsp[-1].node));
45808 				}
45809 #line 45810 "gram_minimal.c" /* yacc.c:1646  */
45810     break;
45811 
45812   case 2223:
45813 #line 14822 "gram_minimal.y" /* yacc.c:1646  */
45814     {
45815 					(yyval.list) = list_make2((yyvsp[-1].node), (yyvsp[0].node));
45816 				}
45817 #line 45818 "gram_minimal.c" /* yacc.c:1646  */
45818     break;
45819 
45820   case 2224:
45821 #line 14826 "gram_minimal.y" /* yacc.c:1646  */
45822     {
45823 					/*
45824 					 * Since there are no cases where this syntax allows
45825 					 * a textual FOR value, we forcibly cast the argument
45826 					 * to int4.  The possible matches in pg_proc are
45827 					 * substring(text,int4) and substring(text,text),
45828 					 * and we don't want the parser to choose the latter,
45829 					 * which it is likely to do if the second argument
45830 					 * is unknown or doesn't have an implicit cast to int4.
45831 					 */
45832 					(yyval.list) = list_make3((yyvsp[-1].node), makeIntConst(1, -1),
45833 									makeTypeCast((yyvsp[0].node),
45834 												 SystemTypeName("int4"), -1));
45835 				}
45836 #line 45837 "gram_minimal.c" /* yacc.c:1646  */
45837     break;
45838 
45839   case 2225:
45840 #line 14841 "gram_minimal.y" /* yacc.c:1646  */
45841     {
45842 					(yyval.list) = (yyvsp[0].list);
45843 				}
45844 #line 45845 "gram_minimal.c" /* yacc.c:1646  */
45845     break;
45846 
45847   case 2226:
45848 #line 14845 "gram_minimal.y" /* yacc.c:1646  */
45849     { (yyval.list) = NIL; }
45850 #line 45851 "gram_minimal.c" /* yacc.c:1646  */
45851     break;
45852 
45853   case 2227:
45854 #line 14849 "gram_minimal.y" /* yacc.c:1646  */
45855     { (yyval.node) = (yyvsp[0].node); }
45856 #line 45857 "gram_minimal.c" /* yacc.c:1646  */
45857     break;
45858 
45859   case 2228:
45860 #line 14852 "gram_minimal.y" /* yacc.c:1646  */
45861     { (yyval.node) = (yyvsp[0].node); }
45862 #line 45863 "gram_minimal.c" /* yacc.c:1646  */
45863     break;
45864 
45865   case 2229:
45866 #line 14855 "gram_minimal.y" /* yacc.c:1646  */
45867     { (yyval.list) = lappend((yyvsp[0].list), (yyvsp[-2].node)); }
45868 #line 45869 "gram_minimal.c" /* yacc.c:1646  */
45869     break;
45870 
45871   case 2230:
45872 #line 14856 "gram_minimal.y" /* yacc.c:1646  */
45873     { (yyval.list) = (yyvsp[0].list); }
45874 #line 45875 "gram_minimal.c" /* yacc.c:1646  */
45875     break;
45876 
45877   case 2231:
45878 #line 14857 "gram_minimal.y" /* yacc.c:1646  */
45879     { (yyval.list) = (yyvsp[0].list); }
45880 #line 45881 "gram_minimal.c" /* yacc.c:1646  */
45881     break;
45882 
45883   case 2232:
45884 #line 14861 "gram_minimal.y" /* yacc.c:1646  */
45885     {
45886 					SubLink *n = makeNode(SubLink);
45887 					n->subselect = (yyvsp[0].node);
45888 					/* other fields will be filled later */
45889 					(yyval.node) = (Node *)n;
45890 				}
45891 #line 45892 "gram_minimal.c" /* yacc.c:1646  */
45892     break;
45893 
45894   case 2233:
45895 #line 14867 "gram_minimal.y" /* yacc.c:1646  */
45896     { (yyval.node) = (Node *)(yyvsp[-1].list); }
45897 #line 45898 "gram_minimal.c" /* yacc.c:1646  */
45898     break;
45899 
45900   case 2234:
45901 #line 14878 "gram_minimal.y" /* yacc.c:1646  */
45902     {
45903 					CaseExpr *c = makeNode(CaseExpr);
45904 					c->casetype = InvalidOid; /* not analyzed yet */
45905 					c->arg = (Expr *) (yyvsp[-3].node);
45906 					c->args = (yyvsp[-2].list);
45907 					c->defresult = (Expr *) (yyvsp[-1].node);
45908 					c->location = (yylsp[-4]);
45909 					(yyval.node) = (Node *)c;
45910 				}
45911 #line 45912 "gram_minimal.c" /* yacc.c:1646  */
45912     break;
45913 
45914   case 2235:
45915 #line 14891 "gram_minimal.y" /* yacc.c:1646  */
45916     { (yyval.list) = list_make1((yyvsp[0].node)); }
45917 #line 45918 "gram_minimal.c" /* yacc.c:1646  */
45918     break;
45919 
45920   case 2236:
45921 #line 14892 "gram_minimal.y" /* yacc.c:1646  */
45922     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
45923 #line 45924 "gram_minimal.c" /* yacc.c:1646  */
45924     break;
45925 
45926   case 2237:
45927 #line 14897 "gram_minimal.y" /* yacc.c:1646  */
45928     {
45929 					CaseWhen *w = makeNode(CaseWhen);
45930 					w->expr = (Expr *) (yyvsp[-2].node);
45931 					w->result = (Expr *) (yyvsp[0].node);
45932 					w->location = (yylsp[-3]);
45933 					(yyval.node) = (Node *)w;
45934 				}
45935 #line 45936 "gram_minimal.c" /* yacc.c:1646  */
45936     break;
45937 
45938   case 2238:
45939 #line 14907 "gram_minimal.y" /* yacc.c:1646  */
45940     { (yyval.node) = (yyvsp[0].node); }
45941 #line 45942 "gram_minimal.c" /* yacc.c:1646  */
45942     break;
45943 
45944   case 2239:
45945 #line 14908 "gram_minimal.y" /* yacc.c:1646  */
45946     { (yyval.node) = NULL; }
45947 #line 45948 "gram_minimal.c" /* yacc.c:1646  */
45948     break;
45949 
45950   case 2240:
45951 #line 14911 "gram_minimal.y" /* yacc.c:1646  */
45952     { (yyval.node) = (yyvsp[0].node); }
45953 #line 45954 "gram_minimal.c" /* yacc.c:1646  */
45954     break;
45955 
45956   case 2241:
45957 #line 14912 "gram_minimal.y" /* yacc.c:1646  */
45958     { (yyval.node) = NULL; }
45959 #line 45960 "gram_minimal.c" /* yacc.c:1646  */
45960     break;
45961 
45962   case 2242:
45963 #line 14916 "gram_minimal.y" /* yacc.c:1646  */
45964     {
45965 					(yyval.node) = makeColumnRef((yyvsp[0].str), NIL, (yylsp[0]), yyscanner);
45966 				}
45967 #line 45968 "gram_minimal.c" /* yacc.c:1646  */
45968     break;
45969 
45970   case 2243:
45971 #line 14920 "gram_minimal.y" /* yacc.c:1646  */
45972     {
45973 					(yyval.node) = makeColumnRef((yyvsp[-1].str), (yyvsp[0].list), (yylsp[-1]), yyscanner);
45974 				}
45975 #line 45976 "gram_minimal.c" /* yacc.c:1646  */
45976     break;
45977 
45978   case 2244:
45979 #line 14927 "gram_minimal.y" /* yacc.c:1646  */
45980     {
45981 					(yyval.node) = (Node *) makeString((yyvsp[0].str));
45982 				}
45983 #line 45984 "gram_minimal.c" /* yacc.c:1646  */
45984     break;
45985 
45986   case 2245:
45987 #line 14931 "gram_minimal.y" /* yacc.c:1646  */
45988     {
45989 					(yyval.node) = (Node *) makeNode(A_Star);
45990 				}
45991 #line 45992 "gram_minimal.c" /* yacc.c:1646  */
45992     break;
45993 
45994   case 2246:
45995 #line 14935 "gram_minimal.y" /* yacc.c:1646  */
45996     {
45997 					A_Indices *ai = makeNode(A_Indices);
45998 					ai->is_slice = false;
45999 					ai->lidx = NULL;
46000 					ai->uidx = (yyvsp[-1].node);
46001 					(yyval.node) = (Node *) ai;
46002 				}
46003 #line 46004 "gram_minimal.c" /* yacc.c:1646  */
46004     break;
46005 
46006   case 2247:
46007 #line 14943 "gram_minimal.y" /* yacc.c:1646  */
46008     {
46009 					A_Indices *ai = makeNode(A_Indices);
46010 					ai->is_slice = true;
46011 					ai->lidx = (yyvsp[-3].node);
46012 					ai->uidx = (yyvsp[-1].node);
46013 					(yyval.node) = (Node *) ai;
46014 				}
46015 #line 46016 "gram_minimal.c" /* yacc.c:1646  */
46016     break;
46017 
46018   case 2248:
46019 #line 14953 "gram_minimal.y" /* yacc.c:1646  */
46020     { (yyval.node) = (yyvsp[0].node); }
46021 #line 46022 "gram_minimal.c" /* yacc.c:1646  */
46022     break;
46023 
46024   case 2249:
46025 #line 14954 "gram_minimal.y" /* yacc.c:1646  */
46026     { (yyval.node) = NULL; }
46027 #line 46028 "gram_minimal.c" /* yacc.c:1646  */
46028     break;
46029 
46030   case 2250:
46031 #line 14958 "gram_minimal.y" /* yacc.c:1646  */
46032     { (yyval.list) = list_make1((yyvsp[0].node)); }
46033 #line 46034 "gram_minimal.c" /* yacc.c:1646  */
46034     break;
46035 
46036   case 2251:
46037 #line 14959 "gram_minimal.y" /* yacc.c:1646  */
46038     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
46039 #line 46040 "gram_minimal.c" /* yacc.c:1646  */
46040     break;
46041 
46042   case 2252:
46043 #line 14963 "gram_minimal.y" /* yacc.c:1646  */
46044     { (yyval.list) = NIL; }
46045 #line 46046 "gram_minimal.c" /* yacc.c:1646  */
46046     break;
46047 
46048   case 2253:
46049 #line 14964 "gram_minimal.y" /* yacc.c:1646  */
46050     { (yyval.list) = lappend((yyvsp[-1].list), (yyvsp[0].node)); }
46051 #line 46052 "gram_minimal.c" /* yacc.c:1646  */
46052     break;
46053 
46054   case 2256:
46055 #line 14978 "gram_minimal.y" /* yacc.c:1646  */
46056     { (yyval.list) = (yyvsp[0].list); }
46057 #line 46058 "gram_minimal.c" /* yacc.c:1646  */
46058     break;
46059 
46060   case 2257:
46061 #line 14979 "gram_minimal.y" /* yacc.c:1646  */
46062     { (yyval.list) = NIL; }
46063 #line 46064 "gram_minimal.c" /* yacc.c:1646  */
46064     break;
46065 
46066   case 2258:
46067 #line 14983 "gram_minimal.y" /* yacc.c:1646  */
46068     { (yyval.list) = list_make1((yyvsp[0].target)); }
46069 #line 46070 "gram_minimal.c" /* yacc.c:1646  */
46070     break;
46071 
46072   case 2259:
46073 #line 14984 "gram_minimal.y" /* yacc.c:1646  */
46074     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].target)); }
46075 #line 46076 "gram_minimal.c" /* yacc.c:1646  */
46076     break;
46077 
46078   case 2260:
46079 #line 14988 "gram_minimal.y" /* yacc.c:1646  */
46080     {
46081 					(yyval.target) = makeNode(ResTarget);
46082 					(yyval.target)->name = (yyvsp[0].str);
46083 					(yyval.target)->indirection = NIL;
46084 					(yyval.target)->val = (Node *)(yyvsp[-2].node);
46085 					(yyval.target)->location = (yylsp[-2]);
46086 				}
46087 #line 46088 "gram_minimal.c" /* yacc.c:1646  */
46088     break;
46089 
46090   case 2261:
46091 #line 15004 "gram_minimal.y" /* yacc.c:1646  */
46092     {
46093 					(yyval.target) = makeNode(ResTarget);
46094 					(yyval.target)->name = (yyvsp[0].str);
46095 					(yyval.target)->indirection = NIL;
46096 					(yyval.target)->val = (Node *)(yyvsp[-1].node);
46097 					(yyval.target)->location = (yylsp[-1]);
46098 				}
46099 #line 46100 "gram_minimal.c" /* yacc.c:1646  */
46100     break;
46101 
46102   case 2262:
46103 #line 15012 "gram_minimal.y" /* yacc.c:1646  */
46104     {
46105 					(yyval.target) = makeNode(ResTarget);
46106 					(yyval.target)->name = NULL;
46107 					(yyval.target)->indirection = NIL;
46108 					(yyval.target)->val = (Node *)(yyvsp[0].node);
46109 					(yyval.target)->location = (yylsp[0]);
46110 				}
46111 #line 46112 "gram_minimal.c" /* yacc.c:1646  */
46112     break;
46113 
46114   case 2263:
46115 #line 15020 "gram_minimal.y" /* yacc.c:1646  */
46116     {
46117 					ColumnRef *n = makeNode(ColumnRef);
46118 					n->fields = list_make1(makeNode(A_Star));
46119 					n->location = (yylsp[0]);
46120 
46121 					(yyval.target) = makeNode(ResTarget);
46122 					(yyval.target)->name = NULL;
46123 					(yyval.target)->indirection = NIL;
46124 					(yyval.target)->val = (Node *)n;
46125 					(yyval.target)->location = (yylsp[0]);
46126 				}
46127 #line 46128 "gram_minimal.c" /* yacc.c:1646  */
46128     break;
46129 
46130   case 2264:
46131 #line 15041 "gram_minimal.y" /* yacc.c:1646  */
46132     { (yyval.list) = list_make1((yyvsp[0].range)); }
46133 #line 46134 "gram_minimal.c" /* yacc.c:1646  */
46134     break;
46135 
46136   case 2265:
46137 #line 15042 "gram_minimal.y" /* yacc.c:1646  */
46138     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].range)); }
46139 #line 46140 "gram_minimal.c" /* yacc.c:1646  */
46140     break;
46141 
46142   case 2266:
46143 #line 15054 "gram_minimal.y" /* yacc.c:1646  */
46144     {
46145 					(yyval.range) = makeRangeVar(NULL, (yyvsp[0].str), (yylsp[0]));
46146 				}
46147 #line 46148 "gram_minimal.c" /* yacc.c:1646  */
46148     break;
46149 
46150   case 2267:
46151 #line 15058 "gram_minimal.y" /* yacc.c:1646  */
46152     {
46153 					check_qualified_name((yyvsp[0].list), yyscanner);
46154 					(yyval.range) = makeRangeVar(NULL, NULL, (yylsp[-1]));
46155 					switch (list_length((yyvsp[0].list)))
46156 					{
46157 						case 1:
46158 							(yyval.range)->catalogname = NULL;
46159 							(yyval.range)->schemaname = (yyvsp[-1].str);
46160 							(yyval.range)->relname = strVal(linitial((yyvsp[0].list)));
46161 							break;
46162 						case 2:
46163 							(yyval.range)->catalogname = (yyvsp[-1].str);
46164 							(yyval.range)->schemaname = strVal(linitial((yyvsp[0].list)));
46165 							(yyval.range)->relname = strVal(lsecond((yyvsp[0].list)));
46166 							break;
46167 						default:
46168 							ereport(ERROR,
46169 									(errcode(ERRCODE_SYNTAX_ERROR),
46170 									 errmsg("improper qualified name (too many dotted names): %s",
46171 											NameListToString(lcons(makeString((yyvsp[-1].str)), (yyvsp[0].list)))),
46172 									 parser_errposition((yylsp[-1]))));
46173 							break;
46174 					}
46175 				}
46176 #line 46177 "gram_minimal.c" /* yacc.c:1646  */
46177     break;
46178 
46179   case 2268:
46180 #line 15085 "gram_minimal.y" /* yacc.c:1646  */
46181     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
46182 #line 46183 "gram_minimal.c" /* yacc.c:1646  */
46183     break;
46184 
46185   case 2269:
46186 #line 15087 "gram_minimal.y" /* yacc.c:1646  */
46187     { (yyval.list) = lappend((yyvsp[-2].list), makeString((yyvsp[0].str))); }
46188 #line 46189 "gram_minimal.c" /* yacc.c:1646  */
46189     break;
46190 
46191   case 2270:
46192 #line 15091 "gram_minimal.y" /* yacc.c:1646  */
46193     { (yyval.str) = (yyvsp[0].str); }
46194 #line 46195 "gram_minimal.c" /* yacc.c:1646  */
46195     break;
46196 
46197   case 2271:
46198 #line 15094 "gram_minimal.y" /* yacc.c:1646  */
46199     { (yyval.str) = (yyvsp[0].str); }
46200 #line 46201 "gram_minimal.c" /* yacc.c:1646  */
46201     break;
46202 
46203   case 2272:
46204 #line 15097 "gram_minimal.y" /* yacc.c:1646  */
46205     { (yyval.str) = (yyvsp[0].str); }
46206 #line 46207 "gram_minimal.c" /* yacc.c:1646  */
46207     break;
46208 
46209   case 2273:
46210 #line 15099 "gram_minimal.y" /* yacc.c:1646  */
46211     { (yyval.str) = (yyvsp[0].str); }
46212 #line 46213 "gram_minimal.c" /* yacc.c:1646  */
46213     break;
46214 
46215   case 2274:
46216 #line 15101 "gram_minimal.y" /* yacc.c:1646  */
46217     { (yyval.str) = (yyvsp[0].str); }
46218 #line 46219 "gram_minimal.c" /* yacc.c:1646  */
46219     break;
46220 
46221   case 2275:
46222 #line 15103 "gram_minimal.y" /* yacc.c:1646  */
46223     { (yyval.str) = (yyvsp[0].str); }
46224 #line 46225 "gram_minimal.c" /* yacc.c:1646  */
46225     break;
46226 
46227   case 2276:
46228 #line 15114 "gram_minimal.y" /* yacc.c:1646  */
46229     { (yyval.list) = list_make1(makeString((yyvsp[0].str))); }
46230 #line 46231 "gram_minimal.c" /* yacc.c:1646  */
46231     break;
46232 
46233   case 2277:
46234 #line 15116 "gram_minimal.y" /* yacc.c:1646  */
46235     {
46236 						(yyval.list) = check_func_name(lcons(makeString((yyvsp[-1].str)), (yyvsp[0].list)),
46237 											 yyscanner);
46238 					}
46239 #line 46240 "gram_minimal.c" /* yacc.c:1646  */
46240     break;
46241 
46242   case 2278:
46243 #line 15127 "gram_minimal.y" /* yacc.c:1646  */
46244     {
46245 					(yyval.node) = makeIntConst((yyvsp[0].ival), (yylsp[0]));
46246 				}
46247 #line 46248 "gram_minimal.c" /* yacc.c:1646  */
46248     break;
46249 
46250   case 2279:
46251 #line 15131 "gram_minimal.y" /* yacc.c:1646  */
46252     {
46253 					(yyval.node) = makeFloatConst((yyvsp[0].str), (yylsp[0]));
46254 				}
46255 #line 46256 "gram_minimal.c" /* yacc.c:1646  */
46256     break;
46257 
46258   case 2280:
46259 #line 15135 "gram_minimal.y" /* yacc.c:1646  */
46260     {
46261 					(yyval.node) = makeStringConst((yyvsp[0].str), (yylsp[0]));
46262 				}
46263 #line 46264 "gram_minimal.c" /* yacc.c:1646  */
46264     break;
46265 
46266   case 2281:
46267 #line 15139 "gram_minimal.y" /* yacc.c:1646  */
46268     {
46269 					(yyval.node) = makeBitStringConst((yyvsp[0].str), (yylsp[0]));
46270 				}
46271 #line 46272 "gram_minimal.c" /* yacc.c:1646  */
46272     break;
46273 
46274   case 2282:
46275 #line 15143 "gram_minimal.y" /* yacc.c:1646  */
46276     {
46277 					/* This is a bit constant per SQL99:
46278 					 * Without Feature F511, "BIT data type",
46279 					 * a <general literal> shall not be a
46280 					 * <bit string literal> or a <hex string literal>.
46281 					 */
46282 					(yyval.node) = makeBitStringConst((yyvsp[0].str), (yylsp[0]));
46283 				}
46284 #line 46285 "gram_minimal.c" /* yacc.c:1646  */
46285     break;
46286 
46287   case 2283:
46288 #line 15152 "gram_minimal.y" /* yacc.c:1646  */
46289     {
46290 					/* generic type 'literal' syntax */
46291 					TypeName *t = makeTypeNameFromNameList((yyvsp[-1].list));
46292 					t->location = (yylsp[-1]);
46293 					(yyval.node) = makeStringConstCast((yyvsp[0].str), (yylsp[0]), t);
46294 				}
46295 #line 46296 "gram_minimal.c" /* yacc.c:1646  */
46296     break;
46297 
46298   case 2284:
46299 #line 15159 "gram_minimal.y" /* yacc.c:1646  */
46300     {
46301 					/* generic syntax with a type modifier */
46302 					TypeName *t = makeTypeNameFromNameList((yyvsp[-5].list));
46303 					ListCell *lc;
46304 
46305 					/*
46306 					 * We must use func_arg_list and opt_sort_clause in the
46307 					 * production to avoid reduce/reduce conflicts, but we
46308 					 * don't actually wish to allow NamedArgExpr in this
46309 					 * context, nor ORDER BY.
46310 					 */
46311 					foreach(lc, (yyvsp[-3].list))
46312 					{
46313 						NamedArgExpr *arg = (NamedArgExpr *) lfirst(lc);
46314 
46315 						if (IsA(arg, NamedArgExpr))
46316 							ereport(ERROR,
46317 									(errcode(ERRCODE_SYNTAX_ERROR),
46318 									 errmsg("type modifier cannot have parameter name"),
46319 									 parser_errposition(arg->location)));
46320 					}
46321 					if ((yyvsp[-2].list) != NIL)
46322 							ereport(ERROR,
46323 									(errcode(ERRCODE_SYNTAX_ERROR),
46324 									 errmsg("type modifier cannot have ORDER BY"),
46325 									 parser_errposition((yylsp[-2]))));
46326 
46327 					t->typmods = (yyvsp[-3].list);
46328 					t->location = (yylsp[-5]);
46329 					(yyval.node) = makeStringConstCast((yyvsp[0].str), (yylsp[0]), t);
46330 				}
46331 #line 46332 "gram_minimal.c" /* yacc.c:1646  */
46332     break;
46333 
46334   case 2285:
46335 #line 15191 "gram_minimal.y" /* yacc.c:1646  */
46336     {
46337 					(yyval.node) = makeStringConstCast((yyvsp[0].str), (yylsp[0]), (yyvsp[-1].typnam));
46338 				}
46339 #line 46340 "gram_minimal.c" /* yacc.c:1646  */
46340     break;
46341 
46342   case 2286:
46343 #line 15195 "gram_minimal.y" /* yacc.c:1646  */
46344     {
46345 					TypeName *t = (yyvsp[-2].typnam);
46346 					t->typmods = (yyvsp[0].list);
46347 					(yyval.node) = makeStringConstCast((yyvsp[-1].str), (yylsp[-1]), t);
46348 				}
46349 #line 46350 "gram_minimal.c" /* yacc.c:1646  */
46350     break;
46351 
46352   case 2287:
46353 #line 15201 "gram_minimal.y" /* yacc.c:1646  */
46354     {
46355 					TypeName *t = (yyvsp[-4].typnam);
46356 					t->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
46357 											makeIntConst((yyvsp[-2].ival), (yylsp[-2])));
46358 					(yyval.node) = makeStringConstCast((yyvsp[0].str), (yylsp[0]), t);
46359 				}
46360 #line 46361 "gram_minimal.c" /* yacc.c:1646  */
46361     break;
46362 
46363   case 2288:
46364 #line 15208 "gram_minimal.y" /* yacc.c:1646  */
46365     {
46366 					(yyval.node) = makeBoolAConst(true, (yylsp[0]));
46367 				}
46368 #line 46369 "gram_minimal.c" /* yacc.c:1646  */
46369     break;
46370 
46371   case 2289:
46372 #line 15212 "gram_minimal.y" /* yacc.c:1646  */
46373     {
46374 					(yyval.node) = makeBoolAConst(false, (yylsp[0]));
46375 				}
46376 #line 46377 "gram_minimal.c" /* yacc.c:1646  */
46377     break;
46378 
46379   case 2290:
46380 #line 15216 "gram_minimal.y" /* yacc.c:1646  */
46381     {
46382 					(yyval.node) = makeNullAConst((yylsp[0]));
46383 				}
46384 #line 46385 "gram_minimal.c" /* yacc.c:1646  */
46385     break;
46386 
46387   case 2291:
46388 #line 15221 "gram_minimal.y" /* yacc.c:1646  */
46389     { (yyval.ival) = (yyvsp[0].ival); }
46390 #line 46391 "gram_minimal.c" /* yacc.c:1646  */
46391     break;
46392 
46393   case 2292:
46394 #line 15222 "gram_minimal.y" /* yacc.c:1646  */
46395     { (yyval.str) = (yyvsp[0].str); }
46396 #line 46397 "gram_minimal.c" /* yacc.c:1646  */
46397     break;
46398 
46399   case 2293:
46400 #line 15224 "gram_minimal.y" /* yacc.c:1646  */
46401     { (yyval.ival) = (yyvsp[0].ival); }
46402 #line 46403 "gram_minimal.c" /* yacc.c:1646  */
46403     break;
46404 
46405   case 2294:
46406 #line 15225 "gram_minimal.y" /* yacc.c:1646  */
46407     { (yyval.ival) = + (yyvsp[0].ival); }
46408 #line 46409 "gram_minimal.c" /* yacc.c:1646  */
46409     break;
46410 
46411   case 2295:
46412 #line 15226 "gram_minimal.y" /* yacc.c:1646  */
46413     { (yyval.ival) = - (yyvsp[0].ival); }
46414 #line 46415 "gram_minimal.c" /* yacc.c:1646  */
46415     break;
46416 
46417   case 2296:
46418 #line 15231 "gram_minimal.y" /* yacc.c:1646  */
46419     {
46420 					RoleSpec *spc = (RoleSpec *) (yyvsp[0].rolespec);
46421 					switch (spc->roletype)
46422 					{
46423 						case ROLESPEC_CSTRING:
46424 							(yyval.str) = spc->rolename;
46425 							break;
46426 						case ROLESPEC_PUBLIC:
46427 							ereport(ERROR,
46428 									(errcode(ERRCODE_RESERVED_NAME),
46429 									 errmsg("role name \"%s\" is reserved",
46430 											"public"),
46431 									 parser_errposition((yylsp[0]))));
46432 							break;
46433 						case ROLESPEC_SESSION_USER:
46434 							ereport(ERROR,
46435 									(errcode(ERRCODE_RESERVED_NAME),
46436 									 errmsg("%s cannot be used as a role name here",
46437 											"SESSION_USER"),
46438 									 parser_errposition((yylsp[0]))));
46439 							break;
46440 						case ROLESPEC_CURRENT_USER:
46441 							ereport(ERROR,
46442 									(errcode(ERRCODE_RESERVED_NAME),
46443 									 errmsg("%s cannot be used as a role name here",
46444 											"CURRENT_USER"),
46445 									 parser_errposition((yylsp[0]))));
46446 							break;
46447 					}
46448 				}
46449 #line 46450 "gram_minimal.c" /* yacc.c:1646  */
46450     break;
46451 
46452   case 2297:
46453 #line 15264 "gram_minimal.y" /* yacc.c:1646  */
46454     {
46455 						/*
46456 						 * "public" and "none" are not keywords, but they must
46457 						 * be treated specially here.
46458 						 */
46459 						RoleSpec *n;
46460 						if (strcmp((yyvsp[0].str), "public") == 0)
46461 						{
46462 							n = (RoleSpec *) makeRoleSpec(ROLESPEC_PUBLIC, (yylsp[0]));
46463 							n->roletype = ROLESPEC_PUBLIC;
46464 						}
46465 						else if (strcmp((yyvsp[0].str), "none") == 0)
46466 						{
46467 							ereport(ERROR,
46468 									(errcode(ERRCODE_RESERVED_NAME),
46469 									 errmsg("role name \"%s\" is reserved",
46470 											"none"),
46471 									 parser_errposition((yylsp[0]))));
46472 						}
46473 						else
46474 						{
46475 							n = makeRoleSpec(ROLESPEC_CSTRING, (yylsp[0]));
46476 							n->rolename = pstrdup((yyvsp[0].str));
46477 						}
46478 						(yyval.rolespec) = n;
46479 					}
46480 #line 46481 "gram_minimal.c" /* yacc.c:1646  */
46481     break;
46482 
46483   case 2298:
46484 #line 15291 "gram_minimal.y" /* yacc.c:1646  */
46485     {
46486 						(yyval.rolespec) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[0]));
46487 					}
46488 #line 46489 "gram_minimal.c" /* yacc.c:1646  */
46489     break;
46490 
46491   case 2299:
46492 #line 15295 "gram_minimal.y" /* yacc.c:1646  */
46493     {
46494 						(yyval.rolespec) = makeRoleSpec(ROLESPEC_SESSION_USER, (yylsp[0]));
46495 					}
46496 #line 46497 "gram_minimal.c" /* yacc.c:1646  */
46497     break;
46498 
46499   case 2300:
46500 #line 15301 "gram_minimal.y" /* yacc.c:1646  */
46501     { (yyval.list) = list_make1((yyvsp[0].rolespec)); }
46502 #line 46503 "gram_minimal.c" /* yacc.c:1646  */
46503     break;
46504 
46505   case 2301:
46506 #line 15303 "gram_minimal.y" /* yacc.c:1646  */
46507     { (yyval.list) = lappend((yyvsp[-2].list), (yyvsp[0].rolespec)); }
46508 #line 46509 "gram_minimal.c" /* yacc.c:1646  */
46509     break;
46510 
46511   case 2302:
46512 #line 15319 "gram_minimal.y" /* yacc.c:1646  */
46513     { (yyval.str) = (yyvsp[0].str); }
46514 #line 46515 "gram_minimal.c" /* yacc.c:1646  */
46515     break;
46516 
46517   case 2303:
46518 #line 15320 "gram_minimal.y" /* yacc.c:1646  */
46519     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46520 #line 46521 "gram_minimal.c" /* yacc.c:1646  */
46521     break;
46522 
46523   case 2304:
46524 #line 15321 "gram_minimal.y" /* yacc.c:1646  */
46525     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46526 #line 46527 "gram_minimal.c" /* yacc.c:1646  */
46527     break;
46528 
46529   case 2305:
46530 #line 15326 "gram_minimal.y" /* yacc.c:1646  */
46531     { (yyval.str) = (yyvsp[0].str); }
46532 #line 46533 "gram_minimal.c" /* yacc.c:1646  */
46533     break;
46534 
46535   case 2306:
46536 #line 15327 "gram_minimal.y" /* yacc.c:1646  */
46537     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46538 #line 46539 "gram_minimal.c" /* yacc.c:1646  */
46539     break;
46540 
46541   case 2307:
46542 #line 15328 "gram_minimal.y" /* yacc.c:1646  */
46543     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46544 #line 46545 "gram_minimal.c" /* yacc.c:1646  */
46545     break;
46546 
46547   case 2308:
46548 #line 15333 "gram_minimal.y" /* yacc.c:1646  */
46549     { (yyval.str) = (yyvsp[0].str); }
46550 #line 46551 "gram_minimal.c" /* yacc.c:1646  */
46551     break;
46552 
46553   case 2309:
46554 #line 15334 "gram_minimal.y" /* yacc.c:1646  */
46555     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46556 #line 46557 "gram_minimal.c" /* yacc.c:1646  */
46557     break;
46558 
46559   case 2310:
46560 #line 15335 "gram_minimal.y" /* yacc.c:1646  */
46561     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46562 #line 46563 "gram_minimal.c" /* yacc.c:1646  */
46563     break;
46564 
46565   case 2311:
46566 #line 15336 "gram_minimal.y" /* yacc.c:1646  */
46567     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46568 #line 46569 "gram_minimal.c" /* yacc.c:1646  */
46569     break;
46570 
46571   case 2312:
46572 #line 15342 "gram_minimal.y" /* yacc.c:1646  */
46573     { (yyval.str) = (yyvsp[0].str); }
46574 #line 46575 "gram_minimal.c" /* yacc.c:1646  */
46575     break;
46576 
46577   case 2313:
46578 #line 15343 "gram_minimal.y" /* yacc.c:1646  */
46579     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46580 #line 46581 "gram_minimal.c" /* yacc.c:1646  */
46581     break;
46582 
46583   case 2314:
46584 #line 15344 "gram_minimal.y" /* yacc.c:1646  */
46585     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46586 #line 46587 "gram_minimal.c" /* yacc.c:1646  */
46587     break;
46588 
46589   case 2315:
46590 #line 15345 "gram_minimal.y" /* yacc.c:1646  */
46591     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46592 #line 46593 "gram_minimal.c" /* yacc.c:1646  */
46593     break;
46594 
46595   case 2316:
46596 #line 15346 "gram_minimal.y" /* yacc.c:1646  */
46597     { (yyval.str) = pstrdup((yyvsp[0].keyword)); }
46598 #line 46599 "gram_minimal.c" /* yacc.c:1646  */
46599     break;
46600 
46601 
46602 #line 46603 "gram_minimal.c" /* yacc.c:1646  */
46603       default: break;
46604     }
46605   /* User semantic actions sometimes alter yychar, and that requires
46606      that yytoken be updated with the new translation.  We take the
46607      approach of translating immediately before every use of yytoken.
46608      One alternative is translating here after every semantic action,
46609      but that translation would be missed if the semantic action invokes
46610      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
46611      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
46612      incorrect destructor might then be invoked immediately.  In the
46613      case of YYERROR or YYBACKUP, subsequent parser actions might lead
46614      to an incorrect destructor call or verbose syntax error message
46615      before the lookahead is translated.  */
46616   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
46617 
46618   YYPOPSTACK (yylen);
46619   yylen = 0;
46620   YY_STACK_PRINT (yyss, yyssp);
46621 
46622   *++yyvsp = yyval;
46623   *++yylsp = yyloc;
46624 
46625   /* Now 'shift' the result of the reduction.  Determine what state
46626      that goes to, based on the state we popped back to and the rule
46627      number reduced by.  */
46628 
46629   yyn = yyr1[yyn];
46630 
46631   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
46632   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
46633     yystate = yytable[yystate];
46634   else
46635     yystate = yydefgoto[yyn - YYNTOKENS];
46636 
46637   goto yynewstate;
46638 
46639 
46640 /*--------------------------------------.
46641 | yyerrlab -- here on detecting error.  |
46642 `--------------------------------------*/
46643 yyerrlab:
46644   /* Make sure we have latest lookahead translation.  See comments at
46645      user semantic actions for why this is necessary.  */
46646   yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
46647 
46648   /* If not already recovering from an error, report this error.  */
46649   if (!yyerrstatus)
46650     {
46651       ++yynerrs;
46652 #if ! YYERROR_VERBOSE
46653       yyerror (&yylloc, yyscanner, YY_("syntax error"));
46654 #else
46655 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
46656                                         yyssp, yytoken)
46657       {
46658         char const *yymsgp = YY_("syntax error");
46659         int yysyntax_error_status;
46660         yysyntax_error_status = YYSYNTAX_ERROR;
46661         if (yysyntax_error_status == 0)
46662           yymsgp = yymsg;
46663         else if (yysyntax_error_status == 1)
46664           {
46665             if (yymsg != yymsgbuf)
46666               YYSTACK_FREE (yymsg);
46667             yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
46668             if (!yymsg)
46669               {
46670                 yymsg = yymsgbuf;
46671                 yymsg_alloc = sizeof yymsgbuf;
46672                 yysyntax_error_status = 2;
46673               }
46674             else
46675               {
46676                 yysyntax_error_status = YYSYNTAX_ERROR;
46677                 yymsgp = yymsg;
46678               }
46679           }
46680         yyerror (&yylloc, yyscanner, yymsgp);
46681         if (yysyntax_error_status == 2)
46682           goto yyexhaustedlab;
46683       }
46684 # undef YYSYNTAX_ERROR
46685 #endif
46686     }
46687 
46688   yyerror_range[1] = yylloc;
46689 
46690   if (yyerrstatus == 3)
46691     {
46692       /* If just tried and failed to reuse lookahead token after an
46693          error, discard it.  */
46694 
46695       if (yychar <= YYEOF)
46696         {
46697           /* Return failure if at end of input.  */
46698           if (yychar == YYEOF)
46699             YYABORT;
46700         }
46701       else
46702         {
46703           yydestruct ("Error: discarding",
46704                       yytoken, &yylval, &yylloc, yyscanner);
46705           yychar = YYEMPTY;
46706         }
46707     }
46708 
46709   /* Else will try to reuse lookahead token after shifting the error
46710      token.  */
46711   goto yyerrlab1;
46712 
46713 
46714 /*---------------------------------------------------.
46715 | yyerrorlab -- error raised explicitly by YYERROR.  |
46716 `---------------------------------------------------*/
46717 yyerrorlab:
46718 
46719   /* Pacify compilers like GCC when the user code never invokes
46720      YYERROR and the label yyerrorlab therefore never appears in user
46721      code.  */
46722   if (/*CONSTCOND*/ 0)
46723      goto yyerrorlab;
46724 
46725   yyerror_range[1] = yylsp[1-yylen];
46726   /* Do not reclaim the symbols of the rule whose action triggered
46727      this YYERROR.  */
46728   YYPOPSTACK (yylen);
46729   yylen = 0;
46730   YY_STACK_PRINT (yyss, yyssp);
46731   yystate = *yyssp;
46732   goto yyerrlab1;
46733 
46734 
46735 /*-------------------------------------------------------------.
46736 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
46737 `-------------------------------------------------------------*/
46738 yyerrlab1:
46739   yyerrstatus = 3;      /* Each real token shifted decrements this.  */
46740 
46741   for (;;)
46742     {
46743       yyn = yypact[yystate];
46744       if (!yypact_value_is_default (yyn))
46745         {
46746           yyn += YYTERROR;
46747           if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
46748             {
46749               yyn = yytable[yyn];
46750               if (0 < yyn)
46751                 break;
46752             }
46753         }
46754 
46755       /* Pop the current state because it cannot handle the error token.  */
46756       if (yyssp == yyss)
46757         YYABORT;
46758 
46759       yyerror_range[1] = *yylsp;
46760       yydestruct ("Error: popping",
46761                   yystos[yystate], yyvsp, yylsp, yyscanner);
46762       YYPOPSTACK (1);
46763       yystate = *yyssp;
46764       YY_STACK_PRINT (yyss, yyssp);
46765     }
46766 
46767   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
46768   *++yyvsp = yylval;
46769   YY_IGNORE_MAYBE_UNINITIALIZED_END
46770 
46771   yyerror_range[2] = yylloc;
46772   /* Using YYLLOC is tempting, but would change the location of
46773      the lookahead.  YYLOC is available though.  */
46774   YYLLOC_DEFAULT (yyloc, yyerror_range, 2);
46775   *++yylsp = yyloc;
46776 
46777   /* Shift the error token.  */
46778   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
46779 
46780   yystate = yyn;
46781   goto yynewstate;
46782 
46783 
46784 /*-------------------------------------.
46785 | yyacceptlab -- YYACCEPT comes here.  |
46786 `-------------------------------------*/
46787 yyacceptlab:
46788   yyresult = 0;
46789   goto yyreturn;
46790 
46791 /*-----------------------------------.
46792 | yyabortlab -- YYABORT comes here.  |
46793 `-----------------------------------*/
46794 yyabortlab:
46795   yyresult = 1;
46796   goto yyreturn;
46797 
46798 #if !defined yyoverflow || YYERROR_VERBOSE
46799 /*-------------------------------------------------.
46800 | yyexhaustedlab -- memory exhaustion comes here.  |
46801 `-------------------------------------------------*/
46802 yyexhaustedlab:
46803   yyerror (&yylloc, yyscanner, YY_("memory exhausted"));
46804   yyresult = 2;
46805   /* Fall through.  */
46806 #endif
46807 
46808 yyreturn:
46809   if (yychar != YYEMPTY)
46810     {
46811       /* Make sure we have latest lookahead translation.  See comments at
46812          user semantic actions for why this is necessary.  */
46813       yytoken = YYTRANSLATE (yychar);
46814       yydestruct ("Cleanup: discarding lookahead",
46815                   yytoken, &yylval, &yylloc, yyscanner);
46816     }
46817   /* Do not reclaim the symbols of the rule whose action triggered
46818      this YYABORT or YYACCEPT.  */
46819   YYPOPSTACK (yylen);
46820   YY_STACK_PRINT (yyss, yyssp);
46821   while (yyssp != yyss)
46822     {
46823       yydestruct ("Cleanup: popping",
46824                   yystos[*yyssp], yyvsp, yylsp, yyscanner);
46825       YYPOPSTACK (1);
46826     }
46827 #ifndef yyoverflow
46828   if (yyss != yyssa)
46829     YYSTACK_FREE (yyss);
46830 #endif
46831 #if YYERROR_VERBOSE
46832   if (yymsg != yymsgbuf)
46833     YYSTACK_FREE (yymsg);
46834 #endif
46835   return yyresult;
46836 }
46837 #line 15853 "gram_minimal.y" /* yacc.c:1906  */
46838 
46839 
46840 /*
46841  * The signature of this function is required by bison.  However, we
46842  * ignore the passed yylloc and instead use the last token position
46843  * available from the scanner.
46844  */
46845 static void
minimal_base_yyerror(YYLTYPE * yylloc,core_yyscan_t yyscanner,const char * msg)46846 minimal_base_yyerror(YYLTYPE *yylloc, core_yyscan_t yyscanner, const char *msg)
46847 {
46848 	parser_yyerror(msg);
46849 }
46850 
46851 static RawStmt *
makeRawStmt(Node * stmt,int stmt_location)46852 makeRawStmt(Node *stmt, int stmt_location)
46853 {
46854 	RawStmt    *rs = makeNode(RawStmt);
46855 
46856 	rs->stmt = stmt;
46857 	rs->stmt_location = stmt_location;
46858 	rs->stmt_len = 0;			/* might get changed later */
46859 	return rs;
46860 }
46861 
46862 /* Adjust a RawStmt to reflect that it doesn't run to the end of the string */
46863 static void
updateRawStmtEnd(RawStmt * rs,int end_location)46864 updateRawStmtEnd(RawStmt *rs, int end_location)
46865 {
46866 	/*
46867 	 * If we already set the length, don't change it.  This is for situations
46868 	 * like "select foo ;; select bar" where the same statement will be last
46869 	 * in the string for more than one semicolon.
46870 	 */
46871 	if (rs->stmt_len > 0)
46872 		return;
46873 
46874 	/* OK, update length of RawStmt */
46875 	rs->stmt_len = end_location - rs->stmt_location;
46876 }
46877 
46878 static Node *
makeColumnRef(char * colname,List * indirection,int location,core_yyscan_t yyscanner)46879 makeColumnRef(char *colname, List *indirection,
46880 			  int location, core_yyscan_t yyscanner)
46881 {
46882 	/*
46883 	 * Generate a ColumnRef node, with an A_Indirection node added if there
46884 	 * is any subscripting in the specified indirection list.  However,
46885 	 * any field selection at the start of the indirection list must be
46886 	 * transposed into the "fields" part of the ColumnRef node.
46887 	 */
46888 	ColumnRef  *c = makeNode(ColumnRef);
46889 	int		nfields = 0;
46890 	ListCell *l;
46891 
46892 	c->location = location;
46893 	foreach(l, indirection)
46894 	{
46895 		if (IsA(lfirst(l), A_Indices))
46896 		{
46897 			A_Indirection *i = makeNode(A_Indirection);
46898 
46899 			if (nfields == 0)
46900 			{
46901 				/* easy case - all indirection goes to A_Indirection */
46902 				c->fields = list_make1(makeString(colname));
46903 				i->indirection = check_indirection(indirection, yyscanner);
46904 			}
46905 			else
46906 			{
46907 				/* got to split the list in two */
46908 				i->indirection = check_indirection(list_copy_tail(indirection,
46909 																  nfields),
46910 												   yyscanner);
46911 				indirection = list_truncate(indirection, nfields);
46912 				c->fields = lcons(makeString(colname), indirection);
46913 			}
46914 			i->arg = (Node *) c;
46915 			return (Node *) i;
46916 		}
46917 		else if (IsA(lfirst(l), A_Star))
46918 		{
46919 			/* We only allow '*' at the end of a ColumnRef */
46920 			if (lnext(indirection, l) != NULL)
46921 				parser_yyerror("improper use of \"*\"");
46922 		}
46923 		nfields++;
46924 	}
46925 	/* No subscripting, so all indirection gets added to field list */
46926 	c->fields = lcons(makeString(colname), indirection);
46927 	return (Node *) c;
46928 }
46929 
46930 
46931 static Node *
makeStringConst(char * str,int location)46932 makeStringConst(char *str, int location)
46933 {
46934 	A_Const *n = makeNode(A_Const);
46935 
46936 	n->val.type = T_String;
46937 	n->val.val.str = str;
46938 	n->location = location;
46939 
46940 	return (Node *)n;
46941 }
46942 
46943 
46944 static Node *
makeFloatConst(char * str,int location)46945 makeFloatConst(char *str, int location)
46946 {
46947 	A_Const *n = makeNode(A_Const);
46948 
46949 	n->val.type = T_Float;
46950 	n->val.val.str = str;
46951 	n->location = location;
46952 
46953 	return (Node *)n;
46954 }
46955 
46956 static Node *
makeBitStringConst(char * str,int location)46957 makeBitStringConst(char *str, int location)
46958 {
46959 	A_Const *n = makeNode(A_Const);
46960 
46961 	n->val.type = T_BitString;
46962 	n->val.val.str = str;
46963 	n->location = location;
46964 
46965 	return (Node *)n;
46966 }
46967 
46968 static Node *
makeNullAConst(int location)46969 makeNullAConst(int location)
46970 {
46971 	A_Const *n = makeNode(A_Const);
46972 
46973 	n->val.type = T_Null;
46974 	n->location = location;
46975 
46976 	return (Node *)n;
46977 }
46978 
46979 static Node *
makeAConst(Value * v,int location)46980 makeAConst(Value *v, int location)
46981 {
46982 	Node *n;
46983 
46984 	switch (v->type)
46985 	{
46986 		case T_Float:
46987 			n = makeFloatConst(v->val.str, location);
46988 			break;
46989 
46990 		case T_Integer:
46991 			n = makeIntConst(v->val.ival, location);
46992 			break;
46993 
46994 		case T_String:
46995 		default:
46996 			n = makeStringConst(v->val.str, location);
46997 			break;
46998 	}
46999 
47000 	return n;
47001 }
47002 
47003 /* makeBoolAConst()
47004  * Create an A_Const string node and put it inside a boolean cast.
47005  */
47006 static Node *
makeBoolAConst(bool state,int location)47007 makeBoolAConst(bool state, int location)
47008 {
47009 	A_Const *n = makeNode(A_Const);
47010 
47011 	n->val.type = T_String;
47012 	n->val.val.str = (state ? "t" : "f");
47013 	n->location = location;
47014 
47015 	return makeTypeCast((Node *)n, SystemTypeName("bool"), -1);
47016 }
47017 
47018 /* makeRoleSpec
47019  * Create a RoleSpec with the given type
47020  */
47021 static RoleSpec *
makeRoleSpec(RoleSpecType type,int location)47022 makeRoleSpec(RoleSpecType type, int location)
47023 {
47024 	RoleSpec *spec = makeNode(RoleSpec);
47025 
47026 	spec->roletype = type;
47027 	spec->location = location;
47028 
47029 	return spec;
47030 }
47031 
47032 /* check_qualified_name --- check the result of qualified_name production
47033  *
47034  * It's easiest to let the grammar production for qualified_name allow
47035  * subscripts and '*', which we then must reject here.
47036  */
47037 static void
check_qualified_name(List * names,core_yyscan_t yyscanner)47038 check_qualified_name(List *names, core_yyscan_t yyscanner)
47039 {
47040 	ListCell   *i;
47041 
47042 	foreach(i, names)
47043 	{
47044 		if (!IsA(lfirst(i), String))
47045 			parser_yyerror("syntax error");
47046 	}
47047 }
47048 
47049 /* check_func_name --- check the result of func_name production
47050  *
47051  * It's easiest to let the grammar production for func_name allow subscripts
47052  * and '*', which we then must reject here.
47053  */
47054 static List *
check_func_name(List * names,core_yyscan_t yyscanner)47055 check_func_name(List *names, core_yyscan_t yyscanner)
47056 {
47057 	ListCell   *i;
47058 
47059 	foreach(i, names)
47060 	{
47061 		if (!IsA(lfirst(i), String))
47062 			parser_yyerror("syntax error");
47063 	}
47064 	return names;
47065 }
47066 
47067 /* check_indirection --- check the result of indirection production
47068  *
47069  * We only allow '*' at the end of the list, but it's hard to enforce that
47070  * in the grammar, so do it here.
47071  */
47072 static List *
check_indirection(List * indirection,core_yyscan_t yyscanner)47073 check_indirection(List *indirection, core_yyscan_t yyscanner)
47074 {
47075 	ListCell *l;
47076 
47077 	foreach(l, indirection)
47078 	{
47079 		if (IsA(lfirst(l), A_Star))
47080 		{
47081 			if (lnext(indirection, l) != NULL)
47082 				parser_yyerror("improper use of \"*\"");
47083 		}
47084 	}
47085 	return indirection;
47086 }
47087 
47088 /* extractArgTypes()
47089  * Given a list of FunctionParameter nodes, extract a list of just the
47090  * argument types (TypeNames) for input parameters only.  This is what
47091  * is needed to look up an existing function, which is what is wanted by
47092  * the productions that use this call.
47093  */
47094 static List *
extractArgTypes(List * parameters)47095 extractArgTypes(List *parameters)
47096 {
47097 	List	   *result = NIL;
47098 	ListCell   *i;
47099 
47100 	foreach(i, parameters)
47101 	{
47102 		FunctionParameter *p = (FunctionParameter *) lfirst(i);
47103 
47104 		if (p->mode != FUNC_PARAM_OUT && p->mode != FUNC_PARAM_TABLE)
47105 			result = lappend(result, p->argType);
47106 	}
47107 	return result;
47108 }
47109 
47110 /* extractAggrArgTypes()
47111  * As above, but work from the output of the aggr_args production.
47112  */
47113 static List *
extractAggrArgTypes(List * aggrargs)47114 extractAggrArgTypes(List *aggrargs)
47115 {
47116 	Assert(list_length(aggrargs) == 2);
47117 	return extractArgTypes((List *) linitial(aggrargs));
47118 }
47119 
47120 /* makeOrderedSetArgs()
47121  * Build the result of the aggr_args production (which see the comments for).
47122  * This handles only the case where both given lists are nonempty, so that
47123  * we have to deal with multiple VARIADIC arguments.
47124  */
47125 static List *
makeOrderedSetArgs(List * directargs,List * orderedargs,core_yyscan_t yyscanner)47126 makeOrderedSetArgs(List *directargs, List *orderedargs,
47127 				   core_yyscan_t yyscanner)
47128 {
47129 	FunctionParameter *lastd = (FunctionParameter *) llast(directargs);
47130 	int			ndirectargs;
47131 
47132 	/* No restriction unless last direct arg is VARIADIC */
47133 	if (lastd->mode == FUNC_PARAM_VARIADIC)
47134 	{
47135 		FunctionParameter *firsto = (FunctionParameter *) linitial(orderedargs);
47136 
47137 		/*
47138 		 * We ignore the names, though the aggr_arg production allows them;
47139 		 * it doesn't allow default values, so those need not be checked.
47140 		 */
47141 		if (list_length(orderedargs) != 1 ||
47142 			firsto->mode != FUNC_PARAM_VARIADIC)
47143 			ereport(ERROR,
47144 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
47145 					 errmsg("an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"),
47146 					 parser_errposition(exprLocation((Node *) firsto))));
47147 
47148 		/* OK, drop the duplicate VARIADIC argument from the internal form */
47149 		orderedargs = NIL;
47150 	}
47151 
47152 	/* don't merge into the next line, as list_concat changes directargs */
47153 	ndirectargs = list_length(directargs);
47154 
47155 	return list_make2(list_concat(directargs, orderedargs),
47156 					  makeInteger(ndirectargs));
47157 }
47158 
47159 /* insertSelectOptions()
47160  * Insert ORDER BY, etc into an already-constructed SelectStmt.
47161  *
47162  * This routine is just to avoid duplicating code in SelectStmt productions.
47163  */
47164 static void
insertSelectOptions(SelectStmt * stmt,List * sortClause,List * lockingClause,SelectLimit * limitClause,WithClause * withClause,core_yyscan_t yyscanner)47165 insertSelectOptions(SelectStmt *stmt,
47166 					List *sortClause, List *lockingClause,
47167 					SelectLimit *limitClause,
47168 					WithClause *withClause,
47169 					core_yyscan_t yyscanner)
47170 {
47171 	Assert(IsA(stmt, SelectStmt));
47172 
47173 	/*
47174 	 * Tests here are to reject constructs like
47175 	 *	(SELECT foo ORDER BY bar) ORDER BY baz
47176 	 */
47177 	if (sortClause)
47178 	{
47179 		if (stmt->sortClause)
47180 			ereport(ERROR,
47181 					(errcode(ERRCODE_SYNTAX_ERROR),
47182 					 errmsg("multiple ORDER BY clauses not allowed"),
47183 					 parser_errposition(exprLocation((Node *) sortClause))));
47184 		stmt->sortClause = sortClause;
47185 	}
47186 	/* We can handle multiple locking clauses, though */
47187 	stmt->lockingClause = list_concat(stmt->lockingClause, lockingClause);
47188 	if (limitClause && limitClause->limitOffset)
47189 	{
47190 		if (stmt->limitOffset)
47191 			ereport(ERROR,
47192 					(errcode(ERRCODE_SYNTAX_ERROR),
47193 					 errmsg("multiple OFFSET clauses not allowed"),
47194 					 parser_errposition(exprLocation(limitClause->limitOffset))));
47195 		stmt->limitOffset = limitClause->limitOffset;
47196 	}
47197 	if (limitClause && limitClause->limitCount)
47198 	{
47199 		if (stmt->limitCount)
47200 			ereport(ERROR,
47201 					(errcode(ERRCODE_SYNTAX_ERROR),
47202 					 errmsg("multiple LIMIT clauses not allowed"),
47203 					 parser_errposition(exprLocation(limitClause->limitCount))));
47204 		stmt->limitCount = limitClause->limitCount;
47205 	}
47206 	if (limitClause && limitClause->limitOption != LIMIT_OPTION_DEFAULT)
47207 	{
47208 		if (stmt->limitOption)
47209 			ereport(ERROR,
47210 					(errcode(ERRCODE_SYNTAX_ERROR),
47211 					 errmsg("multiple limit options not allowed")));
47212 		if (!stmt->sortClause && limitClause->limitOption == LIMIT_OPTION_WITH_TIES)
47213 			ereport(ERROR,
47214 					(errcode(ERRCODE_SYNTAX_ERROR),
47215 					 errmsg("WITH TIES options can not be specified without ORDER BY clause")));
47216 		stmt->limitOption = limitClause->limitOption;
47217 	}
47218 	if (withClause)
47219 	{
47220 		if (stmt->withClause)
47221 			ereport(ERROR,
47222 					(errcode(ERRCODE_SYNTAX_ERROR),
47223 					 errmsg("multiple WITH clauses not allowed"),
47224 					 parser_errposition(exprLocation((Node *) withClause))));
47225 		stmt->withClause = withClause;
47226 	}
47227 }
47228 
47229 static Node *
makeSetOp(SetOperation op,bool all,Node * larg,Node * rarg)47230 makeSetOp(SetOperation op, bool all, Node *larg, Node *rarg)
47231 {
47232 	SelectStmt *n = makeNode(SelectStmt);
47233 
47234 	n->op = op;
47235 	n->all = all;
47236 	n->larg = (SelectStmt *) larg;
47237 	n->rarg = (SelectStmt *) rarg;
47238 	return (Node *) n;
47239 }
47240 
47241 /* doNegate()
47242  * Handle negation of a numeric constant.
47243  *
47244  * Formerly, we did this here because the optimizer couldn't cope with
47245  * indexquals that looked like "var = -4" --- it wants "var = const"
47246  * and a unary minus operator applied to a constant didn't qualify.
47247  * As of Postgres 7.0, that problem doesn't exist anymore because there
47248  * is a constant-subexpression simplifier in the optimizer.  However,
47249  * there's still a good reason for doing this here, which is that we can
47250  * postpone committing to a particular internal representation for simple
47251  * negative constants.	It's better to leave "-123.456" in string form
47252  * until we know what the desired type is.
47253  */
47254 static Node *
doNegate(Node * n,int location)47255 doNegate(Node *n, int location)
47256 {
47257 	if (IsA(n, A_Const))
47258 	{
47259 		A_Const *con = (A_Const *)n;
47260 
47261 		/* report the constant's location as that of the '-' sign */
47262 		con->location = location;
47263 
47264 		if (con->val.type == T_Integer)
47265 		{
47266 			con->val.val.ival = -con->val.val.ival;
47267 			return n;
47268 		}
47269 		if (con->val.type == T_Float)
47270 		{
47271 			doNegateFloat(&con->val);
47272 			return n;
47273 		}
47274 	}
47275 
47276 	return (Node *) makeSimpleA_Expr(AEXPR_OP, "-", NULL, n, location);
47277 }
47278 
47279 static void
doNegateFloat(Value * v)47280 doNegateFloat(Value *v)
47281 {
47282 	char   *oldval = v->val.str;
47283 
47284 	Assert(IsA(v, Float));
47285 	if (*oldval == '+')
47286 		oldval++;
47287 	if (*oldval == '-')
47288 		v->val.str = oldval+1;	/* just strip the '-' */
47289 	else
47290 		v->val.str = psprintf("-%s", oldval);
47291 }
47292 
47293 static Node *
makeAndExpr(Node * lexpr,Node * rexpr,int location)47294 makeAndExpr(Node *lexpr, Node *rexpr, int location)
47295 {
47296 	Node	   *lexp = lexpr;
47297 
47298 	/* Look through AEXPR_PAREN nodes so they don't affect flattening */
47299 	while (IsA(lexp, A_Expr) &&
47300 		   ((A_Expr *) lexp)->kind == AEXPR_PAREN)
47301 		lexp = ((A_Expr *) lexp)->lexpr;
47302 	/* Flatten "a AND b AND c ..." to a single BoolExpr on sight */
47303 	if (IsA(lexp, BoolExpr))
47304 	{
47305 		BoolExpr *blexpr = (BoolExpr *) lexp;
47306 
47307 		if (blexpr->boolop == AND_EXPR)
47308 		{
47309 			blexpr->args = lappend(blexpr->args, rexpr);
47310 			return (Node *) blexpr;
47311 		}
47312 	}
47313 	return (Node *) makeBoolExpr(AND_EXPR, list_make2(lexpr, rexpr), location);
47314 }
47315 
47316 static Node *
makeOrExpr(Node * lexpr,Node * rexpr,int location)47317 makeOrExpr(Node *lexpr, Node *rexpr, int location)
47318 {
47319 	Node	   *lexp = lexpr;
47320 
47321 	/* Look through AEXPR_PAREN nodes so they don't affect flattening */
47322 	while (IsA(lexp, A_Expr) &&
47323 		   ((A_Expr *) lexp)->kind == AEXPR_PAREN)
47324 		lexp = ((A_Expr *) lexp)->lexpr;
47325 	/* Flatten "a OR b OR c ..." to a single BoolExpr on sight */
47326 	if (IsA(lexp, BoolExpr))
47327 	{
47328 		BoolExpr *blexpr = (BoolExpr *) lexp;
47329 
47330 		if (blexpr->boolop == OR_EXPR)
47331 		{
47332 			blexpr->args = lappend(blexpr->args, rexpr);
47333 			return (Node *) blexpr;
47334 		}
47335 	}
47336 	return (Node *) makeBoolExpr(OR_EXPR, list_make2(lexpr, rexpr), location);
47337 }
47338 
47339 static Node *
makeNotExpr(Node * expr,int location)47340 makeNotExpr(Node *expr, int location)
47341 {
47342 	return (Node *) makeBoolExpr(NOT_EXPR, list_make1(expr), location);
47343 }
47344 
47345 static Node *
makeAArrayExpr(List * elements,int location)47346 makeAArrayExpr(List *elements, int location)
47347 {
47348 	A_ArrayExpr *n = makeNode(A_ArrayExpr);
47349 
47350 	n->elements = elements;
47351 	n->location = location;
47352 	return (Node *) n;
47353 }
47354 
47355 static Node *
makeSQLValueFunction(SQLValueFunctionOp op,int32 typmod,int location)47356 makeSQLValueFunction(SQLValueFunctionOp op, int32 typmod, int location)
47357 {
47358 	SQLValueFunction *svf = makeNode(SQLValueFunction);
47359 
47360 	svf->op = op;
47361 	/* svf->type will be filled during parse analysis */
47362 	svf->typmod = typmod;
47363 	svf->location = location;
47364 	return (Node *) svf;
47365 }
47366 
47367 static Node *
makeXmlExpr(XmlExprOp op,char * name,List * named_args,List * args,int location)47368 makeXmlExpr(XmlExprOp op, char *name, List *named_args, List *args,
47369 			int location)
47370 {
47371 	XmlExpr		*x = makeNode(XmlExpr);
47372 
47373 	x->op = op;
47374 	x->name = name;
47375 	/*
47376 	 * named_args is a list of ResTarget; it'll be split apart into separate
47377 	 * expression and name lists in transformXmlExpr().
47378 	 */
47379 	x->named_args = named_args;
47380 	x->arg_names = NIL;
47381 	x->args = args;
47382 	/* xmloption, if relevant, must be filled in by caller */
47383 	/* type and typmod will be filled in during parse analysis */
47384 	x->type = InvalidOid;			/* marks the node as not analyzed */
47385 	x->location = location;
47386 	return (Node *) x;
47387 }
47388 
47389 /*
47390  * Merge the input and output parameters of a table function.
47391  */
47392 static List *
mergeTableFuncParameters(List * func_args,List * columns)47393 mergeTableFuncParameters(List *func_args, List *columns)
47394 {
47395 	ListCell   *lc;
47396 
47397 	/* Explicit OUT and INOUT parameters shouldn't be used in this syntax */
47398 	foreach(lc, func_args)
47399 	{
47400 		FunctionParameter *p = (FunctionParameter *) lfirst(lc);
47401 
47402 		if (p->mode != FUNC_PARAM_IN && p->mode != FUNC_PARAM_VARIADIC)
47403 			ereport(ERROR,
47404 					(errcode(ERRCODE_SYNTAX_ERROR),
47405 					 errmsg("OUT and INOUT arguments aren't allowed in TABLE functions")));
47406 	}
47407 
47408 	return list_concat(func_args, columns);
47409 }
47410 
47411 /*
47412  * Determine return type of a TABLE function.  A single result column
47413  * returns setof that column's type; otherwise return setof record.
47414  */
47415 static TypeName *
TableFuncTypeName(List * columns)47416 TableFuncTypeName(List *columns)
47417 {
47418 	TypeName *result;
47419 
47420 	if (list_length(columns) == 1)
47421 	{
47422 		FunctionParameter *p = (FunctionParameter *) linitial(columns);
47423 
47424 		result = copyObject(p->argType);
47425 	}
47426 	else
47427 		result = SystemTypeName("record");
47428 
47429 	result->setof = true;
47430 
47431 	return result;
47432 }
47433 
47434 /*
47435  * Convert a list of (dotted) names to a RangeVar (like
47436  * makeRangeVarFromNameList, but with position support).  The
47437  * "AnyName" refers to the any_name production in the grammar.
47438  */
47439 static RangeVar *
makeRangeVarFromAnyName(List * names,int position,core_yyscan_t yyscanner)47440 makeRangeVarFromAnyName(List *names, int position, core_yyscan_t yyscanner)
47441 {
47442 	RangeVar *r = makeNode(RangeVar);
47443 
47444 	switch (list_length(names))
47445 	{
47446 		case 1:
47447 			r->catalogname = NULL;
47448 			r->schemaname = NULL;
47449 			r->relname = strVal(linitial(names));
47450 			break;
47451 		case 2:
47452 			r->catalogname = NULL;
47453 			r->schemaname = strVal(linitial(names));
47454 			r->relname = strVal(lsecond(names));
47455 			break;
47456 		case 3:
47457 			r->catalogname = strVal(linitial(names));
47458 			r->schemaname = strVal(lsecond(names));
47459 			r->relname = strVal(lthird(names));
47460 			break;
47461 		default:
47462 			ereport(ERROR,
47463 					(errcode(ERRCODE_SYNTAX_ERROR),
47464 					 errmsg("improper qualified name (too many dotted names): %s",
47465 							NameListToString(names)),
47466 					 parser_errposition(position)));
47467 			break;
47468 	}
47469 
47470 	r->relpersistence = RELPERSISTENCE_PERMANENT;
47471 	r->location = position;
47472 
47473 	return r;
47474 }
47475 
47476 /* Separate Constraint nodes from COLLATE clauses in a ColQualList */
47477 static void
SplitColQualList(List * qualList,List ** constraintList,CollateClause ** collClause,core_yyscan_t yyscanner)47478 SplitColQualList(List *qualList,
47479 				 List **constraintList, CollateClause **collClause,
47480 				 core_yyscan_t yyscanner)
47481 {
47482 	ListCell   *cell;
47483 
47484 	*collClause = NULL;
47485 	foreach(cell, qualList)
47486 	{
47487 		Node   *n = (Node *) lfirst(cell);
47488 
47489 		if (IsA(n, Constraint))
47490 		{
47491 			/* keep it in list */
47492 			continue;
47493 		}
47494 		if (IsA(n, CollateClause))
47495 		{
47496 			CollateClause *c = (CollateClause *) n;
47497 
47498 			if (*collClause)
47499 				ereport(ERROR,
47500 						(errcode(ERRCODE_SYNTAX_ERROR),
47501 						 errmsg("multiple COLLATE clauses not allowed"),
47502 						 parser_errposition(c->location)));
47503 			*collClause = c;
47504 		}
47505 		else
47506 			elog(ERROR, "unexpected node type %d", (int) n->type);
47507 		/* remove non-Constraint nodes from qualList */
47508 		qualList = foreach_delete_current(qualList, cell);
47509 	}
47510 	*constraintList = qualList;
47511 }
47512 
47513 /*
47514  * Process result of ConstraintAttributeSpec, and set appropriate bool flags
47515  * in the output command node.  Pass NULL for any flags the particular
47516  * command doesn't support.
47517  */
47518 static void
processCASbits(int cas_bits,int location,const char * constrType,bool * deferrable,bool * initdeferred,bool * not_valid,bool * no_inherit,core_yyscan_t yyscanner)47519 processCASbits(int cas_bits, int location, const char *constrType,
47520 			   bool *deferrable, bool *initdeferred, bool *not_valid,
47521 			   bool *no_inherit, core_yyscan_t yyscanner)
47522 {
47523 	/* defaults */
47524 	if (deferrable)
47525 		*deferrable = false;
47526 	if (initdeferred)
47527 		*initdeferred = false;
47528 	if (not_valid)
47529 		*not_valid = false;
47530 
47531 	if (cas_bits & (CAS_DEFERRABLE | CAS_INITIALLY_DEFERRED))
47532 	{
47533 		if (deferrable)
47534 			*deferrable = true;
47535 		else
47536 			ereport(ERROR,
47537 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
47538 					 /* translator: %s is CHECK, UNIQUE, or similar */
47539 					 errmsg("%s constraints cannot be marked DEFERRABLE",
47540 							constrType),
47541 					 parser_errposition(location)));
47542 	}
47543 
47544 	if (cas_bits & CAS_INITIALLY_DEFERRED)
47545 	{
47546 		if (initdeferred)
47547 			*initdeferred = true;
47548 		else
47549 			ereport(ERROR,
47550 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
47551 					 /* translator: %s is CHECK, UNIQUE, or similar */
47552 					 errmsg("%s constraints cannot be marked DEFERRABLE",
47553 							constrType),
47554 					 parser_errposition(location)));
47555 	}
47556 
47557 	if (cas_bits & CAS_NOT_VALID)
47558 	{
47559 		if (not_valid)
47560 			*not_valid = true;
47561 		else
47562 			ereport(ERROR,
47563 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
47564 					 /* translator: %s is CHECK, UNIQUE, or similar */
47565 					 errmsg("%s constraints cannot be marked NOT VALID",
47566 							constrType),
47567 					 parser_errposition(location)));
47568 	}
47569 
47570 	if (cas_bits & CAS_NO_INHERIT)
47571 	{
47572 		if (no_inherit)
47573 			*no_inherit = true;
47574 		else
47575 			ereport(ERROR,
47576 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
47577 					 /* translator: %s is CHECK, UNIQUE, or similar */
47578 					 errmsg("%s constraints cannot be marked NO INHERIT",
47579 							constrType),
47580 					 parser_errposition(location)));
47581 	}
47582 }
47583 
47584 /*----------
47585  * Recursive view transformation
47586  *
47587  * Convert
47588  *
47589  *     CREATE RECURSIVE VIEW relname (aliases) AS query
47590  *
47591  * to
47592  *
47593  *     CREATE VIEW relname (aliases) AS
47594  *         WITH RECURSIVE relname (aliases) AS (query)
47595  *         SELECT aliases FROM relname
47596  *
47597  * Actually, just the WITH ... part, which is then inserted into the original
47598  * view definition as the query.
47599  * ----------
47600  */
47601 static Node *
makeRecursiveViewSelect(char * relname,List * aliases,Node * query)47602 makeRecursiveViewSelect(char *relname, List *aliases, Node *query)
47603 {
47604 	SelectStmt *s = makeNode(SelectStmt);
47605 	WithClause *w = makeNode(WithClause);
47606 	CommonTableExpr *cte = makeNode(CommonTableExpr);
47607 	List	   *tl = NIL;
47608 	ListCell   *lc;
47609 
47610 	/* create common table expression */
47611 	cte->ctename = relname;
47612 	cte->aliascolnames = aliases;
47613 	cte->ctematerialized = CTEMaterializeDefault;
47614 	cte->ctequery = query;
47615 	cte->location = -1;
47616 
47617 	/* create WITH clause and attach CTE */
47618 	w->recursive = true;
47619 	w->ctes = list_make1(cte);
47620 	w->location = -1;
47621 
47622 	/* create target list for the new SELECT from the alias list of the
47623 	 * recursive view specification */
47624 	foreach (lc, aliases)
47625 	{
47626 		ResTarget *rt = makeNode(ResTarget);
47627 
47628 		rt->name = NULL;
47629 		rt->indirection = NIL;
47630 		rt->val = makeColumnRef(strVal(lfirst(lc)), NIL, -1, 0);
47631 		rt->location = -1;
47632 
47633 		tl = lappend(tl, rt);
47634 	}
47635 
47636 	/* create new SELECT combining WITH clause, target list, and fake FROM
47637 	 * clause */
47638 	s->withClause = w;
47639 	s->targetList = tl;
47640 	s->fromClause = list_make1(makeRangeVar(NULL, relname, -1));
47641 
47642 	return (Node *) s;
47643 }
47644 
47645 /* parser_init()
47646  * Initialize to parse one query string
47647  */
47648 void
minimal_parser_init(base_yy_extra_type * yyext)47649 minimal_parser_init(base_yy_extra_type *yyext)
47650 {
47651 	yyext->parsetree = NIL;		/* in case grammar forgets to set it */
47652 }
47653 
47654