1 /* A Bison parser, made by GNU Bison 2.7.  */
2 
3 /* Bison implementation for Yacc-like parsers in C
4 
5       Copyright (C) 1984, 1989-1990, 2000-2012 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 "2.7"
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         base_yyparse
64 #define yylex           base_yylex
65 #define yyerror         base_yyerror
66 #define yylval          base_yylval
67 #define yychar          base_yychar
68 #define yydebug         base_yydebug
69 #define yynerrs         base_yynerrs
70 #define yylloc          base_yylloc
71 
72 /* Copy the first part of user declarations.  */
73 /* Line 371 of yacc.c  */
74 #line 1 "gram.y"
75 
76 
77 /*#define YYDEBUG 1*/
78 /*-------------------------------------------------------------------------
79  *
80  * gram.y
81  *	  POSTGRESQL BISON rules/actions
82  *
83  * Portions Copyright (c) 2003-2016, PgPool Global Development Group
84  * Portions Copyright (c) 1996-2016, PostgreSQL Global Development Group
85  * Portions Copyright (c) 1994, Regents of the University of California
86  *
87  *
88  * IDENTIFICATION
89  *	  src/backend/parser/gram.y
90  *
91  * HISTORY
92  *	  AUTHOR			DATE			MAJOR EVENT
93  *	  Andrew Yu			Sept, 1994		POSTQUEL to SQL conversion
94  *	  Andrew Yu			Oct, 1994		lispy code conversion
95  *
96  * NOTES
97  *	  CAPITALS are used to represent terminal symbols.
98  *	  non-capitals are used to represent non-terminals.
99  *
100  *	  In general, nothing in this file should initiate database accesses
101  *	  nor depend on changeable state (such as SET variables).  If you do
102  *	  database accesses, your code will fail when we have aborted the
103  *	  current transaction and are just parsing commands to find the next
104  *	  ROLLBACK or COMMIT.  If you make use of SET variables, then you
105  *	  will do the wrong thing in multi-query strings like this:
106  *			SET SQL_inheritance TO off; SELECT * FROM foo;
107  *	  because the entire string is parsed by gram.y before the SET gets
108  *	  executed.  Anything that depends on the database or changeable state
109  *	  should be handled during parse analysis so that it happens at the
110  *	  right time not the wrong time.  The handling of SQL_inheritance is
111  *	  a good example.
112  *
113  * WARNINGS
114  *	  If you use a list, make sure the datum is a node so that the printing
115  *	  routines work.
116  *
117  *	  Sometimes we assign constants to makeStrings. Make sure we don't free
118  *	  those.
119  *
120  *-------------------------------------------------------------------------
121  */
122 
123 #include "pool_parser.h"
124 #include "utils/elog.h"
125 #include "utils/palloc.h"
126 #include <ctype.h>
127 #include <limits.h>
128 #include <stdio.h>
129 #include <stdlib.h>
130 #include <string.h>
131 
132 #include "nodes.h"
133 #include "keywords.h"
134 #include "gramparse.h"
135 #include "makefuncs.h"
136 #include "pool_string.h"
137 #include "parser.h"
138 #include "pg_class.h"
139 #include "pg_trigger.h"
140 
141 /* This is a configuration parameter since PostgreSQL 9.5.
142  * We set this false in pgpool-II. This is default in PostgreSQL.
143  */
144 bool operator_precedence_warning = false;
145 
146 
147 /*
148  * Definition taken from
149  * postgreSQL source code file: src/include/commands/trigger.h
150  */
151 #define TRIGGER_FIRES_ON_ORIGIN                         'O'
152 #define TRIGGER_FIRES_ALWAYS                            'A'
153 #define TRIGGER_FIRES_ON_REPLICA                        'R'
154 #define TRIGGER_DISABLED                                'D'
155 
156 /*
157  * Definition taken from
158  * postgreSQL source code file: src/include/catalog/pg_class.h
159  */
160 
161 #define           REPLICA_IDENTITY_DEFAULT      'd'
162 #define           REPLICA_IDENTITY_NOTHING      'n'
163 #define           REPLICA_IDENTITY_FULL         'f'
164 #define           REPLICA_IDENTITY_INDEX        'i'
165 
166 /*
167  * Definition taken from
168  * postgreSQL source code file: src/include/utils/xml.h
169  */
170 typedef enum
171 {
172 	XML_STANDALONE_YES,
173 	XML_STANDALONE_NO,
174 	XML_STANDALONE_NO_VALUE,
175 	XML_STANDALONE_OMITTED
176 } XmlStandaloneType;
177 
178 static DefElem *defWithOids(bool value);
179 /*
180  * Location tracking support --- simpler than bison's default, since we only
181  * want to track the start position not the end position of each nonterminal.
182  */
183 #define YYLLOC_DEFAULT(Current, Rhs, N) \
184 	do { \
185 		if ((N) > 0) \
186 			(Current) = (Rhs)[1]; \
187 		else \
188 			(Current) = (-1); \
189 	} while (0)
190 
191 /*
192  * The above macro assigns -1 (unknown) as the parse location of any
193  * nonterminal that was reduced from an empty rule.  This is problematic
194  * for nonterminals defined like
195  *		OptFooList: / * EMPTY * / { ... } | OptFooList Foo { ... } ;
196  * because we'll set -1 as the location during the first reduction and then
197  * copy it during each subsequent reduction, leaving us with -1 for the
198  * location even when the list is not empty.  To fix that, do this in the
199  * action for the nonempty rule(s):
200  *		if (@$ < 0) @$ = @2;
201  * (Although we have many nonterminals that follow this pattern, we only
202  * bother with fixing @$ like this when the nonterminal's parse location
203  * is actually referenced in some rule.)
204  */
205 
206 /*
207  * Bison doesn't allocate anything that needs to live across parser calls,
208  * so we can easily have it use palloc instead of malloc.  This prevents
209  * memory leaks if we error out during parsing.  Note this only works with
210  * bison >= 2.0.  However, in bison 1.875 the default is to use alloca()
211  * if possible, so there's not really much problem anyhow, at least if
212  * you're building with gcc.
213  */
214 #define YYMALLOC palloc
215 #define YYFREE   pfree
216 
217 /* Private struct for the result of privilege_target production */
218 typedef struct PrivTarget
219 {
220 	GrantTargetType targtype;
221 	GrantObjectType objtype;
222 	List	   *objs;
223 } PrivTarget;
224 
225 /* Private struct for the result of import_qualification production */
226 typedef struct ImportQual
227 {
228 	ImportForeignSchemaType type;
229 	List	   *table_names;
230 } ImportQual;
231 
232 /* ConstraintAttributeSpec yields an integer bitmask of these flags: */
233 #define CAS_NOT_DEFERRABLE			0x01
234 #define CAS_DEFERRABLE				0x02
235 #define CAS_INITIALLY_IMMEDIATE		0x04
236 #define CAS_INITIALLY_DEFERRED		0x08
237 #define CAS_NOT_VALID				0x10
238 #define CAS_NO_INHERIT				0x20
239 
240 
241 #define parser_yyerror(msg)  scanner_yyerror(msg, yyscanner)
242 #define parser_errposition(pos)  scanner_errposition(pos, yyscanner)
243 
244 static void base_yyerror(YYLTYPE *yylloc, core_yyscan_t yyscanner,
245 						 const char *msg);
246 static Node *makeColumnRef(char *colname, List *indirection,
247 						   int location, core_yyscan_t yyscanner);
248 static Node *makeTypeCast(Node *arg, TypeName *typename, int location);
249 static Node *makeStringConst(char *str, int location);
250 static Node *makeStringConstCast(char *str, int location, TypeName *typename);
251 static Node *makeIntConst(int val, int location);
252 static Node *makeFloatConst(char *str, int location);
253 static Node *makeBitStringConst(char *str, int location);
254 static Node *makeNullAConst(int location);
255 static Node *makeAConst(Value *v, int location);
256 static Node *makeBoolAConst(bool state, int location);
257 static Node *makeRoleSpec(RoleSpecType type, int location);
258 static void check_qualified_name(List *names, core_yyscan_t yyscanner);
259 static List *check_func_name(List *names, core_yyscan_t yyscanner);
260 static List *check_indirection(List *indirection, core_yyscan_t yyscanner);
261 static List *extractArgTypes(List *parameters);
262 static List *extractAggrArgTypes(List *aggrargs);
263 static List *makeOrderedSetArgs(List *directargs, List *orderedargs,
264 								core_yyscan_t yyscanner);
265 static void insertSelectOptions(SelectStmt *stmt,
266 								List *sortClause, List *lockingClause,
267 								Node *limitOffset, Node *limitCount,
268 								WithClause *withClause,
269 								core_yyscan_t yyscanner);
270 static Node *makeSetOp(SetOperation op, bool all, Node *larg, Node *rarg);
271 static Node *doNegate(Node *n, int location);
272 static void doNegateFloat(Value *v);
273 static Node *makeAndExpr(Node *lexpr, Node *rexpr, int location);
274 static Node *makeOrExpr(Node *lexpr, Node *rexpr, int location);
275 static Node *makeNotExpr(Node *expr, int location);
276 static Node *makeAArrayExpr(List *elements, int location);
277 static Node *makeXmlExpr(XmlExprOp op, char *name, List *named_args,
278 						 List *args, int location);
279 static List *mergeTableFuncParameters(List *func_args, List *columns);
280 static TypeName *TableFuncTypeName(List *columns);
281 static RangeVar *makeRangeVarFromAnyName(List *names, int position, core_yyscan_t yyscanner);
282 static void SplitColQualList(List *qualList,
283 							 List **constraintList, CollateClause **collClause,
284 							 core_yyscan_t yyscanner);
285 static void processCASbits(int cas_bits, int location, const char *constrType,
286 			   bool *deferrable, bool *initdeferred, bool *not_valid,
287 			   bool *no_inherit, core_yyscan_t yyscanner);
288 static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query);
289 
290 
291 /* Line 371 of yacc.c  */
292 #line 293 "gram.c"
293 
294 # ifndef YY_NULL
295 #  if defined __cplusplus && 201103L <= __cplusplus
296 #   define YY_NULL nullptr
297 #  else
298 #   define YY_NULL 0
299 #  endif
300 # endif
301 
302 /* Enabling verbose error messages.  */
303 #ifdef YYERROR_VERBOSE
304 # undef YYERROR_VERBOSE
305 # define YYERROR_VERBOSE 1
306 #else
307 # define YYERROR_VERBOSE 0
308 #endif
309 
310 /* In a future release of Bison, this section will be replaced
311    by #include "y.tab.h".  */
312 #ifndef YY_BASE_YY_Y_TAB_H_INCLUDED
313 # define YY_BASE_YY_Y_TAB_H_INCLUDED
314 /* Enabling traces.  */
315 #ifndef YYDEBUG
316 # define YYDEBUG 0
317 #endif
318 #if YYDEBUG
319 extern int base_yydebug;
320 #endif
321 
322 /* Tokens.  */
323 #ifndef YYTOKENTYPE
324 # define YYTOKENTYPE
325    /* Put the tokens into the symbol table, so that GDB and other debuggers
326       know about them.  */
327    enum yytokentype {
328      IDENT = 258,
329      FCONST = 259,
330      SCONST = 260,
331      BCONST = 261,
332      XCONST = 262,
333      Op = 263,
334      ICONST = 264,
335      PARAM = 265,
336      TYPECAST = 266,
337      DOT_DOT = 267,
338      COLON_EQUALS = 268,
339      EQUALS_GREATER = 269,
340      LESS_EQUALS = 270,
341      GREATER_EQUALS = 271,
342      NOT_EQUALS = 272,
343      ABORT_P = 273,
344      ABSOLUTE_P = 274,
345      ACCESS = 275,
346      ACTION = 276,
347      ADD_P = 277,
348      ADMIN = 278,
349      AFTER = 279,
350      AGGREGATE = 280,
351      ALL = 281,
352      ALSO = 282,
353      ALTER = 283,
354      ALWAYS = 284,
355      ANALYSE = 285,
356      ANALYZE = 286,
357      AND = 287,
358      ANY = 288,
359      ARRAY = 289,
360      AS = 290,
361      ASC = 291,
362      ASSERTION = 292,
363      ASSIGNMENT = 293,
364      ASYMMETRIC = 294,
365      AT = 295,
366      ATTRIBUTE = 296,
367      AUTHORIZATION = 297,
368      BACKWARD = 298,
369      BEFORE = 299,
370      BEGIN_P = 300,
371      BETWEEN = 301,
372      BIGINT = 302,
373      BINARY = 303,
374      BIT = 304,
375      BOOLEAN_P = 305,
376      BOTH = 306,
377      BY = 307,
378      CACHE = 308,
379      CALLED = 309,
380      CASCADE = 310,
381      CASCADED = 311,
382      CASE = 312,
383      CAST = 313,
384      CATALOG_P = 314,
385      CHAIN = 315,
386      CHAR_P = 316,
387      CHARACTER = 317,
388      CHARACTERISTICS = 318,
389      CHECK = 319,
390      CHECKPOINT = 320,
391      CLASS = 321,
392      CLOSE = 322,
393      CLUSTER = 323,
394      COALESCE = 324,
395      COLLATE = 325,
396      COLLATION = 326,
397      COLUMN = 327,
398      COMMENT = 328,
399      COMMENTS = 329,
400      COMMIT = 330,
401      COMMITTED = 331,
402      CONCURRENTLY = 332,
403      CONFIGURATION = 333,
404      CONFLICT = 334,
405      CONNECTION = 335,
406      CONSTRAINT = 336,
407      CONSTRAINTS = 337,
408      CONTENT_P = 338,
409      CONTINUE_P = 339,
410      CONVERSION_P = 340,
411      COPY = 341,
412      COST = 342,
413      CREATE = 343,
414      CROSS = 344,
415      CSV = 345,
416      CUBE = 346,
417      CURRENT_P = 347,
418      CURRENT_CATALOG = 348,
419      CURRENT_DATE = 349,
420      CURRENT_ROLE = 350,
421      CURRENT_SCHEMA = 351,
422      CURRENT_TIME = 352,
423      CURRENT_TIMESTAMP = 353,
424      CURRENT_USER = 354,
425      CURSOR = 355,
426      CYCLE = 356,
427      DATA_P = 357,
428      DATABASE = 358,
429      DAY_P = 359,
430      DEALLOCATE = 360,
431      DEC = 361,
432      DECIMAL_P = 362,
433      DECLARE = 363,
434      DEFAULT = 364,
435      DEFAULTS = 365,
436      DEFERRABLE = 366,
437      DEFERRED = 367,
438      DEFINER = 368,
439      DELETE_P = 369,
440      DELIMITER = 370,
441      DELIMITERS = 371,
442      DEPENDS = 372,
443      DESC = 373,
444      DICTIONARY = 374,
445      DISABLE_P = 375,
446      DISCARD = 376,
447      DISTINCT = 377,
448      DO = 378,
449      DOCUMENT_P = 379,
450      DOMAIN_P = 380,
451      DOUBLE_P = 381,
452      DROP = 382,
453      EACH = 383,
454      ELSE = 384,
455      ENABLE_P = 385,
456      ENCODING = 386,
457      ENCRYPTED = 387,
458      END_P = 388,
459      ENUM_P = 389,
460      ESCAPE = 390,
461      EVENT = 391,
462      EXCEPT = 392,
463      EXCLUDE = 393,
464      EXCLUDING = 394,
465      EXCLUSIVE = 395,
466      EXECUTE = 396,
467      EXISTS = 397,
468      EXPLAIN = 398,
469      EXTENSION = 399,
470      EXTERNAL = 400,
471      EXTRACT = 401,
472      FALSE_P = 402,
473      FAMILY = 403,
474      FETCH = 404,
475      FILTER = 405,
476      FIRST_P = 406,
477      FLOAT_P = 407,
478      FOLLOWING = 408,
479      FOR = 409,
480      FORCE = 410,
481      FOREIGN = 411,
482      FORWARD = 412,
483      FREEZE = 413,
484      FROM = 414,
485      FULL = 415,
486      FUNCTION = 416,
487      FUNCTIONS = 417,
488      GLOBAL = 418,
489      GRANT = 419,
490      GRANTED = 420,
491      GREATEST = 421,
492      GROUP_P = 422,
493      GROUPING = 423,
494      HANDLER = 424,
495      HAVING = 425,
496      HEADER_P = 426,
497      HOLD = 427,
498      HOUR_P = 428,
499      IDENTITY_P = 429,
500      IF_P = 430,
501      ILIKE = 431,
502      IMMEDIATE = 432,
503      IMMUTABLE = 433,
504      IMPLICIT_P = 434,
505      IMPORT_P = 435,
506      IN_P = 436,
507      INCLUDING = 437,
508      INCREMENT = 438,
509      INDEX = 439,
510      INDEXES = 440,
511      INHERIT = 441,
512      INHERITS = 442,
513      INITIALLY = 443,
514      INLINE_P = 444,
515      INNER_P = 445,
516      INOUT = 446,
517      INPUT_P = 447,
518      INSENSITIVE = 448,
519      INSERT = 449,
520      INSTEAD = 450,
521      INT_P = 451,
522      INTEGER = 452,
523      INTERSECT = 453,
524      INTERVAL = 454,
525      INTO = 455,
526      INVOKER = 456,
527      IS = 457,
528      ISNULL = 458,
529      ISOLATION = 459,
530      JOIN = 460,
531      KEY = 461,
532      LABEL = 462,
533      LANGUAGE = 463,
534      LARGE_P = 464,
535      LAST_P = 465,
536      LATERAL_P = 466,
537      LEADING = 467,
538      LEAKPROOF = 468,
539      LEAST = 469,
540      LEFT = 470,
541      LEVEL = 471,
542      LIKE = 472,
543      LIMIT = 473,
544      LISTEN = 474,
545      LOAD = 475,
546      LOCAL = 476,
547      LOCALTIME = 477,
548      LOCALTIMESTAMP = 478,
549      LOCATION = 479,
550      LOCK_P = 480,
551      LOCKED = 481,
552      LOGGED = 482,
553      MAPPING = 483,
554      MATCH = 484,
555      MATERIALIZED = 485,
556      MAXVALUE = 486,
557      METHOD = 487,
558      MINUTE_P = 488,
559      MINVALUE = 489,
560      MODE = 490,
561      MONTH_P = 491,
562      MOVE = 492,
563      NAME_P = 493,
564      NAMES = 494,
565      NATIONAL = 495,
566      NATURAL = 496,
567      NCHAR = 497,
568      NEXT = 498,
569      NO = 499,
570      NONE = 500,
571      NOT = 501,
572      NOTHING = 502,
573      NOTIFY = 503,
574      NOTNULL = 504,
575      NOWAIT = 505,
576      NULL_P = 506,
577      NULLIF = 507,
578      NULLS_P = 508,
579      NUMERIC = 509,
580      OBJECT_P = 510,
581      OF = 511,
582      OFF = 512,
583      OFFSET = 513,
584      OIDS = 514,
585      ON = 515,
586      ONLY = 516,
587      OPERATOR = 517,
588      OPTION = 518,
589      OPTIONS = 519,
590      OR = 520,
591      ORDER = 521,
592      ORDINALITY = 522,
593      OUT_P = 523,
594      OUTER_P = 524,
595      OVER = 525,
596      OVERLAPS = 526,
597      OVERLAY = 527,
598      OWNED = 528,
599      OWNER = 529,
600      PARALLEL = 530,
601      PARSER = 531,
602      PARTIAL = 532,
603      PARTITION = 533,
604      PASSING = 534,
605      PASSWORD = 535,
606      PGPOOL = 536,
607      PLACING = 537,
608      PLANS = 538,
609      POLICY = 539,
610      POSITION = 540,
611      PRECEDING = 541,
612      PRECISION = 542,
613      PRESERVE = 543,
614      PREPARE = 544,
615      PREPARED = 545,
616      PRIMARY = 546,
617      PRIOR = 547,
618      PRIVILEGES = 548,
619      PROCEDURAL = 549,
620      PROCEDURE = 550,
621      PROGRAM = 551,
622      QUOTE = 552,
623      RANGE = 553,
624      READ = 554,
625      REAL = 555,
626      REASSIGN = 556,
627      RECHECK = 557,
628      RECURSIVE = 558,
629      REF = 559,
630      REFERENCES = 560,
631      REFRESH = 561,
632      REINDEX = 562,
633      RELATIVE_P = 563,
634      RELEASE = 564,
635      RENAME = 565,
636      REPEATABLE = 566,
637      REPLACE = 567,
638      REPLICA = 568,
639      RESET = 569,
640      RESTART = 570,
641      RESTRICT = 571,
642      RETURNING = 572,
643      RETURNS = 573,
644      REVOKE = 574,
645      RIGHT = 575,
646      ROLE = 576,
647      ROLLBACK = 577,
648      ROLLUP = 578,
649      ROW = 579,
650      ROWS = 580,
651      RULE = 581,
652      SAVEPOINT = 582,
653      SCHEMA = 583,
654      SCROLL = 584,
655      SEARCH = 585,
656      SECOND_P = 586,
657      SECURITY = 587,
658      SELECT = 588,
659      SEQUENCE = 589,
660      SEQUENCES = 590,
661      SERIALIZABLE = 591,
662      SERVER = 592,
663      SESSION = 593,
664      SESSION_USER = 594,
665      SET = 595,
666      SETS = 596,
667      SETOF = 597,
668      SHARE = 598,
669      SHOW = 599,
670      SIMILAR = 600,
671      SIMPLE = 601,
672      SKIP = 602,
673      SMALLINT = 603,
674      SNAPSHOT = 604,
675      SOME = 605,
676      SQL_P = 606,
677      STABLE = 607,
678      STANDALONE_P = 608,
679      START = 609,
680      STATEMENT = 610,
681      STATISTICS = 611,
682      STDIN = 612,
683      STDOUT = 613,
684      STORAGE = 614,
685      STRICT_P = 615,
686      STRIP_P = 616,
687      SUBSTRING = 617,
688      SYMMETRIC = 618,
689      SYSID = 619,
690      SYSTEM_P = 620,
691      TABLE = 621,
692      TABLES = 622,
693      TABLESAMPLE = 623,
694      TABLESPACE = 624,
695      TEMP = 625,
696      TEMPLATE = 626,
697      TEMPORARY = 627,
698      TEXT_P = 628,
699      THEN = 629,
700      TIME = 630,
701      TIMESTAMP = 631,
702      TO = 632,
703      TRAILING = 633,
704      TRANSACTION = 634,
705      TRANSFORM = 635,
706      TREAT = 636,
707      TRIGGER = 637,
708      TRIM = 638,
709      TRUE_P = 639,
710      TRUNCATE = 640,
711      TRUSTED = 641,
712      TYPE_P = 642,
713      TYPES_P = 643,
714      UNBOUNDED = 644,
715      UNCOMMITTED = 645,
716      UNENCRYPTED = 646,
717      UNION = 647,
718      UNIQUE = 648,
719      UNKNOWN = 649,
720      UNLISTEN = 650,
721      UNLOGGED = 651,
722      UNTIL = 652,
723      UPDATE = 653,
724      USER = 654,
725      USING = 655,
726      VACUUM = 656,
727      VALID = 657,
728      VALIDATE = 658,
729      VALIDATOR = 659,
730      VALUE_P = 660,
731      VALUES = 661,
732      VARCHAR = 662,
733      VARIADIC = 663,
734      VARYING = 664,
735      VERBOSE = 665,
736      VERSION_P = 666,
737      VIEW = 667,
738      VIEWS = 668,
739      VOLATILE = 669,
740      WHEN = 670,
741      WHERE = 671,
742      WHITESPACE_P = 672,
743      WINDOW = 673,
744      WITH = 674,
745      WITHIN = 675,
746      WITHOUT = 676,
747      WORK = 677,
748      WRAPPER = 678,
749      WRITE = 679,
750      XML_P = 680,
751      XMLATTRIBUTES = 681,
752      XMLCONCAT = 682,
753      XMLELEMENT = 683,
754      XMLEXISTS = 684,
755      XMLFOREST = 685,
756      XMLPARSE = 686,
757      XMLPI = 687,
758      XMLROOT = 688,
759      XMLSERIALIZE = 689,
760      YEAR_P = 690,
761      YES_P = 691,
762      ZONE = 692,
763      NOT_LA = 693,
764      NULLS_LA = 694,
765      WITH_LA = 695,
766      POSTFIXOP = 696,
767      UMINUS = 697
768    };
769 #endif
770 /* Tokens.  */
771 #define IDENT 258
772 #define FCONST 259
773 #define SCONST 260
774 #define BCONST 261
775 #define XCONST 262
776 #define Op 263
777 #define ICONST 264
778 #define PARAM 265
779 #define TYPECAST 266
780 #define DOT_DOT 267
781 #define COLON_EQUALS 268
782 #define EQUALS_GREATER 269
783 #define LESS_EQUALS 270
784 #define GREATER_EQUALS 271
785 #define NOT_EQUALS 272
786 #define ABORT_P 273
787 #define ABSOLUTE_P 274
788 #define ACCESS 275
789 #define ACTION 276
790 #define ADD_P 277
791 #define ADMIN 278
792 #define AFTER 279
793 #define AGGREGATE 280
794 #define ALL 281
795 #define ALSO 282
796 #define ALTER 283
797 #define ALWAYS 284
798 #define ANALYSE 285
799 #define ANALYZE 286
800 #define AND 287
801 #define ANY 288
802 #define ARRAY 289
803 #define AS 290
804 #define ASC 291
805 #define ASSERTION 292
806 #define ASSIGNMENT 293
807 #define ASYMMETRIC 294
808 #define AT 295
809 #define ATTRIBUTE 296
810 #define AUTHORIZATION 297
811 #define BACKWARD 298
812 #define BEFORE 299
813 #define BEGIN_P 300
814 #define BETWEEN 301
815 #define BIGINT 302
816 #define BINARY 303
817 #define BIT 304
818 #define BOOLEAN_P 305
819 #define BOTH 306
820 #define BY 307
821 #define CACHE 308
822 #define CALLED 309
823 #define CASCADE 310
824 #define CASCADED 311
825 #define CASE 312
826 #define CAST 313
827 #define CATALOG_P 314
828 #define CHAIN 315
829 #define CHAR_P 316
830 #define CHARACTER 317
831 #define CHARACTERISTICS 318
832 #define CHECK 319
833 #define CHECKPOINT 320
834 #define CLASS 321
835 #define CLOSE 322
836 #define CLUSTER 323
837 #define COALESCE 324
838 #define COLLATE 325
839 #define COLLATION 326
840 #define COLUMN 327
841 #define COMMENT 328
842 #define COMMENTS 329
843 #define COMMIT 330
844 #define COMMITTED 331
845 #define CONCURRENTLY 332
846 #define CONFIGURATION 333
847 #define CONFLICT 334
848 #define CONNECTION 335
849 #define CONSTRAINT 336
850 #define CONSTRAINTS 337
851 #define CONTENT_P 338
852 #define CONTINUE_P 339
853 #define CONVERSION_P 340
854 #define COPY 341
855 #define COST 342
856 #define CREATE 343
857 #define CROSS 344
858 #define CSV 345
859 #define CUBE 346
860 #define CURRENT_P 347
861 #define CURRENT_CATALOG 348
862 #define CURRENT_DATE 349
863 #define CURRENT_ROLE 350
864 #define CURRENT_SCHEMA 351
865 #define CURRENT_TIME 352
866 #define CURRENT_TIMESTAMP 353
867 #define CURRENT_USER 354
868 #define CURSOR 355
869 #define CYCLE 356
870 #define DATA_P 357
871 #define DATABASE 358
872 #define DAY_P 359
873 #define DEALLOCATE 360
874 #define DEC 361
875 #define DECIMAL_P 362
876 #define DECLARE 363
877 #define DEFAULT 364
878 #define DEFAULTS 365
879 #define DEFERRABLE 366
880 #define DEFERRED 367
881 #define DEFINER 368
882 #define DELETE_P 369
883 #define DELIMITER 370
884 #define DELIMITERS 371
885 #define DEPENDS 372
886 #define DESC 373
887 #define DICTIONARY 374
888 #define DISABLE_P 375
889 #define DISCARD 376
890 #define DISTINCT 377
891 #define DO 378
892 #define DOCUMENT_P 379
893 #define DOMAIN_P 380
894 #define DOUBLE_P 381
895 #define DROP 382
896 #define EACH 383
897 #define ELSE 384
898 #define ENABLE_P 385
899 #define ENCODING 386
900 #define ENCRYPTED 387
901 #define END_P 388
902 #define ENUM_P 389
903 #define ESCAPE 390
904 #define EVENT 391
905 #define EXCEPT 392
906 #define EXCLUDE 393
907 #define EXCLUDING 394
908 #define EXCLUSIVE 395
909 #define EXECUTE 396
910 #define EXISTS 397
911 #define EXPLAIN 398
912 #define EXTENSION 399
913 #define EXTERNAL 400
914 #define EXTRACT 401
915 #define FALSE_P 402
916 #define FAMILY 403
917 #define FETCH 404
918 #define FILTER 405
919 #define FIRST_P 406
920 #define FLOAT_P 407
921 #define FOLLOWING 408
922 #define FOR 409
923 #define FORCE 410
924 #define FOREIGN 411
925 #define FORWARD 412
926 #define FREEZE 413
927 #define FROM 414
928 #define FULL 415
929 #define FUNCTION 416
930 #define FUNCTIONS 417
931 #define GLOBAL 418
932 #define GRANT 419
933 #define GRANTED 420
934 #define GREATEST 421
935 #define GROUP_P 422
936 #define GROUPING 423
937 #define HANDLER 424
938 #define HAVING 425
939 #define HEADER_P 426
940 #define HOLD 427
941 #define HOUR_P 428
942 #define IDENTITY_P 429
943 #define IF_P 430
944 #define ILIKE 431
945 #define IMMEDIATE 432
946 #define IMMUTABLE 433
947 #define IMPLICIT_P 434
948 #define IMPORT_P 435
949 #define IN_P 436
950 #define INCLUDING 437
951 #define INCREMENT 438
952 #define INDEX 439
953 #define INDEXES 440
954 #define INHERIT 441
955 #define INHERITS 442
956 #define INITIALLY 443
957 #define INLINE_P 444
958 #define INNER_P 445
959 #define INOUT 446
960 #define INPUT_P 447
961 #define INSENSITIVE 448
962 #define INSERT 449
963 #define INSTEAD 450
964 #define INT_P 451
965 #define INTEGER 452
966 #define INTERSECT 453
967 #define INTERVAL 454
968 #define INTO 455
969 #define INVOKER 456
970 #define IS 457
971 #define ISNULL 458
972 #define ISOLATION 459
973 #define JOIN 460
974 #define KEY 461
975 #define LABEL 462
976 #define LANGUAGE 463
977 #define LARGE_P 464
978 #define LAST_P 465
979 #define LATERAL_P 466
980 #define LEADING 467
981 #define LEAKPROOF 468
982 #define LEAST 469
983 #define LEFT 470
984 #define LEVEL 471
985 #define LIKE 472
986 #define LIMIT 473
987 #define LISTEN 474
988 #define LOAD 475
989 #define LOCAL 476
990 #define LOCALTIME 477
991 #define LOCALTIMESTAMP 478
992 #define LOCATION 479
993 #define LOCK_P 480
994 #define LOCKED 481
995 #define LOGGED 482
996 #define MAPPING 483
997 #define MATCH 484
998 #define MATERIALIZED 485
999 #define MAXVALUE 486
1000 #define METHOD 487
1001 #define MINUTE_P 488
1002 #define MINVALUE 489
1003 #define MODE 490
1004 #define MONTH_P 491
1005 #define MOVE 492
1006 #define NAME_P 493
1007 #define NAMES 494
1008 #define NATIONAL 495
1009 #define NATURAL 496
1010 #define NCHAR 497
1011 #define NEXT 498
1012 #define NO 499
1013 #define NONE 500
1014 #define NOT 501
1015 #define NOTHING 502
1016 #define NOTIFY 503
1017 #define NOTNULL 504
1018 #define NOWAIT 505
1019 #define NULL_P 506
1020 #define NULLIF 507
1021 #define NULLS_P 508
1022 #define NUMERIC 509
1023 #define OBJECT_P 510
1024 #define OF 511
1025 #define OFF 512
1026 #define OFFSET 513
1027 #define OIDS 514
1028 #define ON 515
1029 #define ONLY 516
1030 #define OPERATOR 517
1031 #define OPTION 518
1032 #define OPTIONS 519
1033 #define OR 520
1034 #define ORDER 521
1035 #define ORDINALITY 522
1036 #define OUT_P 523
1037 #define OUTER_P 524
1038 #define OVER 525
1039 #define OVERLAPS 526
1040 #define OVERLAY 527
1041 #define OWNED 528
1042 #define OWNER 529
1043 #define PARALLEL 530
1044 #define PARSER 531
1045 #define PARTIAL 532
1046 #define PARTITION 533
1047 #define PASSING 534
1048 #define PASSWORD 535
1049 #define PGPOOL 536
1050 #define PLACING 537
1051 #define PLANS 538
1052 #define POLICY 539
1053 #define POSITION 540
1054 #define PRECEDING 541
1055 #define PRECISION 542
1056 #define PRESERVE 543
1057 #define PREPARE 544
1058 #define PREPARED 545
1059 #define PRIMARY 546
1060 #define PRIOR 547
1061 #define PRIVILEGES 548
1062 #define PROCEDURAL 549
1063 #define PROCEDURE 550
1064 #define PROGRAM 551
1065 #define QUOTE 552
1066 #define RANGE 553
1067 #define READ 554
1068 #define REAL 555
1069 #define REASSIGN 556
1070 #define RECHECK 557
1071 #define RECURSIVE 558
1072 #define REF 559
1073 #define REFERENCES 560
1074 #define REFRESH 561
1075 #define REINDEX 562
1076 #define RELATIVE_P 563
1077 #define RELEASE 564
1078 #define RENAME 565
1079 #define REPEATABLE 566
1080 #define REPLACE 567
1081 #define REPLICA 568
1082 #define RESET 569
1083 #define RESTART 570
1084 #define RESTRICT 571
1085 #define RETURNING 572
1086 #define RETURNS 573
1087 #define REVOKE 574
1088 #define RIGHT 575
1089 #define ROLE 576
1090 #define ROLLBACK 577
1091 #define ROLLUP 578
1092 #define ROW 579
1093 #define ROWS 580
1094 #define RULE 581
1095 #define SAVEPOINT 582
1096 #define SCHEMA 583
1097 #define SCROLL 584
1098 #define SEARCH 585
1099 #define SECOND_P 586
1100 #define SECURITY 587
1101 #define SELECT 588
1102 #define SEQUENCE 589
1103 #define SEQUENCES 590
1104 #define SERIALIZABLE 591
1105 #define SERVER 592
1106 #define SESSION 593
1107 #define SESSION_USER 594
1108 #define SET 595
1109 #define SETS 596
1110 #define SETOF 597
1111 #define SHARE 598
1112 #define SHOW 599
1113 #define SIMILAR 600
1114 #define SIMPLE 601
1115 #define SKIP 602
1116 #define SMALLINT 603
1117 #define SNAPSHOT 604
1118 #define SOME 605
1119 #define SQL_P 606
1120 #define STABLE 607
1121 #define STANDALONE_P 608
1122 #define START 609
1123 #define STATEMENT 610
1124 #define STATISTICS 611
1125 #define STDIN 612
1126 #define STDOUT 613
1127 #define STORAGE 614
1128 #define STRICT_P 615
1129 #define STRIP_P 616
1130 #define SUBSTRING 617
1131 #define SYMMETRIC 618
1132 #define SYSID 619
1133 #define SYSTEM_P 620
1134 #define TABLE 621
1135 #define TABLES 622
1136 #define TABLESAMPLE 623
1137 #define TABLESPACE 624
1138 #define TEMP 625
1139 #define TEMPLATE 626
1140 #define TEMPORARY 627
1141 #define TEXT_P 628
1142 #define THEN 629
1143 #define TIME 630
1144 #define TIMESTAMP 631
1145 #define TO 632
1146 #define TRAILING 633
1147 #define TRANSACTION 634
1148 #define TRANSFORM 635
1149 #define TREAT 636
1150 #define TRIGGER 637
1151 #define TRIM 638
1152 #define TRUE_P 639
1153 #define TRUNCATE 640
1154 #define TRUSTED 641
1155 #define TYPE_P 642
1156 #define TYPES_P 643
1157 #define UNBOUNDED 644
1158 #define UNCOMMITTED 645
1159 #define UNENCRYPTED 646
1160 #define UNION 647
1161 #define UNIQUE 648
1162 #define UNKNOWN 649
1163 #define UNLISTEN 650
1164 #define UNLOGGED 651
1165 #define UNTIL 652
1166 #define UPDATE 653
1167 #define USER 654
1168 #define USING 655
1169 #define VACUUM 656
1170 #define VALID 657
1171 #define VALIDATE 658
1172 #define VALIDATOR 659
1173 #define VALUE_P 660
1174 #define VALUES 661
1175 #define VARCHAR 662
1176 #define VARIADIC 663
1177 #define VARYING 664
1178 #define VERBOSE 665
1179 #define VERSION_P 666
1180 #define VIEW 667
1181 #define VIEWS 668
1182 #define VOLATILE 669
1183 #define WHEN 670
1184 #define WHERE 671
1185 #define WHITESPACE_P 672
1186 #define WINDOW 673
1187 #define WITH 674
1188 #define WITHIN 675
1189 #define WITHOUT 676
1190 #define WORK 677
1191 #define WRAPPER 678
1192 #define WRITE 679
1193 #define XML_P 680
1194 #define XMLATTRIBUTES 681
1195 #define XMLCONCAT 682
1196 #define XMLELEMENT 683
1197 #define XMLEXISTS 684
1198 #define XMLFOREST 685
1199 #define XMLPARSE 686
1200 #define XMLPI 687
1201 #define XMLROOT 688
1202 #define XMLSERIALIZE 689
1203 #define YEAR_P 690
1204 #define YES_P 691
1205 #define ZONE 692
1206 #define NOT_LA 693
1207 #define NULLS_LA 694
1208 #define WITH_LA 695
1209 #define POSTFIXOP 696
1210 #define UMINUS 697
1211 
1212 
1213 
1214 #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
1215 typedef union YYSTYPE
1216 {
1217 /* Line 387 of yacc.c  */
1218 #line 227 "gram.y"
1219 
1220 	core_YYSTYPE		core_yystype;
1221 	/* these fields must match core_YYSTYPE: */
1222 	int					ival;
1223 	char				*str;
1224 	const char			*keyword;
1225 
1226 	char				chr;
1227 	bool				boolean;
1228 	JoinType			jtype;
1229 	DropBehavior		dbehavior;
1230 	OnCommitAction		oncommit;
1231 	List				*list;
1232 	Node				*node;
1233 	Value				*value;
1234 	ObjectType			objtype;
1235 	TypeName			*typnam;
1236 	FunctionParameter   *fun_param;
1237 	FunctionParameterMode fun_param_mode;
1238 	FuncWithArgs		*funwithargs;
1239 	DefElem				*defelt;
1240 	SortBy				*sortby;
1241 	WindowDef			*windef;
1242 	JoinExpr			*jexpr;
1243 	IndexElem			*ielem;
1244 	Alias				*alias;
1245 	RangeVar			*range;
1246 	IntoClause			*into;
1247 	WithClause			*with;
1248 	InferClause			*infer;
1249 	OnConflictClause	*onconflict;
1250 	A_Indices			*aind;
1251 	ResTarget			*target;
1252 	struct PrivTarget	*privtarget;
1253 	AccessPriv			*accesspriv;
1254 	struct ImportQual	*importqual;
1255 	InsertStmt			*istmt;
1256 	VariableSetStmt		*vsetstmt;
1257 
1258 
1259 /* Line 387 of yacc.c  */
1260 #line 1261 "gram.c"
1261 } YYSTYPE;
1262 # define YYSTYPE_IS_TRIVIAL 1
1263 # define yystype YYSTYPE /* obsolescent; will be withdrawn */
1264 # define YYSTYPE_IS_DECLARED 1
1265 #endif
1266 
1267 #if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED
1268 typedef struct YYLTYPE
1269 {
1270   int first_line;
1271   int first_column;
1272   int last_line;
1273   int last_column;
1274 } YYLTYPE;
1275 # define yyltype YYLTYPE /* obsolescent; will be withdrawn */
1276 # define YYLTYPE_IS_DECLARED 1
1277 # define YYLTYPE_IS_TRIVIAL 1
1278 #endif
1279 
1280 
1281 #ifdef YYPARSE_PARAM
1282 #if defined __STDC__ || defined __cplusplus
1283 int base_yyparse (void *YYPARSE_PARAM);
1284 #else
1285 int base_yyparse ();
1286 #endif
1287 #else /* ! YYPARSE_PARAM */
1288 #if defined __STDC__ || defined __cplusplus
1289 int base_yyparse (core_yyscan_t yyscanner);
1290 #else
1291 int base_yyparse ();
1292 #endif
1293 #endif /* ! YYPARSE_PARAM */
1294 
1295 #endif /* !YY_BASE_YY_Y_TAB_H_INCLUDED  */
1296 
1297 /* Copy the second part of user declarations.  */
1298 
1299 /* Line 390 of yacc.c  */
1300 #line 1301 "gram.c"
1301 
1302 #ifdef short
1303 # undef short
1304 #endif
1305 
1306 #ifdef YYTYPE_UINT8
1307 typedef YYTYPE_UINT8 yytype_uint8;
1308 #else
1309 typedef unsigned char yytype_uint8;
1310 #endif
1311 
1312 #ifdef YYTYPE_INT8
1313 typedef YYTYPE_INT8 yytype_int8;
1314 #elif (defined __STDC__ || defined __C99__FUNC__ \
1315      || defined __cplusplus || defined _MSC_VER)
1316 typedef signed char yytype_int8;
1317 #else
1318 typedef short int yytype_int8;
1319 #endif
1320 
1321 #ifdef YYTYPE_UINT16
1322 typedef YYTYPE_UINT16 yytype_uint16;
1323 #else
1324 typedef unsigned short int yytype_uint16;
1325 #endif
1326 
1327 #ifdef YYTYPE_INT16
1328 typedef YYTYPE_INT16 yytype_int16;
1329 #else
1330 typedef short int yytype_int16;
1331 #endif
1332 
1333 #ifndef YYSIZE_T
1334 # ifdef __SIZE_TYPE__
1335 #  define YYSIZE_T __SIZE_TYPE__
1336 # elif defined size_t
1337 #  define YYSIZE_T size_t
1338 # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
1339      || defined __cplusplus || defined _MSC_VER)
1340 #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
1341 #  define YYSIZE_T size_t
1342 # else
1343 #  define YYSIZE_T unsigned int
1344 # endif
1345 #endif
1346 
1347 #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1348 
1349 #ifndef YY_
1350 # if defined YYENABLE_NLS && YYENABLE_NLS
1351 #  if ENABLE_NLS
1352 #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
1353 #   define YY_(Msgid) dgettext ("bison-runtime", Msgid)
1354 #  endif
1355 # endif
1356 # ifndef YY_
1357 #  define YY_(Msgid) Msgid
1358 # endif
1359 #endif
1360 
1361 /* Suppress unused-variable warnings by "using" E.  */
1362 #if ! defined lint || defined __GNUC__
1363 # define YYUSE(E) ((void) (E))
1364 #else
1365 # define YYUSE(E) /* empty */
1366 #endif
1367 
1368 /* Identity function, used to suppress warnings about constant conditions.  */
1369 #ifndef lint
1370 # define YYID(N) (N)
1371 #else
1372 #if (defined __STDC__ || defined __C99__FUNC__ \
1373      || defined __cplusplus || defined _MSC_VER)
1374 static int
YYID(int yyi)1375 YYID (int yyi)
1376 #else
1377 static int
1378 YYID (yyi)
1379     int yyi;
1380 #endif
1381 {
1382   return yyi;
1383 }
1384 #endif
1385 
1386 #if ! defined yyoverflow || YYERROR_VERBOSE
1387 
1388 /* The parser invokes alloca or malloc; define the necessary symbols.  */
1389 
1390 # ifdef YYSTACK_USE_ALLOCA
1391 #  if YYSTACK_USE_ALLOCA
1392 #   ifdef __GNUC__
1393 #    define YYSTACK_ALLOC __builtin_alloca
1394 #   elif defined __BUILTIN_VA_ARG_INCR
1395 #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
1396 #   elif defined _AIX
1397 #    define YYSTACK_ALLOC __alloca
1398 #   elif defined _MSC_VER
1399 #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
1400 #    define alloca _alloca
1401 #   else
1402 #    define YYSTACK_ALLOC alloca
1403 #    if ! defined _ALLOCA_H && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
1404      || defined __cplusplus || defined _MSC_VER)
1405 #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1406       /* Use EXIT_SUCCESS as a witness for stdlib.h.  */
1407 #     ifndef EXIT_SUCCESS
1408 #      define EXIT_SUCCESS 0
1409 #     endif
1410 #    endif
1411 #   endif
1412 #  endif
1413 # endif
1414 
1415 # ifdef YYSTACK_ALLOC
1416    /* Pacify GCC's `empty if-body' warning.  */
1417 #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
1418 #  ifndef YYSTACK_ALLOC_MAXIMUM
1419     /* The OS might guarantee only one guard page at the bottom of the stack,
1420        and a page size can be as small as 4096 bytes.  So we cannot safely
1421        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
1422        to allow for a few compiler-allocated temporary stack slots.  */
1423 #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
1424 #  endif
1425 # else
1426 #  define YYSTACK_ALLOC YYMALLOC
1427 #  define YYSTACK_FREE YYFREE
1428 #  ifndef YYSTACK_ALLOC_MAXIMUM
1429 #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
1430 #  endif
1431 #  if (defined __cplusplus && ! defined EXIT_SUCCESS \
1432        && ! ((defined YYMALLOC || defined malloc) \
1433 	     && (defined YYFREE || defined free)))
1434 #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
1435 #   ifndef EXIT_SUCCESS
1436 #    define EXIT_SUCCESS 0
1437 #   endif
1438 #  endif
1439 #  ifndef YYMALLOC
1440 #   define YYMALLOC malloc
1441 #   if ! defined malloc && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
1442      || defined __cplusplus || defined _MSC_VER)
1443 void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
1444 #   endif
1445 #  endif
1446 #  ifndef YYFREE
1447 #   define YYFREE free
1448 #   if ! defined free && ! defined EXIT_SUCCESS && (defined __STDC__ || defined __C99__FUNC__ \
1449      || defined __cplusplus || defined _MSC_VER)
1450 void free (void *); /* INFRINGES ON USER NAME SPACE */
1451 #   endif
1452 #  endif
1453 # endif
1454 #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
1455 
1456 
1457 #if (! defined yyoverflow \
1458      && (! defined __cplusplus \
1459 	 || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \
1460 	     && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
1461 
1462 /* A type that is properly aligned for any stack member.  */
1463 union yyalloc
1464 {
1465   yytype_int16 yyss_alloc;
1466   YYSTYPE yyvs_alloc;
1467   YYLTYPE yyls_alloc;
1468 };
1469 
1470 /* The size of the maximum gap between one aligned stack and the next.  */
1471 # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
1472 
1473 /* The size of an array large to enough to hold all stacks, each with
1474    N elements.  */
1475 # define YYSTACK_BYTES(N) \
1476      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \
1477       + 2 * YYSTACK_GAP_MAXIMUM)
1478 
1479 # define YYCOPY_NEEDED 1
1480 
1481 /* Relocate STACK from its old location to the new one.  The
1482    local variables YYSIZE and YYSTACKSIZE give the old and new number of
1483    elements in the stack, and YYPTR gives the new location of the
1484    stack.  Advance YYPTR to a properly aligned location for the next
1485    stack.  */
1486 # define YYSTACK_RELOCATE(Stack_alloc, Stack)				\
1487     do									\
1488       {									\
1489 	YYSIZE_T yynewbytes;						\
1490 	YYCOPY (&yyptr->Stack_alloc, Stack, yysize);			\
1491 	Stack = &yyptr->Stack_alloc;					\
1492 	yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
1493 	yyptr += yynewbytes / sizeof (*yyptr);				\
1494       }									\
1495     while (YYID (0))
1496 
1497 #endif
1498 
1499 #if defined YYCOPY_NEEDED && YYCOPY_NEEDED
1500 /* Copy COUNT objects from SRC to DST.  The source and destination do
1501    not overlap.  */
1502 # ifndef YYCOPY
1503 #  if defined __GNUC__ && 1 < __GNUC__
1504 #   define YYCOPY(Dst, Src, Count) \
1505       __builtin_memcpy (Dst, Src, (Count) * sizeof (*(Src)))
1506 #  else
1507 #   define YYCOPY(Dst, Src, Count)              \
1508       do                                        \
1509         {                                       \
1510           YYSIZE_T yyi;                         \
1511           for (yyi = 0; yyi < (Count); yyi++)   \
1512             (Dst)[yyi] = (Src)[yyi];            \
1513         }                                       \
1514       while (YYID (0))
1515 #  endif
1516 # endif
1517 #endif /* !YYCOPY_NEEDED */
1518 
1519 /* YYFINAL -- State number of the termination state.  */
1520 #define YYFINAL  767
1521 /* YYLAST -- Last index in YYTABLE.  */
1522 #define YYLAST   92941
1523 
1524 /* YYNTOKENS -- Number of terminals.  */
1525 #define YYNTOKENS  460
1526 /* YYNNTS -- Number of nonterminals.  */
1527 #define YYNNTS  618
1528 /* YYNRULES -- Number of rules.  */
1529 #define YYNRULES  2513
1530 /* YYNRULES -- Number of states.  */
1531 #define YYNSTATES  4991
1532 
1533 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
1534 #define YYUNDEFTOK  2
1535 #define YYMAXUTOK   697
1536 
1537 #define YYTRANSLATE(YYX)						\
1538   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
1539 
1540 /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
1541 static const yytype_uint16 yytranslate[] =
1542 {
1543        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1544        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1545        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1546        2,     2,     2,     2,     2,     2,     2,   449,     2,     2,
1547      454,   455,   447,   445,   458,   446,   456,   448,     2,     2,
1548        2,     2,     2,     2,     2,     2,     2,     2,   459,   457,
1549      441,   443,   442,     2,     2,     2,     2,     2,     2,     2,
1550        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1551        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1552        2,   452,     2,   453,   450,     2,     2,     2,     2,     2,
1553        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1554        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1555        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1556        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1557        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1558        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1559        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1560        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1561        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1562        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1563        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1564        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1565        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1566        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1567        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
1568        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
1569        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
1570       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
1571       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
1572       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
1573       45,    46,    47,    48,    49,    50,    51,    52,    53,    54,
1574       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
1575       65,    66,    67,    68,    69,    70,    71,    72,    73,    74,
1576       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
1577       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
1578       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
1579      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
1580      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
1581      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
1582      135,   136,   137,   138,   139,   140,   141,   142,   143,   144,
1583      145,   146,   147,   148,   149,   150,   151,   152,   153,   154,
1584      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
1585      165,   166,   167,   168,   169,   170,   171,   172,   173,   174,
1586      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
1587      185,   186,   187,   188,   189,   190,   191,   192,   193,   194,
1588      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
1589      205,   206,   207,   208,   209,   210,   211,   212,   213,   214,
1590      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
1591      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
1592      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
1593      245,   246,   247,   248,   249,   250,   251,   252,   253,   254,
1594      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
1595      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
1596      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
1597      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
1598      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
1599      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
1600      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
1601      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
1602      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
1603      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
1604      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
1605      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
1606      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
1607      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
1608      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
1609      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
1610      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
1611      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
1612      435,   436,   437,   438,   439,   440,   444,   451
1613 };
1614 
1615 #if YYDEBUG
1616 /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
1617    YYRHS.  */
1618 static const yytype_uint16 yyprhs[] =
1619 {
1620        0,     0,     3,     5,     9,    11,    13,    15,    17,    19,
1621       21,    23,    25,    27,    29,    31,    33,    35,    37,    39,
1622       41,    43,    45,    47,    49,    51,    53,    55,    57,    59,
1623       61,    63,    65,    67,    69,    71,    73,    75,    77,    79,
1624       81,    83,    85,    87,    89,    91,    93,    95,    97,    99,
1625      101,   103,   105,   107,   109,   111,   113,   115,   117,   119,
1626      121,   123,   125,   127,   129,   131,   133,   135,   137,   139,
1627      141,   143,   145,   147,   149,   151,   153,   155,   157,   159,
1628      161,   163,   165,   167,   169,   171,   173,   175,   177,   179,
1629      181,   183,   185,   187,   189,   191,   193,   195,   197,   199,
1630      201,   203,   205,   207,   209,   211,   213,   215,   217,   219,
1631      221,   223,   225,   227,   229,   231,   233,   235,   237,   239,
1632      241,   243,   245,   247,   249,   251,   253,   255,   257,   259,
1633      261,   262,   268,   270,   272,   273,   276,   277,   280,   281,
1634      284,   287,   291,   295,   297,   301,   305,   308,   310,   312,
1635      315,   318,   321,   325,   329,   335,   341,   342,   346,   352,
1636      358,   364,   369,   373,   379,   383,   389,   395,   402,   404,
1637      406,   410,   416,   423,   428,   438,   446,   448,   449,   452,
1638      453,   455,   457,   459,   461,   463,   465,   469,   472,   476,
1639      480,   483,   489,   491,   495,   499,   503,   507,   509,   513,
1640      517,   520,   523,   526,   529,   533,   537,   541,   545,   547,
1641      551,   553,   557,   559,   561,   564,   567,   570,   572,   574,
1642      576,   578,   580,   582,   584,   588,   594,   596,   598,   600,
1643      602,   604,   605,   607,   609,   612,   616,   618,   621,   625,
1644      628,   630,   632,   635,   637,   640,   642,   646,   650,   653,
1645      657,   662,   666,   669,   674,   676,   678,   680,   682,   684,
1646      687,   690,   693,   696,   699,   704,   711,   722,   736,   741,
1647      748,   759,   773,   778,   785,   790,   797,   803,   811,   823,
1648      838,   840,   844,   847,   853,   857,   864,   869,   876,   883,
1649      890,   896,   902,   909,   916,   921,   930,   935,   938,   943,
1650      947,   954,   959,   963,   967,   971,   975,   978,   981,   985,
1651      990,   995,   999,  1003,  1007,  1011,  1015,  1019,  1024,  1029,
1652     1033,  1036,  1040,  1043,  1046,  1050,  1054,  1057,  1060,  1064,
1653     1069,  1074,  1079,  1085,  1087,  1091,  1094,  1096,  1098,  1099,
1654     1102,  1103,  1106,  1107,  1109,  1111,  1113,  1117,  1121,  1124,
1655     1125,  1127,  1131,  1135,  1137,  1143,  1147,  1152,  1154,  1158,
1656     1163,  1170,  1175,  1184,  1187,  1190,  1202,  1212,  1214,  1216,
1657     1218,  1219,  1221,  1223,  1225,  1227,  1231,  1234,  1235,  1237,
1658     1239,  1241,  1245,  1249,  1251,  1253,  1257,  1261,  1265,  1269,
1659     1274,  1278,  1281,  1283,  1284,  1287,  1288,  1292,  1293,  1295,
1660     1296,  1298,  1302,  1305,  1307,  1309,  1311,  1315,  1316,  1318,
1661     1322,  1324,  1336,  1351,  1362,  1376,  1378,  1380,  1383,  1386,
1662     1389,  1392,  1394,  1395,  1397,  1398,  1402,  1403,  1405,  1409,
1663     1411,  1415,  1417,  1419,  1421,  1423,  1425,  1430,  1435,  1438,
1664     1439,  1443,  1445,  1447,  1450,  1453,  1455,  1459,  1464,  1470,
1665     1473,  1479,  1481,  1484,  1487,  1490,  1494,  1498,  1502,  1503,
1666     1505,  1507,  1509,  1511,  1513,  1515,  1519,  1521,  1527,  1535,
1667     1539,  1548,  1553,  1563,  1575,  1578,  1579,  1583,  1584,  1586,
1668     1590,  1592,  1595,  1598,  1601,  1602,  1604,  1608,  1612,  1619,
1669     1624,  1625,  1627,  1629,  1632,  1635,  1636,  1640,  1644,  1647,
1670     1649,  1651,  1654,  1657,  1662,  1663,  1666,  1669,  1672,  1673,
1671     1677,  1682,  1687,  1688,  1691,  1692,  1697,  1698,  1702,  1710,
1672     1721,  1727,  1730,  1734,  1735,  1744,  1756,  1761,  1763,  1764,
1673     1771,  1777,  1786,  1791,  1798,  1800,  1801,  1803,  1806,  1809,
1674     1811,  1814,  1818,  1821,  1824,  1827,  1830,  1834,  1838,  1840,
1675     1844,  1846,  1847,  1849,  1852,  1854,  1856,  1860,  1867,  1878,
1676     1880,  1881,  1883,  1886,  1889,  1890,  1893,  1896,  1898,  1899,
1677     1905,  1913,  1915,  1916,  1924,  1927,  1928,  1932,  1938,  1944,
1678     1953,  1956,  1957,  1960,  1963,  1966,  1968,  1974,  1977,  1978,
1679     1981,  1989,  2000,  2007,  2014,  2021,  2028,  2036,  2044,  2054,
1680     2064,  2071,  2079,  2086,  2095,  2104,  2113,  2122,  2129,  2136,
1681     2144,  2152,  2161,  2168,  2178,  2185,  2193,  2196,  2199,  2202,
1682     2205,  2207,  2210,  2212,  2213,  2220,  2229,  2237,  2244,  2249,
1683     2250,  2252,  2256,  2261,  2263,  2267,  2269,  2272,  2275,  2278,
1684     2281,  2283,  2285,  2296,  2299,  2300,  2303,  2306,  2308,  2309,
1685     2314,  2321,  2327,  2332,  2337,  2349,  2364,  2370,  2378,  2390,
1686     2393,  2395,  2400,  2401,  2410,  2412,  2414,  2422,  2432,  2441,
1687     2451,  2460,  2467,  2476,  2481,  2482,  2488,  2489,  2492,  2493,
1688     2496,  2497,  2500,  2501,  2503,  2505,  2507,  2509,  2511,  2520,
1689     2536,  2557,  2559,  2561,  2564,  2566,  2570,  2572,  2574,  2576,
1690     2580,  2582,  2586,  2587,  2589,  2590,  2592,  2594,  2599,  2600,
1691     2602,  2606,  2607,  2609,  2611,  2613,  2615,  2618,  2619,  2620,
1692     2623,  2626,  2628,  2631,  2634,  2637,  2640,  2647,  2656,  2668,
1693     2682,  2684,  2688,  2694,  2696,  2700,  2706,  2708,  2711,  2714,
1694     2716,  2725,  2730,  2736,  2741,  2746,  2751,  2755,  2763,  2772,
1695     2779,  2786,  2793,  2800,  2807,  2812,  2818,  2822,  2824,  2828,
1696     2832,  2834,  2836,  2838,  2840,  2842,  2844,  2848,  2850,  2854,
1697     2858,  2860,  2861,  2863,  2867,  2875,  2885,  2895,  2899,  2900,
1698     2914,  2916,  2920,  2926,  2933,  2938,  2946,  2949,  2951,  2952,
1699     2955,  2956,  2959,  2964,  2965,  2967,  2968,  2975,  2984,  2993,
1700     2995,  2999,  3005,  3011,  3019,  3029,  3037,  3047,  3053,  3060,
1701     3067,  3072,  3077,  3084,  3089,  3096,  3102,  3110,  3112,  3114,
1702     3116,  3119,  3121,  3124,  3127,  3130,  3132,  3134,  3136,  3138,
1703     3142,  3146,  3150,  3154,  3156,  3160,  3162,  3165,  3168,  3172,
1704     3174,  3178,  3184,  3187,  3190,  3191,  3198,  3205,  3212,  3220,
1705     3228,  3236,  3245,  3255,  3264,  3273,  3280,  3290,  3299,  3309,
1706     3319,  3327,  3338,  3346,  3349,  3351,  3353,  3355,  3357,  3359,
1707     3361,  3363,  3366,  3368,  3370,  3372,  3374,  3376,  3379,  3381,
1708     3385,  3388,  3392,  3396,  3400,  3404,  3406,  3408,  3417,  3426,
1709     3435,  3445,  3455,  3465,  3475,  3478,  3479,  3481,  3483,  3486,
1710     3489,  3491,  3493,  3495,  3497,  3499,  3501,  3504,  3506,  3508,
1711     3511,  3514,  3516,  3519,  3523,  3527,  3531,  3535,  3540,  3545,
1712     3549,  3553,  3557,  3562,  3567,  3571,  3576,  3581,  3583,  3585,
1713     3587,  3588,  3596,  3604,  3615,  3617,  3619,  3622,  3627,  3633,
1714     3635,  3639,  3642,  3645,  3648,  3651,  3653,  3656,  3659,  3664,
1715     3668,  3671,  3674,  3677,  3680,  3684,  3687,  3690,  3693,  3699,
1716     3705,  3711,  3713,  3717,  3719,  3722,  3726,  3727,  3729,  3733,
1717     3736,  3743,  3750,  3760,  3764,  3765,  3769,  3770,  3776,  3779,
1718     3780,  3784,  3788,  3792,  3800,  3808,  3819,  3821,  3823,  3825,
1719     3827,  3842,  3860,  3862,  3863,  3865,  3866,  3868,  3869,  3872,
1720     3873,  3875,  3879,  3885,  3891,  3899,  3902,  3903,  3905,  3906,
1721     3908,  3910,  3911,  3914,  3917,  3918,  3928,  3941,  3949,  3952,
1722     3953,  3957,  3960,  3962,  3966,  3970,  3973,  3975,  3979,  3983,
1723     3987,  3990,  3993,  3995,  3997,  3999,  4001,  4004,  4006,  4008,
1724     4010,  4012,  4017,  4023,  4025,  4029,  4033,  4035,  4039,  4043,
1725     4049,  4056,  4058,  4062,  4064,  4067,  4072,  4078,  4080,  4082,
1726     4084,  4086,  4090,  4094,  4097,  4100,  4102,  4105,  4108,  4111,
1727     4113,  4116,  4119,  4122,  4125,  4127,  4129,  4131,  4135,  4139,
1728     4145,  4148,  4149,  4152,  4154,  4158,  4164,  4166,  4169,  4171,
1729     4172,  4178,  4186,  4192,  4200,  4206,  4214,  4218,  4224,  4230,
1730     4236,  4238,  4242,  4245,  4247,  4250,  4252,  4255,  4267,  4278,
1731     4289,  4292,  4295,  4296,  4306,  4309,  4310,  4321,  4333,  4345,
1732     4351,  4357,  4366,  4370,  4374,  4381,  4388,  4390,  4392,  4394,
1733     4396,  4398,  4400,  4404,  4406,  4412,  4418,  4426,  4433,  4440,
1734     4447,  4454,  4463,  4472,  4479,  4486,  4494,  4504,  4514,  4523,
1735     4534,  4541,  4548,  4555,  4564,  4571,  4580,  4587,  4596,  4604,
1736     4614,  4621,  4630,  4638,  4648,  4657,  4668,  4678,  4690,  4699,
1737     4710,  4720,  4732,  4741,  4750,  4758,  4765,  4772,  4779,  4788,
1738     4797,  4806,  4815,  4822,  4832,  4834,  4835,  4838,  4839,  4847,
1739     4857,  4866,  4874,  4882,  4889,  4896,  4903,  4910,  4917,  4925,
1740     4935,  4945,  4952,  4961,  4970,  4979,  4988,  4997,  5004,  5013,
1741     5020,  5029,  5037,  5047,  5055,  5065,  5072,  5081,  5083,  5087,
1742     5091,  5095,  5103,  5110,  5117,  5124,  5131,  5138,  5146,  5154,
1743     5162,  5172,  5182,  5189,  5196,  5203,  5212,  5221,  5230,  5237,
1744     5245,  5259,  5261,  5263,  5267,  5271,  5273,  5275,  5277,  5279,
1745     5281,  5283,  5285,  5286,  5288,  5290,  5292,  5294,  5296,  5298,
1746     5299,  5306,  5315,  5319,  5322,  5323,  5326,  5329,  5332,  5335,
1747     5339,  5343,  5346,  5349,  5352,  5355,  5359,  5362,  5368,  5373,
1748     5377,  5381,  5385,  5387,  5389,  5390,  5394,  5397,  5400,  5402,
1749     5405,  5407,  5411,  5414,  5416,  5417,  5427,  5439,  5452,  5467,
1750     5471,  5476,  5481,  5482,  5485,  5491,  5493,  5494,  5496,  5499,
1751     5503,  5507,  5511,  5513,  5516,  5518,  5520,  5522,  5524,  5526,
1752     5528,  5529,  5535,  5540,  5547,  5552,  5556,  5562,  5567,  5572,
1753     5579,  5584,  5591,  5598,  5604,  5612,  5622,  5629,  5631,  5632,
1754     5639,  5651,  5663,  5675,  5689,  5699,  5711,  5713,  5715,  5726,
1755     5731,  5734,  5740,  5743,  5744,  5749,  5755,  5761,  5766,  5773,
1756     5775,  5779,  5781,  5783,  5785,  5787,  5789,  5792,  5797,  5799,
1757     5801,  5803,  5804,  5806,  5807,  5809,  5810,  5814,  5815,  5818,
1758     5823,  5827,  5833,  5835,  5837,  5839,  5841,  5843,  5845,  5847,
1759     5849,  5851,  5853,  5857,  5860,  5862,  5864,  5866,  5868,  5869,
1760     5875,  5879,  5880,  5882,  5884,  5886,  5888,  5892,  5902,  5906,
1761     5907,  5910,  5914,  5917,  5921,  5929,  5931,  5935,  5937,  5942,
1762     5945,  5947,  5951,  5954,  5963,  5969,  5970,  5975,  5979,  5980,
1763     5983,  5984,  5992,  5995,  5996,  6002,  6006,  6007,  6010,  6013,
1764     6016,  6020,  6022,  6026,  6028,  6031,  6033,  6034,  6036,  6039,
1765     6040,  6049,  6051,  6055,  6057,  6059,  6063,  6069,  6075,  6078,
1766     6080,  6084,  6092,  6094,  6095,  6099,  6102,  6105,  6108,  6109,
1767     6112,  6115,  6117,  6119,  6123,  6127,  6129,  6132,  6137,  6142,
1768     6145,  6149,  6155,  6161,  6163,  6165,  6175,  6185,  6187,  6190,
1769     6195,  6200,  6205,  6208,  6211,  6215,  6217,  6221,  6228,  6230,
1770     6231,  6234,  6235,  6239,  6243,  6248,  6253,  6258,  6263,  6267,
1771     6270,  6272,  6274,  6275,  6277,  6279,  6280,  6282,  6288,  6290,
1772     6291,  6293,  6294,  6298,  6300,  6304,  6309,  6313,  6316,  6319,
1773     6321,  6323,  6325,  6326,  6329,  6334,  6340,  6343,  6347,  6349,
1774     6351,  6353,  6355,  6359,  6360,  6362,  6364,  6366,  6368,  6370,
1775     6374,  6375,  6377,  6381,  6383,  6385,  6387,  6389,  6391,  6394,
1776     6399,  6404,  6410,  6413,  6414,  6416,  6420,  6422,  6423,  6425,
1777     6428,  6432,  6435,  6440,  6443,  6447,  6450,  6451,  6454,  6458,
1778     6461,  6462,  6464,  6468,  6471,  6475,  6478,  6482,  6485,  6489,
1779     6491,  6496,  6500,  6505,  6511,  6516,  6522,  6527,  6533,  6536,
1780     6541,  6543,  6545,  6546,  6548,  6553,  6559,  6564,  6565,  6568,
1781     6571,  6574,  6576,  6578,  6579,  6584,  6587,  6589,  6592,  6595,
1782     6600,  6602,  6606,  6608,  6611,  6615,  6622,  6627,  6628,  6631,
1783     6638,  6641,  6643,  6647,  6652,  6653,  6656,  6657,  6660,  6661,
1784     6664,  6669,  6670,  6672,  6673,  6675,  6679,  6683,  6686,  6690,
1785     6696,  6703,  6706,  6710,  6714,  6719,  6720,  6722,  6724,  6726,
1786     6728,  6730,  6733,  6738,  6740,  6742,  6744,  6746,  6749,  6753,
1787     6757,  6758,  6760,  6762,  6764,  6766,  6768,  6771,  6774,  6777,
1788     6780,  6783,  6785,  6789,  6790,  6792,  6794,  6796,  6798,  6804,
1789     6807,  6809,  6811,  6813,  6815,  6821,  6824,  6827,  6830,  6832,
1790     6836,  6840,  6843,  6845,  6846,  6850,  6851,  6857,  6860,  6866,
1791     6869,  6871,  6875,  6879,  6880,  6882,  6884,  6886,  6888,  6890,
1792     6892,  6896,  6900,  6904,  6908,  6912,  6916,  6920,  6921,  6923,
1793     6928,  6930,  6934,  6938,  6944,  6947,  6950,  6954,  6958,  6962,
1794     6966,  6970,  6974,  6978,  6982,  6986,  6990,  6994,  6998,  7002,
1795     7005,  7008,  7012,  7016,  7019,  7022,  7026,  7032,  7037,  7044,
1796     7048,  7054,  7059,  7066,  7071,  7078,  7084,  7092,  7096,  7099,
1797     7104,  7107,  7111,  7115,  7120,  7124,  7129,  7133,  7138,  7144,
1798     7151,  7158,  7166,  7173,  7181,  7188,  7196,  7200,  7205,  7210,
1799     7217,  7220,  7224,  7229,  7231,  7235,  7238,  7241,  7245,  7249,
1800     7253,  7257,  7261,  7265,  7269,  7273,  7277,  7281,  7285,  7289,
1801     7293,  7296,  7299,  7305,  7312,  7319,  7327,  7331,  7336,  7338,
1802     7340,  7343,  7348,  7350,  7352,  7354,  7357,  7360,  7363,  7366,
1803     7368,  7370,  7375,  7379,  7385,  7392,  7401,  7408,  7415,  7420,
1804     7425,  7427,  7429,  7431,  7437,  7439,  7441,  7446,  7448,  7453,
1805     7455,  7460,  7462,  7467,  7469,  7471,  7473,  7475,  7477,  7479,
1806     7486,  7491,  7496,  7501,  7506,  7513,  7519,  7525,  7531,  7536,
1807     7543,  7548,  7553,  7558,  7563,  7569,  7577,  7585,  7595,  7601,
1808     7606,  7613,  7619,  7627,  7635,  7643,  7646,  7650,  7654,  7658,
1809     7663,  7664,  7669,  7671,  7675,  7679,  7681,  7683,  7685,  7688,
1810     7691,  7692,  7695,  7700,  7705,  7712,  7718,  7719,  7725,  7726,
1811     7729,  7730,  7732,  7736,  7740,  7743,  7746,  7747,  7754,  7756,
1812     7757,  7761,  7762,  7765,  7768,  7769,  7771,  7776,  7779,  7782,
1813     7785,  7788,  7791,  7796,  7800,  7806,  7811,  7815,  7821,  7823,
1814     7825,  7827,  7829,  7831,  7833,  7835,  7837,  7839,  7841,  7843,
1815     7845,  7847,  7849,  7851,  7853,  7855,  7857,  7862,  7864,  7869,
1816     7871,  7876,  7878,  7881,  7883,  7886,  7888,  7892,  7894,  7898,
1817     7900,  7904,  7908,  7910,  7914,  7918,  7922,  7925,  7927,  7931,
1818     7935,  7936,  7938,  7940,  7942,  7944,  7946,  7948,  7950,  7952,
1819     7957,  7961,  7964,  7968,  7969,  7973,  7977,  7980,  7983,  7985,
1820     7986,  7989,  7992,  7996,  7999,  8001,  8003,  8007,  8013,  8015,
1821     8018,  8023,  8026,  8027,  8029,  8030,  8032,  8035,  8038,  8041,
1822     8045,  8051,  8053,  8054,  8056,  8059,  8060,  8063,  8065,  8066,
1823     8068,  8070,  8072,  8076,  8080,  8082,  8083,  8085,  8089,  8093,
1824     8096,  8098,  8100,  8102,  8106,  8108,  8111,  8113,  8117,  8119,
1825     8121,  8123,  8125,  8127,  8129,  8131,  8134,  8136,  8138,  8140,
1826     8142,  8144,  8147,  8154,  8157,  8161,  8167,  8169,  8171,  8173,
1827     8175,  8177,  8179,  8182,  8185,  8187,  8189,  8191,  8193,  8195,
1828     8199,  8201,  8203,  8205,  8207,  8209,  8211,  8213,  8215,  8217,
1829     8219,  8221,  8223,  8225,  8227,  8229,  8231,  8233,  8235,  8237,
1830     8239,  8241,  8243,  8245,  8247,  8249,  8251,  8253,  8255,  8257,
1831     8259,  8261,  8263,  8265,  8267,  8269,  8271,  8273,  8275,  8277,
1832     8279,  8281,  8283,  8285,  8287,  8289,  8291,  8293,  8295,  8297,
1833     8299,  8301,  8303,  8305,  8307,  8309,  8311,  8313,  8315,  8317,
1834     8319,  8321,  8323,  8325,  8327,  8329,  8331,  8333,  8335,  8337,
1835     8339,  8341,  8343,  8345,  8347,  8349,  8351,  8353,  8355,  8357,
1836     8359,  8361,  8363,  8365,  8367,  8369,  8371,  8373,  8375,  8377,
1837     8379,  8381,  8383,  8385,  8387,  8389,  8391,  8393,  8395,  8397,
1838     8399,  8401,  8403,  8405,  8407,  8409,  8411,  8413,  8415,  8417,
1839     8419,  8421,  8423,  8425,  8427,  8429,  8431,  8433,  8435,  8437,
1840     8439,  8441,  8443,  8445,  8447,  8449,  8451,  8453,  8455,  8457,
1841     8459,  8461,  8463,  8465,  8467,  8469,  8471,  8473,  8475,  8477,
1842     8479,  8481,  8483,  8485,  8487,  8489,  8491,  8493,  8495,  8497,
1843     8499,  8501,  8503,  8505,  8507,  8509,  8511,  8513,  8515,  8517,
1844     8519,  8521,  8523,  8525,  8527,  8529,  8531,  8533,  8535,  8537,
1845     8539,  8541,  8543,  8545,  8547,  8549,  8551,  8553,  8555,  8557,
1846     8559,  8561,  8563,  8565,  8567,  8569,  8571,  8573,  8575,  8577,
1847     8579,  8581,  8583,  8585,  8587,  8589,  8591,  8593,  8595,  8597,
1848     8599,  8601,  8603,  8605,  8607,  8609,  8611,  8613,  8615,  8617,
1849     8619,  8621,  8623,  8625,  8627,  8629,  8631,  8633,  8635,  8637,
1850     8639,  8641,  8643,  8645,  8647,  8649,  8651,  8653,  8655,  8657,
1851     8659,  8661,  8663,  8665,  8667,  8669,  8671,  8673,  8675,  8677,
1852     8679,  8681,  8683,  8685,  8687,  8689,  8691,  8693,  8695,  8697,
1853     8699,  8701,  8703,  8705,  8707,  8709,  8711,  8713,  8715,  8717,
1854     8719,  8721,  8723,  8725,  8727,  8729,  8731,  8733,  8735,  8737,
1855     8739,  8741,  8743,  8745,  8747,  8749,  8751,  8753,  8755,  8757,
1856     8759,  8761,  8763,  8765,  8767,  8769,  8771,  8773,  8775,  8777,
1857     8779,  8781,  8783,  8785,  8787,  8789,  8791,  8793,  8795,  8797,
1858     8799,  8801,  8803,  8805,  8807,  8809,  8811,  8813,  8815,  8817,
1859     8819,  8821,  8823,  8825,  8827,  8829,  8831,  8833,  8835,  8837,
1860     8839,  8841,  8843,  8845,  8847,  8849,  8851,  8853,  8855,  8857,
1861     8859,  8861,  8863,  8865,  8867,  8869,  8871,  8873,  8875,  8877,
1862     8879,  8881,  8883,  8885,  8887,  8889,  8891,  8893,  8895,  8897,
1863     8899,  8901,  8903,  8905,  8907,  8909,  8911,  8913,  8915,  8917,
1864     8919,  8921,  8923,  8925,  8927,  8929,  8931,  8933,  8935,  8937,
1865     8939,  8941,  8943,  8945,  8947,  8949,  8951,  8953,  8955,  8957,
1866     8959,  8961,  8963,  8965,  8967,  8969,  8971,  8973,  8975,  8977,
1867     8979,  8981,  8983,  8985,  8987,  8989,  8991,  8993,  8995,  8997,
1868     8999,  9001,  9003,  9005,  9007,  9009,  9011,  9013,  9015,  9017,
1869     9019,  9021,  9023,  9025,  9027,  9029,  9031,  9033,  9035,  9037,
1870     9039,  9041,  9043,  9045,  9047,  9049,  9051,  9053,  9055,  9057,
1871     9059,  9061,  9063,  9065
1872 };
1873 
1874 /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
1875 static const yytype_int16 yyrhs[] =
1876 {
1877      461,     0,    -1,   462,    -1,   462,   457,   463,    -1,   463,
1878       -1,   668,    -1,   831,    -1,   832,    -1,   733,    -1,   836,
1879       -1,   682,    -1,   607,    -1,   610,    -1,   616,    -1,   630,
1880       -1,   632,    -1,   772,    -1,   479,    -1,   799,    -1,   800,
1881       -1,   804,    -1,   801,    -1,   641,    -1,   586,    -1,   834,
1882       -1,   509,    -1,   795,    -1,   521,    -1,   473,    -1,   471,
1883       -1,   839,    -1,   838,    -1,   639,    -1,   475,    -1,   474,
1884       -1,   847,    -1,   507,    -1,   524,    -1,   842,    -1,   707,
1885       -1,   504,    -1,   525,    -1,   649,    -1,   578,    -1,   670,
1886       -1,   783,    -1,   841,    -1,   835,    -1,   604,    -1,   611,
1887       -1,   625,    -1,   631,    -1,   749,    -1,   478,    -1,   581,
1888       -1,   684,    -1,   691,    -1,   692,    -1,   640,    -1,   593,
1889       -1,   482,    -1,   585,    -1,   541,    -1,   601,    -1,   787,
1890       -1,   650,    -1,   664,    -1,   464,    -1,   470,    -1,   636,
1891       -1,   825,    -1,   864,    -1,   887,    -1,   672,    -1,   873,
1892       -1,   508,    -1,   780,    -1,   671,    -1,   785,    -1,   615,
1893       -1,   629,    -1,   481,    -1,   695,    -1,   696,    -1,   697,
1894       -1,   642,    -1,   599,    -1,   812,    -1,   699,    -1,   603,
1895       -1,   789,    -1,   663,    -1,   476,    -1,   477,    -1,   638,
1896       -1,   833,    -1,   862,    -1,   853,    -1,   714,    -1,   718,
1897       -1,   729,    -1,   633,    -1,   738,    -1,   865,    -1,   815,
1898       -1,   584,    -1,   824,    -1,   875,    -1,   813,    -1,   859,
1899       -1,   698,    -1,   790,    -1,   776,    -1,   775,    -1,   777,
1900       -1,   796,    -1,   719,    -1,   730,    -1,   805,    -1,   710,
1901       -1,   891,    -1,   817,    -1,   705,    -1,   816,    -1,   880,
1902       -1,   844,    -1,   498,    -1,   486,    -1,   503,    -1,   822,
1903       -1,    -1,    88,   321,  1067,   465,   466,    -1,   419,    -1,
1904      440,    -1,    -1,   466,   469,    -1,    -1,   467,   468,    -1,
1905       -1,   280,  1065,    -1,   280,   251,    -1,   132,   280,  1065,
1906       -1,   391,   280,  1065,    -1,   186,    -1,    80,   218,  1066,
1907       -1,   402,   397,  1065,    -1,   399,  1069,    -1,     3,    -1,
1908      468,    -1,   364,  1064,    -1,    23,  1069,    -1,   321,  1069,
1909       -1,   181,   321,  1069,    -1,   181,   167,  1069,    -1,    88,
1910      399,  1067,   465,   466,    -1,    28,   321,  1068,   465,   467,
1911       -1,    -1,   181,   103,  1057,    -1,    28,   321,  1068,   472,
1912      501,    -1,    28,   321,    26,   472,   501,    -1,    28,   399,
1913     1068,   465,   467,    -1,    28,   399,  1068,   501,    -1,   127,
1914      321,  1069,    -1,   127,   321,   175,   142,  1069,    -1,   127,
1915      399,  1069,    -1,   127,   399,   175,   142,  1069,    -1,    88,
1916      167,  1067,   465,   466,    -1,    28,   167,  1068,   480,   399,
1917     1069,    -1,    22,    -1,   127,    -1,   127,   167,  1069,    -1,
1918      127,   167,   175,   142,  1069,    -1,    88,   328,   483,    42,
1919     1068,   484,    -1,    88,   328,  1070,   484,    -1,    88,   328,
1920      175,   246,   142,   483,    42,  1068,   484,    -1,    88,   328,
1921      175,   246,   142,  1070,   484,    -1,  1070,    -1,    -1,   484,
1922      485,    -1,    -1,   541,    -1,   738,    -1,   585,    -1,   650,
1923       -1,   718,    -1,   822,    -1,   281,   340,   488,    -1,   340,
1924      487,    -1,   340,   221,   487,    -1,   340,   338,   487,    -1,
1925      379,   820,    -1,   338,    63,    35,   379,   820,    -1,   489,
1926       -1,   490,   377,   491,    -1,   490,   443,   491,    -1,   490,
1927      377,   109,    -1,   490,   443,   109,    -1,   488,    -1,   490,
1928      159,    92,    -1,   375,   437,   495,    -1,    59,  1065,    -1,
1929      328,  1065,    -1,   239,   496,    -1,   321,   497,    -1,   338,
1930       42,   497,    -1,   338,    42,   109,    -1,   425,   263,   996,
1931       -1,   379,   349,  1065,    -1,  1070,    -1,   490,   456,  1070,
1932       -1,   492,    -1,   491,   458,   492,    -1,   494,    -1,   591,
1933       -1,   299,   390,    -1,   299,    76,    -1,   311,   299,    -1,
1934      336,    -1,   384,    -1,   147,    -1,   260,    -1,   497,    -1,
1935     1065,    -1,     3,    -1,   980,  1065,   982,    -1,   980,   454,
1936     1064,   455,  1065,    -1,   591,    -1,   109,    -1,   221,    -1,
1937     1065,    -1,   109,    -1,    -1,  1072,    -1,  1065,    -1,   314,
1938      499,    -1,   281,   314,   500,    -1,   500,    -1,   375,   437,
1939       -1,   379,   204,   216,    -1,   338,    42,    -1,   490,    -1,
1940       26,    -1,   340,   487,    -1,   498,    -1,   340,   489,    -1,
1941      498,    -1,   281,   344,   490,    -1,   281,   344,    26,    -1,
1942      344,   490,    -1,   344,   375,   437,    -1,   344,   379,   204,
1943      216,    -1,   344,   338,    42,    -1,   344,    26,    -1,   340,
1944       82,   505,   506,    -1,    26,    -1,  1053,    -1,   112,    -1,
1945      177,    -1,    65,    -1,   121,    26,    -1,   121,   370,    -1,
1946      121,   372,    -1,   121,   283,    -1,   121,   335,    -1,    28,
1947      366,   945,   510,    -1,    28,   366,   175,   142,   945,   510,
1948       -1,    28,   366,    26,   181,   369,  1056,   340,   369,  1056,
1949      878,    -1,    28,   366,    26,   181,   369,  1056,   273,    52,
1950     1069,   340,   369,  1056,   878,    -1,    28,   184,  1054,   510,
1951       -1,    28,   184,   175,   142,  1054,   510,    -1,    28,   184,
1952       26,   181,   369,  1056,   340,   369,  1056,   878,    -1,    28,
1953      184,    26,   181,   369,  1056,   273,    52,  1069,   340,   369,
1954     1056,   878,    -1,    28,   334,  1054,   510,    -1,    28,   334,
1955      175,   142,  1054,   510,    -1,    28,   412,  1054,   510,    -1,
1956       28,   412,   175,   142,  1054,   510,    -1,    28,   230,   412,
1957     1054,   510,    -1,    28,   230,   412,   175,   142,  1054,   510,
1958       -1,    28,   230,   412,    26,   181,   369,  1056,   340,   369,
1959     1056,   878,    -1,    28,   230,   412,    26,   181,   369,  1056,
1960      273,    52,  1069,   340,   369,  1056,   878,    -1,   511,    -1,
1961      510,   458,   511,    -1,    22,   549,    -1,    22,   175,   246,
1962      142,   549,    -1,    22,    72,   549,    -1,    22,    72,   175,
1963      246,   142,   549,    -1,    28,   797,  1070,   512,    -1,    28,
1964      797,  1070,   127,   246,   251,    -1,    28,   797,  1070,   340,
1965      246,   251,    -1,    28,   797,  1070,   340,   356,  1066,    -1,
1966       28,   797,  1070,   340,   517,    -1,    28,   797,  1070,   314,
1967      517,    -1,    28,   797,  1070,   340,   359,  1070,    -1,   127,
1968      797,   175,   142,  1070,   513,    -1,   127,   797,  1070,   513,
1969       -1,    28,   797,  1070,   798,   387,   960,   514,   515,    -1,
1970       28,   797,  1070,   619,    -1,    22,   558,    -1,    28,    81,
1971     1056,   661,    -1,   403,    81,  1056,    -1,   127,    81,   175,
1972      142,  1056,   513,    -1,   127,    81,  1056,   513,    -1,   340,
1973      419,   259,    -1,   340,   421,   259,    -1,    68,   260,  1056,
1974       -1,   340,   421,    68,    -1,   340,   227,    -1,   340,   396,
1975       -1,   130,   382,  1056,    -1,   130,    29,   382,  1056,    -1,
1976      130,   313,   382,  1056,    -1,   130,   382,    26,    -1,   130,
1977      382,   399,    -1,   120,   382,  1056,    -1,   120,   382,    26,
1978       -1,   120,   382,   399,    -1,   130,   326,  1056,    -1,   130,
1979       29,   326,  1056,    -1,   130,   313,   326,  1056,    -1,   120,
1980      326,  1056,    -1,   186,  1054,    -1,   244,   186,  1054,    -1,
1981      256,   702,    -1,   246,   256,    -1,   274,   377,  1068,    -1,
1982      340,   369,  1056,    -1,   340,   517,    -1,   314,   517,    -1,
1983      313,   174,   516,    -1,   130,   324,   216,   332,    -1,   120,
1984      324,   216,   332,    -1,   155,   324,   216,   332,    -1,   244,
1985      155,   324,   216,   332,    -1,   619,    -1,   340,   109,   984,
1986       -1,   127,   109,    -1,    55,    -1,   316,    -1,    -1,    70,
1987      702,    -1,    -1,   400,   984,    -1,    -1,   247,    -1,   160,
1988       -1,   109,    -1,   400,   184,  1056,    -1,   454,   519,   455,
1989       -1,   419,   517,    -1,    -1,   520,    -1,   519,   458,   520,
1990       -1,  1073,   443,   676,    -1,  1073,    -1,  1073,   456,  1073,
1991      443,   676,    -1,  1073,   456,  1073,    -1,    28,   387,   702,
1992      522,    -1,   523,    -1,   522,   458,   523,    -1,    22,    41,
1993      959,   513,    -1,   127,    41,   175,   142,  1070,   513,    -1,
1994      127,    41,  1070,   513,    -1,    28,    41,  1070,   798,   387,
1995      960,   514,   513,    -1,    67,   888,    -1,    67,    26,    -1,
1996       86,   532,  1054,   561,   533,   526,   527,   528,   534,   465,
1997      529,    -1,    86,   454,   861,   455,   377,   527,   528,   465,
1998      529,    -1,   159,    -1,   377,    -1,   296,    -1,    -1,  1065,
1999       -1,   357,    -1,   358,    -1,   530,    -1,   454,   536,   455,
2000       -1,   530,   531,    -1,    -1,    48,    -1,   259,    -1,   158,
2001       -1,   115,   837,  1065,    -1,   251,   837,  1065,    -1,    90,
2002       -1,   171,    -1,   297,   837,  1065,    -1,   135,   837,  1065,
2003       -1,   155,   297,   562,    -1,   155,   297,   447,    -1,   155,
2004      246,   251,   562,    -1,   155,   251,   562,    -1,   131,  1065,
2005       -1,    48,    -1,    -1,   419,   259,    -1,    -1,   535,   116,
2006     1065,    -1,    -1,   400,    -1,    -1,   537,    -1,   536,   458,
2007      537,    -1,  1073,   538,    -1,   494,    -1,   591,    -1,   447,
2008       -1,   454,   539,   455,    -1,    -1,   540,    -1,   539,   458,
2009      540,    -1,   494,    -1,    88,   542,   366,  1054,   454,   543,
2010      455,   572,   573,   574,   575,    -1,    88,   542,   366,   175,
2011      246,   142,  1054,   454,   543,   455,   572,   573,   574,   575,
2012       -1,    88,   542,   366,  1054,   256,   702,   544,   573,   574,
2013      575,    -1,    88,   542,   366,   175,   246,   142,  1054,   256,
2014      702,   544,   573,   574,   575,    -1,   372,    -1,   370,    -1,
2015      221,   372,    -1,   221,   370,    -1,   163,   372,    -1,   163,
2016      370,    -1,   396,    -1,    -1,   545,    -1,    -1,   454,   546,
2017      455,    -1,    -1,   547,    -1,   545,   458,   547,    -1,   548,
2018       -1,   546,   458,   548,    -1,   549,    -1,   555,    -1,   558,
2019       -1,   550,    -1,   558,    -1,  1070,   960,   617,   551,    -1,
2020     1070,   419,   264,   551,    -1,   551,   552,    -1,    -1,    81,
2021     1056,   553,    -1,   553,    -1,   554,    -1,    70,   702,    -1,
2022      246,   251,    -1,   251,    -1,   393,   769,   576,    -1,   291,
2023      206,   769,   576,    -1,    64,   454,   984,   455,   560,    -1,
2024      109,   985,    -1,   305,  1054,   561,   564,   568,    -1,   111,
2025       -1,   246,   111,    -1,   188,   112,    -1,   188,   177,    -1,
2026      217,  1054,   556,    -1,   556,   182,   557,    -1,   556,   139,
2027      557,    -1,    -1,   110,    -1,    82,    -1,   185,    -1,   359,
2028       -1,    74,    -1,    26,    -1,    81,  1056,   559,    -1,   559,
2029       -1,    64,   454,   984,   455,   661,    -1,   393,   454,   562,
2030      455,   769,   576,   661,    -1,   393,   577,   661,    -1,   291,
2031      206,   454,   562,   455,   769,   576,   661,    -1,   291,   206,
2032      577,   661,    -1,   138,   742,   454,   565,   455,   769,   576,
2033      567,   661,    -1,   156,   206,   454,   562,   455,   305,  1054,
2034      561,   564,   568,   661,    -1,   244,   186,    -1,    -1,   454,
2035      562,   455,    -1,    -1,   563,    -1,   562,   458,   563,    -1,
2036     1070,    -1,   229,   160,    -1,   229,   277,    -1,   229,   346,
2037       -1,    -1,   566,    -1,   565,   458,   566,    -1,   744,   419,
2038      779,    -1,   744,   419,   262,   454,   779,   455,    -1,   416,
2039      454,   984,   455,    -1,    -1,   569,    -1,   570,    -1,   569,
2040      570,    -1,   570,   569,    -1,    -1,   260,   398,   571,    -1,
2041      260,   114,   571,    -1,   244,    21,    -1,   316,    -1,    55,
2042       -1,   340,   251,    -1,   340,   109,    -1,   187,   454,  1053,
2043      455,    -1,    -1,   419,   517,    -1,   419,   259,    -1,   421,
2044      259,    -1,    -1,   260,    75,   127,    -1,   260,    75,   114,
2045      325,    -1,   260,    75,   288,   325,    -1,    -1,   369,  1056,
2046       -1,    -1,   400,   184,   369,  1056,    -1,    -1,   400,   184,
2047     1060,    -1,    88,   542,   366,   579,    35,   891,   580,    -1,
2048       88,   542,   366,   175,   246,   142,   579,    35,   891,   580,
2049       -1,  1054,   561,   573,   574,   575,    -1,   419,   102,    -1,
2050      419,   244,   102,    -1,    -1,    88,   583,   230,   412,   582,
2051       35,   891,   580,    -1,    88,   583,   230,   412,   175,   246,
2052      142,   582,    35,   891,   580,    -1,  1054,   561,   518,   575,
2053       -1,   396,    -1,    -1,   306,   230,   412,   740,  1054,   580,
2054       -1,    88,   542,   334,  1054,   587,    -1,    88,   542,   334,
2055      175,   246,   142,  1054,   587,    -1,    28,   334,  1054,   588,
2056       -1,    28,   334,   175,   142,  1054,   588,    -1,   588,    -1,
2057       -1,   589,    -1,   588,   589,    -1,    53,   591,    -1,   101,
2058       -1,   244,   101,    -1,   183,   590,   591,    -1,   231,   591,
2059       -1,   234,   591,    -1,   244,   231,    -1,   244,   234,    -1,
2060      273,    52,   702,    -1,   354,   465,   591,    -1,   315,    -1,
2061      315,   465,   591,    -1,    52,    -1,    -1,     4,    -1,   446,
2062        4,    -1,  1066,    -1,   591,    -1,   592,   458,   591,    -1,
2063       88,   750,   594,   600,   208,   497,    -1,    88,   750,   594,
2064      600,   208,   497,   169,   595,   596,   598,    -1,   386,    -1,
2065       -1,  1056,    -1,  1056,   703,    -1,   189,   595,    -1,    -1,
2066      404,   595,    -1,   244,   404,    -1,   597,    -1,    -1,   127,
2067      600,   208,   497,   513,    -1,   127,   600,   208,   175,   142,
2068      497,   513,    -1,   294,    -1,    -1,    88,   369,  1056,   602,
2069      224,  1065,   518,    -1,   274,  1068,    -1,    -1,   127,   369,
2070     1056,    -1,   127,   369,   175,   142,  1056,    -1,    88,   144,
2071     1056,   465,   605,    -1,    88,   144,   175,   246,   142,  1056,
2072      465,   605,    -1,   605,   606,    -1,    -1,   328,  1056,    -1,
2073      411,   497,    -1,   159,   497,    -1,    55,    -1,    28,   144,
2074     1056,   398,   608,    -1,   608,   609,    -1,    -1,   377,   497,
2075       -1,    28,   144,  1056,   480,    25,  1062,   762,    -1,    28,
2076      144,  1056,   480,    58,   454,   960,    35,   960,   455,    -1,
2077       28,   144,  1056,   480,    71,   702,    -1,    28,   144,  1056,
2078      480,    85,   702,    -1,    28,   144,  1056,   480,   125,   960,
2079       -1,    28,   144,  1056,   480,   161,   728,    -1,    28,   144,
2080     1056,   480,   600,   208,  1056,    -1,    28,   144,  1056,   480,
2081      262,   779,   778,    -1,    28,   144,  1056,   480,   262,    66,
2082      702,   400,  1058,    -1,    28,   144,  1056,   480,   262,   148,
2083      702,   400,  1058,    -1,    28,   144,  1056,   480,   328,  1056,
2084       -1,    28,   144,  1056,   480,   136,   382,  1056,    -1,    28,
2085      144,  1056,   480,   366,   702,    -1,    28,   144,  1056,   480,
2086      373,   330,   276,   702,    -1,    28,   144,  1056,   480,   373,
2087      330,   119,   702,    -1,    28,   144,  1056,   480,   373,   330,
2088      371,   702,    -1,    28,   144,  1056,   480,   373,   330,    78,
2089      702,    -1,    28,   144,  1056,   480,   334,   702,    -1,    28,
2090      144,  1056,   480,   412,   702,    -1,    28,   144,  1056,   480,
2091      230,   412,   702,    -1,    28,   144,  1056,   480,   156,   366,
2092      702,    -1,    28,   144,  1056,   480,   156,   102,   423,  1056,
2093       -1,    28,   144,  1056,   480,   337,  1056,    -1,    28,   144,
2094     1056,   480,   380,   154,   960,   208,  1056,    -1,    28,   144,
2095     1056,   480,   387,   960,    -1,    88,   156,   102,   423,  1056,
2096      614,   617,    -1,   169,   595,    -1,   244,   169,    -1,   404,
2097      595,    -1,   244,   404,    -1,   612,    -1,   613,   612,    -1,
2098      613,    -1,    -1,   127,   156,   102,   423,  1056,   513,    -1,
2099      127,   156,   102,   423,   175,   142,  1056,   513,    -1,    28,
2100      156,   102,   423,  1056,   614,   619,    -1,    28,   156,   102,
2101      423,  1056,   613,    -1,   264,   454,   618,   455,    -1,    -1,
2102      622,    -1,   618,   458,   622,    -1,   264,   454,   620,   455,
2103       -1,   621,    -1,   620,   458,   621,    -1,   622,    -1,   340,
2104      622,    -1,    22,   622,    -1,   127,   623,    -1,   623,   624,
2105       -1,  1073,    -1,  1065,    -1,    88,   337,  1056,   626,   628,
2106      156,   102,   423,  1056,   617,    -1,   387,  1065,    -1,    -1,
2107      411,  1065,    -1,   411,   251,    -1,   627,    -1,    -1,   127,
2108      337,  1056,   513,    -1,   127,   337,   175,   142,  1056,   513,
2109       -1,    28,   337,  1056,   627,   619,    -1,    28,   337,  1056,
2110      627,    -1,    28,   337,  1056,   619,    -1,    88,   156,   366,
2111     1054,   454,   543,   455,   572,   337,  1056,   617,    -1,    88,
2112      156,   366,   175,   246,   142,  1054,   454,   543,   455,   572,
2113      337,  1056,   617,    -1,    28,   156,   366,   945,   510,    -1,
2114       28,   156,   366,   175,   142,   945,   510,    -1,   180,   156,
2115      328,  1056,   635,   159,   337,  1056,   200,  1056,   617,    -1,
2116      218,   377,    -1,   137,    -1,   634,   454,   946,   455,    -1,
2117       -1,    88,   399,   228,   154,   637,   337,  1056,   617,    -1,
2118     1068,    -1,   399,    -1,   127,   399,   228,   154,   637,   337,
2119     1056,    -1,   127,   399,   228,   175,   142,   154,   637,   337,
2120     1056,    -1,    28,   399,   228,   154,   637,   337,  1056,   619,
2121       -1,    88,   284,  1056,   260,  1054,   647,   645,   643,   644,
2122       -1,    28,   284,  1056,   260,  1054,   646,   643,   644,    -1,
2123      127,   284,  1056,   260,   702,   513,    -1,   127,   284,   175,
2124      142,  1056,   260,   702,   513,    -1,   400,   454,   984,   455,
2125       -1,    -1,   419,    64,   454,   984,   455,    -1,    -1,   377,
2126     1069,    -1,    -1,   377,  1069,    -1,    -1,   154,   648,    -1,
2127       -1,    26,    -1,   333,    -1,   194,    -1,   398,    -1,   114,
2128       -1,    88,    20,   232,  1056,   387,   184,   169,   595,    -1,
2129       88,   382,  1056,   651,   652,   260,  1054,   654,   657,   141,
2130      295,  1062,   454,   658,   455,    -1,    88,    81,   382,  1056,
2131       24,   652,   260,  1054,   660,   661,   154,   128,   324,   657,
2132      141,   295,  1062,   454,   658,   455,    -1,    44,    -1,    24,
2133       -1,   195,   256,    -1,   653,    -1,   652,   265,   653,    -1,
2134      194,    -1,   114,    -1,   398,    -1,   398,   256,   562,    -1,
2135      385,    -1,   154,   655,   656,    -1,    -1,   128,    -1,    -1,
2136      324,    -1,   355,    -1,   415,   454,   984,   455,    -1,    -1,
2137      659,    -1,   658,   458,   659,    -1,    -1,  1064,    -1,     4,
2138       -1,  1065,    -1,  1073,    -1,   159,  1054,    -1,    -1,    -1,
2139      661,   662,    -1,   246,   111,    -1,   111,    -1,   188,   177,
2140       -1,   188,   112,    -1,   246,   402,    -1,   244,   186,    -1,
2141      127,   382,  1056,   260,   702,   513,    -1,   127,   382,   175,
2142      142,  1056,   260,   702,   513,    -1,    88,   136,   382,  1056,
2143      260,  1073,   141,   295,  1062,   454,   455,    -1,    88,   136,
2144      382,  1056,   260,  1073,   415,   665,   141,   295,  1062,   454,
2145      455,    -1,   666,    -1,   665,    32,   666,    -1,  1070,   181,
2146      454,   667,   455,    -1,     5,    -1,   667,   458,     5,    -1,
2147       28,   136,   382,  1056,   669,    -1,   130,    -1,   130,   313,
2148       -1,   130,    29,    -1,   120,    -1,    88,    37,  1056,    64,
2149      454,   984,   455,   661,    -1,   127,    37,  1056,   513,    -1,
2150       88,    25,  1062,   762,   673,    -1,    88,    25,  1062,   677,
2151       -1,    88,   262,   779,   673,    -1,    88,   387,   702,   673,
2152       -1,    88,   387,   702,    -1,    88,   387,   702,    35,   454,
2153      957,   455,    -1,    88,   387,   702,    35,   134,   454,   680,
2154      455,    -1,    88,   387,   702,    35,   298,   673,    -1,    88,
2155      373,   330,   276,   702,   673,    -1,    88,   373,   330,   119,
2156      702,   673,    -1,    88,   373,   330,   371,   702,   673,    -1,
2157       88,   373,   330,    78,   702,   673,    -1,    88,    71,   702,
2158      673,    -1,    88,    71,   702,   159,   702,    -1,   454,   674,
2159      455,    -1,   675,    -1,   674,   458,   675,    -1,  1073,   443,
2160      676,    -1,  1073,    -1,   759,    -1,  1077,    -1,  1018,    -1,
2161      591,    -1,  1065,    -1,   454,   678,   455,    -1,   679,    -1,
2162      678,   458,   679,    -1,     3,   443,   676,    -1,   681,    -1,
2163       -1,  1065,    -1,   681,   458,  1065,    -1,    28,   387,   702,
2164       22,   405,   683,  1065,    -1,    28,   387,   702,    22,   405,
2165      683,  1065,    44,  1065,    -1,    28,   387,   702,    22,   405,
2166      683,  1065,    24,  1065,    -1,   175,   246,   142,    -1,    -1,
2167       88,   262,    66,   702,   687,   154,   387,   960,   400,  1058,
2168      688,    35,   685,    -1,   686,    -1,   685,   458,   686,    -1,
2169      262,  1064,   779,   689,   690,    -1,   262,  1064,   779,   778,
2170      689,   690,    -1,   161,  1064,  1062,   751,    -1,   161,  1064,
2171      454,  1023,   455,  1062,   751,    -1,   359,   960,    -1,   109,
2172       -1,    -1,   148,   702,    -1,    -1,   154,   330,    -1,   154,
2173      266,    52,   702,    -1,    -1,   302,    -1,    -1,    88,   262,
2174      148,   702,   400,  1058,    -1,    28,   262,   148,   702,   400,
2175     1058,    22,   685,    -1,    28,   262,   148,   702,   400,  1058,
2176      127,   693,    -1,   694,    -1,   693,   458,   694,    -1,   262,
2177     1064,   454,  1023,   455,    -1,   161,  1064,   454,  1023,   455,
2178       -1,   127,   262,    66,   702,   400,  1058,   513,    -1,   127,
2179      262,    66,   175,   142,   702,   400,  1058,   513,    -1,   127,
2180      262,   148,   702,   400,  1058,   513,    -1,   127,   262,   148,
2181      175,   142,   702,   400,  1058,   513,    -1,   127,   273,    52,
2182     1069,   513,    -1,   301,   273,    52,  1069,   377,  1068,    -1,
2183      127,   700,   175,   142,   701,   513,    -1,   127,   700,   701,
2184      513,    -1,   127,   387,   704,   513,    -1,   127,   387,   175,
2185      142,   704,   513,    -1,   127,   125,   704,   513,    -1,   127,
2186      125,   175,   142,   704,   513,    -1,   127,   184,    77,   701,
2187      513,    -1,   127,   184,    77,   175,   142,   701,   513,    -1,
2188      366,    -1,   334,    -1,   412,    -1,   230,   412,    -1,   184,
2189       -1,   156,   366,    -1,    20,   232,    -1,   136,   382,    -1,
2190       71,    -1,    85,    -1,   328,    -1,   144,    -1,   373,   330,
2191      276,    -1,   373,   330,   119,    -1,   373,   330,   371,    -1,
2192      373,   330,    78,    -1,   702,    -1,   701,   458,   702,    -1,
2193     1070,    -1,  1070,   703,    -1,   456,  1059,    -1,   703,   456,
2194     1059,    -1,   960,    -1,   704,   458,   960,    -1,   385,   902,
2195      946,   706,   513,    -1,    84,   174,    -1,   315,   174,    -1,
2196       -1,    73,   260,   708,   702,   202,   709,    -1,    73,   260,
2197      387,   960,   202,   709,    -1,    73,   260,   125,   960,   202,
2198      709,    -1,    73,   260,    25,  1062,   762,   202,   709,    -1,
2199       73,   260,   161,  1062,   751,   202,   709,    -1,    73,   260,
2200      262,   779,   778,   202,   709,    -1,    73,   260,    81,  1056,
2201      260,   702,   202,   709,    -1,    73,   260,    81,  1056,   260,
2202      125,   702,   202,   709,    -1,    73,   260,   284,  1056,   260,
2203      702,   202,   709,    -1,    73,   260,   326,  1056,   260,   702,
2204      202,   709,    -1,    73,   260,   326,  1056,   202,   709,    -1,
2205       73,   260,   380,   154,   960,   208,  1056,   202,   709,    -1,
2206       73,   260,   382,  1056,   260,   702,   202,   709,    -1,    73,
2207      260,   262,    66,   702,   400,  1058,   202,   709,    -1,    73,
2208      260,   262,   148,   702,   400,  1058,   202,   709,    -1,    73,
2209      260,   209,   255,   591,   202,   709,    -1,    73,   260,    58,
2210      454,   960,    35,   960,   455,   202,   709,    -1,    73,   260,
2211      600,   208,   702,   202,   709,    -1,    20,   232,    -1,    72,
2212       -1,   103,    -1,   328,    -1,   184,    -1,   334,    -1,   366,
2213       -1,   412,    -1,   230,   412,    -1,    71,    -1,    85,    -1,
2214      369,    -1,   144,    -1,   321,    -1,   156,   366,    -1,   337,
2215       -1,   156,   102,   423,    -1,   136,   382,    -1,   373,   330,
2216       78,    -1,   373,   330,   119,    -1,   373,   330,   276,    -1,
2217      373,   330,   371,    -1,  1065,    -1,   251,    -1,   332,   207,
2218      711,   260,   712,   702,   202,   713,    -1,   332,   207,   711,
2219      260,   387,   960,   202,   713,    -1,   332,   207,   711,   260,
2220      125,   960,   202,   713,    -1,   332,   207,   711,   260,    25,
2221     1062,   762,   202,   713,    -1,   332,   207,   711,   260,   161,
2222     1062,   751,   202,   713,    -1,   332,   207,   711,   260,   209,
2223      255,   591,   202,   713,    -1,   332,   207,   711,   260,   600,
2224      208,   702,   202,   713,    -1,   154,   497,    -1,    -1,    72,
2225       -1,   103,    -1,   136,   382,    -1,   156,   366,    -1,   328,
2226       -1,   334,    -1,   366,    -1,   321,    -1,   369,    -1,   412,
2227       -1,   230,   412,    -1,  1065,    -1,   251,    -1,   149,   715,
2228       -1,   237,   715,    -1,   888,    -1,   716,   888,    -1,   243,
2229      717,   888,    -1,   292,   717,   888,    -1,   151,   717,   888,
2230       -1,   210,   717,   888,    -1,    19,  1066,   717,   888,    -1,
2231      308,  1066,   717,   888,    -1,  1066,   717,   888,    -1,    26,
2232      717,   888,    -1,   157,   717,   888,    -1,   157,  1066,   717,
2233      888,    -1,   157,    26,   717,   888,    -1,    43,   717,   888,
2234       -1,    43,  1066,   717,   888,    -1,    43,    26,   717,   888,
2235       -1,   159,    -1,   181,    -1,   716,    -1,    -1,   164,   720,
2236      260,   723,   377,   724,   726,    -1,   319,   720,   260,   723,
2237      159,   724,   513,    -1,   319,   164,   263,   154,   720,   260,
2238      723,   159,   724,   513,    -1,   721,    -1,    26,    -1,    26,
2239      293,    -1,    26,   454,   562,   455,    -1,    26,   293,   454,
2240      562,   455,    -1,   722,    -1,   721,   458,   722,    -1,   333,
2241      561,    -1,   305,   561,    -1,    88,   561,    -1,  1070,   561,
2242       -1,  1053,    -1,   366,  1053,    -1,   334,  1053,    -1,   156,
2243      102,   423,  1055,    -1,   156,   337,  1055,    -1,   161,   727,
2244       -1,   103,  1055,    -1,   125,   701,    -1,   208,  1055,    -1,
2245      209,   255,   592,    -1,   328,  1055,    -1,   369,  1055,    -1,
2246      387,   701,    -1,    26,   367,   181,   328,  1055,    -1,    26,
2247      335,   181,   328,  1055,    -1,    26,   162,   181,   328,  1055,
2248       -1,   725,    -1,   724,   458,   725,    -1,  1068,    -1,   167,
2249     1068,    -1,   419,   164,   263,    -1,    -1,   728,    -1,   727,
2250      458,   728,    -1,  1062,   751,    -1,   164,   721,   377,  1069,
2251      731,   732,    -1,   319,   721,   159,  1069,   732,   513,    -1,
2252      319,    23,   263,   154,   721,   159,  1069,   732,   513,    -1,
2253      419,    23,   263,    -1,    -1,   165,    52,  1068,    -1,    -1,
2254       28,   109,   293,   734,   736,    -1,   734,   735,    -1,    -1,
2255      181,   328,  1055,    -1,   154,   321,  1069,    -1,   154,   399,
2256     1069,    -1,   164,   720,   260,   737,   377,   724,   726,    -1,
2257      319,   720,   260,   737,   159,   724,   513,    -1,   319,   164,
2258      263,   154,   720,   260,   737,   159,   724,   513,    -1,   367,
2259       -1,   162,    -1,   335,    -1,   388,    -1,    88,   739,   184,
2260      740,   741,   260,  1054,   742,   454,   743,   455,   518,   575,
2261      955,    -1,    88,   739,   184,   740,   175,   246,   142,  1060,
2262      260,  1054,   742,   454,   743,   455,   518,   575,   955,    -1,
2263      393,    -1,    -1,    77,    -1,    -1,  1060,    -1,    -1,   400,
2264     1058,    -1,    -1,   744,    -1,   743,   458,   744,    -1,  1070,
2265      745,   746,   747,   748,    -1,   989,   745,   746,   747,   748,
2266       -1,   454,   984,   455,   745,   746,   747,   748,    -1,    70,
2267      702,    -1,    -1,   702,    -1,    -1,    36,    -1,   118,    -1,
2268       -1,   439,   151,    -1,   439,   210,    -1,    -1,    88,   750,
2269      161,  1062,   753,   318,   758,   764,   769,    -1,    88,   750,
2270      161,  1062,   753,   318,   366,   454,   771,   455,   764,   769,
2271       -1,    88,   750,   161,  1062,   753,   764,   769,    -1,   265,
2272      312,    -1,    -1,   454,   752,   455,    -1,   454,   455,    -1,
2273      755,    -1,   752,   458,   755,    -1,   454,   754,   455,    -1,
2274      454,   455,    -1,   760,    -1,   754,   458,   760,    -1,   756,
2275      757,   759,    -1,   757,   756,   759,    -1,   757,   759,    -1,
2276      756,   759,    -1,   759,    -1,   181,    -1,   268,    -1,   191,
2277       -1,   181,   268,    -1,   408,    -1,  1071,    -1,   759,    -1,
2278      960,    -1,  1071,   703,   449,   387,    -1,   342,  1071,   703,
2279      449,   387,    -1,   755,    -1,   755,   109,   984,    -1,   755,
2280      443,   984,    -1,   755,    -1,   454,   447,   455,    -1,   454,
2281      763,   455,    -1,   454,   266,    52,   763,   455,    -1,   454,
2282      763,   266,    52,   763,   455,    -1,   761,    -1,   763,   458,
2283      761,    -1,   766,    -1,   764,   766,    -1,    54,   260,   251,
2284      192,    -1,   318,   251,   260,   251,   192,    -1,   360,    -1,
2285      178,    -1,   352,    -1,   414,    -1,   145,   332,   113,    -1,
2286      145,   332,   201,    -1,   332,   113,    -1,   332,   201,    -1,
2287      213,    -1,   246,   213,    -1,    87,   591,    -1,   325,   591,
2288       -1,   502,    -1,   275,  1070,    -1,    35,   767,    -1,   208,
2289      497,    -1,   380,   768,    -1,   418,    -1,   765,    -1,  1065,
2290       -1,  1065,   458,  1065,    -1,   154,   387,   960,    -1,   768,
2291      458,   154,   387,   960,    -1,   419,   673,    -1,    -1,   757,
2292      759,    -1,   770,    -1,   771,   458,   770,    -1,    28,   161,
2293      728,   773,   774,    -1,   765,    -1,   773,   765,    -1,   316,
2294       -1,    -1,   127,   161,  1062,   751,   513,    -1,   127,   161,
2295      175,   142,  1062,   751,   513,    -1,   127,    25,  1062,   762,
2296      513,    -1,   127,    25,   175,   142,  1062,   762,   513,    -1,
2297      127,   262,   779,   778,   513,    -1,   127,   262,   175,   142,
2298      779,   778,   513,    -1,   454,   960,   455,    -1,   454,   960,
2299      458,   960,   455,    -1,   454,   245,   458,   960,   455,    -1,
2300      454,   960,   458,   245,   455,    -1,  1015,    -1,  1070,   456,
2301      779,    -1,   123,   781,    -1,   782,    -1,   781,   782,    -1,
2302     1065,    -1,   208,   497,    -1,    88,    58,   454,   960,    35,
2303      960,   455,   419,   161,   728,   784,    -1,    88,    58,   454,
2304      960,    35,   960,   455,   421,   161,   784,    -1,    88,    58,
2305      454,   960,    35,   960,   455,   419,   191,   784,    -1,    35,
2306      179,    -1,    35,    38,    -1,    -1,   127,    58,   786,   454,
2307      960,    35,   960,   455,   513,    -1,   175,   142,    -1,    -1,
2308       88,   750,   380,   154,   960,   208,  1056,   454,   788,   455,
2309       -1,   159,   351,   419,   161,   728,   458,   377,   351,   419,
2310      161,   728,    -1,   377,   351,   419,   161,   728,   458,   159,
2311      351,   419,   161,   728,    -1,   159,   351,   419,   161,   728,
2312       -1,   377,   351,   419,   161,   728,    -1,   127,   380,   786,
2313      154,   960,   208,  1056,   513,    -1,   307,   791,  1054,    -1,
2314      307,   792,  1056,    -1,   307,   454,   793,   455,   791,  1054,
2315       -1,   307,   454,   793,   455,   792,  1056,    -1,   184,    -1,
2316      366,    -1,   328,    -1,   365,    -1,   103,    -1,   794,    -1,
2317      793,   458,   794,    -1,   410,    -1,    28,   369,  1056,   340,
2318      517,    -1,    28,   369,  1056,   314,   517,    -1,    28,    25,
2319     1062,   762,   310,   377,  1056,    -1,    28,    71,   702,   310,
2320      377,  1056,    -1,    28,    85,   702,   310,   377,  1056,    -1,
2321       28,   103,  1057,   310,   377,  1057,    -1,    28,   125,   702,
2322      310,   377,  1056,    -1,    28,   125,   702,   310,    81,  1056,
2323      377,  1056,    -1,    28,   156,   102,   423,  1056,   310,   377,
2324     1056,    -1,    28,   161,   728,   310,   377,  1056,    -1,    28,
2325      167,  1067,   310,   377,  1067,    -1,    28,   600,   208,  1056,
2326      310,   377,  1056,    -1,    28,   262,    66,   702,   400,  1058,
2327      310,   377,  1056,    -1,    28,   262,   148,   702,   400,  1058,
2328      310,   377,  1056,    -1,    28,   284,  1056,   260,  1054,   310,
2329      377,  1056,    -1,    28,   284,   175,   142,  1056,   260,  1054,
2330      310,   377,  1056,    -1,    28,   328,  1056,   310,   377,  1056,
2331       -1,    28,   337,  1056,   310,   377,  1056,    -1,    28,   366,
2332      945,   310,   377,  1056,    -1,    28,   366,   175,   142,   945,
2333      310,   377,  1056,    -1,    28,   334,  1054,   310,   377,  1056,
2334       -1,    28,   334,   175,   142,  1054,   310,   377,  1056,    -1,
2335       28,   412,  1054,   310,   377,  1056,    -1,    28,   412,   175,
2336      142,  1054,   310,   377,  1056,    -1,    28,   230,   412,  1054,
2337      310,   377,  1056,    -1,    28,   230,   412,   175,   142,  1054,
2338      310,   377,  1056,    -1,    28,   184,  1054,   310,   377,  1056,
2339       -1,    28,   184,   175,   142,  1054,   310,   377,  1056,    -1,
2340       28,   156,   366,   945,   310,   377,  1056,    -1,    28,   156,
2341      366,   175,   142,   945,   310,   377,  1056,    -1,    28,   366,
2342      945,   310,   797,  1056,   377,  1056,    -1,    28,   366,   175,
2343      142,   945,   310,   797,  1056,   377,  1056,    -1,    28,   230,
2344      412,  1054,   310,   797,  1056,   377,  1056,    -1,    28,   230,
2345      412,   175,   142,  1054,   310,   797,  1056,   377,  1056,    -1,
2346       28,   366,   945,   310,    81,  1056,   377,  1056,    -1,    28,
2347      366,   175,   142,   945,   310,    81,  1056,   377,  1056,    -1,
2348       28,   156,   366,   945,   310,   797,  1056,   377,  1056,    -1,
2349       28,   156,   366,   175,   142,   945,   310,   797,  1056,   377,
2350     1056,    -1,    28,   326,  1056,   260,  1054,   310,   377,  1056,
2351       -1,    28,   382,  1056,   260,  1054,   310,   377,  1056,    -1,
2352       28,   136,   382,  1056,   310,   377,  1056,    -1,    28,   321,
2353     1067,   310,   377,  1067,    -1,    28,   399,  1067,   310,   377,
2354     1067,    -1,    28,   369,  1056,   310,   377,  1056,    -1,    28,
2355      373,   330,   276,   702,   310,   377,  1056,    -1,    28,   373,
2356      330,   119,   702,   310,   377,  1056,    -1,    28,   373,   330,
2357      371,   702,   310,   377,  1056,    -1,    28,   373,   330,    78,
2358      702,   310,   377,  1056,    -1,    28,   387,   702,   310,   377,
2359     1056,    -1,    28,   387,   702,   310,    41,  1056,   377,  1056,
2360      513,    -1,    72,    -1,    -1,   340,   102,    -1,    -1,    28,
2361      161,   728,   117,   260,   144,  1056,    -1,    28,   382,  1056,
2362      260,  1054,   117,   260,   144,  1056,    -1,    28,   230,   412,
2363     1054,   117,   260,   144,  1056,    -1,    28,   184,  1054,   117,
2364      260,   144,  1056,    -1,    28,    25,  1062,   762,   340,   328,
2365     1056,    -1,    28,    71,   702,   340,   328,  1056,    -1,    28,
2366       85,   702,   340,   328,  1056,    -1,    28,   125,   702,   340,
2367      328,  1056,    -1,    28,   144,   702,   340,   328,  1056,    -1,
2368       28,   161,   728,   340,   328,  1056,    -1,    28,   262,   779,
2369      778,   340,   328,  1056,    -1,    28,   262,    66,   702,   400,
2370     1058,   340,   328,  1056,    -1,    28,   262,   148,   702,   400,
2371     1058,   340,   328,  1056,    -1,    28,   366,   945,   340,   328,
2372     1056,    -1,    28,   366,   175,   142,   945,   340,   328,  1056,
2373       -1,    28,   373,   330,   276,   702,   340,   328,  1056,    -1,
2374       28,   373,   330,   119,   702,   340,   328,  1056,    -1,    28,
2375      373,   330,   371,   702,   340,   328,  1056,    -1,    28,   373,
2376      330,    78,   702,   340,   328,  1056,    -1,    28,   334,  1054,
2377      340,   328,  1056,    -1,    28,   334,   175,   142,  1054,   340,
2378      328,  1056,    -1,    28,   412,  1054,   340,   328,  1056,    -1,
2379       28,   412,   175,   142,  1054,   340,   328,  1056,    -1,    28,
2380      230,   412,  1054,   340,   328,  1056,    -1,    28,   230,   412,
2381      175,   142,  1054,   340,   328,  1056,    -1,    28,   156,   366,
2382      945,   340,   328,  1056,    -1,    28,   156,   366,   175,   142,
2383      945,   340,   328,  1056,    -1,    28,   387,   702,   340,   328,
2384     1056,    -1,    28,   262,   779,   778,   340,   454,   802,   455,
2385       -1,   803,    -1,   802,   458,   803,    -1,  1073,   443,   245,
2386       -1,  1073,   443,   676,    -1,    28,    25,  1062,   762,   274,
2387      377,  1068,    -1,    28,    71,   702,   274,   377,  1068,    -1,
2388       28,    85,   702,   274,   377,  1068,    -1,    28,   103,  1057,
2389      274,   377,  1068,    -1,    28,   125,   702,   274,   377,  1068,
2390       -1,    28,   161,   728,   274,   377,  1068,    -1,    28,   600,
2391      208,  1056,   274,   377,  1068,    -1,    28,   209,   255,   591,
2392      274,   377,  1068,    -1,    28,   262,   779,   778,   274,   377,
2393     1068,    -1,    28,   262,    66,   702,   400,  1058,   274,   377,
2394     1068,    -1,    28,   262,   148,   702,   400,  1058,   274,   377,
2395     1068,    -1,    28,   328,  1056,   274,   377,  1068,    -1,    28,
2396      387,   702,   274,   377,  1068,    -1,    28,   369,  1056,   274,
2397      377,  1068,    -1,    28,   373,   330,   119,   702,   274,   377,
2398     1068,    -1,    28,   373,   330,    78,   702,   274,   377,  1068,
2399       -1,    28,   156,   102,   423,  1056,   274,   377,  1068,    -1,
2400       28,   337,  1056,   274,   377,  1068,    -1,    28,   136,   382,
2401     1056,   274,   377,  1068,    -1,    88,   750,   326,  1056,    35,
2402      260,   810,   377,  1054,   955,   123,   811,   806,    -1,   247,
2403       -1,   808,    -1,   454,   807,   455,    -1,   807,   457,   809,
2404       -1,   809,    -1,   891,    -1,   865,    -1,   880,    -1,   873,
2405       -1,   813,    -1,   808,    -1,    -1,   333,    -1,   398,    -1,
2406      114,    -1,   194,    -1,   195,    -1,    27,    -1,    -1,   127,
2407      326,  1056,   260,   702,   513,    -1,   127,   326,   175,   142,
2408     1056,   260,   702,   513,    -1,   248,  1070,   814,    -1,   458,
2409     1065,    -1,    -1,   219,  1070,    -1,   395,  1070,    -1,   395,
2410      447,    -1,    18,   818,    -1,    45,   818,   821,    -1,   354,
2411      379,   821,    -1,    75,   818,    -1,   133,   818,    -1,   322,
2412      818,    -1,   327,  1070,    -1,   309,   327,  1070,    -1,   309,
2413     1070,    -1,   322,   818,   377,   327,  1070,    -1,   322,   818,
2414      377,  1070,    -1,   289,   379,  1065,    -1,    75,   290,  1065,
2415       -1,   322,   290,  1065,    -1,   422,    -1,   379,    -1,    -1,
2416      204,   216,   493,    -1,   299,   261,    -1,   299,   424,    -1,
2417      111,    -1,   246,   111,    -1,   819,    -1,   820,   458,   819,
2418       -1,   820,   819,    -1,   820,    -1,    -1,    88,   542,   412,
2419     1054,   561,   518,    35,   891,   823,    -1,    88,   265,   312,
2420      542,   412,  1054,   561,   518,    35,   891,   823,    -1,    88,
2421      542,   303,   412,  1054,   454,   562,   455,   518,    35,   891,
2422      823,    -1,    88,   265,   312,   542,   303,   412,  1054,   454,
2423      562,   455,   518,    35,   891,   823,    -1,   419,    64,   263,
2424       -1,   419,    56,    64,   263,    -1,   419,   221,    64,   263,
2425       -1,    -1,   220,  1061,    -1,    88,   103,  1057,   465,   826,
2426       -1,   827,    -1,    -1,   828,    -1,   827,   828,    -1,   829,
2427      830,  1066,    -1,   829,   830,   494,    -1,   829,   830,   109,
2428       -1,     3,    -1,    80,   218,    -1,   131,    -1,   224,    -1,
2429      274,    -1,   369,    -1,   371,    -1,   443,    -1,    -1,    28,
2430      103,  1057,   419,   826,    -1,    28,   103,  1057,   826,    -1,
2431       28,   103,  1057,   340,   369,  1056,    -1,    28,   103,  1057,
2432      501,    -1,   127,   103,  1057,    -1,   127,   103,   175,   142,
2433     1057,    -1,    28,   365,   340,   488,    -1,    28,   365,   314,
2434      500,    -1,    88,   125,   702,   837,   960,   551,    -1,    28,
2435      125,   702,   512,    -1,    28,   125,   702,   127,   246,   251,
2436       -1,    28,   125,   702,   340,   246,   251,    -1,    28,   125,
2437      702,    22,   558,    -1,    28,   125,   702,   127,    81,  1056,
2438      513,    -1,    28,   125,   702,   127,    81,   175,   142,  1056,
2439      513,    -1,    28,   125,   702,   403,    81,  1056,    -1,    35,
2440       -1,    -1,    28,   373,   330,   119,   702,   673,    -1,    28,
2441      373,   330,    78,   702,    22,   228,   154,  1055,   840,   701,
2442       -1,    28,   373,   330,    78,   702,    28,   228,   154,  1055,
2443      840,   701,    -1,    28,   373,   330,    78,   702,    28,   228,
2444      312,   702,   840,   702,    -1,    28,   373,   330,    78,   702,
2445       28,   228,   154,  1055,   312,   702,   840,   702,    -1,    28,
2446      373,   330,    78,   702,   127,   228,   154,  1055,    -1,    28,
2447      373,   330,    78,   702,   127,   228,   175,   142,   154,  1055,
2448       -1,   419,    -1,   440,    -1,    88,   687,    85,   702,   154,
2449     1065,   377,  1065,   159,   702,    -1,    68,   849,  1054,   843,
2450       -1,    68,   849,    -1,    68,   849,  1060,   260,  1054,    -1,
2451      400,  1060,    -1,    -1,   401,   850,   851,   849,    -1,   401,
2452      850,   851,   849,  1054,    -1,   401,   850,   851,   849,   847,
2453       -1,   401,   454,   845,   455,    -1,   401,   454,   845,   455,
2454     1054,   852,    -1,   846,    -1,   845,   458,   846,    -1,   848,
2455       -1,   410,    -1,   158,    -1,   160,    -1,     3,    -1,   848,
2456      849,    -1,   848,   849,  1054,   852,    -1,    31,    -1,    30,
2457       -1,   410,    -1,    -1,   160,    -1,    -1,   158,    -1,    -1,
2458      454,  1055,   455,    -1,    -1,   143,   854,    -1,   143,   848,
2459      849,   854,    -1,   143,   410,   854,    -1,   143,   454,   855,
2460      455,   854,    -1,   891,    -1,   865,    -1,   880,    -1,   873,
2461       -1,   887,    -1,   578,    -1,   581,    -1,   584,    -1,   862,
2462       -1,   856,    -1,   855,   458,   856,    -1,   857,   858,    -1,
2463     1072,    -1,   848,    -1,   494,    -1,   591,    -1,    -1,   289,
2464     1056,   860,    35,   861,    -1,   454,  1023,   455,    -1,    -1,
2465      891,    -1,   865,    -1,   880,    -1,   873,    -1,   141,  1056,
2466      863,    -1,    88,   542,   366,   579,    35,   141,  1056,   863,
2467      580,    -1,   454,  1020,   455,    -1,    -1,   105,  1056,    -1,
2468      105,   289,  1056,    -1,   105,    26,    -1,   105,   289,    26,
2469       -1,   899,   194,   200,   866,   867,   870,   872,    -1,  1054,
2470       -1,  1054,    35,  1070,    -1,   891,    -1,   454,   868,   455,
2471      891,    -1,   109,   406,    -1,   869,    -1,   868,   458,   869,
2472       -1,  1070,  1045,    -1,   260,    79,   871,   123,   398,   340,
2473      881,   955,    -1,   260,    79,   871,   123,   247,    -1,    -1,
2474      454,   743,   455,   955,    -1,   260,    81,  1056,    -1,    -1,
2475      317,  1051,    -1,    -1,   899,   114,   159,   947,   874,   956,
2476      872,    -1,   400,   936,    -1,    -1,   225,   902,   946,   876,
2477      878,    -1,   181,   877,   235,    -1,    -1,    20,   343,    -1,
2478      324,   343,    -1,   324,   140,    -1,   343,   398,   140,    -1,
2479      343,    -1,   343,   324,   140,    -1,   140,    -1,    20,   140,
2480       -1,   250,    -1,    -1,   250,    -1,   347,   226,    -1,    -1,
2481      899,   398,   947,   340,   881,   935,   956,   872,    -1,   882,
2482       -1,   881,   458,   882,    -1,   883,    -1,   884,    -1,   885,
2483      443,  1047,    -1,   454,   886,   455,   443,  1049,    -1,   454,
2484      886,   455,   443,   892,    -1,  1070,  1045,    -1,   885,    -1,
2485      886,   458,   885,    -1,   108,   888,   889,   100,   890,   154,
2486      891,    -1,  1056,    -1,    -1,   889,   244,   329,    -1,   889,
2487      329,    -1,   889,    48,    -1,   889,   193,    -1,    -1,   419,
2488      172,    -1,   421,   172,    -1,   893,    -1,   892,    -1,   454,
2489      893,   455,    -1,   454,   892,   455,    -1,   895,    -1,   894,
2490      907,    -1,   894,   906,   928,   911,    -1,   894,   906,   910,
2491      929,    -1,   896,   894,    -1,   896,   894,   907,    -1,   896,
2492      894,   906,   928,   911,    -1,   896,   894,   906,   910,   929,
2493       -1,   895,    -1,   892,    -1,   333,   905,  1050,   900,   935,
2494      955,   920,   927,  1001,    -1,   333,   904,  1051,   900,   935,
2495      955,   920,   927,  1001,    -1,   934,    -1,   366,   945,    -1,
2496      894,   392,   903,   894,    -1,   894,   198,   903,   894,    -1,
2497      894,   137,   903,   894,    -1,   419,   897,    -1,   440,   897,
2498       -1,   419,   303,   897,    -1,   898,    -1,   897,   458,   898,
2499       -1,  1056,   852,    35,   454,   861,   455,    -1,   896,    -1,
2500       -1,   200,   901,    -1,    -1,   372,   902,  1054,    -1,   370,
2501      902,  1054,    -1,   221,   372,   902,  1054,    -1,   221,   370,
2502      902,  1054,    -1,   163,   372,   902,  1054,    -1,   163,   370,
2503      902,  1054,    -1,   396,   902,  1054,    -1,   366,  1054,    -1,
2504     1054,    -1,   366,    -1,    -1,    26,    -1,   122,    -1,    -1,
2505      122,    -1,   122,   260,   454,  1020,   455,    -1,    26,    -1,
2506       -1,   907,    -1,    -1,   266,    52,   908,    -1,   909,    -1,
2507      908,   458,   909,    -1,   984,   400,  1018,   748,    -1,   984,
2508      747,   748,    -1,   912,   913,    -1,   913,   912,    -1,   912,
2509       -1,   913,    -1,   910,    -1,    -1,   218,   914,    -1,   218,
2510      914,   458,   915,    -1,   149,   919,   916,   918,   261,    -1,
2511      258,   915,    -1,   258,   917,   918,    -1,   984,    -1,    26,
2512       -1,   984,    -1,  1066,    -1,   454,   984,   455,    -1,    -1,
2513      986,    -1,   324,    -1,   325,    -1,   151,    -1,   243,    -1,
2514      167,    52,   921,    -1,    -1,   922,    -1,   921,   458,   922,
2515       -1,   984,    -1,   923,    -1,   925,    -1,   924,    -1,   926,
2516       -1,   454,   455,    -1,   323,   454,  1020,   455,    -1,    91,
2517      454,  1020,   455,    -1,   168,   341,   454,   921,   455,    -1,
2518      170,   984,    -1,    -1,   930,    -1,   154,   299,   261,    -1,
2519      928,    -1,    -1,   931,    -1,   930,   931,    -1,   932,   933,
2520      879,    -1,   154,   398,    -1,   154,   244,   206,   398,    -1,
2521      154,   343,    -1,   154,   206,   343,    -1,   256,  1053,    -1,
2522       -1,   406,  1049,    -1,   934,   458,  1049,    -1,   159,   936,
2523       -1,    -1,   937,    -1,   936,   458,   937,    -1,   945,   940,
2524       -1,   945,   940,   948,    -1,   950,   941,    -1,   211,   950,
2525      941,    -1,   892,   940,    -1,   211,   892,   940,    -1,   938,
2526       -1,   454,   938,   455,   939,    -1,   454,   938,   455,    -1,
2527      937,    89,   205,   937,    -1,   937,   942,   205,   937,   944,
2528       -1,   937,   205,   937,   944,    -1,   937,   241,   942,   205,
2529      937,    -1,   937,   241,   205,   937,    -1,    35,  1070,   454,
2530     1055,   455,    -1,    35,  1070,    -1,  1070,   454,  1055,   455,
2531       -1,  1070,    -1,   939,    -1,    -1,   939,    -1,    35,   454,
2532      958,   455,    -1,    35,  1070,   454,   958,   455,    -1,  1070,
2533      454,   958,   455,    -1,    -1,   160,   943,    -1,   215,   943,
2534       -1,   320,   943,    -1,   190,    -1,   269,    -1,    -1,   400,
2535      454,  1055,   455,    -1,   260,   984,    -1,  1054,    -1,  1054,
2536      447,    -1,   261,  1054,    -1,   261,   454,  1054,   455,    -1,
2537      945,    -1,   946,   458,   945,    -1,   945,    -1,   945,  1070,
2538       -1,   945,    35,  1070,    -1,   368,  1062,   454,  1020,   455,
2539      949,    -1,   311,   454,   984,   455,    -1,    -1,   989,   954,
2540       -1,   325,   159,   454,   952,   455,   954,    -1,   989,   953,
2541       -1,   951,    -1,   952,   458,   951,    -1,    35,   454,   958,
2542      455,    -1,    -1,   440,   267,    -1,    -1,   416,   984,    -1,
2543       -1,   416,   984,    -1,   416,    92,   256,   888,    -1,    -1,
2544      958,    -1,    -1,   959,    -1,   958,   458,   959,    -1,  1070,
2545      960,   514,    -1,   962,   961,    -1,   342,   962,   961,    -1,
2546      962,    34,   452,  1064,   453,    -1,   342,   962,    34,   452,
2547     1064,   453,    -1,   962,    34,    -1,   342,   962,    34,    -1,
2548      961,   452,   453,    -1,   961,   452,  1064,   453,    -1,    -1,
2549      964,    -1,   966,    -1,   968,    -1,   972,    -1,   979,    -1,
2550      980,   982,    -1,   980,   454,  1064,   455,    -1,   966,    -1,
2551      969,    -1,   973,    -1,   979,    -1,  1071,   965,    -1,  1071,
2552      703,   965,    -1,   454,  1020,   455,    -1,    -1,   196,    -1,
2553      197,    -1,   348,    -1,    47,    -1,   300,    -1,   152,   967,
2554       -1,   126,   287,    -1,   107,   965,    -1,   106,   965,    -1,
2555      254,   965,    -1,    50,    -1,   454,  1064,   455,    -1,    -1,
2556      970,    -1,   971,    -1,   970,    -1,   971,    -1,    49,   977,
2557      454,  1020,   455,    -1,    49,   977,    -1,   974,    -1,   975,
2558       -1,   974,    -1,   975,    -1,   976,   454,  1064,   455,   978,
2559       -1,   976,   978,    -1,    62,   977,    -1,    61,   977,    -1,
2560      407,    -1,   240,    62,   977,    -1,   240,    61,   977,    -1,
2561      242,   977,    -1,   409,    -1,    -1,    62,   340,  1070,    -1,
2562       -1,   376,   454,  1064,   455,   981,    -1,   376,   981,    -1,
2563      375,   454,  1064,   455,   981,    -1,   375,   981,    -1,   199,
2564       -1,   440,   375,   437,    -1,   421,   375,   437,    -1,    -1,
2565      435,    -1,   236,    -1,   104,    -1,   173,    -1,   233,    -1,
2566      983,    -1,   435,   377,   236,    -1,   104,   377,   173,    -1,
2567      104,   377,   233,    -1,   104,   377,   983,    -1,   173,   377,
2568      233,    -1,   173,   377,   983,    -1,   233,   377,   983,    -1,
2569       -1,   331,    -1,   331,   454,  1064,   455,    -1,   986,    -1,
2570      984,    11,   960,    -1,   984,    70,   702,    -1,   984,    40,
2571      375,   437,   984,    -1,   445,   984,    -1,   446,   984,    -1,
2572      984,   445,   984,    -1,   984,   446,   984,    -1,   984,   447,
2573      984,    -1,   984,   448,   984,    -1,   984,   449,   984,    -1,
2574      984,   450,   984,    -1,   984,   441,   984,    -1,   984,   442,
2575      984,    -1,   984,   443,   984,    -1,   984,    15,   984,    -1,
2576      984,    16,   984,    -1,   984,    17,   984,    -1,   984,  1017,
2577      984,    -1,  1017,   984,    -1,   984,  1017,    -1,   984,    32,
2578      984,    -1,   984,   265,   984,    -1,   246,   984,    -1,   438,
2579      984,    -1,   984,   217,   984,    -1,   984,   217,   984,   135,
2580      984,    -1,   984,   438,   217,   984,    -1,   984,   438,   217,
2581      984,   135,   984,    -1,   984,   176,   984,    -1,   984,   176,
2582      984,   135,   984,    -1,   984,   438,   176,   984,    -1,   984,
2583      438,   176,   984,   135,   984,    -1,   984,   345,   377,   984,
2584       -1,   984,   345,   377,   984,   135,   984,    -1,   984,   438,
2585      345,   377,   984,    -1,   984,   438,   345,   377,   984,   135,
2586      984,    -1,   984,   202,   251,    -1,   984,   203,    -1,   984,
2587      202,   246,   251,    -1,   984,   249,    -1,  1011,   271,  1011,
2588       -1,   984,   202,   384,    -1,   984,   202,   246,   384,    -1,
2589      984,   202,   147,    -1,   984,   202,   246,   147,    -1,   984,
2590      202,   394,    -1,   984,   202,   246,   394,    -1,   984,   202,
2591      122,   159,   984,    -1,   984,   202,   246,   122,   159,   984,
2592       -1,   984,   202,   256,   454,  1023,   455,    -1,   984,   202,
2593      246,   256,   454,  1023,   455,    -1,   984,    46,  1046,   985,
2594       32,   984,    -1,   984,   438,    46,  1046,   985,    32,   984,
2595       -1,   984,    46,   363,   985,    32,   984,    -1,   984,   438,
2596       46,   363,   985,    32,   984,    -1,   984,   181,  1035,    -1,
2597      984,   438,   181,  1035,    -1,   984,  1019,  1014,   892,    -1,
2598      984,  1019,  1014,   454,   984,   455,    -1,   393,   892,    -1,
2599      984,   202,   124,    -1,   984,   202,   246,   124,    -1,   986,
2600       -1,   985,    11,   960,    -1,   445,   985,    -1,   446,   985,
2601       -1,   985,   445,   985,    -1,   985,   446,   985,    -1,   985,
2602      447,   985,    -1,   985,   448,   985,    -1,   985,   449,   985,
2603       -1,   985,   450,   985,    -1,   985,   441,   985,    -1,   985,
2604      442,   985,    -1,   985,   443,   985,    -1,   985,    15,   985,
2605       -1,   985,    16,   985,    -1,   985,    17,   985,    -1,   985,
2606     1017,   985,    -1,  1017,   985,    -1,   985,  1017,    -1,   985,
2607      202,   122,   159,   985,    -1,   985,   202,   246,   122,   159,
2608      985,    -1,   985,   202,   256,   454,  1023,   455,    -1,   985,
2609      202,   246,   256,   454,  1023,   455,    -1,   985,   202,   124,
2610       -1,   985,   202,   246,   124,    -1,  1041,    -1,  1063,    -1,
2611       10,  1045,    -1,   454,   984,   455,  1045,    -1,  1036,    -1,
2612      988,    -1,   892,    -1,   892,  1044,    -1,   142,   892,    -1,
2613       34,   892,    -1,    34,  1024,    -1,  1012,    -1,  1013,    -1,
2614      168,   454,  1020,   455,    -1,  1062,   454,   455,    -1,  1062,
2615      454,  1021,   906,   455,    -1,  1062,   454,   408,  1022,   906,
2616      455,    -1,  1062,   454,  1021,   458,   408,  1022,   906,   455,
2617       -1,  1062,   454,    26,  1021,   906,   455,    -1,  1062,   454,
2618      122,  1021,   906,   455,    -1,  1062,   454,   447,   455,    -1,
2619      987,   999,  1000,  1004,    -1,   990,    -1,   987,    -1,   990,
2620       -1,    71,   154,   454,   984,   455,    -1,    94,    -1,    97,
2621       -1,    97,   454,  1064,   455,    -1,    98,    -1,    98,   454,
2622     1064,   455,    -1,   222,    -1,   222,   454,  1064,   455,    -1,
2623      223,    -1,   223,   454,  1064,   455,    -1,    95,    -1,    99,
2624       -1,   339,    -1,   399,    -1,    93,    -1,    96,    -1,    58,
2625      454,   984,    35,   960,   455,    -1,   146,   454,  1026,   455,
2626       -1,   272,   454,  1028,   455,    -1,   285,   454,  1030,   455,
2627       -1,   362,   454,  1031,   455,    -1,   381,   454,   984,    35,
2628      960,   455,    -1,   383,   454,    51,  1034,   455,    -1,   383,
2629      454,   212,  1034,   455,    -1,   383,   454,   378,  1034,   455,
2630       -1,   383,   454,  1034,   455,    -1,   252,   454,   984,   458,
2631      984,   455,    -1,    69,   454,  1020,   455,    -1,   166,   454,
2632     1020,   455,    -1,   214,   454,  1020,   455,    -1,   427,   454,
2633     1020,   455,    -1,   428,   454,   238,  1073,   455,    -1,   428,
2634      454,   238,  1073,   458,   993,   455,    -1,   428,   454,   238,
2635     1073,   458,  1020,   455,    -1,   428,   454,   238,  1073,   458,
2636      993,   458,  1020,   455,    -1,   429,   454,   986,   998,   455,
2637       -1,   430,   454,   994,   455,    -1,   431,   454,   996,   984,
2638      997,   455,    -1,   432,   454,   238,  1073,   455,    -1,   432,
2639      454,   238,  1073,   458,   984,   455,    -1,   433,   454,   984,
2640      458,   991,   992,   455,    -1,   434,   454,   996,   984,    35,
2641      962,   455,    -1,   411,   984,    -1,   411,   244,   405,    -1,
2642      458,   353,   436,    -1,   458,   353,   244,    -1,   458,   353,
2643      244,   405,    -1,    -1,   426,   454,   994,   455,    -1,   995,
2644       -1,   994,   458,   995,    -1,   984,    35,  1073,    -1,   984,
2645       -1,   124,    -1,    83,    -1,   288,   417,    -1,   361,   417,
2646       -1,    -1,   279,   986,    -1,   279,   986,    52,   304,    -1,
2647      279,    52,   304,   986,    -1,   279,    52,   304,   986,    52,
2648      304,    -1,   420,   167,   454,   907,   455,    -1,    -1,   150,
2649      454,   416,   984,   455,    -1,    -1,   418,  1002,    -1,    -1,
2650     1003,    -1,  1002,   458,  1003,    -1,  1070,    35,  1005,    -1,
2651      270,  1005,    -1,   270,  1070,    -1,    -1,   454,  1006,  1007,
2652      906,  1008,   455,    -1,  1070,    -1,    -1,   278,    52,  1020,
2653       -1,    -1,   298,  1009,    -1,   325,  1009,    -1,    -1,  1010,
2654       -1,    46,  1010,    32,  1010,    -1,   389,   286,    -1,   389,
2655      153,    -1,    92,   324,    -1,   984,   286,    -1,   984,   153,
2656       -1,   324,   454,  1020,   455,    -1,   324,   454,   455,    -1,
2657      454,  1020,   458,   984,   455,    -1,   324,   454,  1020,   455,
2658       -1,   324,   454,   455,    -1,   454,  1020,   458,   984,   455,
2659       -1,    33,    -1,   350,    -1,    26,    -1,     8,    -1,  1016,
2660       -1,   445,    -1,   446,    -1,   447,    -1,   448,    -1,   449,
2661       -1,   450,    -1,   441,    -1,   442,    -1,   443,    -1,    15,
2662       -1,    16,    -1,    17,    -1,     8,    -1,   262,   454,   779,
2663      455,    -1,  1015,    -1,   262,   454,   779,   455,    -1,  1015,
2664       -1,   262,   454,   779,   455,    -1,   217,    -1,   438,   217,
2665       -1,   176,    -1,   438,   176,    -1,   984,    -1,  1020,   458,
2666      984,    -1,  1022,    -1,  1021,   458,  1022,    -1,   984,    -1,
2667      757,    13,   984,    -1,   757,    14,   984,    -1,   960,    -1,
2668     1023,   458,   960,    -1,   452,  1020,   453,    -1,   452,  1025,
2669      453,    -1,   452,   453,    -1,  1024,    -1,  1025,   458,  1024,
2670       -1,  1027,   159,   984,    -1,    -1,     3,    -1,   435,    -1,
2671      236,    -1,   104,    -1,   173,    -1,   233,    -1,   331,    -1,
2672     1065,    -1,   984,  1029,  1032,  1033,    -1,   984,  1029,  1032,
2673       -1,   282,   984,    -1,   985,   181,   985,    -1,    -1,   984,
2674     1032,  1033,    -1,   984,  1033,  1032,    -1,   984,  1032,    -1,
2675      984,  1033,    -1,  1020,    -1,    -1,   159,   984,    -1,   154,
2676      984,    -1,   984,   159,  1020,    -1,   159,  1020,    -1,  1020,
2677       -1,   892,    -1,   454,  1020,   455,    -1,    57,  1040,  1037,
2678     1039,   133,    -1,  1038,    -1,  1037,  1038,    -1,   415,   984,
2679      374,   984,    -1,   129,   984,    -1,    -1,   984,    -1,    -1,
2680     1070,    -1,  1070,  1044,    -1,   456,  1059,    -1,   456,   447,
2681       -1,   452,   984,   453,    -1,   452,  1043,   459,  1043,   453,
2682       -1,   984,    -1,    -1,  1042,    -1,  1044,  1042,    -1,    -1,
2683     1045,  1042,    -1,    39,    -1,    -1,   984,    -1,   109,    -1,
2684     1047,    -1,  1048,   458,  1047,    -1,   454,  1048,   455,    -1,
2685     1051,    -1,    -1,  1052,    -1,  1051,   458,  1052,    -1,   984,
2686       35,  1073,    -1,   984,     3,    -1,   984,    -1,   447,    -1,
2687     1054,    -1,  1053,   458,  1054,    -1,  1070,    -1,  1070,  1044,
2688       -1,  1056,    -1,  1055,   458,  1056,    -1,  1070,    -1,  1070,
2689       -1,  1070,    -1,  1073,    -1,  1070,    -1,  1065,    -1,  1071,
2690       -1,  1070,  1044,    -1,  1064,    -1,     4,    -1,  1065,    -1,
2691        6,    -1,     7,    -1,  1062,  1065,    -1,  1062,   454,  1021,
2692      906,   455,  1065,    -1,   963,  1065,    -1,   980,  1065,   982,
2693       -1,   980,   454,  1064,   455,  1065,    -1,   384,    -1,   147,
2694       -1,   251,    -1,     9,    -1,     5,    -1,  1064,    -1,   445,
2695     1064,    -1,   446,  1064,    -1,  1068,    -1,  1072,    -1,    99,
2696       -1,   339,    -1,  1068,    -1,  1069,   458,  1068,    -1,     3,
2697       -1,  1074,    -1,  1075,    -1,     3,    -1,  1074,    -1,  1076,
2698       -1,     3,    -1,  1074,    -1,  1075,    -1,  1076,    -1,     3,
2699       -1,  1074,    -1,  1075,    -1,  1076,    -1,  1077,    -1,    18,
2700       -1,    19,    -1,    20,    -1,    21,    -1,    22,    -1,    23,
2701       -1,    24,    -1,    25,    -1,    27,    -1,    28,    -1,    29,
2702       -1,    37,    -1,    38,    -1,    40,    -1,    41,    -1,    43,
2703       -1,    44,    -1,    45,    -1,    52,    -1,    53,    -1,    54,
2704       -1,    55,    -1,    56,    -1,    59,    -1,    60,    -1,    63,
2705       -1,    65,    -1,    66,    -1,    67,    -1,    68,    -1,    73,
2706       -1,    74,    -1,    75,    -1,    76,    -1,    78,    -1,    79,
2707       -1,    80,    -1,    82,    -1,    83,    -1,    84,    -1,    85,
2708       -1,    86,    -1,    87,    -1,    90,    -1,    91,    -1,    92,
2709       -1,   100,    -1,   101,    -1,   102,    -1,   103,    -1,   104,
2710       -1,   105,    -1,   108,    -1,   110,    -1,   112,    -1,   113,
2711       -1,   114,    -1,   115,    -1,   116,    -1,   117,    -1,   119,
2712       -1,   120,    -1,   121,    -1,   124,    -1,   125,    -1,   126,
2713       -1,   127,    -1,   128,    -1,   130,    -1,   131,    -1,   132,
2714       -1,   134,    -1,   135,    -1,   136,    -1,   138,    -1,   139,
2715       -1,   140,    -1,   141,    -1,   143,    -1,   144,    -1,   145,
2716       -1,   148,    -1,   150,    -1,   151,    -1,   153,    -1,   155,
2717       -1,   157,    -1,   161,    -1,   162,    -1,   163,    -1,   165,
2718       -1,   169,    -1,   171,    -1,   172,    -1,   173,    -1,   174,
2719       -1,   175,    -1,   177,    -1,   178,    -1,   179,    -1,   180,
2720       -1,   182,    -1,   183,    -1,   184,    -1,   185,    -1,   186,
2721       -1,   187,    -1,   189,    -1,   192,    -1,   193,    -1,   194,
2722       -1,   195,    -1,   201,    -1,   204,    -1,   206,    -1,   207,
2723       -1,   208,    -1,   209,    -1,   210,    -1,   213,    -1,   216,
2724       -1,   219,    -1,   220,    -1,   221,    -1,   224,    -1,   225,
2725       -1,   226,    -1,   227,    -1,   228,    -1,   229,    -1,   230,
2726       -1,   231,    -1,   232,    -1,   233,    -1,   234,    -1,   235,
2727       -1,   236,    -1,   237,    -1,   238,    -1,   239,    -1,   243,
2728       -1,   244,    -1,   247,    -1,   248,    -1,   250,    -1,   253,
2729       -1,   255,    -1,   256,    -1,   257,    -1,   259,    -1,   262,
2730       -1,   263,    -1,   264,    -1,   267,    -1,   270,    -1,   273,
2731       -1,   274,    -1,   275,    -1,   276,    -1,   277,    -1,   278,
2732       -1,   279,    -1,   280,    -1,   283,    -1,   284,    -1,   286,
2733       -1,   289,    -1,   290,    -1,   288,    -1,   292,    -1,   293,
2734       -1,   294,    -1,   295,    -1,   296,    -1,   297,    -1,   298,
2735       -1,   299,    -1,   301,    -1,   302,    -1,   303,    -1,   304,
2736       -1,   306,    -1,   307,    -1,   308,    -1,   309,    -1,   310,
2737       -1,   311,    -1,   312,    -1,   313,    -1,   314,    -1,   315,
2738       -1,   316,    -1,   318,    -1,   319,    -1,   321,    -1,   322,
2739       -1,   323,    -1,   325,    -1,   326,    -1,   327,    -1,   328,
2740       -1,   329,    -1,   330,    -1,   331,    -1,   332,    -1,   334,
2741       -1,   335,    -1,   336,    -1,   337,    -1,   338,    -1,   340,
2742       -1,   341,    -1,   343,    -1,   344,    -1,   346,    -1,   347,
2743       -1,   349,    -1,   351,    -1,   352,    -1,   353,    -1,   354,
2744       -1,   355,    -1,   356,    -1,   357,    -1,   358,    -1,   359,
2745       -1,   360,    -1,   361,    -1,   364,    -1,   365,    -1,   367,
2746       -1,   369,    -1,   370,    -1,   371,    -1,   372,    -1,   373,
2747       -1,   379,    -1,   380,    -1,   382,    -1,   385,    -1,   386,
2748       -1,   387,    -1,   388,    -1,   389,    -1,   390,    -1,   391,
2749       -1,   394,    -1,   395,    -1,   396,    -1,   397,    -1,   398,
2750       -1,   401,    -1,   402,    -1,   403,    -1,   404,    -1,   405,
2751       -1,   409,    -1,   411,    -1,   412,    -1,   413,    -1,   414,
2752       -1,   417,    -1,   420,    -1,   421,    -1,   422,    -1,   423,
2753       -1,   424,    -1,   425,    -1,   435,    -1,   436,    -1,   437,
2754       -1,    46,    -1,    47,    -1,    49,    -1,    50,    -1,    61,
2755       -1,    62,    -1,    69,    -1,   106,    -1,   107,    -1,   142,
2756       -1,   146,    -1,   152,    -1,   166,    -1,   168,    -1,   191,
2757       -1,   196,    -1,   197,    -1,   199,    -1,   214,    -1,   240,
2758       -1,   242,    -1,   245,    -1,   252,    -1,   254,    -1,   268,
2759       -1,   272,    -1,   285,    -1,   287,    -1,   300,    -1,   324,
2760       -1,   342,    -1,   348,    -1,   362,    -1,   375,    -1,   376,
2761       -1,   381,    -1,   383,    -1,   406,    -1,   407,    -1,   426,
2762       -1,   427,    -1,   428,    -1,   429,    -1,   430,    -1,   431,
2763       -1,   432,    -1,   433,    -1,   434,    -1,    42,    -1,    48,
2764       -1,    71,    -1,    77,    -1,    89,    -1,    96,    -1,   158,
2765       -1,   160,    -1,   176,    -1,   190,    -1,   202,    -1,   203,
2766       -1,   205,    -1,   215,    -1,   217,    -1,   241,    -1,   249,
2767       -1,   269,    -1,   271,    -1,   320,    -1,   345,    -1,   368,
2768       -1,   410,    -1,    26,    -1,    30,    -1,    31,    -1,    32,
2769       -1,    33,    -1,    34,    -1,    35,    -1,    36,    -1,    39,
2770       -1,    51,    -1,    57,    -1,    58,    -1,    64,    -1,    70,
2771       -1,    72,    -1,    81,    -1,    88,    -1,    93,    -1,    94,
2772       -1,    95,    -1,    97,    -1,    98,    -1,    99,    -1,   109,
2773       -1,   111,    -1,   118,    -1,   122,    -1,   123,    -1,   129,
2774       -1,   133,    -1,   137,    -1,   147,    -1,   149,    -1,   154,
2775       -1,   156,    -1,   159,    -1,   164,    -1,   167,    -1,   170,
2776       -1,   181,    -1,   188,    -1,   198,    -1,   200,    -1,   211,
2777       -1,   212,    -1,   218,    -1,   222,    -1,   223,    -1,   246,
2778       -1,   251,    -1,   258,    -1,   260,    -1,   261,    -1,   265,
2779       -1,   266,    -1,   282,    -1,   291,    -1,   305,    -1,   317,
2780       -1,   333,    -1,   339,    -1,   350,    -1,   363,    -1,   366,
2781       -1,   374,    -1,   377,    -1,   378,    -1,   384,    -1,   392,
2782       -1,   393,    -1,   399,    -1,   400,    -1,   408,    -1,   415,
2783       -1,   416,    -1,   418,    -1,   419,    -1
2784 };
2785 
2786 /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
2787 static const yytype_uint16 yyrline[] =
2788 {
2789        0,   769,   769,   776,   783,   793,   794,   795,   796,   797,
2790      798,   799,   800,   801,   802,   803,   804,   805,   806,   807,
2791      808,   809,   810,   811,   812,   813,   814,   815,   816,   817,
2792      818,   819,   820,   821,   822,   823,   824,   825,   826,   827,
2793      828,   829,   830,   831,   832,   833,   834,   835,   836,   837,
2794      838,   839,   840,   841,   842,   843,   844,   845,   846,   847,
2795      848,   849,   850,   851,   852,   853,   854,   855,   856,   857,
2796      858,   859,   860,   861,   862,   863,   864,   865,   866,   867,
2797      868,   869,   870,   871,   872,   873,   874,   875,   876,   877,
2798      878,   879,   880,   881,   882,   883,   884,   885,   886,   887,
2799      888,   889,   890,   891,   892,   893,   894,   895,   896,   897,
2800      898,   899,   900,   901,   902,   903,   904,   905,   906,   907,
2801      908,   909,   910,   911,   912,   913,   914,   915,   916,   917,
2802      919,   929,   940,   941,   942,   951,   952,   956,   957,   961,
2803      966,   970,   975,   980,   984,   988,   993,   997,  1045,  1047,
2804     1051,  1055,  1059,  1063,  1077,  1095,  1106,  1107,  1111,  1119,
2805     1137,  1149,  1170,  1177,  1196,  1203,  1220,  1238,  1249,  1250,
2806     1262,  1269,  1286,  1296,  1306,  1321,  1339,  1340,  1344,  1351,
2807     1359,  1360,  1361,  1362,  1363,  1364,  1378,  1385,  1391,  1397,
2808     1406,  1414,  1422,  1426,  1434,  1442,  1449,  1458,  1459,  1467,
2809     1478,  1486,  1494,  1505,  1513,  1521,  1528,  1537,  1547,  1548,
2810     1552,  1553,  1556,  1558,  1562,  1563,  1564,  1565,  1569,  1570,
2811     1571,  1577,  1589,  1593,  1597,  1612,  1619,  1620,  1621,  1625,
2812     1626,  1627,  1631,  1632,  1636,  1637,  1646,  1647,  1654,  1661,
2813     1671,  1678,  1688,  1689,  1694,  1695,  1701,  1707,  1713,  1719,
2814     1725,  1731,  1737,  1747,  1757,  1758,  1762,  1763,  1771,  1786,
2815     1792,  1798,  1804,  1810,  1829,  1838,  1847,  1858,  1869,  1878,
2816     1887,  1898,  1909,  1918,  1927,  1936,  1945,  1954,  1963,  1974,
2817     1988,  1989,  1994,  2003,  2012,  2021,  2030,  2039,  2047,  2055,
2818     2064,  2073,  2082,  2091,  2101,  2114,  2129,  2138,  2147,  2162,
2819     2170,  2180,  2190,  2197,  2204,  2212,  2220,  2227,  2234,  2242,
2820     2250,  2258,  2265,  2272,  2280,  2287,  2294,  2302,  2310,  2318,
2821     2326,  2334,  2342,  2352,  2359,  2367,  2375,  2383,  2391,  2399,
2822     2406,  2413,  2420,  2426,  2436,  2437,  2441,  2442,  2443,  2447,
2823     2455,  2459,  2460,  2464,  2471,  2478,  2485,  2495,  2498,  2499,
2824     2503,  2504,  2509,  2513,  2517,  2522,  2537,  2550,  2551,  2556,
2825     2565,  2575,  2585,  2611,  2617,  2650,  2679,  2701,  2702,  2706,
2826     2707,  2716,  2717,  2718,  2721,  2722,  2727,  2728,  2732,  2736,
2827     2740,  2744,  2748,  2752,  2756,  2760,  2764,  2768,  2772,  2776,
2828     2780,  2784,  2793,  2797,  2801,  2805,  2809,  2813,  2817,  2818,
2829     2823,  2827,  2834,  2841,  2842,  2843,  2844,  2845,  2849,  2853,
2830     2861,  2872,  2888,  2905,  2922,  2952,  2953,  2954,  2955,  2956,
2831     2963,  2970,  2971,  2975,  2976,  2980,  2981,  2985,  2989,  2996,
2832     3000,  3007,  3008,  3009,  3013,  3014,  3017,  3038,  3059,  3060,
2833     3064,  3072,  3073,  3074,  3105,  3112,  3119,  3130,  3141,  3153,
2834     3164,  3197,  3204,  3211,  3218,  3229,  3239,  3240,  3241,  3245,
2835     3246,  3247,  3248,  3249,  3250,  3259,  3267,  3271,  3284,  3299,
2836     3313,  3328,  3342,  3360,  3381,  3382,  3386,  3387,  3391,  3392,
2837     3395,  3401,  3405,  3413,  3418,  3424,  3425,  3429,  3434,  3441,
2838     3442,  3452,  3454,  3456,  3458,  3461,  3464,  3467,  3471,  3472,
2839     3473,  3474,  3475,  3478,  3479,  3484,  3485,  3486,  3487,  3490,
2840     3491,  3492,  3493,  3496,  3497,  3500,  3501,  3504,  3519,  3532,
2841     3548,  3562,  3563,  3564,  3576,  3589,  3605,  3618,  3619,  3631,
2842     3651,  3661,  3674,  3682,  3693,  3694,  3697,  3698,  3701,  3705,
2843     3709,  3713,  3717,  3721,  3725,  3729,  3733,  3737,  3741,  3745,
2844     3751,  3752,  3756,  3757,  3762,  3765,  3766,  3778,  3790,  3805,
2845     3806,  3814,  3815,  3819,  3820,  3824,  3825,  3829,  3830,  3834,
2846     3845,  3858,  3859,  3869,  3880,  3881,  3894,  3901,  3918,  3926,
2847     3937,  3940,  3944,  3948,  3952,  3956,  3968,  3978,  3981,  3985,
2848     3998,  4008,  4018,  4027,  4036,  4045,  4055,  4064,  4074,  4083,
2849     4092,  4101,  4110,  4119,  4128,  4137,  4146,  4155,  4164,  4173,
2850     4182,  4191,  4200,  4209,  4219,  4237,  4248,  4249,  4250,  4251,
2851     4255,  4256,  4260,  4261,  4271,  4282,  4302,  4310,  4322,  4323,
2852     4327,  4331,  4339,  4343,  4347,  4354,  4358,  4363,  4368,  4375,
2853     4382,  4387,  4397,  4411,  4412,  4417,  4418,  4422,  4423,  4433,
2854     4444,  4464,  4473,  4481,  4498,  4518,  4548,  4557,  4578,  4593,
2855     4594,  4598,  4606,  4621,  4632,  4633,  4643,  4651,  4668,  4690,
2856     4706,  4720,  4731,  4745,  4746,  4750,  4751,  4755,  4756,  4760,
2857     4761,  4765,  4766,  4770,  4771,  4772,  4773,  4774,  4784,  4803,
2858     4823,  4848,  4849,  4850,  4854,  4856,  4878,  4880,  4882,  4884,
2859     4886,  4891,  4896,  4906,  4907,  4911,  4912,  4916,  4917,  4921,
2860     4922,  4923,  4927,  4931,  4932,  4933,  4937,  4938,  4943,  4944,
2861     4971,  4972,  4973,  4974,  4975,  4976,  4981,  4992,  5015,  5025,
2862     5039,  5041,  5046,  5051,  5053,  5058,  5068,  5069,  5070,  5071,
2863     5083,  5103,  5126,  5136,  5147,  5157,  5167,  5178,  5187,  5194,
2864     5201,  5210,  5219,  5228,  5237,  5246,  5257,  5260,  5261,  5264,
2865     5268,  5275,  5276,  5277,  5278,  5279,  5282,  5285,  5286,  5294,
2866     5301,  5302,  5305,  5307,  5318,  5328,  5338,  5350,  5351,  5367,
2867     5382,  5383,  5387,  5397,  5408,  5417,  5427,  5436,  5437,  5440,
2868     5441,  5444,  5445,  5446,  5449,  5463,  5468,  5478,  5487,  5499,
2869     5500,  5504,  5512,  5524,  5534,  5547,  5557,  5579,  5589,  5607,
2870     5618,  5629,  5639,  5649,  5659,  5669,  5680,  5694,  5695,  5696,
2871     5697,  5698,  5699,  5700,  5701,  5702,  5703,  5704,  5705,  5706,
2872     5707,  5708,  5709,  5713,  5714,  5717,  5718,  5721,  5723,  5728,
2873     5729,  5739,  5750,  5751,  5752,  5786,  5795,  5804,  5813,  5822,
2874     5831,  5840,  5849,  5863,  5872,  5881,  5891,  5900,  5909,  5917,
2875     5926,  5935,  5944,  5956,  5957,  5958,  5959,  5960,  5961,  5962,
2876     5963,  5964,  5965,  5966,  5967,  5968,  5969,  5970,  5971,  5972,
2877     5973,  5974,  5975,  5976,  5977,  5981,  5982,  5996,  6007,  6018,
2878     6029,  6040,  6051,  6062,  6075,  6076,  6080,  6081,  6082,  6083,
2879     6084,  6085,  6086,  6087,  6088,  6089,  6090,  6093,  6094,  6104,
2880     6110,  6118,  6126,  6134,  6142,  6150,  6158,  6166,  6174,  6182,
2881     6190,  6198,  6206,  6214,  6222,  6230,  6238,  6248,  6249,  6252,
2882     6253,  6263,  6279,  6293,  6319,  6321,  6323,  6325,  6332,  6341,
2883     6342,  6345,  6352,  6359,  6366,  6380,  6388,  6396,  6404,  6412,
2884     6420,  6428,  6436,  6444,  6452,  6460,  6468,  6476,  6484,  6492,
2885     6500,  6512,  6513,  6517,  6518,  6523,  6524,  6528,  6529,  6534,
2886     6550,  6563,  6573,  6585,  6586,  6589,  6590,  6600,  6610,  6611,
2887     6615,  6619,  6623,  6634,  6647,  6661,  6678,  6679,  6680,  6681,
2888     6693,  6719,  6748,  6749,  6753,  6754,  6758,  6759,  6763,  6764,
2889     6767,  6768,  6776,  6787,  6798,  6811,  6812,  6815,  6816,  6819,
2890     6820,  6821,  6824,  6825,  6826,  6842,  6854,  6867,  6882,  6883,
2891     6886,  6887,  6891,  6892,  6900,  6901,  6905,  6906,  6921,  6930,
2892     6939,  6948,  6957,  6969,  6970,  6971,  6972,  6973,  6979,  6983,
2893     6998,  6999,  7005,  7015,  7019,  7024,  7032,  7073,  7077,  7081,
2894     7085,  7093,  7094,  7099,  7100,  7107,  7111,  7115,  7119,  7123,
2895     7127,  7131,  7135,  7139,  7143,  7147,  7151,  7155,  7159,  7163,
2896     7168,  7175,  7179,  7183,  7187,  7191,  7197,  7198,  7205,  7206,
2897     7210,  7211,  7214,  7226,  7230,  7245,  7256,  7257,  7262,  7263,
2898     7278,  7289,  7303,  7314,  7328,  7339,  7353,  7361,  7363,  7365,
2899     7370,  7372,  7385,  7394,  7395,  7399,  7403,  7415,  7426,  7437,
2900     7450,  7451,  7452,  7456,  7469,  7470,  7480,  7492,  7496,  7500,
2901     7504,  7511,  7532,  7541,  7550,  7559,  7570,  7571,  7574,  7575,
2902     7576,  7579,  7580,  7583,  7593,  7602,  7619,  7629,  7638,  7647,
2903     7656,  7665,  7674,  7683,  7693,  7702,  7711,  7720,  7729,  7739,
2904     7749,  7758,  7767,  7777,  7787,  7797,  7807,  7817,  7827,  7837,
2905     7847,  7857,  7867,  7877,  7887,  7898,  7909,  7920,  7931,  7941,
2906     7951,  7962,  7973,  7983,  7993,  8001,  8010,  8019,  8028,  8037,
2907     8046,  8055,  8064,  8073,  8087,  8088,  8091,  8092,  8102,  8112,
2908     8122,  8132,  8151,  8161,  8170,  8179,  8188,  8197,  8207,  8217,
2909     8226,  8235,  8244,  8253,  8262,  8271,  8280,  8289,  8298,  8307,
2910     8316,  8325,  8334,  8343,  8352,  8361,  8379,  8389,  8390,  8393,
2911     8395,  8405,  8414,  8422,  8430,  8438,  8446,  8455,  8463,  8471,
2912     8480,  8488,  8496,  8504,  8512,  8520,  8528,  8536,  8544,  8552,
2913     8569,  8586,  8587,  8588,  8593,  8599,  8608,  8609,  8610,  8611,
2914     8612,  8616,  8617,  8620,  8621,  8622,  8623,  8627,  8628,  8629,
2915     8634,  8645,  8667,  8677,  8678,  8681,  8690,  8696,  8715,  8722,
2916     8729,  8736,  8743,  8750,  8757,  8765,  8773,  8781,  8789,  8797,
2917     8804,  8811,  8820,  8821,  8822,  8826,  8829,  8832,  8835,  8838,
2918     8845,  8847,  8849,  8854,  8856,  8868,  8881,  8894,  8912,  8933,
2919     8934,  8935,  8936,  8946,  8962,  8972,  8973,  8977,  8978,  8982,
2920     8986,  8990,  9008,  9009,  9010,  9011,  9012,  9013,  9014,  9021,
2921     9022,  9033,  9040,  9047,  9058,  9075,  9082,  9100,  9106,  9122,
2922     9135,  9144,  9152,  9160,  9169,  9180,  9191,  9201,  9202,  9213,
2923     9223,  9234,  9245,  9256,  9267,  9276,  9288,  9289,  9303,  9326,
2924     9334,  9343,  9354,  9355,  9367,  9381,  9395,  9407,  9415,  9428,
2925     9429,  9433,  9434,  9435,  9436,  9437,  9450,  9460,  9473,  9474,
2926     9478,  9479,  9482,  9483,  9486,  9487,  9491,  9492,  9505,  9512,
2927     9522,  9529,  9539,  9540,  9541,  9542,  9543,  9544,  9545,  9546,
2928     9547,  9551,  9555,  9562,  9569,  9570,  9574,  9575,  9576,  9586,
2929     9596,  9597,  9601,  9602,  9603,  9604,  9614,  9621,  9639,  9640,
2930     9650,  9656,  9662,  9668,  9684,  9702,  9706,  9714,  9720,  9726,
2931     9735,  9737,  9742,  9753,  9763,  9773,  9779,  9788,  9797,  9803,
2932     9804,  9815,  9829,  9830,  9841,  9852,  9853,  9856,  9857,  9858,
2933     9859,  9860,  9861,  9862,  9863,  9866,  9867,  9871,  9872,  9873,
2934     9884,  9902,  9903,  9907,  9908,  9912,  9928,  9954,  9987,  9998,
2935     9999, 10009, 10020, 10023, 10024, 10025, 10026, 10027, 10030, 10031,
2936    10032, 10080, 10081, 10085, 10086, 10101, 10102, 10109, 10117, 10125,
2937    10133, 10141, 10149, 10160, 10161, 10188, 10202, 10217, 10218, 10237,
2938    10241, 10245, 10262, 10269, 10276, 10286, 10287, 10290, 10302, 10303,
2939    10307, 10319, 10327, 10332, 10337, 10342, 10347, 10355, 10363, 10368,
2940    10373, 10380, 10381, 10385, 10386, 10387, 10394, 10395, 10399, 10400,
2941    10404, 10405, 10409, 10413, 10414, 10417, 10426, 10439, 10440, 10441,
2942    10442, 10446, 10447, 10451, 10453, 10463, 10468, 10471, 10476, 10477,
2943    10485, 10495, 10496, 10497, 10505, 10509, 10510, 10513, 10514, 10539,
2944    10540, 10544, 10545, 10549, 10550, 10551, 10552, 10553, 10557, 10570,
2945    10577, 10584, 10591, 10592, 10596, 10597, 10601, 10602, 10606, 10607,
2946    10611, 10622, 10623, 10624, 10625, 10629, 10630, 10635, 10641, 10659,
2947    10660, 10664, 10665, 10671, 10676, 10684, 10691, 10699, 10734, 10759,
2948    10763, 10789, 10793, 10805, 10818, 10832, 10843, 10858, 10864, 10869,
2949    10875, 10882, 10883, 10891, 10895, 10899, 10905, 10912, 10917, 10918,
2950    10919, 10920, 10924, 10925, 10937, 10938, 10943, 10950, 10957, 10964,
2951    10975, 10976, 10989, 10993, 11000, 11013, 11026, 11027, 11042, 11052,
2952    11064, 11069, 11070, 11073, 11074, 11077, 11078, 11083, 11084, 11089,
2953    11090, 11098, 11103, 11104, 11108, 11112, 11118, 11148, 11153, 11160,
2954    11165, 11171, 11176, 11185, 11187, 11190, 11194, 11195, 11196, 11197,
2955    11198, 11199, 11204, 11224, 11225, 11226, 11227, 11238, 11244, 11252,
2956    11253, 11259, 11264, 11269, 11274, 11279, 11284, 11289, 11294, 11300,
2957    11306, 11312, 11319, 11341, 11350, 11354, 11362, 11366, 11374, 11386,
2958    11407, 11411, 11417, 11421, 11434, 11445, 11460, 11462, 11464, 11466,
2959    11468, 11470, 11475, 11476, 11480, 11481, 11488, 11497, 11505, 11514,
2960    11525, 11533, 11534, 11535, 11539, 11541, 11543, 11545, 11547, 11549,
2961    11551, 11556, 11561, 11567, 11575, 11580, 11587, 11594, 11598, 11602,
2962    11638, 11639, 11641, 11649, 11664, 11666, 11668, 11670, 11672, 11674,
2963    11676, 11678, 11680, 11682, 11684, 11686, 11688, 11690, 11693, 11695,
2964    11697, 11700, 11702, 11704, 11706, 11709, 11714, 11722, 11727, 11735,
2965    11740, 11748, 11753, 11762, 11770, 11778, 11786, 11804, 11812, 11820,
2966    11828, 11836, 11852, 11860, 11868, 11876, 11884, 11892, 11900, 11904,
2967    11910, 11914, 11918, 11926, 11934, 11942, 11950, 11970, 11992, 12003,
2968    12010, 12026, 12031, 12048, 12050, 12052, 12054, 12056, 12058, 12060,
2969    12062, 12064, 12066, 12068, 12070, 12072, 12074, 12076, 12078, 12080,
2970    12082, 12084, 12086, 12090, 12096, 12100, 12104, 12109, 12125, 12126,
2971    12127, 12142, 12172, 12174, 12176, 12187, 12211, 12222, 12233, 12241,
2972    12251, 12261, 12270, 12274, 12280, 12287, 12294, 12304, 12311, 12339,
2973    12374, 12385, 12386, 12393, 12399, 12425, 12435, 12448, 12456, 12469,
2974    12479, 12492, 12502, 12515, 12519, 12523, 12527, 12531, 12535, 12539,
2975    12541, 12545, 12554, 12559, 12566, 12581, 12588, 12592, 12596, 12600,
2976    12604, 12611, 12619, 12627, 12631, 12635, 12639, 12643, 12647, 12653,
2977    12657, 12666, 12670, 12674, 12679, 12693, 12695, 12699, 12701, 12703,
2978    12706, 12709, 12712, 12713, 12716, 12724, 12734, 12735, 12738, 12739,
2979    12740, 12745, 12749, 12753, 12757, 12768, 12769, 12773, 12774, 12782,
2980    12783, 12787, 12788, 12793, 12801, 12803, 12817, 12820, 12847, 12848,
2981    12851, 12852, 12863, 12881, 12888, 12897, 12914, 12959, 12967, 12975,
2982    12983, 12991, 13012, 13013, 13014, 13017, 13018, 13021, 13024, 13025,
2983    13026, 13029, 13030, 13033, 13034, 13035, 13036, 13037, 13038, 13039,
2984    13040, 13041, 13042, 13043, 13044, 13047, 13049, 13054, 13056, 13061,
2985    13063, 13065, 13067, 13069, 13071, 13083, 13087, 13094, 13098, 13104,
2986    13108, 13117, 13128, 13129, 13132, 13136, 13140, 13146, 13147, 13152,
2987    13156, 13163, 13164, 13165, 13166, 13167, 13168, 13169, 13170, 13180,
2988    13184, 13191, 13198, 13199, 13215, 13219, 13224, 13228, 13243, 13248,
2989    13252, 13255, 13258, 13259, 13260, 13263, 13270, 13280, 13294, 13295,
2990    13299, 13310, 13311, 13314, 13315, 13318, 13322, 13329, 13333, 13337,
2991    13345, 13356, 13357, 13361, 13362, 13366, 13367, 13370, 13371, 13382,
2992    13383, 13392, 13393, 13401, 13411, 13412, 13416, 13417, 13420, 13436,
2993    13444, 13452, 13474, 13475, 13486, 13490, 13517, 13519, 13524, 13527,
2994    13530, 13532, 13534, 13536, 13546, 13548, 13559, 13563, 13567, 13571,
2995    13575, 13584, 13591, 13623, 13627, 13633, 13640, 13644, 13648, 13654,
2996    13655, 13657, 13658, 13659, 13663, 13693, 13720, 13724, 13730, 13732,
2997    13749, 13750, 13751, 13756, 13757, 13758, 13763, 13764, 13765, 13766,
2998    13772, 13773, 13774, 13775, 13776, 13796, 13797, 13798, 13799, 13800,
2999    13801, 13802, 13803, 13804, 13805, 13806, 13807, 13808, 13809, 13810,
3000    13811, 13812, 13813, 13814, 13815, 13816, 13817, 13818, 13819, 13820,
3001    13821, 13822, 13823, 13824, 13825, 13826, 13827, 13828, 13829, 13830,
3002    13831, 13832, 13833, 13834, 13835, 13836, 13837, 13838, 13839, 13840,
3003    13841, 13842, 13843, 13844, 13845, 13846, 13847, 13848, 13849, 13850,
3004    13851, 13852, 13853, 13854, 13855, 13856, 13857, 13858, 13859, 13860,
3005    13861, 13862, 13863, 13864, 13865, 13866, 13867, 13868, 13869, 13870,
3006    13871, 13872, 13873, 13874, 13875, 13876, 13877, 13878, 13879, 13880,
3007    13881, 13882, 13883, 13884, 13885, 13886, 13887, 13888, 13889, 13890,
3008    13891, 13892, 13893, 13894, 13895, 13896, 13897, 13898, 13899, 13900,
3009    13901, 13902, 13903, 13904, 13905, 13906, 13907, 13908, 13909, 13910,
3010    13911, 13912, 13913, 13914, 13915, 13916, 13917, 13918, 13919, 13920,
3011    13921, 13922, 13923, 13924, 13925, 13926, 13927, 13928, 13929, 13930,
3012    13931, 13932, 13933, 13934, 13935, 13936, 13937, 13938, 13939, 13940,
3013    13941, 13942, 13943, 13944, 13945, 13946, 13947, 13948, 13949, 13950,
3014    13951, 13952, 13953, 13954, 13955, 13956, 13957, 13958, 13959, 13960,
3015    13961, 13962, 13963, 13964, 13965, 13966, 13967, 13968, 13969, 13970,
3016    13971, 13972, 13973, 13974, 13975, 13976, 13977, 13978, 13979, 13980,
3017    13981, 13982, 13983, 13984, 13985, 13986, 13987, 13988, 13989, 13990,
3018    13991, 13992, 13993, 13994, 13995, 13996, 13997, 13998, 13999, 14000,
3019    14001, 14002, 14003, 14004, 14005, 14006, 14007, 14008, 14009, 14010,
3020    14011, 14012, 14013, 14014, 14015, 14016, 14017, 14018, 14019, 14020,
3021    14021, 14022, 14023, 14024, 14025, 14026, 14027, 14028, 14029, 14030,
3022    14031, 14032, 14033, 14034, 14035, 14036, 14037, 14038, 14039, 14040,
3023    14041, 14042, 14043, 14044, 14045, 14046, 14047, 14048, 14049, 14050,
3024    14051, 14052, 14053, 14054, 14055, 14056, 14057, 14058, 14059, 14060,
3025    14061, 14062, 14063, 14064, 14065, 14066, 14080, 14081, 14082, 14083,
3026    14084, 14085, 14086, 14087, 14088, 14089, 14090, 14091, 14092, 14093,
3027    14094, 14095, 14096, 14097, 14098, 14099, 14100, 14101, 14102, 14103,
3028    14104, 14105, 14106, 14107, 14108, 14109, 14110, 14111, 14112, 14113,
3029    14114, 14115, 14116, 14117, 14118, 14119, 14120, 14121, 14122, 14123,
3030    14124, 14125, 14126, 14127, 14141, 14142, 14143, 14144, 14145, 14146,
3031    14147, 14148, 14149, 14150, 14151, 14152, 14153, 14154, 14155, 14156,
3032    14157, 14158, 14159, 14160, 14161, 14162, 14163, 14173, 14174, 14175,
3033    14176, 14177, 14178, 14179, 14180, 14181, 14182, 14183, 14184, 14185,
3034    14186, 14187, 14188, 14189, 14190, 14191, 14192, 14193, 14194, 14195,
3035    14196, 14197, 14198, 14199, 14200, 14201, 14202, 14203, 14204, 14205,
3036    14206, 14207, 14208, 14209, 14210, 14211, 14212, 14213, 14214, 14215,
3037    14216, 14217, 14218, 14219, 14220, 14221, 14222, 14223, 14224, 14225,
3038    14226, 14227, 14228, 14229, 14230, 14231, 14232, 14233, 14234, 14235,
3039    14236, 14237, 14238, 14239, 14240, 14241, 14242, 14243, 14244, 14245,
3040    14246, 14247, 14248, 14249
3041 };
3042 #endif
3043 
3044 #if YYDEBUG || YYERROR_VERBOSE || 0
3045 /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
3046    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
3047 static const char *const yytname[] =
3048 {
3049   "$end", "error", "$undefined", "IDENT", "FCONST", "SCONST", "BCONST",
3050   "XCONST", "Op", "ICONST", "PARAM", "TYPECAST", "DOT_DOT", "COLON_EQUALS",
3051   "EQUALS_GREATER", "LESS_EQUALS", "GREATER_EQUALS", "NOT_EQUALS",
3052   "ABORT_P", "ABSOLUTE_P", "ACCESS", "ACTION", "ADD_P", "ADMIN", "AFTER",
3053   "AGGREGATE", "ALL", "ALSO", "ALTER", "ALWAYS", "ANALYSE", "ANALYZE",
3054   "AND", "ANY", "ARRAY", "AS", "ASC", "ASSERTION", "ASSIGNMENT",
3055   "ASYMMETRIC", "AT", "ATTRIBUTE", "AUTHORIZATION", "BACKWARD", "BEFORE",
3056   "BEGIN_P", "BETWEEN", "BIGINT", "BINARY", "BIT", "BOOLEAN_P", "BOTH",
3057   "BY", "CACHE", "CALLED", "CASCADE", "CASCADED", "CASE", "CAST",
3058   "CATALOG_P", "CHAIN", "CHAR_P", "CHARACTER", "CHARACTERISTICS", "CHECK",
3059   "CHECKPOINT", "CLASS", "CLOSE", "CLUSTER", "COALESCE", "COLLATE",
3060   "COLLATION", "COLUMN", "COMMENT", "COMMENTS", "COMMIT", "COMMITTED",
3061   "CONCURRENTLY", "CONFIGURATION", "CONFLICT", "CONNECTION", "CONSTRAINT",
3062   "CONSTRAINTS", "CONTENT_P", "CONTINUE_P", "CONVERSION_P", "COPY", "COST",
3063   "CREATE", "CROSS", "CSV", "CUBE", "CURRENT_P", "CURRENT_CATALOG",
3064   "CURRENT_DATE", "CURRENT_ROLE", "CURRENT_SCHEMA", "CURRENT_TIME",
3065   "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", "CYCLE", "DATA_P",
3066   "DATABASE", "DAY_P", "DEALLOCATE", "DEC", "DECIMAL_P", "DECLARE",
3067   "DEFAULT", "DEFAULTS", "DEFERRABLE", "DEFERRED", "DEFINER", "DELETE_P",
3068   "DELIMITER", "DELIMITERS", "DEPENDS", "DESC", "DICTIONARY", "DISABLE_P",
3069   "DISCARD", "DISTINCT", "DO", "DOCUMENT_P", "DOMAIN_P", "DOUBLE_P",
3070   "DROP", "EACH", "ELSE", "ENABLE_P", "ENCODING", "ENCRYPTED", "END_P",
3071   "ENUM_P", "ESCAPE", "EVENT", "EXCEPT", "EXCLUDE", "EXCLUDING",
3072   "EXCLUSIVE", "EXECUTE", "EXISTS", "EXPLAIN", "EXTENSION", "EXTERNAL",
3073   "EXTRACT", "FALSE_P", "FAMILY", "FETCH", "FILTER", "FIRST_P", "FLOAT_P",
3074   "FOLLOWING", "FOR", "FORCE", "FOREIGN", "FORWARD", "FREEZE", "FROM",
3075   "FULL", "FUNCTION", "FUNCTIONS", "GLOBAL", "GRANT", "GRANTED",
3076   "GREATEST", "GROUP_P", "GROUPING", "HANDLER", "HAVING", "HEADER_P",
3077   "HOLD", "HOUR_P", "IDENTITY_P", "IF_P", "ILIKE", "IMMEDIATE",
3078   "IMMUTABLE", "IMPLICIT_P", "IMPORT_P", "IN_P", "INCLUDING", "INCREMENT",
3079   "INDEX", "INDEXES", "INHERIT", "INHERITS", "INITIALLY", "INLINE_P",
3080   "INNER_P", "INOUT", "INPUT_P", "INSENSITIVE", "INSERT", "INSTEAD",
3081   "INT_P", "INTEGER", "INTERSECT", "INTERVAL", "INTO", "INVOKER", "IS",
3082   "ISNULL", "ISOLATION", "JOIN", "KEY", "LABEL", "LANGUAGE", "LARGE_P",
3083   "LAST_P", "LATERAL_P", "LEADING", "LEAKPROOF", "LEAST", "LEFT", "LEVEL",
3084   "LIKE", "LIMIT", "LISTEN", "LOAD", "LOCAL", "LOCALTIME",
3085   "LOCALTIMESTAMP", "LOCATION", "LOCK_P", "LOCKED", "LOGGED", "MAPPING",
3086   "MATCH", "MATERIALIZED", "MAXVALUE", "METHOD", "MINUTE_P", "MINVALUE",
3087   "MODE", "MONTH_P", "MOVE", "NAME_P", "NAMES", "NATIONAL", "NATURAL",
3088   "NCHAR", "NEXT", "NO", "NONE", "NOT", "NOTHING", "NOTIFY", "NOTNULL",
3089   "NOWAIT", "NULL_P", "NULLIF", "NULLS_P", "NUMERIC", "OBJECT_P", "OF",
3090   "OFF", "OFFSET", "OIDS", "ON", "ONLY", "OPERATOR", "OPTION", "OPTIONS",
3091   "OR", "ORDER", "ORDINALITY", "OUT_P", "OUTER_P", "OVER", "OVERLAPS",
3092   "OVERLAY", "OWNED", "OWNER", "PARALLEL", "PARSER", "PARTIAL",
3093   "PARTITION", "PASSING", "PASSWORD", "PGPOOL", "PLACING", "PLANS",
3094   "POLICY", "POSITION", "PRECEDING", "PRECISION", "PRESERVE", "PREPARE",
3095   "PREPARED", "PRIMARY", "PRIOR", "PRIVILEGES", "PROCEDURAL", "PROCEDURE",
3096   "PROGRAM", "QUOTE", "RANGE", "READ", "REAL", "REASSIGN", "RECHECK",
3097   "RECURSIVE", "REF", "REFERENCES", "REFRESH", "REINDEX", "RELATIVE_P",
3098   "RELEASE", "RENAME", "REPEATABLE", "REPLACE", "REPLICA", "RESET",
3099   "RESTART", "RESTRICT", "RETURNING", "RETURNS", "REVOKE", "RIGHT", "ROLE",
3100   "ROLLBACK", "ROLLUP", "ROW", "ROWS", "RULE", "SAVEPOINT", "SCHEMA",
3101   "SCROLL", "SEARCH", "SECOND_P", "SECURITY", "SELECT", "SEQUENCE",
3102   "SEQUENCES", "SERIALIZABLE", "SERVER", "SESSION", "SESSION_USER", "SET",
3103   "SETS", "SETOF", "SHARE", "SHOW", "SIMILAR", "SIMPLE", "SKIP",
3104   "SMALLINT", "SNAPSHOT", "SOME", "SQL_P", "STABLE", "STANDALONE_P",
3105   "START", "STATEMENT", "STATISTICS", "STDIN", "STDOUT", "STORAGE",
3106   "STRICT_P", "STRIP_P", "SUBSTRING", "SYMMETRIC", "SYSID", "SYSTEM_P",
3107   "TABLE", "TABLES", "TABLESAMPLE", "TABLESPACE", "TEMP", "TEMPLATE",
3108   "TEMPORARY", "TEXT_P", "THEN", "TIME", "TIMESTAMP", "TO", "TRAILING",
3109   "TRANSACTION", "TRANSFORM", "TREAT", "TRIGGER", "TRIM", "TRUE_P",
3110   "TRUNCATE", "TRUSTED", "TYPE_P", "TYPES_P", "UNBOUNDED", "UNCOMMITTED",
3111   "UNENCRYPTED", "UNION", "UNIQUE", "UNKNOWN", "UNLISTEN", "UNLOGGED",
3112   "UNTIL", "UPDATE", "USER", "USING", "VACUUM", "VALID", "VALIDATE",
3113   "VALIDATOR", "VALUE_P", "VALUES", "VARCHAR", "VARIADIC", "VARYING",
3114   "VERBOSE", "VERSION_P", "VIEW", "VIEWS", "VOLATILE", "WHEN", "WHERE",
3115   "WHITESPACE_P", "WINDOW", "WITH", "WITHIN", "WITHOUT", "WORK", "WRAPPER",
3116   "WRITE", "XML_P", "XMLATTRIBUTES", "XMLCONCAT", "XMLELEMENT",
3117   "XMLEXISTS", "XMLFOREST", "XMLPARSE", "XMLPI", "XMLROOT", "XMLSERIALIZE",
3118   "YEAR_P", "YES_P", "ZONE", "NOT_LA", "NULLS_LA", "WITH_LA", "'<'", "'>'",
3119   "'='", "POSTFIXOP", "'+'", "'-'", "'*'", "'/'", "'%'", "'^'", "UMINUS",
3120   "'['", "']'", "'('", "')'", "'.'", "';'", "','", "':'", "$accept",
3121   "stmtblock", "stmtmulti", "stmt", "CreateRoleStmt", "opt_with",
3122   "OptRoleList", "AlterOptRoleList", "AlterOptRoleElem",
3123   "CreateOptRoleElem", "CreateUserStmt", "AlterRoleStmt",
3124   "opt_in_database", "AlterRoleSetStmt", "AlterUserStmt",
3125   "AlterUserSetStmt", "DropRoleStmt", "DropUserStmt", "CreateGroupStmt",
3126   "AlterGroupStmt", "add_drop", "DropGroupStmt", "CreateSchemaStmt",
3127   "OptSchemaName", "OptSchemaEltList", "schema_stmt", "VariableSetStmt",
3128   "set_rest", "generic_set", "set_rest_more", "var_name", "var_list",
3129   "var_value", "iso_level", "opt_boolean_or_string", "zone_value",
3130   "opt_encoding", "NonReservedWord_or_Sconst", "VariableResetStmt",
3131   "reset_rest", "generic_reset", "SetResetClause",
3132   "FunctionSetResetClause", "VariableShowStmt", "ConstraintsSetStmt",
3133   "constraints_set_list", "constraints_set_mode", "CheckPointStmt",
3134   "DiscardStmt", "AlterTableStmt", "alter_table_cmds", "alter_table_cmd",
3135   "alter_column_default", "opt_drop_behavior", "opt_collate_clause",
3136   "alter_using", "replica_identity", "reloptions", "opt_reloptions",
3137   "reloption_list", "reloption_elem", "AlterCompositeTypeStmt",
3138   "alter_type_cmds", "alter_type_cmd", "ClosePortalStmt", "CopyStmt",
3139   "copy_from", "opt_program", "copy_file_name", "copy_options",
3140   "copy_opt_list", "copy_opt_item", "opt_binary", "opt_oids",
3141   "copy_delimiter", "opt_using", "copy_generic_opt_list",
3142   "copy_generic_opt_elem", "copy_generic_opt_arg",
3143   "copy_generic_opt_arg_list", "copy_generic_opt_arg_list_item",
3144   "CreateStmt", "OptTemp", "OptTableElementList",
3145   "OptTypedTableElementList", "TableElementList", "TypedTableElementList",
3146   "TableElement", "TypedTableElement", "columnDef", "columnOptions",
3147   "ColQualList", "ColConstraint", "ColConstraintElem", "ConstraintAttr",
3148   "TableLikeClause", "TableLikeOptionList", "TableLikeOption",
3149   "TableConstraint", "ConstraintElem", "opt_no_inherit", "opt_column_list",
3150   "columnList", "columnElem", "key_match", "ExclusionConstraintList",
3151   "ExclusionConstraintElem", "ExclusionWhereClause", "key_actions",
3152   "key_update", "key_delete", "key_action", "OptInherit", "OptWith",
3153   "OnCommitOption", "OptTableSpace", "OptConsTableSpace", "ExistingIndex",
3154   "CreateAsStmt", "create_as_target", "opt_with_data", "CreateMatViewStmt",
3155   "create_mv_target", "OptNoLog", "RefreshMatViewStmt", "CreateSeqStmt",
3156   "AlterSeqStmt", "OptSeqOptList", "SeqOptList", "SeqOptElem", "opt_by",
3157   "NumericOnly", "NumericOnly_list", "CreatePLangStmt", "opt_trusted",
3158   "handler_name", "opt_inline_handler", "validator_clause",
3159   "opt_validator", "DropPLangStmt", "opt_procedural",
3160   "CreateTableSpaceStmt", "OptTableSpaceOwner", "DropTableSpaceStmt",
3161   "CreateExtensionStmt", "create_extension_opt_list",
3162   "create_extension_opt_item", "AlterExtensionStmt",
3163   "alter_extension_opt_list", "alter_extension_opt_item",
3164   "AlterExtensionContentsStmt", "CreateFdwStmt", "fdw_option",
3165   "fdw_options", "opt_fdw_options", "DropFdwStmt", "AlterFdwStmt",
3166   "create_generic_options", "generic_option_list", "alter_generic_options",
3167   "alter_generic_option_list", "alter_generic_option_elem",
3168   "generic_option_elem", "generic_option_name", "generic_option_arg",
3169   "CreateForeignServerStmt", "opt_type", "foreign_server_version",
3170   "opt_foreign_server_version", "DropForeignServerStmt",
3171   "AlterForeignServerStmt", "CreateForeignTableStmt",
3172   "AlterForeignTableStmt", "ImportForeignSchemaStmt",
3173   "import_qualification_type", "import_qualification",
3174   "CreateUserMappingStmt", "auth_ident", "DropUserMappingStmt",
3175   "AlterUserMappingStmt", "CreatePolicyStmt", "AlterPolicyStmt",
3176   "DropPolicyStmt", "RowSecurityOptionalExpr",
3177   "RowSecurityOptionalWithCheck", "RowSecurityDefaultToRole",
3178   "RowSecurityOptionalToRole", "RowSecurityDefaultForCmd",
3179   "row_security_cmd", "CreateAmStmt", "CreateTrigStmt",
3180   "TriggerActionTime", "TriggerEvents", "TriggerOneEvent",
3181   "TriggerForSpec", "TriggerForOptEach", "TriggerForType", "TriggerWhen",
3182   "TriggerFuncArgs", "TriggerFuncArg", "OptConstrFromTable",
3183   "ConstraintAttributeSpec", "ConstraintAttributeElem", "DropTrigStmt",
3184   "CreateEventTrigStmt", "event_trigger_when_list",
3185   "event_trigger_when_item", "event_trigger_value_list",
3186   "AlterEventTrigStmt", "enable_trigger", "CreateAssertStmt",
3187   "DropAssertStmt", "DefineStmt", "definition", "def_list", "def_elem",
3188   "def_arg", "old_aggr_definition", "old_aggr_list", "old_aggr_elem",
3189   "opt_enum_val_list", "enum_val_list", "AlterEnumStmt",
3190   "opt_if_not_exists", "CreateOpClassStmt", "opclass_item_list",
3191   "opclass_item", "opt_default", "opt_opfamily", "opclass_purpose",
3192   "opt_recheck", "CreateOpFamilyStmt", "AlterOpFamilyStmt",
3193   "opclass_drop_list", "opclass_drop", "DropOpClassStmt",
3194   "DropOpFamilyStmt", "DropOwnedStmt", "ReassignOwnedStmt", "DropStmt",
3195   "drop_type", "any_name_list", "any_name", "attrs", "type_name_list",
3196   "TruncateStmt", "opt_restart_seqs", "CommentStmt", "comment_type",
3197   "comment_text", "SecLabelStmt", "opt_provider", "security_label_type",
3198   "security_label", "FetchStmt", "fetch_args", "from_in", "opt_from_in",
3199   "GrantStmt", "RevokeStmt", "privileges", "privilege_list", "privilege",
3200   "privilege_target", "grantee_list", "grantee", "opt_grant_grant_option",
3201   "function_with_argtypes_list", "function_with_argtypes", "GrantRoleStmt",
3202   "RevokeRoleStmt", "opt_grant_admin_option", "opt_granted_by",
3203   "AlterDefaultPrivilegesStmt", "DefACLOptionList", "DefACLOption",
3204   "DefACLAction", "defacl_privilege_target", "IndexStmt", "opt_unique",
3205   "opt_concurrently", "opt_index_name", "access_method_clause",
3206   "index_params", "index_elem", "opt_collate", "opt_class", "opt_asc_desc",
3207   "opt_nulls_order", "CreateFunctionStmt", "opt_or_replace", "func_args",
3208   "func_args_list", "func_args_with_defaults",
3209   "func_args_with_defaults_list", "func_arg", "arg_class", "param_name",
3210   "func_return", "func_type", "func_arg_with_default", "aggr_arg",
3211   "aggr_args", "aggr_args_list", "createfunc_opt_list",
3212   "common_func_opt_item", "createfunc_opt_item", "func_as",
3213   "transform_type_list", "opt_definition", "table_func_column",
3214   "table_func_column_list", "AlterFunctionStmt", "alterfunc_opt_list",
3215   "opt_restrict", "RemoveFuncStmt", "RemoveAggrStmt", "RemoveOperStmt",
3216   "oper_argtypes", "any_operator", "DoStmt", "dostmt_opt_list",
3217   "dostmt_opt_item", "CreateCastStmt", "cast_context", "DropCastStmt",
3218   "opt_if_exists", "CreateTransformStmt", "transform_element_list",
3219   "DropTransformStmt", "ReindexStmt", "reindex_target_type",
3220   "reindex_target_multitable", "reindex_option_list",
3221   "reindex_option_elem", "AlterTblSpcStmt", "RenameStmt", "opt_column",
3222   "opt_set_data", "AlterObjectDependsStmt", "AlterObjectSchemaStmt",
3223   "AlterOperatorStmt", "operator_def_list", "operator_def_elem",
3224   "AlterOwnerStmt", "RuleStmt", "RuleActionList", "RuleActionMulti",
3225   "RuleActionStmt", "RuleActionStmtOrEmpty", "event", "opt_instead",
3226   "DropRuleStmt", "NotifyStmt", "notify_payload", "ListenStmt",
3227   "UnlistenStmt", "TransactionStmt", "opt_transaction",
3228   "transaction_mode_item", "transaction_mode_list",
3229   "transaction_mode_list_or_empty", "ViewStmt", "opt_check_option",
3230   "LoadStmt", "CreatedbStmt", "createdb_opt_list", "createdb_opt_items",
3231   "createdb_opt_item", "createdb_opt_name", "opt_equal",
3232   "AlterDatabaseStmt", "AlterDatabaseSetStmt", "DropdbStmt",
3233   "AlterSystemStmt", "CreateDomainStmt", "AlterDomainStmt", "opt_as",
3234   "AlterTSDictionaryStmt", "AlterTSConfigurationStmt", "any_with",
3235   "CreateConversionStmt", "ClusterStmt", "cluster_index_specification",
3236   "VacuumStmt", "vacuum_option_list", "vacuum_option_elem", "AnalyzeStmt",
3237   "analyze_keyword", "opt_verbose", "opt_full", "opt_freeze",
3238   "opt_name_list", "ExplainStmt", "ExplainableStmt", "explain_option_list",
3239   "explain_option_elem", "explain_option_name", "explain_option_arg",
3240   "PrepareStmt", "prep_type_clause", "PreparableStmt", "ExecuteStmt",
3241   "execute_param_clause", "DeallocateStmt", "InsertStmt", "insert_target",
3242   "insert_rest", "insert_column_list", "insert_column_item",
3243   "opt_on_conflict", "opt_conf_expr", "returning_clause", "DeleteStmt",
3244   "using_clause", "LockStmt", "opt_lock", "lock_type", "opt_nowait",
3245   "opt_nowait_or_skip", "UpdateStmt", "set_clause_list", "set_clause",
3246   "single_set_clause", "multiple_set_clause", "set_target",
3247   "set_target_list", "DeclareCursorStmt", "cursor_name", "cursor_options",
3248   "opt_hold", "SelectStmt", "select_with_parens", "select_no_parens",
3249   "select_clause", "simple_select", "with_clause", "cte_list",
3250   "common_table_expr", "opt_with_clause", "into_clause",
3251   "OptTempTableName", "opt_table", "all_or_distinct", "distinct_clause",
3252   "opt_all_clause", "opt_sort_clause", "sort_clause", "sortby_list",
3253   "sortby", "select_limit", "opt_select_limit", "limit_clause",
3254   "offset_clause", "select_limit_value", "select_offset_value",
3255   "opt_select_fetch_first_value", "select_offset_value2", "row_or_rows",
3256   "first_or_next", "group_clause", "group_by_list", "group_by_item",
3257   "empty_grouping_set", "rollup_clause", "cube_clause",
3258   "grouping_sets_clause", "having_clause", "for_locking_clause",
3259   "opt_for_locking_clause", "for_locking_items", "for_locking_item",
3260   "for_locking_strength", "locked_rels_list", "values_clause",
3261   "from_clause", "from_list", "table_ref", "joined_table", "alias_clause",
3262   "opt_alias_clause", "func_alias_clause", "join_type", "join_outer",
3263   "join_qual", "relation_expr", "relation_expr_list",
3264   "relation_expr_opt_alias", "tablesample_clause", "opt_repeatable_clause",
3265   "func_table", "rowsfrom_item", "rowsfrom_list", "opt_col_def_list",
3266   "opt_ordinality", "where_clause", "where_or_current_clause",
3267   "OptTableFuncElementList", "TableFuncElementList", "TableFuncElement",
3268   "Typename", "opt_array_bounds", "SimpleTypename", "ConstTypename",
3269   "GenericType", "opt_type_modifiers", "Numeric", "opt_float", "Bit",
3270   "ConstBit", "BitWithLength", "BitWithoutLength", "Character",
3271   "ConstCharacter", "CharacterWithLength", "CharacterWithoutLength",
3272   "character", "opt_varying", "opt_charset", "ConstDatetime",
3273   "ConstInterval", "opt_timezone", "opt_interval", "interval_second",
3274   "a_expr", "b_expr", "c_expr", "func_application", "func_expr",
3275   "func_expr_windowless", "func_expr_common_subexpr", "xml_root_version",
3276   "opt_xml_root_standalone", "xml_attributes", "xml_attribute_list",
3277   "xml_attribute_el", "document_or_content", "xml_whitespace_option",
3278   "xmlexists_argument", "within_group_clause", "filter_clause",
3279   "window_clause", "window_definition_list", "window_definition",
3280   "over_clause", "window_specification", "opt_existing_window_name",
3281   "opt_partition_clause", "opt_frame_clause", "frame_extent",
3282   "frame_bound", "row", "explicit_row", "implicit_row", "sub_type",
3283   "all_Op", "MathOp", "qual_Op", "qual_all_Op", "subquery_Op", "expr_list",
3284   "func_arg_list", "func_arg_expr", "type_list", "array_expr",
3285   "array_expr_list", "extract_list", "extract_arg", "overlay_list",
3286   "overlay_placing", "position_list", "substr_list", "substr_from",
3287   "substr_for", "trim_list", "in_expr", "case_expr", "when_clause_list",
3288   "when_clause", "case_default", "case_arg", "columnref", "indirection_el",
3289   "opt_slice_bound", "indirection", "opt_indirection", "opt_asymmetric",
3290   "ctext_expr", "ctext_expr_list", "ctext_row", "opt_target_list",
3291   "target_list", "target_el", "qualified_name_list", "qualified_name",
3292   "name_list", "name", "database_name", "access_method", "attr_name",
3293   "index_name", "file_name", "func_name", "AexprConst", "Iconst", "Sconst",
3294   "SignedIconst", "RoleId", "RoleSpec", "role_list", "ColId",
3295   "type_function_name", "NonReservedWord", "ColLabel",
3296   "unreserved_keyword", "col_name_keyword", "type_func_name_keyword",
3297   "reserved_keyword", YY_NULL
3298 };
3299 #endif
3300 
3301 # ifdef YYPRINT
3302 /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
3303    token YYLEX-NUM.  */
3304 static const yytype_uint16 yytoknum[] =
3305 {
3306        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
3307      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
3308      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
3309      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
3310      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
3311      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
3312      315,   316,   317,   318,   319,   320,   321,   322,   323,   324,
3313      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
3314      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
3315      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
3316      355,   356,   357,   358,   359,   360,   361,   362,   363,   364,
3317      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
3318      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
3319      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
3320      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
3321      405,   406,   407,   408,   409,   410,   411,   412,   413,   414,
3322      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
3323      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
3324      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
3325      445,   446,   447,   448,   449,   450,   451,   452,   453,   454,
3326      455,   456,   457,   458,   459,   460,   461,   462,   463,   464,
3327      465,   466,   467,   468,   469,   470,   471,   472,   473,   474,
3328      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
3329      485,   486,   487,   488,   489,   490,   491,   492,   493,   494,
3330      495,   496,   497,   498,   499,   500,   501,   502,   503,   504,
3331      505,   506,   507,   508,   509,   510,   511,   512,   513,   514,
3332      515,   516,   517,   518,   519,   520,   521,   522,   523,   524,
3333      525,   526,   527,   528,   529,   530,   531,   532,   533,   534,
3334      535,   536,   537,   538,   539,   540,   541,   542,   543,   544,
3335      545,   546,   547,   548,   549,   550,   551,   552,   553,   554,
3336      555,   556,   557,   558,   559,   560,   561,   562,   563,   564,
3337      565,   566,   567,   568,   569,   570,   571,   572,   573,   574,
3338      575,   576,   577,   578,   579,   580,   581,   582,   583,   584,
3339      585,   586,   587,   588,   589,   590,   591,   592,   593,   594,
3340      595,   596,   597,   598,   599,   600,   601,   602,   603,   604,
3341      605,   606,   607,   608,   609,   610,   611,   612,   613,   614,
3342      615,   616,   617,   618,   619,   620,   621,   622,   623,   624,
3343      625,   626,   627,   628,   629,   630,   631,   632,   633,   634,
3344      635,   636,   637,   638,   639,   640,   641,   642,   643,   644,
3345      645,   646,   647,   648,   649,   650,   651,   652,   653,   654,
3346      655,   656,   657,   658,   659,   660,   661,   662,   663,   664,
3347      665,   666,   667,   668,   669,   670,   671,   672,   673,   674,
3348      675,   676,   677,   678,   679,   680,   681,   682,   683,   684,
3349      685,   686,   687,   688,   689,   690,   691,   692,   693,   694,
3350      695,    60,    62,    61,   696,    43,    45,    42,    47,    37,
3351       94,   697,    91,    93,    40,    41,    46,    59,    44,    58
3352 };
3353 # endif
3354 
3355 /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
3356 static const yytype_uint16 yyr1[] =
3357 {
3358        0,   460,   461,   462,   462,   463,   463,   463,   463,   463,
3359      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3360      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3361      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3362      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3363      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3364      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3365      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3366      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3367      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3368      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3369      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3370      463,   463,   463,   463,   463,   463,   463,   463,   463,   463,
3371      463,   464,   465,   465,   465,   466,   466,   467,   467,   468,
3372      468,   468,   468,   468,   468,   468,   468,   468,   469,   469,
3373      469,   469,   469,   469,   470,   471,   472,   472,   473,   473,
3374      474,   475,   476,   476,   477,   477,   478,   479,   480,   480,
3375      481,   481,   482,   482,   482,   482,   483,   483,   484,   484,
3376      485,   485,   485,   485,   485,   485,   486,   486,   486,   486,
3377      487,   487,   487,   488,   488,   488,   488,   489,   489,   489,
3378      489,   489,   489,   489,   489,   489,   489,   489,   490,   490,
3379      491,   491,   492,   492,   493,   493,   493,   493,   494,   494,
3380      494,   494,   495,   495,   495,   495,   495,   495,   495,   496,
3381      496,   496,   497,   497,   498,   498,   499,   499,   499,   499,
3382      500,   500,   501,   501,   502,   502,   503,   503,   503,   503,
3383      503,   503,   503,   504,   505,   505,   506,   506,   507,   508,
3384      508,   508,   508,   508,   509,   509,   509,   509,   509,   509,
3385      509,   509,   509,   509,   509,   509,   509,   509,   509,   509,
3386      510,   510,   511,   511,   511,   511,   511,   511,   511,   511,
3387      511,   511,   511,   511,   511,   511,   511,   511,   511,   511,
3388      511,   511,   511,   511,   511,   511,   511,   511,   511,   511,
3389      511,   511,   511,   511,   511,   511,   511,   511,   511,   511,
3390      511,   511,   511,   511,   511,   511,   511,   511,   511,   511,
3391      511,   511,   511,   511,   512,   512,   513,   513,   513,   514,
3392      514,   515,   515,   516,   516,   516,   516,   517,   518,   518,
3393      519,   519,   520,   520,   520,   520,   521,   522,   522,   523,
3394      523,   523,   523,   524,   524,   525,   525,   526,   526,   527,
3395      527,   528,   528,   528,   529,   529,   530,   530,   531,   531,
3396      531,   531,   531,   531,   531,   531,   531,   531,   531,   531,
3397      531,   531,   532,   532,   533,   533,   534,   534,   535,   535,
3398      536,   536,   537,   538,   538,   538,   538,   538,   539,   539,
3399      540,   541,   541,   541,   541,   542,   542,   542,   542,   542,
3400      542,   542,   542,   543,   543,   544,   544,   545,   545,   546,
3401      546,   547,   547,   547,   548,   548,   549,   550,   551,   551,
3402      552,   552,   552,   552,   553,   553,   553,   553,   553,   553,
3403      553,   554,   554,   554,   554,   555,   556,   556,   556,   557,
3404      557,   557,   557,   557,   557,   558,   558,   559,   559,   559,
3405      559,   559,   559,   559,   560,   560,   561,   561,   562,   562,
3406      563,   564,   564,   564,   564,   565,   565,   566,   566,   567,
3407      567,   568,   568,   568,   568,   568,   569,   570,   571,   571,
3408      571,   571,   571,   572,   572,   573,   573,   573,   573,   574,
3409      574,   574,   574,   575,   575,   576,   576,   577,   578,   578,
3410      579,   580,   580,   580,   581,   581,   582,   583,   583,   584,
3411      585,   585,   586,   586,   587,   587,   588,   588,   589,   589,
3412      589,   589,   589,   589,   589,   589,   589,   589,   589,   589,
3413      590,   590,   591,   591,   591,   592,   592,   593,   593,   594,
3414      594,   595,   595,   596,   596,   597,   597,   598,   598,   599,
3415      599,   600,   600,   601,   602,   602,   603,   603,   604,   604,
3416      605,   605,   606,   606,   606,   606,   607,   608,   608,   609,
3417      610,   610,   610,   610,   610,   610,   610,   610,   610,   610,
3418      610,   610,   610,   610,   610,   610,   610,   610,   610,   610,
3419      610,   610,   610,   610,   610,   611,   612,   612,   612,   612,
3420      613,   613,   614,   614,   615,   615,   616,   616,   617,   617,
3421      618,   618,   619,   620,   620,   621,   621,   621,   621,   622,
3422      623,   624,   625,   626,   626,   627,   627,   628,   628,   629,
3423      629,   630,   630,   630,   631,   631,   632,   632,   633,   634,
3424      634,   635,   635,   636,   637,   637,   638,   638,   639,   640,
3425      641,   642,   642,   643,   643,   644,   644,   645,   645,   646,
3426      646,   647,   647,   648,   648,   648,   648,   648,   649,   650,
3427      650,   651,   651,   651,   652,   652,   653,   653,   653,   653,
3428      653,   654,   654,   655,   655,   656,   656,   657,   657,   658,
3429      658,   658,   659,   659,   659,   659,   660,   660,   661,   661,
3430      662,   662,   662,   662,   662,   662,   663,   663,   664,   664,
3431      665,   665,   666,   667,   667,   668,   669,   669,   669,   669,
3432      670,   671,   672,   672,   672,   672,   672,   672,   672,   672,
3433      672,   672,   672,   672,   672,   672,   673,   674,   674,   675,
3434      675,   676,   676,   676,   676,   676,   677,   678,   678,   679,
3435      680,   680,   681,   681,   682,   682,   682,   683,   683,   684,
3436      685,   685,   686,   686,   686,   686,   686,   687,   687,   688,
3437      688,   689,   689,   689,   690,   690,   691,   692,   692,   693,
3438      693,   694,   694,   695,   695,   696,   696,   697,   698,   699,
3439      699,   699,   699,   699,   699,   699,   699,   700,   700,   700,
3440      700,   700,   700,   700,   700,   700,   700,   700,   700,   700,
3441      700,   700,   700,   701,   701,   702,   702,   703,   703,   704,
3442      704,   705,   706,   706,   706,   707,   707,   707,   707,   707,
3443      707,   707,   707,   707,   707,   707,   707,   707,   707,   707,
3444      707,   707,   707,   708,   708,   708,   708,   708,   708,   708,
3445      708,   708,   708,   708,   708,   708,   708,   708,   708,   708,
3446      708,   708,   708,   708,   708,   709,   709,   710,   710,   710,
3447      710,   710,   710,   710,   711,   711,   712,   712,   712,   712,
3448      712,   712,   712,   712,   712,   712,   712,   713,   713,   714,
3449      714,   715,   715,   715,   715,   715,   715,   715,   715,   715,
3450      715,   715,   715,   715,   715,   715,   715,   716,   716,   717,
3451      717,   718,   719,   719,   720,   720,   720,   720,   720,   721,
3452      721,   722,   722,   722,   722,   723,   723,   723,   723,   723,
3453      723,   723,   723,   723,   723,   723,   723,   723,   723,   723,
3454      723,   724,   724,   725,   725,   726,   726,   727,   727,   728,
3455      729,   730,   730,   731,   731,   732,   732,   733,   734,   734,
3456      735,   735,   735,   736,   736,   736,   737,   737,   737,   737,
3457      738,   738,   739,   739,   740,   740,   741,   741,   742,   742,
3458      743,   743,   744,   744,   744,   745,   745,   746,   746,   747,
3459      747,   747,   748,   748,   748,   749,   749,   749,   750,   750,
3460      751,   751,   752,   752,   753,   753,   754,   754,   755,   755,
3461      755,   755,   755,   756,   756,   756,   756,   756,   757,   758,
3462      759,   759,   759,   760,   760,   760,   761,   762,   762,   762,
3463      762,   763,   763,   764,   764,   765,   765,   765,   765,   765,
3464      765,   765,   765,   765,   765,   765,   765,   765,   765,   765,
3465      765,   766,   766,   766,   766,   766,   767,   767,   768,   768,
3466      769,   769,   770,   771,   771,   772,   773,   773,   774,   774,
3467      775,   775,   776,   776,   777,   777,   778,   778,   778,   778,
3468      779,   779,   780,   781,   781,   782,   782,   783,   783,   783,
3469      784,   784,   784,   785,   786,   786,   787,   788,   788,   788,
3470      788,   789,   790,   790,   790,   790,   791,   791,   792,   792,
3471      792,   793,   793,   794,   795,   795,   796,   796,   796,   796,
3472      796,   796,   796,   796,   796,   796,   796,   796,   796,   796,
3473      796,   796,   796,   796,   796,   796,   796,   796,   796,   796,
3474      796,   796,   796,   796,   796,   796,   796,   796,   796,   796,
3475      796,   796,   796,   796,   796,   796,   796,   796,   796,   796,
3476      796,   796,   796,   796,   797,   797,   798,   798,   799,   799,
3477      799,   799,   800,   800,   800,   800,   800,   800,   800,   800,
3478      800,   800,   800,   800,   800,   800,   800,   800,   800,   800,
3479      800,   800,   800,   800,   800,   800,   801,   802,   802,   803,
3480      803,   804,   804,   804,   804,   804,   804,   804,   804,   804,
3481      804,   804,   804,   804,   804,   804,   804,   804,   804,   804,
3482      805,   806,   806,   806,   807,   807,   808,   808,   808,   808,
3483      808,   809,   809,   810,   810,   810,   810,   811,   811,   811,
3484      812,   812,   813,   814,   814,   815,   816,   816,   817,   817,
3485      817,   817,   817,   817,   817,   817,   817,   817,   817,   817,
3486      817,   817,   818,   818,   818,   819,   819,   819,   819,   819,
3487      820,   820,   820,   821,   821,   822,   822,   822,   822,   823,
3488      823,   823,   823,   824,   825,   826,   826,   827,   827,   828,
3489      828,   828,   829,   829,   829,   829,   829,   829,   829,   830,
3490      830,   831,   831,   831,   832,   833,   833,   834,   834,   835,
3491      836,   836,   836,   836,   836,   836,   836,   837,   837,   838,
3492      839,   839,   839,   839,   839,   839,   840,   840,   841,   842,
3493      842,   842,   843,   843,   844,   844,   844,   844,   844,   845,
3494      845,   846,   846,   846,   846,   846,   847,   847,   848,   848,
3495      849,   849,   850,   850,   851,   851,   852,   852,   853,   853,
3496      853,   853,   854,   854,   854,   854,   854,   854,   854,   854,
3497      854,   855,   855,   856,   857,   857,   858,   858,   858,   859,
3498      860,   860,   861,   861,   861,   861,   862,   862,   863,   863,
3499      864,   864,   864,   864,   865,   866,   866,   867,   867,   867,
3500      868,   868,   869,   870,   870,   870,   871,   871,   871,   872,
3501      872,   873,   874,   874,   875,   876,   876,   877,   877,   877,
3502      877,   877,   877,   877,   877,   878,   878,   879,   879,   879,
3503      880,   881,   881,   882,   882,   883,   884,   884,   885,   886,
3504      886,   887,   888,   889,   889,   889,   889,   889,   890,   890,
3505      890,   891,   891,   892,   892,   893,   893,   893,   893,   893,
3506      893,   893,   893,   894,   894,   895,   895,   895,   895,   895,
3507      895,   895,   896,   896,   896,   897,   897,   898,   899,   899,
3508      900,   900,   901,   901,   901,   901,   901,   901,   901,   901,
3509      901,   902,   902,   903,   903,   903,   904,   904,   905,   905,
3510      906,   906,   907,   908,   908,   909,   909,   910,   910,   910,
3511      910,   911,   911,   912,   912,   912,   913,   913,   914,   914,
3512      915,   916,   916,   916,   917,   918,   918,   919,   919,   920,
3513      920,   921,   921,   922,   922,   922,   922,   922,   923,   924,
3514      925,   926,   927,   927,   928,   928,   929,   929,   930,   930,
3515      931,   932,   932,   932,   932,   933,   933,   934,   934,   935,
3516      935,   936,   936,   937,   937,   937,   937,   937,   937,   937,
3517      937,   938,   938,   938,   938,   938,   938,   939,   939,   939,
3518      939,   940,   940,   941,   941,   941,   941,   941,   942,   942,
3519      942,   942,   943,   943,   944,   944,   945,   945,   945,   945,
3520      946,   946,   947,   947,   947,   948,   949,   949,   950,   950,
3521      951,   952,   952,   953,   953,   954,   954,   955,   955,   956,
3522      956,   956,   957,   957,   958,   958,   959,   960,   960,   960,
3523      960,   960,   960,   961,   961,   961,   962,   962,   962,   962,
3524      962,   962,   962,   963,   963,   963,   963,   964,   964,   965,
3525      965,   966,   966,   966,   966,   966,   966,   966,   966,   966,
3526      966,   966,   967,   967,   968,   968,   969,   969,   970,   971,
3527      972,   972,   973,   973,   974,   975,   976,   976,   976,   976,
3528      976,   976,   977,   977,   978,   978,   979,   979,   979,   979,
3529      980,   981,   981,   981,   982,   982,   982,   982,   982,   982,
3530      982,   982,   982,   982,   982,   982,   982,   982,   983,   983,
3531      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3532      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3533      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3534      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3535      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3536      984,   984,   984,   984,   984,   984,   984,   984,   984,   984,
3537      984,   984,   984,   985,   985,   985,   985,   985,   985,   985,
3538      985,   985,   985,   985,   985,   985,   985,   985,   985,   985,
3539      985,   985,   985,   985,   985,   985,   985,   985,   986,   986,
3540      986,   986,   986,   986,   986,   986,   986,   986,   986,   986,
3541      986,   986,   987,   987,   987,   987,   987,   987,   987,   988,
3542      988,   989,   989,   990,   990,   990,   990,   990,   990,   990,
3543      990,   990,   990,   990,   990,   990,   990,   990,   990,   990,
3544      990,   990,   990,   990,   990,   990,   990,   990,   990,   990,
3545      990,   990,   990,   990,   990,   990,   990,   990,   990,   990,
3546      990,   990,   990,   990,   990,   991,   991,   992,   992,   992,
3547      992,   993,   994,   994,   995,   995,   996,   996,   997,   997,
3548      997,   998,   998,   998,   998,   999,   999,  1000,  1000,  1001,
3549     1001,  1002,  1002,  1003,  1004,  1004,  1004,  1005,  1006,  1006,
3550     1007,  1007,  1008,  1008,  1008,  1009,  1009,  1010,  1010,  1010,
3551     1010,  1010,  1011,  1011,  1011,  1012,  1012,  1013,  1014,  1014,
3552     1014,  1015,  1015,  1016,  1016,  1016,  1016,  1016,  1016,  1016,
3553     1016,  1016,  1016,  1016,  1016,  1017,  1017,  1018,  1018,  1019,
3554     1019,  1019,  1019,  1019,  1019,  1020,  1020,  1021,  1021,  1022,
3555     1022,  1022,  1023,  1023,  1024,  1024,  1024,  1025,  1025,  1026,
3556     1026,  1027,  1027,  1027,  1027,  1027,  1027,  1027,  1027,  1028,
3557     1028,  1029,  1030,  1030,  1031,  1031,  1031,  1031,  1031,  1031,
3558     1032,  1033,  1034,  1034,  1034,  1035,  1035,  1036,  1037,  1037,
3559     1038,  1039,  1039,  1040,  1040,  1041,  1041,  1042,  1042,  1042,
3560     1042,  1043,  1043,  1044,  1044,  1045,  1045,  1046,  1046,  1047,
3561     1047,  1048,  1048,  1049,  1050,  1050,  1051,  1051,  1052,  1052,
3562     1052,  1052,  1053,  1053,  1054,  1054,  1055,  1055,  1056,  1057,
3563     1058,  1059,  1060,  1061,  1062,  1062,  1063,  1063,  1063,  1063,
3564     1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1063,  1064,
3565     1065,  1066,  1066,  1066,  1067,  1068,  1068,  1068,  1069,  1069,
3566     1070,  1070,  1070,  1071,  1071,  1071,  1072,  1072,  1072,  1072,
3567     1073,  1073,  1073,  1073,  1073,  1074,  1074,  1074,  1074,  1074,
3568     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3569     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3570     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3571     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3572     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3573     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3574     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3575     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3576     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3577     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3578     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3579     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3580     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3581     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3582     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3583     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3584     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3585     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3586     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3587     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3588     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3589     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3590     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3591     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3592     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3593     1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,  1074,
3594     1074,  1074,  1074,  1074,  1074,  1074,  1075,  1075,  1075,  1075,
3595     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
3596     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
3597     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
3598     1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,  1075,
3599     1075,  1075,  1075,  1075,  1076,  1076,  1076,  1076,  1076,  1076,
3600     1076,  1076,  1076,  1076,  1076,  1076,  1076,  1076,  1076,  1076,
3601     1076,  1076,  1076,  1076,  1076,  1076,  1076,  1077,  1077,  1077,
3602     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3603     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3604     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3605     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3606     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3607     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3608     1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,  1077,
3609     1077,  1077,  1077,  1077
3610 };
3611 
3612 /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
3613 static const yytype_uint8 yyr2[] =
3614 {
3615        0,     2,     1,     3,     1,     1,     1,     1,     1,     1,
3616        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3617        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3618        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3619        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3620        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3621        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3622        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3623        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3624        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3625        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3626        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3627        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3628        0,     5,     1,     1,     0,     2,     0,     2,     0,     2,
3629        2,     3,     3,     1,     3,     3,     2,     1,     1,     2,
3630        2,     2,     3,     3,     5,     5,     0,     3,     5,     5,
3631        5,     4,     3,     5,     3,     5,     5,     6,     1,     1,
3632        3,     5,     6,     4,     9,     7,     1,     0,     2,     0,
3633        1,     1,     1,     1,     1,     1,     3,     2,     3,     3,
3634        2,     5,     1,     3,     3,     3,     3,     1,     3,     3,
3635        2,     2,     2,     2,     3,     3,     3,     3,     1,     3,
3636        1,     3,     1,     1,     2,     2,     2,     1,     1,     1,
3637        1,     1,     1,     1,     3,     5,     1,     1,     1,     1,
3638        1,     0,     1,     1,     2,     3,     1,     2,     3,     2,
3639        1,     1,     2,     1,     2,     1,     3,     3,     2,     3,
3640        4,     3,     2,     4,     1,     1,     1,     1,     1,     2,
3641        2,     2,     2,     2,     4,     6,    10,    13,     4,     6,
3642       10,    13,     4,     6,     4,     6,     5,     7,    11,    14,
3643        1,     3,     2,     5,     3,     6,     4,     6,     6,     6,
3644        5,     5,     6,     6,     4,     8,     4,     2,     4,     3,
3645        6,     4,     3,     3,     3,     3,     2,     2,     3,     4,
3646        4,     3,     3,     3,     3,     3,     3,     4,     4,     3,
3647        2,     3,     2,     2,     3,     3,     2,     2,     3,     4,
3648        4,     4,     5,     1,     3,     2,     1,     1,     0,     2,
3649        0,     2,     0,     1,     1,     1,     3,     3,     2,     0,
3650        1,     3,     3,     1,     5,     3,     4,     1,     3,     4,
3651        6,     4,     8,     2,     2,    11,     9,     1,     1,     1,
3652        0,     1,     1,     1,     1,     3,     2,     0,     1,     1,
3653        1,     3,     3,     1,     1,     3,     3,     3,     3,     4,
3654        3,     2,     1,     0,     2,     0,     3,     0,     1,     0,
3655        1,     3,     2,     1,     1,     1,     3,     0,     1,     3,
3656        1,    11,    14,    10,    13,     1,     1,     2,     2,     2,
3657        2,     1,     0,     1,     0,     3,     0,     1,     3,     1,
3658        3,     1,     1,     1,     1,     1,     4,     4,     2,     0,
3659        3,     1,     1,     2,     2,     1,     3,     4,     5,     2,
3660        5,     1,     2,     2,     2,     3,     3,     3,     0,     1,
3661        1,     1,     1,     1,     1,     3,     1,     5,     7,     3,
3662        8,     4,     9,    11,     2,     0,     3,     0,     1,     3,
3663        1,     2,     2,     2,     0,     1,     3,     3,     6,     4,
3664        0,     1,     1,     2,     2,     0,     3,     3,     2,     1,
3665        1,     2,     2,     4,     0,     2,     2,     2,     0,     3,
3666        4,     4,     0,     2,     0,     4,     0,     3,     7,    10,
3667        5,     2,     3,     0,     8,    11,     4,     1,     0,     6,
3668        5,     8,     4,     6,     1,     0,     1,     2,     2,     1,
3669        2,     3,     2,     2,     2,     2,     3,     3,     1,     3,
3670        1,     0,     1,     2,     1,     1,     3,     6,    10,     1,
3671        0,     1,     2,     2,     0,     2,     2,     1,     0,     5,
3672        7,     1,     0,     7,     2,     0,     3,     5,     5,     8,
3673        2,     0,     2,     2,     2,     1,     5,     2,     0,     2,
3674        7,    10,     6,     6,     6,     6,     7,     7,     9,     9,
3675        6,     7,     6,     8,     8,     8,     8,     6,     6,     7,
3676        7,     8,     6,     9,     6,     7,     2,     2,     2,     2,
3677        1,     2,     1,     0,     6,     8,     7,     6,     4,     0,
3678        1,     3,     4,     1,     3,     1,     2,     2,     2,     2,
3679        1,     1,    10,     2,     0,     2,     2,     1,     0,     4,
3680        6,     5,     4,     4,    11,    14,     5,     7,    11,     2,
3681        1,     4,     0,     8,     1,     1,     7,     9,     8,     9,
3682        8,     6,     8,     4,     0,     5,     0,     2,     0,     2,
3683        0,     2,     0,     1,     1,     1,     1,     1,     8,    15,
3684       20,     1,     1,     2,     1,     3,     1,     1,     1,     3,
3685        1,     3,     0,     1,     0,     1,     1,     4,     0,     1,
3686        3,     0,     1,     1,     1,     1,     2,     0,     0,     2,
3687        2,     1,     2,     2,     2,     2,     6,     8,    11,    13,
3688        1,     3,     5,     1,     3,     5,     1,     2,     2,     1,
3689        8,     4,     5,     4,     4,     4,     3,     7,     8,     6,
3690        6,     6,     6,     6,     4,     5,     3,     1,     3,     3,
3691        1,     1,     1,     1,     1,     1,     3,     1,     3,     3,
3692        1,     0,     1,     3,     7,     9,     9,     3,     0,    13,
3693        1,     3,     5,     6,     4,     7,     2,     1,     0,     2,
3694        0,     2,     4,     0,     1,     0,     6,     8,     8,     1,
3695        3,     5,     5,     7,     9,     7,     9,     5,     6,     6,
3696        4,     4,     6,     4,     6,     5,     7,     1,     1,     1,
3697        2,     1,     2,     2,     2,     1,     1,     1,     1,     3,
3698        3,     3,     3,     1,     3,     1,     2,     2,     3,     1,
3699        3,     5,     2,     2,     0,     6,     6,     6,     7,     7,
3700        7,     8,     9,     8,     8,     6,     9,     8,     9,     9,
3701        7,    10,     7,     2,     1,     1,     1,     1,     1,     1,
3702        1,     2,     1,     1,     1,     1,     1,     2,     1,     3,
3703        2,     3,     3,     3,     3,     1,     1,     8,     8,     8,
3704        9,     9,     9,     9,     2,     0,     1,     1,     2,     2,
3705        1,     1,     1,     1,     1,     1,     2,     1,     1,     2,
3706        2,     1,     2,     3,     3,     3,     3,     4,     4,     3,
3707        3,     3,     4,     4,     3,     4,     4,     1,     1,     1,
3708        0,     7,     7,    10,     1,     1,     2,     4,     5,     1,
3709        3,     2,     2,     2,     2,     1,     2,     2,     4,     3,
3710        2,     2,     2,     2,     3,     2,     2,     2,     5,     5,
3711        5,     1,     3,     1,     2,     3,     0,     1,     3,     2,
3712        6,     6,     9,     3,     0,     3,     0,     5,     2,     0,
3713        3,     3,     3,     7,     7,    10,     1,     1,     1,     1,
3714       14,    17,     1,     0,     1,     0,     1,     0,     2,     0,
3715        1,     3,     5,     5,     7,     2,     0,     1,     0,     1,
3716        1,     0,     2,     2,     0,     9,    12,     7,     2,     0,
3717        3,     2,     1,     3,     3,     2,     1,     3,     3,     3,
3718        2,     2,     1,     1,     1,     1,     2,     1,     1,     1,
3719        1,     4,     5,     1,     3,     3,     1,     3,     3,     5,
3720        6,     1,     3,     1,     2,     4,     5,     1,     1,     1,
3721        1,     3,     3,     2,     2,     1,     2,     2,     2,     1,
3722        2,     2,     2,     2,     1,     1,     1,     3,     3,     5,
3723        2,     0,     2,     1,     3,     5,     1,     2,     1,     0,
3724        5,     7,     5,     7,     5,     7,     3,     5,     5,     5,
3725        1,     3,     2,     1,     2,     1,     2,    11,    10,    10,
3726        2,     2,     0,     9,     2,     0,    10,    11,    11,     5,
3727        5,     8,     3,     3,     6,     6,     1,     1,     1,     1,
3728        1,     1,     3,     1,     5,     5,     7,     6,     6,     6,
3729        6,     8,     8,     6,     6,     7,     9,     9,     8,    10,
3730        6,     6,     6,     8,     6,     8,     6,     8,     7,     9,
3731        6,     8,     7,     9,     8,    10,     9,    11,     8,    10,
3732        9,    11,     8,     8,     7,     6,     6,     6,     8,     8,
3733        8,     8,     6,     9,     1,     0,     2,     0,     7,     9,
3734        8,     7,     7,     6,     6,     6,     6,     6,     7,     9,
3735        9,     6,     8,     8,     8,     8,     8,     6,     8,     6,
3736        8,     7,     9,     7,     9,     6,     8,     1,     3,     3,
3737        3,     7,     6,     6,     6,     6,     6,     7,     7,     7,
3738        9,     9,     6,     6,     6,     8,     8,     8,     6,     7,
3739       13,     1,     1,     3,     3,     1,     1,     1,     1,     1,
3740        1,     1,     0,     1,     1,     1,     1,     1,     1,     0,
3741        6,     8,     3,     2,     0,     2,     2,     2,     2,     3,
3742        3,     2,     2,     2,     2,     3,     2,     5,     4,     3,
3743        3,     3,     1,     1,     0,     3,     2,     2,     1,     2,
3744        1,     3,     2,     1,     0,     9,    11,    12,    14,     3,
3745        4,     4,     0,     2,     5,     1,     0,     1,     2,     3,
3746        3,     3,     1,     2,     1,     1,     1,     1,     1,     1,
3747        0,     5,     4,     6,     4,     3,     5,     4,     4,     6,
3748        4,     6,     6,     5,     7,     9,     6,     1,     0,     6,
3749       11,    11,    11,    13,     9,    11,     1,     1,    10,     4,
3750        2,     5,     2,     0,     4,     5,     5,     4,     6,     1,
3751        3,     1,     1,     1,     1,     1,     2,     4,     1,     1,
3752        1,     0,     1,     0,     1,     0,     3,     0,     2,     4,
3753        3,     5,     1,     1,     1,     1,     1,     1,     1,     1,
3754        1,     1,     3,     2,     1,     1,     1,     1,     0,     5,
3755        3,     0,     1,     1,     1,     1,     3,     9,     3,     0,
3756        2,     3,     2,     3,     7,     1,     3,     1,     4,     2,
3757        1,     3,     2,     8,     5,     0,     4,     3,     0,     2,
3758        0,     7,     2,     0,     5,     3,     0,     2,     2,     2,
3759        3,     1,     3,     1,     2,     1,     0,     1,     2,     0,
3760        8,     1,     3,     1,     1,     3,     5,     5,     2,     1,
3761        3,     7,     1,     0,     3,     2,     2,     2,     0,     2,
3762        2,     1,     1,     3,     3,     1,     2,     4,     4,     2,
3763        3,     5,     5,     1,     1,     9,     9,     1,     2,     4,
3764        4,     4,     2,     2,     3,     1,     3,     6,     1,     0,
3765        2,     0,     3,     3,     4,     4,     4,     4,     3,     2,
3766        1,     1,     0,     1,     1,     0,     1,     5,     1,     0,
3767        1,     0,     3,     1,     3,     4,     3,     2,     2,     1,
3768        1,     1,     0,     2,     4,     5,     2,     3,     1,     1,
3769        1,     1,     3,     0,     1,     1,     1,     1,     1,     3,
3770        0,     1,     3,     1,     1,     1,     1,     1,     2,     4,
3771        4,     5,     2,     0,     1,     3,     1,     0,     1,     2,
3772        3,     2,     4,     2,     3,     2,     0,     2,     3,     2,
3773        0,     1,     3,     2,     3,     2,     3,     2,     3,     1,
3774        4,     3,     4,     5,     4,     5,     4,     5,     2,     4,
3775        1,     1,     0,     1,     4,     5,     4,     0,     2,     2,
3776        2,     1,     1,     0,     4,     2,     1,     2,     2,     4,
3777        1,     3,     1,     2,     3,     6,     4,     0,     2,     6,
3778        2,     1,     3,     4,     0,     2,     0,     2,     0,     2,
3779        4,     0,     1,     0,     1,     3,     3,     2,     3,     5,
3780        6,     2,     3,     3,     4,     0,     1,     1,     1,     1,
3781        1,     2,     4,     1,     1,     1,     1,     2,     3,     3,
3782        0,     1,     1,     1,     1,     1,     2,     2,     2,     2,
3783        2,     1,     3,     0,     1,     1,     1,     1,     5,     2,
3784        1,     1,     1,     1,     5,     2,     2,     2,     1,     3,
3785        3,     2,     1,     0,     3,     0,     5,     2,     5,     2,
3786        1,     3,     3,     0,     1,     1,     1,     1,     1,     1,
3787        3,     3,     3,     3,     3,     3,     3,     0,     1,     4,
3788        1,     3,     3,     5,     2,     2,     3,     3,     3,     3,
3789        3,     3,     3,     3,     3,     3,     3,     3,     3,     2,
3790        2,     3,     3,     2,     2,     3,     5,     4,     6,     3,
3791        5,     4,     6,     4,     6,     5,     7,     3,     2,     4,
3792        2,     3,     3,     4,     3,     4,     3,     4,     5,     6,
3793        6,     7,     6,     7,     6,     7,     3,     4,     4,     6,
3794        2,     3,     4,     1,     3,     2,     2,     3,     3,     3,
3795        3,     3,     3,     3,     3,     3,     3,     3,     3,     3,
3796        2,     2,     5,     6,     6,     7,     3,     4,     1,     1,
3797        2,     4,     1,     1,     1,     2,     2,     2,     2,     1,
3798        1,     4,     3,     5,     6,     8,     6,     6,     4,     4,
3799        1,     1,     1,     5,     1,     1,     4,     1,     4,     1,
3800        4,     1,     4,     1,     1,     1,     1,     1,     1,     6,
3801        4,     4,     4,     4,     6,     5,     5,     5,     4,     6,
3802        4,     4,     4,     4,     5,     7,     7,     9,     5,     4,
3803        6,     5,     7,     7,     7,     2,     3,     3,     3,     4,
3804        0,     4,     1,     3,     3,     1,     1,     1,     2,     2,
3805        0,     2,     4,     4,     6,     5,     0,     5,     0,     2,
3806        0,     1,     3,     3,     2,     2,     0,     6,     1,     0,
3807        3,     0,     2,     2,     0,     1,     4,     2,     2,     2,
3808        2,     2,     4,     3,     5,     4,     3,     5,     1,     1,
3809        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3810        1,     1,     1,     1,     1,     1,     4,     1,     4,     1,
3811        4,     1,     2,     1,     2,     1,     3,     1,     3,     1,
3812        3,     3,     1,     3,     3,     3,     2,     1,     3,     3,
3813        0,     1,     1,     1,     1,     1,     1,     1,     1,     4,
3814        3,     2,     3,     0,     3,     3,     2,     2,     1,     0,
3815        2,     2,     3,     2,     1,     1,     3,     5,     1,     2,
3816        4,     2,     0,     1,     0,     1,     2,     2,     2,     3,
3817        5,     1,     0,     1,     2,     0,     2,     1,     0,     1,
3818        1,     1,     3,     3,     1,     0,     1,     3,     3,     2,
3819        1,     1,     1,     3,     1,     2,     1,     3,     1,     1,
3820        1,     1,     1,     1,     1,     2,     1,     1,     1,     1,
3821        1,     2,     6,     2,     3,     5,     1,     1,     1,     1,
3822        1,     1,     2,     2,     1,     1,     1,     1,     1,     3,
3823        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3824        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3825        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3826        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3827        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3828        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3829        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3830        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3831        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3832        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3833        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3834        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3835        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3836        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3837        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3838        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3839        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3840        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3841        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3842        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3843        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3844        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3845        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3846        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3847        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3848        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3849        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3850        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3851        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3852        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3853        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3854        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3855        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3856        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3857        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3858        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3859        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3860        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3861        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3862        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3863        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3864        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3865        1,     1,     1,     1,     1,     1,     1,     1,     1,     1,
3866        1,     1,     1,     1
3867 };
3868 
3869 /* YYDEFACT[STATE-NAME] -- Default reduction number in state STATE-NUM.
3870    Performed when YYTABLE doesn't specify something else to do.  Zero
3871    means the default is an error.  */
3872 static const yytype_uint16 yydefact[] =
3873 {
3874     1499,  1284,   572,  1369,  1368,  1284,   258,     0,  1371,     0,
3875     1284,   393,  1019,     0,     0,     0,     0,   572,  1284,     0,
3876     1499,     0,     0,     0,     0,     0,  1512,     0,     0,     0,
3877        0,     0,     0,     0,     0,     0,     0,  1284,     0,     0,
3878     1519,     0,     0,     0,     0,  1512,     0,  1373,     0,     0,
3879        0,     0,     0,     2,     4,    67,    68,    29,    28,    34,
3880       33,    92,    93,    53,    17,    81,    60,   127,   126,   128,
3881       40,    36,    75,    25,    27,    37,    41,    62,    43,    54,
3882      105,    61,    23,    59,    86,    63,    89,    48,    11,    12,
3883       49,    79,    13,    50,    80,    14,    51,    15,   101,    69,
3884       94,    32,    58,    22,    85,    42,    65,    91,    66,     5,
3885       44,    77,    73,    10,    55,    56,    57,    82,    83,    84,
3886      110,    88,   122,    39,   119,    98,    99,   116,   100,   117,
3887        8,   102,    52,    16,   113,   112,   114,    76,    45,    78,
3888       64,    90,   111,    26,   115,    18,    19,    21,    20,   118,
3889       87,   108,   104,   123,   121,   129,   106,    70,     6,     7,
3890       95,    24,    47,     9,    31,    30,    46,    38,   125,    35,
3891     1371,    97,   109,    96,    71,   103,    74,   107,   124,    72,
3892      120,  1472,  1471,  1521,  1475,  1498,     0,  1487,  1283,  1282,
3893     1268,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3894        0,     0,     0,     0,     0,     0,     0,   571,     0,     0,
3895        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
3896        0,     0,  1294,  2080,  2095,  2096,  2097,  2098,  2099,  2100,
3897     2101,  2102,   364,  2103,  2104,  2105,  2106,  2107,  2108,  2109,
3898     2110,  2111,  2112,  2366,  2367,  2368,  2369,  2113,  2114,  2115,
3899     2116,  2117,  2118,  2119,  2370,  2371,  2120,  2121,  2122,  2123,
3900     2124,  2372,  2125,  2126,  2127,  2128,  2129,  2130,  2131,  2132,
3901     2133,  2134,  2135,  2136,  2137,  2138,  2139,  2140,  2141,  2142,
3902     2143,  2144,  2145,  2146,  2373,  2374,  2147,  2148,  2149,  2150,
3903     2151,  2152,  2153,  2154,  2155,  2156,  2157,  2158,  2159,  2160,
3904     2161,  2162,  2163,  2164,  2165,  2166,  2167,  2168,  2169,  2170,
3905     2171,  2172,  2375,  2173,  2174,  2175,  2376,  2176,  2177,  2178,
3906     2377,  2179,  2180,  2181,  2182,  2183,  2184,  2185,  2378,  2379,
3907     2186,  2187,  2188,  2189,  2190,  2191,  2192,  2193,  2194,  2195,
3908     2196,  2197,  2198,  2199,  2200,  2201,  2202,  2380,  2203,  2204,
3909     2205,  2206,  2381,  2382,  2383,  2207,  2208,  2209,  2210,  2211,
3910     2212,  2213,  2214,  2384,  2215,  2216,  2217,  2218,  2219,  2220,
3911     2221,  2222,  2223,  2224,  2225,  2226,  2227,  2228,  2229,  2230,
3912     2231,  2232,  2233,  2234,  2385,  2386,  2235,  2236,  2387,  2237,
3913     2238,  2239,  2388,  2240,  2389,  2241,  2242,  2243,  2244,  2245,
3914     2246,  2247,  2248,  2390,  2249,  2391,  2250,  2251,  2252,  2253,
3915     2254,  2255,  2256,  2257,  2258,  2259,  2392,  2260,  2393,  2263,
3916     2261,  2262,  2264,  2265,  2266,  2267,  2268,  2269,  2270,  2271,
3917     2394,  2272,  2273,  2274,  2275,  2276,  2277,  2278,  2279,  2280,
3918     2281,  2282,  2283,  2284,  2285,  2286,  2287,  2288,  2289,  2290,
3919     2291,  2395,  2292,  2293,  2294,  2295,  2296,  2297,  2298,  2299,
3920     2300,  2301,  2302,  2303,  2304,  2305,  2306,  2396,  2307,  2308,
3921     2309,  2310,  2397,  2311,  2312,  2313,  2314,  2315,  2316,  2317,
3922     2318,  2319,  2320,  2321,  2322,  2398,  2323,  2324,  2325,  2326,
3923     2327,  2328,  2329,  2330,  2399,  2400,  2331,  2332,  2401,  2333,
3924     2402,  2334,  2335,  2336,  2337,  2338,  2339,  2340,  2341,  2342,
3925     2343,  2344,  2345,  2346,  2347,  2348,  2349,  2350,  2403,  2404,
3926     2351,  2352,  2353,  2354,  2355,  2356,  2357,  2358,  2359,  2360,
3927     2361,  2362,  2405,  2406,  2407,  2408,  2409,  2410,  2411,  2412,
3928     2413,  2363,  2364,  2365,   363,  1462,  2048,  2081,  2082,  1370,
3929     1350,   572,     0,  1271,   392,  1499,     0,     0,     0,     0,
3930        0,     0,     0,     0,   787,     0,     0,     0,     0,     0,
3931        0,     0,     0,     0,     0,     0,   177,     0,     0,   416,
3932      415,     0,     0,     0,   992,   421,     0,     0,     0,     0,
3933        0,   560,  1412,  2261,  1410,  1463,   259,   262,   263,   260,
3934      261,  2070,     0,  1102,  1103,  1105,     0,     0,     0,  1115,
3935      825,   826,     0,     0,     0,   828,     0,     0,     0,   821,
3936        0,     0,     0,     0,     0,     0,   827,   818,     0,   817,
3937        0,     0,  1115,     0,     0,     0,   819,     0,     0,  1272,
3938     1409,   422,  1499,     0,  1387,  1388,  1389,  1371,  1378,  1390,
3939     1383,  1385,  1384,  1386,  1382,  2069,  2096,   930,   930,   930,
3940      930,   927,   928,   930,   930,   930,  2278,     0,     0,   909,
3941        0,   911,  2071,   930,   935,   477,   477,   477,     0,   934,
3942      939,   477,     0,  1265,  1303,  2053,  1511,     0,   910,  1264,
3943        0,     0,     0,  2331,  1401,     0,     0,  1130,  1126,  1128,
3944     1129,  1127,     0,     0,     0,  2294,  1276,   241,  2304,  2399,
3945     2331,   240,   234,   236,   208,  2100,     0,     0,   934,     0,
3946     1273,  1274,   895,  1518,  1516,     0,  2035,  2118,  2132,  2218,
3947      231,  2289,  2295,  2304,  2399,  2331,  2362,   187,   197,   192,
3948        0,   252,  2304,  2399,  2331,   248,  1294,     0,  1488,  1616,
3949     2044,     0,  1267,  1266,  1372,     0,  1375,     0,  1577,  2274,
3950     1492,  1495,  1377,  1493,  1484,     0,     0,     1,  1499,  1366,
3951     1515,  1515,     0,  1515,     0,  1476,  1484,  1479,  1483,     0,
3952        0,     0,     0,  2080,  2414,  2415,  2416,  2417,  2418,  2419,
3953     2420,  2421,  2422,  2423,  2424,  2425,  2426,  2427,  2428,  2429,
3954     2430,  2431,  2432,  2433,  2434,  2435,  2436,     0,     0,  2054,
3955     2081,  2085,     0,   835,     0,  1306,  2049,   979,     0,     0,
3956        0,     0,  2048,     0,     0,     0,     0,  2086,  2076,  2077,
3957        0,  2074,  2075,  2087,  2088,  2089,     0,  2191,     0,     0,
3958        0,  1941,  1952,  1953,  1954,  2122,  2176,  1949,  1950,  1951,
3959     1943,  1944,  1945,  1946,  1947,  1948,     0,  1100,  1942,     0,
3960     2191,     0,   156,     0,   134,     0,     0,  2191,     0,     0,
3961        0,     0,     0,  2191,     0,     0,     0,     0,     0,  2223,
3962        0,   134,  2191,     0,     0,  1288,     0,     0,     0,  1290,
3963     1293,  1269,  1353,     0,  2044,     0,     0,     0,   872,   864,
3964        0,   873,   865,     0,     0,   875,     0,     0,   867,     0,
3965        0,     0,     0,   876,     0,   866,   868,   878,   869,   874,
3966        0,     0,     0,     0,   870,     0,     0,  1280,     0,  1403,
3967     1405,  1404,  1402,   477,     0,     0,     0,     0,     0,     0,
3968      134,  1338,     0,  2191,   134,     0,     0,   420,   419,   134,
3969     2074,   418,   417,  2122,  2176,     0,  1018,     0,   134,  2191,
3970        0,   179,   644,   575,     0,     0,   746,  2223,   134,     0,
3971        0,     0,     0,     0,     0,   995,     0,     0,     0,   559,
3972      572,  1413,  1411,     0,  1106,   233,   232,  1104,   823,  2191,
3973        0,   338,     0,     0,  2191,  1325,  2083,  1674,  1703,  1681,
3974     1703,  1703,  1670,  1670,  2160,  1683,  2191,  1671,  1672,  1710,
3975        0,  1703,  1670,  1675,     0,  1673,  1713,  1713,  1698,   338,
3976      839,  1655,  1656,  1657,  1658,  1684,  1685,  1659,  1690,  1691,
3977     1705,  1660,  1727,  1670,  2084,   824,     0,   822,  2191,     0,
3978     2191,  2078,   170,     0,   820,  2122,  2176,  2191,     0,     0,
3979     2191,     0,  2191,   162,  2191,     0,  2191,   338,  2191,   576,
3980        0,     0,  2191,     0,  2191,   338,  2191,  2223,   164,     0,
3981     2191,   338,   833,     0,  1406,     0,  1380,  2403,  1395,     0,
3982     1391,  1398,  1394,  1499,   930,   929,     0,   930,     0,   930,
3983        0,   930,     0,   930,     0,     0,     0,   930,  2072,  2073,
3984      912,     0,   936,     0,     0,   943,   942,   941,     0,     0,
3985        0,   944,     0,  1620,  1436,     0,  1262,   235,   186,     0,
3986      247,   246,  1279,     0,     0,     0,   995,  1133,     0,  1131,
3987     1122,  1123,  1275,   239,   237,     0,     0,     0,     0,     0,
3988        0,  1281,     0,     0,     0,     0,  2057,  2059,  2060,  1955,
3989     2025,     0,  2367,  2368,  2369,  2014,     0,  2370,  2371,  2372,
3990     2416,  1857,  1844,  1853,  1858,  1845,  1847,  1854,  2373,  2374,
3991     2375,  2376,  2067,  2377,  2378,  2379,  2381,  2382,  2383,  2384,
3992     1849,  1851,  2385,  2386,     0,  2068,  2388,  2389,  2245,  2391,
3993     2392,  2394,  2395,  1855,  2397,  2398,  2399,  2400,  2401,  2402,
3994     2066,     0,  1856,  2404,  2406,  2407,  2408,  2409,  2410,  2411,
3995     2412,  2413,     0,     0,     0,  2041,     0,  1824,     0,  1663,
3996     1664,  1686,  1687,  1665,  1692,  1693,  1666,     0,  2040,  1730,
3997     1906,  1823,  1840,     0,  1829,  1830,     0,  1822,  1818,  1501,
3998     2036,     0,  1819,  2056,  2058,  2015,  1501,  2034,   200,   254,
3999        0,   255,  2042,  2304,   188,   230,   202,   229,   203,   201,
4000        0,  2120,   189,     0,     0,   190,     0,     0,     0,     0,
4001      251,   249,     0,  1270,     0,  1618,  1617,  2022,     0,  2023,
4002     2045,   844,  1365,  1363,  1364,  1362,     0,  1359,  1361,  1374,
4003     1371,  2030,  2029,  2031,     0,  1494,     0,     0,     0,  1474,
4004     1473,     3,  1377,  1513,  1514,     0,     0,     0,     0,     0,
4005        0,     0,     0,  1567,  1529,  1530,  1532,  1564,  1568,  1576,
4006        0,  1480,     0,     0,  1622,     0,  1578,     0,     0,  2055,
4007        0,     0,     0,     0,   836,     0,     0,     0,  1312,     0,
4008     1314,  1315,  1316,     0,     0,     0,  1317,  1318,  1306,   243,
4009     1324,  1322,  1305,  1307,  1320,     0,     0,     0,     0,     0,
4010        0,     0,  1330,     0,     0,   168,   169,   588,   572,     0,
4011     2191,     0,     0,     0,     0,     0,  1058,  1065,     0,     0,
4012        0,     0,     0,     0,     0,     0,  1059,  1057,  1060,   245,
4013     1069,  1086,  1089,     0,   969,     0,     0,     0,     0,     0,
4014     1185,     0,     0,     0,  1185,     0,     0,     0,     0,     0,
4015        0,     0,     0,     0,     0,     0,     0,     0,   268,   280,
4016      333,   552,     0,     0,   554,     0,  2191,     0,     0,     0,
4017        0,     0,     0,     0,     0,     0,     0,     0,   132,   133,
4018      138,     0,     0,     0,     0,     0,     0,   539,   551,     0,
4019        0,     0,     0,     0,   548,     0,   134,   272,   532,   536,
4020        0,     0,     0,   653,   652,  1328,  1327,     0,     0,  1185,
4021        0,   264,     0,     0,     0,     0,     0,     0,     0,     0,
4022        0,     0,     0,     0,     0,     0,     0,   356,   357,     0,
4023        0,     0,   138,   161,     0,     0,     0,   274,     0,     0,
4024     1289,  1286,  1287,     0,  1292,     0,  1349,     0,   863,     0,
4025        0,     0,     0,   880,     0,   877,     0,     0,   871,  2122,
4026     2176,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4027        0,   395,     0,     0,   743,     0,     0,     0,     0,     0,
4028      754,     0,  1306,  1337,     0,     0,     0,   581,     0,  2191,
4029        0,   136,   788,     0,   744,   421,     0,     0,   136,     0,
4030        0,   173,     0,   648,     0,     0,     0,     0,     0,     0,
4031      692,   691,     0,     0,     0,   745,     0,   136,     0,  2191,
4032      535,  2191,     0,   477,   477,     0,     0,   994,   997,     0,
4033        0,     0,     0,  1466,  1468,  1467,     0,  1465,     0,   338,
4034      336,   337,   741,  1114,     0,     0,  1702,  1689,  1697,  1696,
4035        0,  1679,  1678,  1677,     0,  1676,     0,  1703,  1703,  1701,
4036     1680,  1655,     0,     0,     0,  1709,     0,  1707,     0,   813,
4037     1651,  1647,     0,     0,  1695,  1716,  1717,  1718,  1715,  1728,
4038     1714,     0,  1661,  1719,  1670,  1667,     0,     0,   338,     0,
4039        0,  2191,   338,  2191,     0,  2191,     0,     0,   338,   338,
4040        0,     0,     0,     0,     0,     0,   649,     0,   832,   830,
4041      829,   831,     0,     0,     0,     0,   811,     0,     0,     0,
4042     2191,   338,     0,     0,   810,  1965,     0,     0,  1499,     0,
4043      219,   220,   218,  1396,   221,  1397,  1393,  1379,     0,   920,
4044        0,   924,     0,   915,     0,   921,     0,   916,   913,   914,
4045        0,   919,     0,     0,   478,   480,     0,     0,  2144,  2159,
4046        0,  2182,  2211,  2212,  2295,  2300,     0,  2326,  2336,     0,
4047      945,   974,   940,   662,     0,     0,  1446,  1263,  1972,     0,
4048     1499,     0,     0,     0,     0,   238,   209,     0,     0,     0,
4049      976,  2294,  1278,   894,   572,     0,  1820,     0,  1827,  1828,
4050     2013,     0,     0,     0,     0,     0,     0,  1826,  1980,     0,
4051        0,     0,     0,     0,  1753,     0,     0,     0,  1993,     0,
4052     1999,     0,     0,  1790,     0,     0,     0,     0,     0,     0,
4053        0,     0,  1754,  1734,  1735,  1824,  1965,     0,  1825,  2063,
4054        0,  1727,  2039,  1955,     0,  1952,  1953,  1954,     0,     0,
4055        0,  2028,     0,  1963,     0,     0,  1768,  1961,  1770,     0,
4056        0,     0,     0,  1949,  1950,  1951,  1943,  1944,  1945,  1946,
4057     1947,  1948,  1959,  1750,     0,     0,  1908,     0,  1749,     0,
4058        0,  1580,     0,  2061,  2016,  1580,   256,   257,   253,     0,
4059        0,   205,   204,     0,   223,   227,   228,   199,   226,     0,
4060      222,   207,  1897,  1896,   206,   198,   195,   193,   210,   212,
4061      213,   196,   194,   250,     0,  2021,     0,  2090,  2437,  2438,
4062     2439,  2440,  2441,  2442,  2443,  2444,  2445,  2446,  2447,  2448,
4063     2449,  2450,  2451,  2452,  2453,  2454,  2455,  2456,  2457,  2458,
4064     2459,  2460,  2461,  2462,  2463,  2464,  2465,  2466,  2467,  2468,
4065     2469,  2470,  2471,  2472,  2473,  2474,  2475,  2476,  2477,  2478,
4066     2479,  2480,  2481,  2482,  2483,  2484,  2485,  2486,  2487,  2488,
4067     2489,  2490,  2491,  2492,  2493,  2494,  2495,  2496,  2497,  2498,
4068     2499,  2500,  2501,  2502,  2503,  2504,  2505,  2506,  2507,  2508,
4069     2509,  2510,  2511,  2512,  2513,  2018,  2017,  2051,  2091,  2092,
4070     2093,  2094,  2024,     0,     0,   338,  1357,     0,  1354,  2033,
4071        0,  1496,     0,  2046,     0,  1367,  1491,  1490,  1522,  1523,
4072     1011,  1489,  1547,  1548,  1543,     0,     0,     0,  1573,  1571,
4073     1539,  1533,  1538,  1536,     0,  1540,  1730,  1566,  1478,  1527,
4074     1528,  1531,  1477,     0,  1569,     0,  1449,  1567,  1532,  1433,
4075        0,  1415,     0,  1623,     0,  1033,  1035,     0,  1034,     0,
4076     1037,     0,  1046,     0,     0,  1032,  1051,     0,  1040,  1038,
4077        0,     0,     0,     0,     0,     0,   837,     0,     0,     0,
4078        0,  1313,     0,     0,  2326,   242,  1316,  1321,  1308,  1319,
4079        0,     0,     0,     0,     0,   978,   977,     0,     0,   999,
4080        0,     0,     0,  1333,   466,     0,   335,     0,     0,     0,
4081        0,     0,     0,     0,     0,   739,   736,     0,     0,   735,
4082        0,   586,     0,     0,     0,     0,     0,     0,     0,     0,
4083        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4084        0,   623,     0,  1185,     0,   656,     0,  1067,     0,     0,
4085     1066,     0,  1070,     0,     0,  1068,  1063,  1064,  2295,  2304,
4086     2331,   244,  1088,     0,  1087,  1085,  1021,     0,  1022,     0,
4087        0,     0,     0,     0,  2169,  2191,   282,   297,     0,  1184,
4088        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4089        0,     0,     0,     0,     0,   320,     0,     0,   323,   322,
4090        0,     0,     0,     0,     0,   327,   306,     0,   307,     0,
4091        0,   326,     0,     0,   553,     0,     0,     0,     0,  1185,
4092        0,   276,     0,     0,     0,     0,     0,     0,  1101,     0,
4093      680,     0,   159,     0,   155,   158,     0,     0,     0,     0,
4094      538,   550,     0,   542,   543,   540,   544,   545,     0,     0,
4095        0,     0,     0,     0,   537,     0,     0,   646,   645,   651,
4096        0,     0,     0,     0,     0,     0,     0,     0,  1135,  1134,
4097        0,     0,     0,     0,     0,     0,   778,     0,     0,     0,
4098        0,     0,     0,     0,   665,     0,   664,     0,   160,     0,
4099        0,     0,     0,     0,     0,     0,   217,  1285,  1291,  1352,
4100     2052,  1351,     0,     0,     0,     0,   879,     0,     0,     0,
4101        0,     0,     0,     0,     0,   881,   882,   883,   884,     0,
4102        0,     0,     0,     0,   370,     0,     0,     0,  2083,     0,
4103      767,   742,     0,     0,   755,     0,   757,   760,     0,  1304,
4104      439,     0,     0,   578,   623,     0,   424,   166,     0,     0,
4105        0,     0,   682,   131,   177,   179,   422,     0,   178,   180,
4106      182,   183,   184,   181,   185,   643,   647,     0,   574,     0,
4107        0,     0,     0,     0,   693,   697,   696,   700,   698,     0,
4108      694,     0,     0,  1643,     0,   154,     0,     0,   530,   534,
4109        0,     0,     0,   424,   508,   349,  2191,     0,   477,     0,
4110     2191,     0,   996,     0,     0,     0,     0,     0,     0,     0,
4111        0,  1464,     0,  1092,     0,  1326,     0,     0,     0,   338,
4112     1700,  1699,  1652,  1648,     0,     0,     0,     0,   840,     0,
4113        0,     0,     0,     0,     0,     0,     0,     0,     0,  1668,
4114     2191,   338,     0,  1090,   171,  2079,     0,   815,     0,     0,
4115        0,     0,     0,  1094,   807,     0,   338,   163,     0,   338,
4116      338,   577,     0,     0,   338,   338,   165,     0,     0,     0,
4117      569,   338,   834,  1408,     0,  2191,   477,  1381,  1392,   917,
4118      926,   925,   923,   922,   918,     0,   937,     0,   476,     0,
4119        0,     0,   951,   952,     0,     0,   950,   967,   953,     0,
4120      955,   947,   946,   956,   957,     0,     0,   976,   660,     0,
4121        0,     0,     0,  1443,     0,  1441,     0,  1621,  1445,  1434,
4122     1400,     0,  1399,     0,   523,     0,     0,  1132,     0,     0,
4123      934,     0,     0,   338,  1277,     0,   896,   897,     0,     0,
4124        0,     0,     0,     0,   903,   900,   901,   902,   904,     0,
4125      905,     0,     0,     0,  2026,  1976,     0,  1977,     0,     0,
4126     2012,  2008,     0,     0,     0,     0,     0,  1981,  1984,  1985,
4127     1986,  1983,  1987,  1982,     0,     0,  1988,     0,     0,     0,
4128        0,     0,     0,     0,     0,     0,  2395,     0,     0,     0,
4129        0,  1793,     0,     0,  1936,     0,  1965,  1998,     0,     0,
4130        0,     0,     0,     0,  1965,  2004,     0,     0,     0,     0,
4131     1895,     0,  1892,     0,     0,     0,     0,  2025,     0,     0,
4132     2064,  1731,  1745,  1746,  1747,  1751,  2038,     0,  2027,     0,
4133        0,  1732,  1759,     0,  2005,  1786,     0,  1791,  1774,     0,
4134     1767,     0,  1772,  1776,  1755,     0,  1752,     0,  2028,  1964,
4135        0,  1962,     0,  1742,  1743,  1744,  1736,  1737,  1738,  1739,
4136     1740,  1741,  1748,  1940,  1938,  1939,     0,     0,     0,  1916,
4137        0,     0,  1771,  2184,  2218,     0,  1512,  1512,  1512,  1500,
4138     1510,  2037,     0,  1638,     0,     0,     0,     0,  1832,     0,
4139     1969,  1521,  1967,  1038,  1638,  2043,     0,     0,  1727,     0,
4140     1619,  2019,  2022,   842,   843,   841,  1377,  1360,  1356,  1355,
4141     2032,  1376,     0,  1499,     0,  1009,  1010,     0,  1014,     0,
4142        0,  1541,  1574,     0,  1565,     0,  1545,  1546,  1537,  1575,
4143     1447,     0,  1570,  1482,  1481,     0,  1641,     0,     0,  1425,
4144     1417,     0,  1624,     0,  1580,  1451,  1453,  1454,     0,  2025,
4145     1036,     0,  1670,  1047,     0,  1031,     0,  1030,  1670,     0,
4146     1048,     0,  1670,     0,     0,     0,  1222,  1137,  1193,   838,
4147     1223,  1138,  1194,  1224,  1139,  1323,  1311,  1310,  1309,     0,
4148        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4149        0,     0,     0,   718,  2191,   338,  1331,  1225,     0,  1140,
4150      334,  1332,  1195,  1336,   738,   737,     0,     0,  1196,     0,
4151      587,     0,     0,   592,   593,   594,     0,     0,     0,   595,
4152        0,  2122,  2176,     0,   600,   607,   612,   602,     0,     0,
4153      614,   608,     0,     0,     0,     0,     0,     0,   620,   627,
4154        0,     0,     0,     0,     0,     0,     0,  1061,  1062,  1226,
4155     1143,     0,  1197,  1020,     0,  1144,   167,     0,     0,   269,
4156     2191,   284,     0,   629,   718,  1187,   304,     0,     0,   319,
4157      314,   315,   313,  2191,   338,  2191,   338,     0,     0,     0,
4158        0,     0,   316,   311,   312,   308,     0,     0,   321,  2099,
4159     2161,  2305,     0,   633,   635,     0,   640,   324,  1160,   345,
4160      344,   343,     0,   328,     0,   350,   353,   325,   302,   305,
4161      303,   299,   281,     0,     0,     0,     0,     0,     0,     0,
4162        0,  2050,     0,     0,  1096,     0,     0,     0,     0,     0,
4163        0,     0,   674,   157,  1175,   147,     0,     0,   143,     0,
4164        0,     0,     0,   137,     0,  1232,  1150,     0,     0,   273,
4165      533,   541,   546,  1154,   549,  1207,   547,  1238,  1151,     0,
4166     1185,     0,   265,     0,  1152,     0,  1201,  1234,  1177,     0,
4167        0,     0,     0,     0,     0,     0,     0,     0,  1339,     0,
4168        0,     0,     0,     0,     0,   338,     0,     0,     0,  1187,
4169     2191,   338,  1233,     0,  1182,  1215,     0,   358,     0,  1176,
4170        0,     0,   275,  1156,  1209,     0,     0,   215,   214,   216,
4171        0,     0,  2159,     0,   886,   847,   885,     0,     0,     0,
4172        0,     0,     0,   855,     0,     0,     0,   846,     0,   845,
4173      369,     0,   394,   367,   368,   370,     0,     0,   766,     0,
4174        0,     0,   756,     0,     0,     0,  1329,     0,   134,   585,
4175        0,     0,     0,   580,   622,   629,     0,     0,     0,   423,
4176      427,   431,   432,   433,     0,     0,     0,     0,   148,   135,
4177        0,   796,     0,   477,     0,   678,     0,   179,   172,     0,
4178        0,     0,   349,   753,   751,   750,   752,     0,     0,     0,
4179      771,   749,     0,  1642,  1644,     0,     0,     0,     0,     0,
4180      523,   426,     0,   480,     0,     0,   512,     0,     0,     0,
4181        0,   349,     0,     0,     0,  1025,     0,  1043,  1026,     0,
4182        0,     0,     0,  1074,  1081,  1075,  1053,     0,     0,   557,
4183     1469,  1470,     0,   338,     0,     0,  1669,  1682,   814,     0,
4184     1712,  1711,  1713,  1713,     0,  1653,     0,  1704,  1705,  1721,
4185     1722,  1723,  1724,  1725,  1726,     0,  1720,  1662,     0,   624,
4186      338,   338,     0,   338,     0,   338,   338,     0,   671,     0,
4187     1260,   650,     0,     0,   726,   812,     0,     0,   338,   809,
4188     1966,     0,   938,   479,     0,     0,     0,     0,   949,     0,
4189      555,   954,     0,   966,   961,   963,     0,   970,   659,     0,
4190        0,  1444,  1437,  1439,  1438,     0,     0,  1435,  1973,   808,
4191        0,   529,  1124,  1125,     0,     0,   338,     0,   971,     0,
4192        0,   898,   899,     0,     0,   906,     0,     0,     0,  1517,
4193     1974,  1975,     0,     0,     0,  2009,     0,     0,  1870,     0,
4194     1846,  1848,  1860,     0,  1871,  1831,  1872,  1850,  1852,     0,
4195     1956,     0,     0,  1861,     0,  1795,  1796,     0,     0,     0,
4196        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4197        0,     0,     0,     0,  1811,  1810,  1862,  1935,     0,     0,
4198     1996,  1997,  1863,     0,     0,  2003,     0,     0,     0,  1868,
4199     1873,     0,     0,     0,     0,  1879,     0,  1900,     0,     0,
4200        0,  1821,  1966,     0,     0,     0,     0,     0,     0,     0,
4201        0,  1792,  1775,  1769,     0,  1773,  1777,     0,     0,     0,
4202     1763,     0,     0,  1761,  1787,  1757,     0,     0,  1788,     0,
4203        0,     0,  1839,     0,     0,  1512,  1512,  1512,  1512,  1509,
4204        0,     0,     0,     0,  2292,     0,  1602,  1579,  1581,  1589,
4205     1602,  1607,  1841,  1636,  1842,     0,  2044,     0,  1550,  1521,
4206     1521,  1521,  1838,     0,     0,     0,     0,  1520,  1550,   191,
4207        0,   224,   211,  2021,     0,  1358,  2047,     0,  1524,     0,
4208     1957,  1014,     0,  1526,     0,     0,  1572,  1534,  1448,  1432,
4209        0,  1430,  1419,     0,  1420,  2025,     0,  1430,  1416,  1459,
4210        0,     0,  1641,     0,  1458,     0,  1670,  1028,  1029,     0,
4211     1052,     0,  1221,  1136,  1192,   981,   982,     0,   980,     0,
4212        0,     0,   465,   998,     0,     0,     0,   718,     0,     0,
4213      469,     0,  1334,     0,  1239,  1174,   589,   590,     0,   601,
4214        0,   610,   609,     0,     0,   597,     0,     0,     0,     0,
4215        0,   596,   616,   561,   617,   619,     0,     0,   618,   621,
4216      626,  1185,     0,   657,  1162,     0,  1213,  1055,  1188,     0,
4217     1023,     0,     0,     0,     0,     0,     0,   439,   298,     0,
4218        0,     0,   286,   296,     0,  1191,   330,     0,   301,     0,
4219      294,   317,   309,   318,   310,   329,   331,     0,   637,   638,
4220      636,   632,     0,   639,   641,     0,   347,     0,     0,     0,
4221     1228,     0,  1185,     0,   277,     0,  1158,     0,  1211,     0,
4222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4223     1229,  1198,     0,  1217,     0,     0,     0,   679,     0,   676,
4224        0,     0,   140,   139,     0,   146,     0,     0,     0,     0,
4225        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
4227        0,     0,     0,   359,   340,     0,   774,     0,     0,     0,
4228      361,     0,     0,     0,     0,  1227,  1145,   848,     0,     0,
4229        0,   849,   860,     0,     0,   850,     0,     0,     0,     0,
4230      862,   372,   373,   134,   371,     0,     0,  2245,  1943,  1944,
4231      764,   769,   761,   763,   765,   762,     0,   768,   718,     0,
4232      758,   759,     0,     0,     0,     0,     0,   451,     0,     0,
4233      445,     0,     0,  1081,   438,   441,   442,     0,     0,   581,
4234      584,   582,   583,   615,     0,   458,   504,     0,   150,     0,
4235        0,   151,   149,     0,     0,   349,   683,   687,   685,   684,
4236      686,   681,     0,   674,     0,   175,   422,     0,     0,   573,
4237      699,   702,   695,     0,   770,   772,   747,     0,   629,     0,
4238      535,     0,   477,  1409,   518,     0,   508,   504,   506,   505,
4239      507,     0,   514,   348,     0,     0,   523,   514,     0,     0,
4240      999,  1024,     0,     0,     0,  1071,  1076,  1072,     0,     0,
4241     1039,     0,  1073,     0,  1054,  1017,  1255,  1256,  1253,  1254,
4242        0,     0,     0,  1461,  1093,     0,  1688,     0,  1708,  1706,
4243     1649,  1654,  1694,  1729,   338,  1091,   816,     0,   803,     0,
4244      805,  1095,   338,   338,   338,   338,   666,     0,   570,     0,
4245        0,     0,     0,   948,   968,     0,   964,     0,     0,   931,
4246      973,     0,     0,  1442,  1440,   521,     0,   976,     0,   932,
4247      975,     0,     0,     0,     0,     0,     0,     0,  1978,     0,
4248     2011,  2007,     0,  1843,  1979,     0,  1991,  1990,  1936,     0,
4249        0,  1794,  1806,  1807,  1808,  1992,     0,  1816,     0,     0,
4250     1803,  1804,  1805,  1797,  1798,  1799,  1800,  1801,  1802,  1809,
4251     2001,  2000,  1994,  1995,     0,  1865,  1866,  1867,  2002,  1874,
4252        0,  2113,  1901,  1878,  1894,  1893,     0,     0,     0,  1881,
4253        0,     0,  1890,     0,  1937,  2065,  1733,     0,     0,  1760,
4254     2006,  1778,     0,     0,     0,  1756,  1956,     0,     0,     0,
4255        0,     0,  1765,     0,     0,     0,  1919,  1914,  1915,  1933,
4256        0,     0,     0,     0,     0,     0,  1503,  1502,  1508,  1602,
4257     1607,     0,  1484,     0,  1589,     0,  1601,  1587,  1600,     0,
4258        0,  1613,  1611,     0,  1613,     0,  1613,     0,  1583,     0,
4259     1603,  1585,  1600,     0,  1628,     0,  2045,  1637,     0,  1563,
4260        0,     0,     0,     0,  1970,  1971,     0,  1968,  1833,  1563,
4261        0,  2020,  1497,     0,  1525,  1012,  1013,  1542,  1535,  2140,
4262     1639,     0,  1431,     0,     0,  1422,  1428,  1414,     0,     0,
4263     1452,  1430,  1455,  1049,     0,     0,  1041,   987,   988,   986,
4264      989,     0,     0,     0,   718,     0,     0,   485,     0,  1006,
4265     1006,     0,     0,   471,   517,  1081,   721,     0,     0,     0,
4266      719,   338,  1141,     0,   611,     0,     0,   606,   604,   603,
4267      605,     0,   562,  1237,  1142,     0,     0,     0,     0,  1056,
4268        0,     0,  1161,     0,   283,     0,   436,     0,   291,  1186,
4269        0,     0,     0,   290,     0,   338,   338,   332,   634,   346,
4270      351,   352,   355,     0,     0,     0,     0,     0,  1190,     0,
4271        0,     0,     0,     0,     0,     0,   797,   780,     0,     0,
4272      798,   799,     0,     0,     0,  1098,  1099,  1097,  1216,     0,
4273        0,     0,  1148,     0,     0,   670,   144,   141,   142,   145,
4274     1172,  1155,  1208,     0,     0,     0,  1153,     0,  1202,  1168,
4275     1164,     0,     0,     0,     0,     0,  1236,  1181,  1206,  1235,
4276     1179,  1204,  1178,  1203,  1180,  1205,     0,  1173,     0,  1646,
4277      777,     0,     0,     0,   338,   338,   668,  1157,  1210,     0,
4278        0,   851,     0,     0,   853,   854,     0,   857,   377,   397,
4279      688,   740,     0,     0,   717,     0,   443,     0,   449,   453,
4280      454,   452,   444,  1081,   477,   516,     0,     0,   730,     0,
4281      579,   424,   455,     0,     0,   428,   153,   152,     0,     0,
4282        0,   677,   676,   179,  2191,     0,     0,   704,   708,   748,
4283        0,  1645,   663,   349,   531,     0,     0,   424,   523,     0,
4284      429,   434,   435,     0,   512,   508,     0,     0,   520,  1302,
4285        0,   524,   526,     0,     0,     0,  1027,  1044,  1045,     0,
4286        0,  1081,     0,     0,  1080,     0,     0,   564,   338,  1650,
4287      625,   338,   338,   672,  1261,  1121,   727,     0,   960,   959,
4288      958,   556,     0,   962,   661,     0,   522,   338,     0,     0,
4289      908,   889,   907,     0,     0,   888,     0,   887,  2010,  1859,
4290     1869,  1989,  1935,  1966,     0,     0,  1817,     0,     0,  1864,
4291     2405,     0,     0,     0,     0,  1898,  1899,  1880,     0,  2236,
4292     1885,     0,     0,     0,  1784,  1782,  1779,     0,  1780,  1764,
4293        0,     0,  1762,  1758,     0,  1789,  1905,     0,  1921,  1918,
4294     1932,  1966,  1507,  1506,  1505,  1504,  1588,  1586,     0,  1591,
4295     1598,     0,  1582,     0,  1612,  1608,     0,  1609,     0,     0,
4296     1610,     0,     0,  1584,     0,  1598,     0,  1635,  1521,     0,
4297        0,  1910,  1836,  1837,  1834,  1521,  2062,  1910,   225,     0,
4298        0,  1429,  1418,  1421,     0,     0,     0,     0,  1460,  1450,
4299     1042,  1050,     0,     0,     0,   467,     0,  1081,     0,     0,
4300        0,  1008,  1008,     0,  1081,   516,   723,   722,   725,   720,
4301      724,  1335,     0,   598,   599,   613,  1163,     0,  1214,  1170,
4302        0,  1446,   285,     0,   630,   287,   288,   289,   292,   340,
4303      300,   293,     0,     0,     0,  1159,     0,  1212,  1166,  1230,
4304     1146,  1199,     0,     0,   786,     0,     0,     0,     0,  1231,
4305     1147,  1200,  1218,  1219,  1220,     0,     0,     0,     0,  1446,
4306        0,     0,     0,     0,     0,  1344,     0,  1189,   339,   776,
4307      775,   340,   360,  1183,     0,   852,   858,   859,   856,     0,
4308      366,   374,   398,   134,     0,     0,  1112,  1112,     0,   718,
4309        0,     0,   440,   516,   484,     0,   446,     0,     0,     0,
4310        0,     0,     0,     0,     0,     0,     0,     0,     0,   669,
4311      174,     0,   424,   629,   703,     0,     0,     0,   773,     0,
4312      523,   426,     0,  1407,   425,     0,     0,   514,   512,     0,
4313      509,     0,   513,     0,  1295,     0,     0,     0,     0,  1077,
4314        0,  1083,     0,  1038,  1015,  1078,     0,  1638,     0,     0,
4315        0,     0,   568,  1113,   804,   806,   667,   965,     0,   972,
4316      338,   890,   891,   892,   893,  1937,  1812,     0,     0,     0,
4317        0,  1875,     0,  1876,  1903,  1902,  1882,  1886,     0,  1883,
4318     1884,  1781,  1785,  1783,  1766,  1907,     0,  1521,  1934,  1631,
4319        0,  1634,  1590,     0,     0,  1592,     0,     0,  1594,  1596,
4320        0,     0,     0,     0,     0,     0,  2048,     0,  2139,  2379,
4321     2291,     0,  1549,  1551,  1554,  1556,  1555,  1557,  1553,  1562,
4322        0,  1486,     0,  1485,  1958,  1640,     0,     0,  1000,     0,
4323        0,  1457,  1456,   966,     0,   338,  1006,   516,   486,  2245,
4324      487,  1005,  1007,  1011,  1011,     0,   516,   718,   591,     0,
4325        0,   270,   628,     0,   342,   354,     0,  1446,     0,     0,
4326        0,   793,   781,     0,     0,   800,  1149,   673,     0,     0,
4327      266,  1169,  1165,  1346,  1347,     0,     0,     0,     0,     0,
4328      338,   861,     0,   400,   407,   378,   383,  1338,     0,  1338,
4329        0,   380,   384,  1338,   379,  1338,   376,   377,     0,  1112,
4330        0,  1109,  1108,   716,     0,   475,   447,     0,   495,     0,
4331        0,   731,     0,     0,   504,   464,   463,   460,   459,   461,
4332      462,   457,   456,     0,   629,   790,   349,  1302,     0,   642,
4333      705,   706,   701,     0,     0,     0,   519,   508,   504,   430,
4334      439,   413,   514,   510,   511,     0,     0,     0,   523,  1348,
4335      999,     0,  1082,     0,     0,     0,     0,     0,     0,  1116,
4336      563,     0,     0,   567,   558,   629,   933,  1813,     0,  1814,
4337        0,     0,     0,  1888,  1887,     0,  1924,  1636,     0,     0,
4338     1630,     0,  1599,  1615,     0,  1595,  1593,     0,  1604,     0,
4339     1606,  1833,     0,     0,     0,  1558,     0,  1909,  1911,     0,
4340     1835,  1427,  1638,     0,  1424,     0,   983,     0,   984,  1008,
4341      490,     0,  1014,  1014,   477,   718,   468,  1171,     0,   631,
4342        0,   295,     0,   278,  1167,     0,   784,     0,   795,   793,
4343        0,     0,     0,     0,  1340,     0,  1341,  1342,  1345,   362,
4344      375,     0,   405,     0,   403,   402,   404,     0,   391,     0,
4345        0,     0,     0,     0,     0,   365,   396,  1107,  1111,  1110,
4346        0,     0,   448,   481,   482,   483,     0,   450,   491,   492,
4347        0,   728,     0,   733,     0,     0,   503,   654,     0,     0,
4348        0,  1296,     0,     0,     0,  1302,   512,   508,   437,   411,
4349        0,  1299,     0,   525,     0,   349,  1081,  1084,  1079,  1259,
4350        0,     0,   566,   565,   658,  1815,  1891,  1877,  1904,  1889,
4351     1920,     0,     0,     0,  1629,  1632,     0,  1597,     0,     0,
4352     1605,     0,     0,     0,  1552,     0,     0,  1426,  1001,     0,
4353        0,  1011,     0,   718,     0,  1003,  1002,   484,   470,  1446,
4354      341,     0,     0,     0,   791,   794,   782,   795,   802,   801,
4355      675,  1446,     0,   401,   410,     0,   408,   381,   386,     0,
4356      390,   388,   387,   382,   385,     0,   474,     0,     0,     0,
4357      493,     0,   494,   515,     0,   732,     0,     0,   789,     0,
4358        0,   424,   707,     0,  1297,   514,   512,  1300,  1301,     0,
4359      514,  1016,  1258,  1257,  1499,     0,     0,  2366,  2140,  2338,
4360        0,  1922,  1925,  1923,  1917,     0,  1614,  1627,  1560,     0,
4361     1559,  1912,  1913,  1638,   338,  1014,     0,   472,   488,   495,
4362      271,  1446,     0,     0,   783,   267,  1343,   406,     0,   389,
4363      708,   500,     0,   499,     0,   497,   496,   729,   734,   629,
4364      779,  1302,   711,   414,   514,     0,  1638,  1241,  1499,  1240,
4365     1242,  1250,  1247,  1249,  1248,  1246,  1119,  1120,     0,  1929,
4366     1928,  1927,  1931,  1930,  1633,     0,  1625,  1561,  1423,   985,
4367     1004,     0,   718,   279,   785,   792,   409,     0,   498,   502,
4368      501,   655,  1298,   713,     0,   709,   712,   714,   715,   412,
4369      349,   990,     0,  1251,  1245,  1484,  1471,     0,     0,     0,
4370        0,   489,   473,     0,   689,     0,   514,  1243,  1499,     0,
4371        0,  1926,     0,     0,   710,  1638,  1244,     0,     0,  1626,
4372        0,   991,     0,     0,   711,     0,     0,     0,  1117,  1118,
4373      690
4374 };
4375 
4376 /* YYDEFGOTO[NTERM-NUM].  */
4377 static const yytype_int16 yydefgoto[] =
4378 {
4379       -1,    52,    53,    54,    55,  1440,  2307,  2194,  3028,  3029,
4380       56,    57,  1436,    58,    59,    60,    61,    62,    63,    64,
4381     1368,    65,    66,   960,  1561,  2318,    67,  2045,   738,   739,
4382      740,  1867,  1868,  2257,  1869,  1857,  1256,  1694,  1389,   712,
4383      713,  1350,  1390,    69,    70,  1250,  1848,    71,    72,    73,
4384     1418,  1419,  1362,  1602,  4029,  4681,  2863,  2171,  3068,  2864,
4385     2865,    74,  1487,  1488,    75,    76,  2995,  2991,  3563,  4340,
4386     4341,  4556,   556,  2286,  4343,  4344,  4542,  4543,  4705,  4815,
4387     4816,  2319,  1556,  3062,  3646,  3019,  4099,  3020,  4100,  3021,
4388     4101,  3006,  3594,  3595,  3596,  3022,  4072,  4581,  3023,  2064,
4389     4722,  2354,  1716,  1714,  4568,  3906,  3907,  4793,  4727,  4728,
4390     4729,  4895,  4074,  3066,  3652,  4108,  4356,  2753,   644,  1582,
4391     3171,   645,  2357,   588,   646,  2320,    82,  2348,  2349,  1459,
4392     2202,  3570,  3151,    83,   980,  3412,  4412,  4623,  4624,    84,
4393      221,    85,  1565,    86,    87,  2303,  3013,    88,  2081,  2770,
4394       89,    90,  2798,  2799,  2800,    91,    92,  3437,  4283,  1420,
4395     2852,  2853,  2854,  2855,  3463,    93,  1563,  1464,  2327,    94,
4396       95,    96,    97,    98,  2470,  2471,    99,  2245,   100,   101,
4397      102,   103,   104,  3499,  3995,  3623,  2892,  3035,  3621,   105,
4398     2321,  1573,  2339,  2340,  4088,  4375,  4592,  4377,  4944,  4945,
4399     4349,  3390,  3920,   107,   108,  4067,  4068,  4734,   109,  2079,
4400      110,   111,   112,  1540,  2295,  2296,  3571,  1534,  2289,  2290,
4401     3633,  3634,   113,  2948,   114,  3976,  3977,   589,  4739,  4688,
4402     4806,   115,   116,  3980,  3981,   117,   118,   119,   120,   121,
4403      638,  1071,  1072,  1334,  1019,   122,  1965,   123,   926,  2975,
4404      124,  1144,  2512,  4151,   125,   669,  1085,  1086,  2322,   127,
4405      678,  2490,   680,  1729,  3153,  3154,  3719,  2456,   825,   128,
4406      129,  2467,  2493,   130,  1355,  2055,  2056,  3901,  2323,   590,
4407     1588,  2361,  2748,  4487,  4488,  4261,  4503,  2678,  3343,   132,
4408      591,  1394,  2127,  2364,  3076,  2022,  2023,  2024,  3669,  2025,
4409     3078,  2026,  1328,  2027,  3084,  3085,  3086,  3665,  3672,  3675,
4410     4401,  4402,   133,  1392,  2125,   134,   135,   136,  1431,   856,
4411      137,   603,   604,   138,  4561,   139,   993,   140,  4410,   141,
4412      142,   703,   704,  1128,  1129,   143,   144,  2141,  3444,   145,
4413      146,   147,  3492,  3493,   148,   149,  4909,  4952,  4953,  4954,
4414     3680,  4854,   150,  4911,  1116,   152,   153,   154,   190,   889,
4415      890,   891,  2324,  4394,   156,   157,  1351,  1352,  1353,  1354,
4416     2050,   158,   159,   160,   161,   162,   163,  1544,   164,   165,
4417     4535,   166,   167,  1506,   168,  1286,  1287,   169,   170,   550,
4418      756,  1290,  1298,   171,   648,  1079,  1080,  1081,  1696,   172,
4419     1124,   928,   649,  1074,   174,   650,  2010,  2699,  3353,  3354,
4420     3357,  4246,  3882,   651,  2696,   177,  1736,  2476,  2479,  2692,
4421      652,  2704,  2705,  2706,  2707,  2708,  3360,   653,   671,   983,
4422     2370,   654,  1217,   182,   183,   184,   766,   760,   761,   186,
4423     1841,  2639,   687,  1305,   725,   726,   774,  3327,  1978,  1979,
4424     2001,  2002,  1314,  1315,  1991,  1993,  2680,  1994,  2688,  1984,
4425     3859,  4472,  4473,  4474,  4475,  4476,  4477,  4231,  1997,  1998,
4426     1317,  1318,  1319,  2006,   187,  2643,  3307,  3308,  3309,  3836,
4427     3837,  3851,  3847,  4215,  4458,  3310,  1114,  1325,  4223,  4926,
4428     3311,  4449,  4450,  4640,  3854,  3318,  3351,  3052,  3053,  3054,
4429     2028,  1631,  1021,  1218,  1022,  1645,  1219,  1615,  1024,  1220,
4430     1221,  1222,  1027,  1223,  1224,  1225,  1030,  1607,  1634,  1226,
4431     1227,  1625,  1642,  1643,  1685,  2550,  1229,  1230,  1231,  3313,
4432     1232,  3792,  4182,  4171,  2571,  2572,  1864,  3788,  3253,  1836,
4433     2629,  4481,  4657,  4658,  3292,  3817,  4198,  4447,  4773,  4861,
4434     4862,  1233,  1234,  1235,  2626,  1832,   858,  1236,  3573,  1834,
4435     2565,  2651,  2652,  1739,  1759,  2518,  2534,  2535,  2545,  3212,
4436     2553,  2558,  3240,  3241,  2566,  2595,  1237,  2520,  2521,  3196,
4437     1761,  1238,  1279,  1876,  1280,  1756,  2590,  1293,  1294,   758,
4438     1246,  1239,  1240,  1730,   749,  4454,   545,   815,  2880,  1956,
4439      893,   684,  1241,  1242,  1243,  1244,  1424,   830,  1041,  1042,
4440      546,   809,   832,  2856,   547,   548,   811,  1961
4441 };
4442 
4443 /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
4444    STATE-NUM.  */
4445 #define YYPACT_NINF -4498
4446 static const int yypact[] =
4447 {
4448     3868,     9, 11062, -4498, -4498,     9, -4498, 63467,   -12,   154,
4449     1019,   161, 11885, 63902, 70862,   199,   366, 12007,     9, 70862,
4450     1190, 48677, 60422,   272, 70862,   849,   498, 48677, 70862,  1463,
4451    71297,   778,   758,   129, 71732, 64337, 59117,  1071, 70862,   993,
4452     1242, 72167, 64772,   734, 65207,   498, 45207,    91,   823, 72602,
4453    70862,  1807,  1352,   968, -4498, -4498, -4498, -4498, -4498, -4498,
4454    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4455    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4456    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4457    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4458    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4459    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4460    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4461    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4462    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4463    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4464    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4465      -12, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4466    -4498,  1723, -4498,   841,  1782,  1273,   884,  1128, -4498, -4498,
4467    -4498, 56942, 70862, 70862, 70862,  1354, 70862,  1272, 70862,   386,
4468    56942, 52592, 65642,  1442,  1362, 41721, 73037, -4498, 51287, 70862,
4469    70862, 73472, 70862,  1516, 61727, 70862,  1382, 70862, 70862, 53027,
4470    73907,  1581,   915, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4471    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4472    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4473    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4474    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4475    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4476    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4477    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4478    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4479    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4480    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4481    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4482    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4483    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4484    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4485    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4486    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4487    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4488    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4489    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4490    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4491    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4492    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4493    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4494    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4495    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4496    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4497    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4498    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4499    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4500    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4501    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4502    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4503    70862, 12498,   849, -4498, -4498,  1807, 70862,  1580, 56942, 70862,
4504     1344, 70862,  1477, 70862, -4498, 70862,  1501, 74342,   415,  1300,
4505    52592,  1729, 42157,  1614, 70862, 52592, 74777, 70862, 70862, -4498,
4506    -4498,  1630, 70862, 70862, -4498,  1707, 53462,  1405,  1743,  1912,
4507     1821,   964, -4498, 66077, -4498, -4498, -4498, -4498, -4498, -4498,
4508    -4498, -4498, 56072,   366, -4498, -4498,  1781, 57377, 70862,  1864,
4509    -4498, -4498, 75212, 90389,  1669, -4498,   416, 57812, 53897,  1980,
4510     1651, 42593,  2032, 75647, 54332, 76082, -4498, -4498, 76517, -4498,
4511    76952,  1758,  1864, 77387, 90812, 54767, -4498,  1884, 77822, -4498,
4512     1652,  1286,  1052, 37773, -4498, -4498, -4498,   -12, -4498, -4498,
4513    -4498, -4498, -4498, -4498, -4498, -4498,   309,  1353,   248,   205,
4514      252, -4498, -4498,   208,   210,   213,   309,  2128,  2128, -4498,
4515    70862, -4498, -4498,  1353,    37,  1666,  1666,  1666,  1881,  1030,
4516    -4498,  1666,  1819, -4498, -4498, -4498, -4498, 65207, -4498,  1693,
4517    66512, 70862, 66947,   849,  1701,  2104,  1760, -4498, -4498, -4498,
4518    -4498, -4498,  1755, 70862, 70862, 70862, -4498, -4498,  2129,  1747,
4519     1979,  1756, -4498, -4498, -4498,  1934,  1944,  1942,   133,   849,
4520     1858, -4498,  2064, -4498,  1985, 27502, 27502,   849, 67382, 78257,
4521      240, 56072,   849, 67817,  1839,  1155,  1990, -4498, -4498, -4498,
4522      681, -4498,  2212,  1851,  2055,  1756,   915, 39086, -4498,  1842,
4523     1401, 65207, -4498, -4498, -4498,   353,  2148, 27954, -4498, 70862,
4524     1852, -4498,  1874,  1852,  1891,  1906,  1273, -4498,  3868, 70862,
4525     1257,  1257,  2259,  1257,  1716,  1732, -4498,  1877, -4498,  2173,
4526     2139, 65207,   823,   201, -4498, -4498, -4498, -4498, -4498, -4498,
4527    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4528    -4498, -4498, -4498, -4498, -4498, -4498, -4498,  1914,  1401, -4498,
4529      241, -4498,  1174,  1913,  1258,  3041, -4498, -4498,   761, 70862,
4530     2046,   197,    25,  1955, 68252,  6313,  1954, -4498, -4498, -4498,
4531     2108,   978, -4498, -4498, -4498, -4498,  2248,  2288,  5603,   303,
4532    68687, -4498, -4498, -4498, -4498, 70862, 70862, -4498, -4498, -4498,
4533    -4498, -4498, -4498, -4498, -4498, -4498,  1996, -4498, -4498,  1988,
4534     2309,  2196,  2280,  2152,  1205,  2216,   694,  2338,  6386,   913,
4535    66512, 70862,  2305,  2358,  5912,  1389,   247,  2249,   872,  2356,
4536     2217,  1566,  2401,  7004, 70862, -4498,  2343,  2468,    78, -4498,
4537      244, -4498,  2184,  2325,   689,  2357, 56942,  2137, -4498, -4498,
4538    70862, -4498, -4498, 91235,  2211, -4498,   440, 56942, -4498,  2339,
4539     2189, 43029, 70862, -4498, 70862, -4498, -4498, -4498, -4498, -4498,
4540     2266,  2448, 70862, 91235, -4498,  2399, 70862, -4498,  2153, -4498,
4541    -4498, -4498, -4498,  1666, 70862,  2155,  2546, 91235,   145, 70862,
4542      -10,  2578, 70862,  2368,   -10,  2195, 78692, -4498, -4498,   -10,
4543    -4498, -4498, -4498, 70862, 70862,  2172,  1560,  2370,   -10,  2391,
4544     2596,  2600,  2258,  2373,   788,  1393,   182,  2494,   -10,  2237,
4545    79127, 79562, 70862,  2241, 70862,  2579, 56942, 70862,  2503, -4498,
4546     2364, -4498, -4498,   300, -4498, -4498, -4498, -4498, -4498,  2517,
4547     1914,   225,  2519,  2210,  2523, -4498, -4498, -4498,  2257, -4498,
4548     2257,  2257,  2214,  2214,  2382,  2218,  2529, -4498, -4498, -4498,
4549     1541,  2257,  2214, -4498, 92081, -4498,  1281,  1315, -4498,   163,
4550    -4498,  2646, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4551      150, -4498,  1018,  1662, -4498, -4498,  2260, -4498,  2539,  1954,
4552     2540, -4498,  2226, 79997, -4498, 80432, 80867,  2543,  1996, 52592,
4553     2544,  2427,  2547,  2226,  2552,  2428,  2553,   225,  2554, -4498,
4554      800,  2549,  2559,  2444,  2563,   163,  2564,  1643,  2226, 56507,
4555     2565,   167, -4498, 29762, -4498,  2345, -4498,   823, -4498,  1459,
4556    -4498, 47807, -4498,  1052,  1353, -4498, 70862,  1353, 70862,  1353,
4557    70862,  1353, 70862,  1353, 70862, 70862, 70862,  1353, -4498, -4498,
4558    -4498, 70862,  2265, 70862, 70862, -4498, -4498, -4498, 60857, 52592,
4559    61292, -4498, 70862, -4498,    89,   849, -4498, -4498, -4498,     0,
4560    -4498,  1756, -4498, 91235,  2679, 52592,  2579, -4498,  1524, -4498,
4561    -4498, -4498, -4498, -4498, -4498,  2507, 70862,  2570,  2573, 60857,
4562    52592, -4498, 81302, 56072,  2469,  2274, -4498, -4498, -4498, -4498,
4563    -4498,  1677,  2725,   324,  2726, 29762,  2281,   312,   312,  2282,
4564     2580, -4498, -4498, -4498,   285,  2283,  2284, -4498,   237,   237,
4565     2285,  2286, -4498,   270,  2289,  2290,  2737,  2740,   274,  2292,
4566     2294,  2295,  1541,   312, 29762, -4498,  2298,   237,  2306,  2307,
4567     2311,  2754,  2312, -4498,  2758,  2313,   335,   340,  2314,  2315,
4568    -4498,  2285, -4498,   238,  2316,  2318,  2319,  2320,  2321,  2322,
4569     2323,  2324, 29762, 29762, 29762, -4498, 26146,  1401,   849, -4498,
4570    -4498, -4498, -4498, -4498, -4498, -4498, -4498,   276,  4980, -4498,
4571     2359, -4498, -4498,  2509, -4498, -4498, 29762, -4498, -4498,    62,
4572    -4498,   277, -4498, -4498, -4498,  1401,  2582,  2326, -4498, -4498,
4573     1283,  2327, -4498,  1808, -4498, -4498, -4498, -4498, -4498, -4498,
4574    55202,  2748, -4498,   781,   849,   244,  1121,  2694, 46937, 47372,
4575    -4498, -4498,  2571, -4498, 70862, -4498, -4498, 29762, 44772, -4498,
4576     1401,   120, -4498, -4498, -4498, -4498,  1562, -4498, -4498, -4498,
4577      -12, -4498, 11322, -4498,  1564,  1852, 70862, 70862,  2753, -4498,
4578    -4498, -4498,  1874, -4498, -4498,  1273,  1273, 29762,  1273,  1028,
4579     1267, 28406, 29762,  2635,  2532,  1193,  1120,  2637, -4498,  2536,
4580     1716,  1732, 65207, 70862, 81737,  2453, -4498, 45642,  1317,  1401,
4581     2417,  2418,  2470, 49547,  2340,  2424,  2425,  2476, -4498,  2588,
4582    -4498, -4498,  2430,  2501,  2439, 82172, -4498, -4498,   961, -4498,
4583    -4498, -4498,   961, -4498,  2375,  1014,   906,   266,  2442,   239,
4584      212,  2739, -4498,  1325,  2493, -4498, -4498, -4498,  5972, 70862,
4585     2687,  8039,  2572,   303,  2575,  2504, -4498, -4498,  2624,  2463,
4586    70862,  2464,  2591,   303,   308, 82607, -4498, -4498, -4498, -4498,
4587    -4498, -4498,  5490, 24848, -4498,  2467,  2446,  2477, 70862, 58247,
4588      776,  2587,  2590,  1251,  1703,   202,  2524, 70862,  1369,  2597,
4589    70862,  2400,  2478,  2479,  2683,  2404,  1725,  2778,  2402, -4498,
4590    -4498, -4498,  1900,  2592, -4498,  2681,  2723,  7433,  2480,  2484,
4591    89543,   896, 43465, 70862, 70862,  2764,  1367,  2491, -4498, -4498,
4592    -4498,  1367, 70862,  2499,  2510, 70862,   303, -4498,  2818,   303,
4593      303,  1374,  2826,  2514,   464,  1309,   -10,  2402,  1579, -4498,
4594     2515,  2518,   259, -4498,  2622, -4498, -4498,  2525, 65207,   250,
4595     1588,  2402,  2522,  2531,  2404,  2404, 70862, 70862, 70862, 70862,
4596    70862,   170,  2855,  2859,  2533,   200,  2581,  2454, -4498, 51722,
4597     2534, 78257, -4498, -4498, 70862,  2537,  1825,  2402,  1458,  1402,
4598    -4498, -4498, -4498,   915, -4498, 70862, -4498, 70862, -4498,  1914,
4599    91235,  2653,  2713, -4498,  2497, -4498,  1954,   303, -4498, 70862,
4600    70862,  1996,  2656,  1416,   904, 91235,  2659,  2720, 70862,  2724,
4601     2548,  2508,  2541, 46072, -4498,  2172,  2481,  2895, 70862, 49547,
4602    -4498,  2907,   961, -4498, 91235,  2673,  2792, -4498, 70862,  2690,
4603     2486, -4498,  2838,  2551, -4498, -4498,    59, 70862, -4498,  2806,
4604    52592,   325,   849,  2538, 52592,  2728, 70862, 70862, 70862, 70862,
4605    -4498, -4498,  2697,   809,   224, -4498, 51722, -4498, 70862,  2709,
4606     1579,  2710,  2922,    70,  1666, 83042,  2805, -4498, 83477,  2513,
4607     2929, 91235,  2760, -4498,  1803, -4498,  2640, -4498, 56942,   225,
4608    -4498, -4498, -4498, -4498, 91235, 70862, -4498,  2516, -4498, -4498,
4609    29762, -4498, -4498, -4498,  2128, -4498, 91235,  2257,  2257, -4498,
4610    -4498,  2937,  2598,  2599,  2128, -4498,  2128, -4498, 91235, -4498,
4611     2526,  2527,  2636,  2128, -4498,  2605,  2606,  2607, -4498,  2535,
4612     2608,  2128, -4498, -4498,  1787, -4498, 83912, 56942,   225, 52592,
4613    52592,  2844,   167,  2845,  2593,  2853,  2601, 43465,   225,   181,
4614    70862, 70862, 52592, 70862, 70862, 70862, -4498, 70862, -4498, -4498,
4615    -4498, -4498, 91235, 70862, 70862, 91235, -4498, 52592, 51722,  2856,
4616     2858,   225, 70862, 70862, -4498, 11322,  1569, 84347,  1052, 55637,
4617    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, 70862, -4498,
4618    70862, -4498, 70862, -4498, 70862, -4498, 70862, -4498, -4498, -4498,
4619    70862, -4498, 70862,  1583, -4498, -4498,  1589,   134, 70862, 70862,
4620      693, 56942, 70862,  2747, 70862, 70862, 70862, 70862, 70862,  2626,
4621     2327,   560, -4498,  1322,   203, 65207,  2756, -4498, -4498,  1607,
4622     1807,  1085, 70862,   931,  1755, -4498, -4498, 61292, 60422,  2851,
4623       79, 70862, -4498, -4498,  3877, 29762,  1401, 27050, -4498, -4498,
4624    11322,  2603, 29762, 29762,  2557,  2128,  2128, -4498,   858, 29762,
4625    29762, 29762,  2128,  2128,  2997, 29762, 43465, 29762, 32926, 23066,
4626    29762, 29762, 26598, -4498, 29762,  2777, 34276, 29762,  1121,  2781,
4627    29762,  1121,  2997,  3005,  3005,  1233,  4294,  2566,  1401, -4498,
4628     2128,   844, -4498,   223, 91235, 29762, 29762, 29762, 29762, 49547,
4629     2647,   185, 70862, 29762,  2569,  1697, -4498, 29762, -4498,  2574,
4630    29762,  2648,   221, 29762, 29762, 29762, 29762, 29762, 29762, 29762,
4631    29762, 29762, -4498, 35150,   232,  2860,  2880,    22,   379, 69122,
4632    27502,  2873, 22160, -4498,   288,  2873, -4498, -4498, -4498, 70862,
4633     2748, -4498, -4498,  2654, -4498, -4498, -4498, -4498, -4498,   289,
4634    -4498, -4498, -4498, -4498, -4498, -4498, -4498,  2577, -4498, -4498,
4635    -4498, -4498,  2577, -4498,  2583,  7203,  2586, -4498, -4498, -4498,
4636    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4637    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4638    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4639    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4640    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4641    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4642    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4643    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4644    -4498, -4498, -4498,  2867,  2874,   225, 70862,   353, 62162, -4498,
4645    27954, -4498,  1618, -4498,  2595, -4498,  2849, -4498,  2594, -4498,
4646     8992,  2849, -4498, -4498,   189,  2707,  2847,  2790, -4498, -4498,
4647    -4498,  2602, 11322, -4498,  1577, 11322,  1786, -4498, -4498, -4498,
4648    -4498, -4498, -4498,  1139, -4498, 70862,   893,  2635,  1120,  2657,
4649      851,  3019, 70862, -4498, 39523,  2788, -4498,  3006, -4498, 92081,
4650    -4498,  2604, -4498, 91658, 88262, -4498, -4498,   550, -4498,  1022,
4651     2684,  2685,  2741, 52592, 70862, 70862, -4498, 49547, 52592, 70862,
4652    70862, -4498, 52592, 70862, 70862, -4498, -4498, -4498, -4498, -4498,
4653    48242,    47, 60422,  2745, 59552, -4498, -4498,  2614, 70862,  2674,
4654     2869,  2870,   -15, -4498, -4498, 84782, -4498,  2827, 52592, 70862,
4655    70862, 29762,  2832, 70862, 70862, -4498,   437,  2700,  2714, -4498,
4656    70862,  2719, 56942,  2630, 70862, 70862, 91235,  2704,   656, 56942,
4657     2686, 43901, 70862, 70862, 70862, 70862,  2767,  2945, 91235, 70862,
4658     2893,  1239, 65207,   345,  1829,  2402,  2852, -4498,  2958,   704,
4659    -4498, 52592, -4498, 70862,  2854, -4498, -4498, -4498, 69557,  3062,
4660     2768, -4498, -4498, 85217, -4498, -4498, -4498,  1628, -4498, 52592,
4661    52592, 70862,  9340, 85652,   729,  2877, -4498, -4498, 91235, -4498,
4662    70862, 70862, 70862,  2969,  2900, 70862, 62597, 86087, 86522,  1196,
4663     1268,  2908, 70862, 63032,  2909, -4498,  2802, 70862, -4498, -4498,
4664    49982, 52592, 70862,   284, 49547, -4498, -4498, 70862, -4498,  2868,
4665      273, -4498, 70862,  8868, -4498,  2751,  2762, 70862,  2875,   346,
4666     1841,  2402, 70862, 70862,  2671,  1638,  2757,    53, -4498,  2876,
4667       63, 70862, -4498, 52592,   471, -4498,  2831, 52592, 70862,  9905,
4668    -4498, -4498,   303, -4498, -4498, -4498, -4498, -4498, 70862, 70862,
4669      303, 70862,   303,  1380, -4498, 52592, 70862, -4498, -4498, -4498,
4670    70862,  9385, 70862, 70862, 70862, 70862, 52592, 70862, -4498, -4498,
4671     1264,   975,  1489,  1515,   735, 70862,  2962, 70862, 86957, 52592,
4672    70862, 70862, 70862,  1573, -4498,  2816, -4498, 52592,   471,  9600,
4673    70862, 70862,  2783,  2784,   195,  2863, -4498, -4498, -4498, -4498,
4674    -4498, -4498,  2952,  3120, 87392,   263, -4498,  2956,  2961,  2765,
4675     2766,  2965, 70862,   263, 70862, -4498, -4498, -4498, -4498,  2966,
4676    70862,   263,  2973,   263,  2883,  2905,   142,  2992,  2738,  1672,
4677    -4498, -4498, 29762, 91235, -4498,  1684, -4498,  2744,   809, -4498,
4678    -4498, 49547, 70862,   178,   126,  3038, 58682,   963,  3028, 70862,
4679     2771, 70862,  3030,   963, 70862, -4498,  1452, 60422, -4498, -4498,
4680    -4498, -4498, -4498, -4498, -4498, -4498, -4498,  3032, -4498,   849,
4681     2172,  2172,  2172,  2172, -4498, -4498, -4498, -4498,  2934,  1711,
4682    -4498,  2743,  2172, 70862,  2857,   963,  2749,  3049, -4498,  1579,
4683     3050,   897, 70862, 58682,  1863,  2774,  2949,  3163,  1666,   849,
4684     2955,  2942, -4498, 25271,  8433,  2944,  2998, 56072,  3033,  3036,
4685     3055, -4498,  1914, -4498,  3175, -4498, 29762,  1690,  2761,   163,
4686    -4498, -4498,  2759,  2527,  2775,  2776,  2763,  2769, -4498,  2128,
4687      184, 70862,  2770,  1223,   696,  2884,  2128,  2981,  2772, -4498,
4688     3077,   225,  1954, -4498,  2226, -4498, 70862, -4498, 70862, 70862,
4689    70862, 70862,  1996, -4498, -4498,  2963,   225,  2226,  2968,   225,
4690      225, -4498,  3013,  2970,   225,   163,  2226,  2892,  3078, 56072,
4691    -4498,   167, -4498, -4498, 29762,  2985,  1666, -4498, -4498, -4498,
4692    -4498, -4498, -4498, -4498, -4498,  1706, -4498, 70862, -4498,  3052,
4693     3053,  3054,  2779,  2782,  2813, 70862,  2785, -4498,  2779,   303,
4694     2779,  2327,  2327,  2779,  2782, 52157,  3216,  3076, -4498,  2865,
4695     2791,  3089,   697, -4498,   699,   834,  3015, -4498, -4498, -4498,
4696    -4498, 91235, -4498, 52592,  2833, 70862, 70862, -4498,   143,  2993,
4697     2796, 52157,  3203,   225, -4498, 56942, -4498, -4498, 91235,  2878,
4698     2891, 56942,  3003,  2864, -4498, -4498, -4498, -4498, -4498, 91235,
4699    -4498,  3058, 70862,  1708, -4498, -4498,  1530, -4498,  1540, 29762,
4700      207, -4498,  9880,  1712, 29762,  2808,  2812, -4498, -4498, -4498,
4701    -4498, -4498, -4498, -4498,  2820,  3118, -4498,  1741,  1746,  1751,
4702     2824,  2828,  2701,  2829,  9945,  2830,  2843, 32926, 32926, 26146,
4703     2174, -4498, 32926,  2837,  3007,  1753,  9315,  2840,  2848, 10266,
4704    28858, 29762, 28858, 28858, 10473,  2840,  2861,  1759, 49547,  3002,
4705    10863,  1761, -4498, 29762, 49547,  3357, 29762, -4498, 29762,  2862,
4706    -4498, -4498,  5433,  5433,  5433,  2997, -4498,  2850, -4498, 32926,
4707    32926, -4498,  1517, 26146, -4498, -4498,  3127, -4498, -4498,  1544,
4708    -4498,  2866, -4498, -4498,  2092, 43465,  4331, 29762,   227, 29762,
4709     2569, 29762,  2925,  5433,  5433,  5433,   352,   352,   190,   190,
4710      190,  1762,   379, -4498, -4498, -4498,  2871,  2887,  2889,  3029,
4711     2894, 29762, -4498,  1930,  2040, 70862,  2433,  2663,  2872, -4498,
4712    -4498, -4498, 36025,  2888, 29762, 29762, 29762,  2897, -4498,  1855,
4713    11322,   114, -4498,   292,  2888, -4498,   915,  2128,   844, 47807,
4714    -4498, -4498, 29762, -4498, -4498, -4498,  1874, -4498, -4498, -4498,
4715    -4498, -4498, 70862,  1807, 29762, -4498, -4498,  3072,  2879, 29762,
4716     1577, -4498, -4498,  2910, -4498, 29762, -4498, -4498, -4498,  2327,
4717    -4498,  3080, -4498, -4498, -4498, 36025,  2896,  2903, 38648,  3051,
4718    -4498, 70862, -4498, 70862,   151, -4498, -4498, -4498,  2901, -4498,
4719    -4498, 88262,  1662, -4498, 91658, -4498, 91658, -4498,  1662,  3258,
4720    -4498, 88262,  1466, 52592, 70862, 70862, -4498, -4498, -4498, -4498,
4721    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498, 52592,
4722    52592,  3059, 70862,  3060,  3061, 29762,   835, 70862,  2899,  2902,
4723     1067,  3130, 70862, -4498,  3184,   225, -4498, -4498,  2972, -4498,
4724    11322, -4498, -4498, -4498, -4498, -4498, 52592, 70862, -4498, 56072,
4725    -4498,  1914, 91235, -4498, -4498, -4498, 70862,  2923, 70862, -4498,
4726    70862, 70862, 70862,  1996, -4498, -4498, -4498, -4498,  1004, 91235,
4727    -4498, -4498, 70862, 70862,   628,  2977,  2980, 70862, -4498,  1062,
4728     2622, 10164, 70862, 70862, 70862,  3153, 70862, -4498, -4498, -4498,
4729    -4498,  3096, -4498, -4498, 88262, -4498,  2226,   861,  2982,  2402,
4730     3104, -4498,  3218,  3094, -4498,  1079, -4498, 70862,  3031, -4498,
4731    -4498, -4498, -4498,  3220,   225,  3224,   225, 70862, 70862, 70862,
4732    70862,  3035, -4498, -4498, -4498, -4498,  3037,  3154, -4498, 49547,
4733    49547, 49547,  1774, -4498, -4498,   849, -4498, -4498, -4498, -4498,
4734    -4498, -4498,  3187, -4498,  1775, -4498,  1046, -4498, -4498, -4498,
4735    -4498, -4498, -4498, 52592, 70862, 10496,  3231, 70862, 70862, 70862,
4736     1400, -4498,  1015, 91235, -4498, 89966, 52592, 70862, 49547, 70862,
4737     2999, 52592,  2978, -4498, -4498, -4498,  3159,  3099, -4498,   278,
4738     3100, 52592,  2986, -4498,  3008, -4498, -4498,  3009,  1895,  2402,
4739     1579, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,   901,
4740      383,  1923,  2402,  3011, -4498,  3017, -4498, -4498, -4498,  3156,
4741     3167,  3170,  3022,  3023,  3073,  3027,  3039,  3079, -4498,  3040,
4742     3081,  3042,  3086,  3145,  3043,   225, 91235,  3160,   849,  3068,
4743     3280,   225, -4498,  3046, -4498, -4498,  3383, -4498, 70862, -4498,
4744     3048,  1966,  2402, -4498, -4498, 52592, 70862, -4498, -4498, -4498,
4745      263, 91235, 70862,  3226, -4498, -4498, -4498,   263,   263, 70862,
4746    70862,   263,  3228, -4498,  3229, 70862,  3230, -4498,   263, -4498,
4747    -4498,   222, -4498, -4498, -4498,  2883,  3257, 41285, -4498,  3430,
4748     5155,  2979, -4498, 49547, 41285,  1734,  1724,   118,   -10, -4498,
4749    56072, 70862, 56072, -4498,   126,  3094, 70862, 70862,  2994,  2983,
4750    -4498, -4498, -4498, -4498, 52592,   715, 52592,  2128, -4498, -4498,
4751     3064, -4498, 70862,  1666,   394,  3071,  3394,  2600,   325,  3125,
4752     1620,  3351,  2774, -4498, -4498, -4498, -4498, 70862, 70862,   809,
4753      849, -4498,  3000,  2996, -4498, 70862, 70862, 70862, 70862, 70862,
4754     2833,  3004,  3010, 91235,    46,  3198,  3199,  2404,  3427,  3321,
4755     1807,  2774,  3090,  3324, 70862, -4498,  1784,   125, -4498,   849,
4756    56072, 88685,  3316, -4498,  8225, -4498, -4498,   677, 70862,  3303,
4757    -4498, -4498,  1807,   225, 91235,  1800, -4498, -4498, -4498,  2128,
4758    -4498, -4498,  1343,  1343,  3020, -4498,  3021, -4498,  3413, -4498,
4759    -4498, -4498, -4498, -4498, -4498,  3026, -4498, -4498, 70862, -4498,
4760      225,   167,  3082,   225,  3083,   225,   225, 70862, -4498, 70862,
4761    -4498, -4498, 70862, 70862, -4498, -4498, 70862, 51722,   225, -4498,
4762    11322,  3335, -4498, -4498,  3150,  3158,  3161, 70862,  2779, 56942,
4763    -4498,  3034, 52592,   771, -4498, -4498,  3234, -4498, -4498, 65207,
4764     3157, -4498, -4498, -4498, -4498,  3363,  3364, -4498, -4498, -4498,
4765      255, -4498, -4498, -4498, 52592, 60857,   254, 52592, -4498,  1914,
4766     3304, -4498, -4498,  1954,   303, -4498,  3308, 70862,  3309, -4498,
4767    -4498, -4498,  3075, 10976, 29762, -4498,  3372, 91235, -4498,  5567,
4768    -4498, -4498, -4498, 29762, -4498, -4498, -4498, -4498, -4498, 29762,
4769    -4498, 29762,  3365, -4498, 23519,  3512,  3512,  3067, 91235, 32926,
4770    32926, 32926, 32926,  1306,  2306, 32926, 32926, 32926, 32926, 32926,
4771    32926, 32926, 32926, 32926, 33830,   466, -4498,  3259, 29762, 29762,
4772     3375,  3365, -4498, 91235,  3087,  2840,  3091,  3092, 29762, -4498,
4773    -4498,  1816, 34713,  3093, 49547, -4498, 29762,  9333,  1817,  3121,
4774    11067,  1401,  5637,   849, 29762,  2496,  4557, 29762,  1822, 29762,
4775     3376, -4498, -4498, -4498,  3097, -4498, -4498, 91235, 29762,  3098,
4776     2662, 32926, 32926,  2823, -4498,  3410, 29762, 26146, -4498,  3265,
4777     3128, 39960, -4498, 23972,  3105,   498,   498,   498,   498, -4498,
4778    70862, 70862, 70862, 36462,  3378, 35587, 69992,  3106,  1856, -4498,
4779    69992, 70427, -4498,  3115, -4498,  3102,  1401, 29762,  3390,   709,
4780      709,  3265, -4498, 29762, 29762, 29310,  3110, -4498,  3390,   244,
4781     3111, -4498, -4498, 11322,  3114, -4498, -4498,  3113, -4498,  3117,
4782    -4498,  2879,   231, -4498,  5689,  3311, -4498, -4498, -4498,  3106,
4783    30214,  3252, -4498,  1823, -4498, -4498,  3494,  3252, -4498, -4498,
4784     1835, 39523,  2896, 27954,  1401,  1857,  1486, -4498, -4498, 88262,
4785    -4498,  3188, -4498, -4498, -4498,  2226,  2226,   986,  2779,  3422,
4786      986,  5979, -4498, -4498, 36899, 70862, 70862, -4498, 70862,  1862,
4787     1440, 70862, -4498, 70862, -4498, -4498, -4498, -4498,  3542, -4498,
4788    70862, -4498, -4498,  3178,  3179, -4498, 70862, 70862, 70862, 70862,
4789     3373, -4498, -4498,  1913, -4498, -4498, 52592, 70862, -4498, -4498,
4790    -4498,   380,  2208,  2402, -4498,  3205, -4498, -4498, -4498,  3388,
4791    -4498,  3531,  3215, 70862,  3443, 70862,  3133, -4498,  1440,   775,
4792     2404,   863, -4498, -4498,  3201, -4498, -4498, 70862, -4498, 70862,
4793    -4498, -4498, -4498, -4498, -4498, -4498, -4498,  3260, -4498, -4498,
4794    -4498, -4498, 49982, -4498, -4498, 70862, -4498, 49547, 41285, 49547,
4795    -4498,  1117,   387,  2271,  2402, 70862, -4498,  3212, -4498,  3213,
4796     3217,  3268,   953,   937,  3221,  3222,  3269,  3146,  3147,  3148,
4797    -4498, -4498,  1866, -4498,  3162,  3290, 70862,  2226,  3164,  3185,
4798      309,   849, -4498, -4498,   849,  2226,   849, 70862, 70862, 70862,
4799     3555,  3239, 70862, 70862, 70862, 70862, 70862, 70862,  3456,   721,
4800     1700, 52592, 70862, 70862, 52592, 70862, 70862, 70862, 70862, 70862,
4801    70862,  3467, 70862, -4498,  3543,  3470,  1680,  3513,  3227, 70862,
4802    -4498, 70862,  2622, 70862, 70862, -4498, -4498, -4498,  3165,  3414,
4803      263, -4498, -4498,  3415,  3419, -4498,   263,   263,  3423,   263,
4804    -4498, -4498, -4498,   -10, -4498,   222, 70862,  3117,  2128,  1900,
4805    -4498, -4498, -4498, -4498, -4498, -4498,  2738, -4498, -4498,  2114,
4806    -4498, -4498, 70862,  3172, 70862, 70862, 32926, -4498,  1340,   265,
4807    -4498,  3424, 70862,  3209, -4498, -4498, -4498,  3334, 70862, -4498,
4808    -4498, -4498, -4498, -4498,  3177, -4498,  3446, 58682,  2226, 52592,
4809    52592,  2226, -4498, 91235,  3180,  2774, -4498, -4498, -4498, -4498,
4810    -4498, -4498, 52592,  2978, 52592,   325,   838, 87827,  3214, -4498,
4811     3181,  3481, -4498,  3186,  3189, -4498, -4498, 70862,  3094,  1867,
4812     1579,  3601,   600,  1652, -4498, 59987,  1863,  3446, -4498, -4498,
4813    -4498,  3570,  3277, -4498,  1807, 70862,  2833,  3277,   849, 70862,
4814     2674, -4498, 88262, 29762, 29762, -4498,  3190, -4498,  3195,  8746,
4815    -4498,  3263,  3193,  2172, -4498, -4498, -4498, -4498, -4498, -4498,
4816     3275,  3200, 70862, -4498, -4498,  3202, -4498,  3206, -4498, -4498,
4817    -4498, -4498, -4498, -4498,   225, -4498, -4498, 70862, -4498, 70862,
4818    -4498, -4498,   225,   225,   225,   225, -4498,  3323, -4498, 70862,
4819    70862, 70862, 70862,  2779, -4498,   303, -4498,  3497, 52157, -4498,
4820    -4498,  1875, 70862, -4498, -4498, -4498,  3556,    79,  3503, -4498,
4821    -4498,  3461,   311,  3462,  3464,   311,  3465,   311, -4498, 29762,
4822    11322, -4498,  3219, -4498, 11322,  6030, 11322,  3375, -4498,  1882,
4823    29762, -4498,  2890,  2890,  2890,  4364,  3509, -4498,  1064,  3232,
4824     2890,  2890,  2890,   397,   397,   191,   191,   191,  3512,   466,
4825    11322, 11322, -4498, -4498,  3225, -4498, -4498, -4498,  2840, -4498,
4826    30666,  3366,  3619, -4498, -4498, -4498,  3256,  3264,  3235, -4498,
4827    29762, 31118,  3233, 92081,  3404, -4498,  1605, 29762, 29762,  4444,
4828    -4498,  5304, 29762, 91235,  1883,  4444,   243, 29762,  4635,  5243,
4829    29762, 29762,  3698,  6333,  3237, 29762, 89108, -4498, -4498, -4498,
4830     1890, 29762, 70862, 70862, 70862, 70862, -4498, -4498, -4498, 69992,
4831    70427,  3240, 24410,  1856,  3238, 70862, -4498, -4498,  3241, 36025,
4832     3471,  3416, -4498, 36025,  3416,  1375,  3416,  3477,  3315, 40397,
4833    -4498, -4498,  3242,  3417, -4498, 22160,  1473, 11322,  3637,  3527,
4834    29762,  3243,  3245,  3246, 11322, 11322, 29762, -4498,   849,  3527,
4835      849, -4498, -4498, 43465, -4498, -4498, -4498, -4498, -4498,  3447,
4836    11322, 27502, -4498,  1807, 70862,  1401,    67, -4498,  3261, 70862,
4837    -4498,  3252, -4498, -4498,  3318,  1892, -4498, -4498, -4498, -4498,
4838    -4498,  3330, 60422,  3551, -4498, 29762,  1901, -4498,  3292,  3642,
4839      146,  1905,  1933,  1440, -4498,  3209, -4498,  1396,  3528,   192,
4840    -4498,   225, -4498, 91235, -4498, 70862, 70862, -4498, -4498, -4498,
4841    -4498, 70862,  2340, -4498, -4498, 70862, 70862, 70862, 70862, -4498,
4842    52592, 70862, -4498, 70862, -4498, 49547,  1724,  3466, -4498, -4498,
4843     3469,   309, 70862, -4498, 91235,   225,   225, -4498, -4498, -4498,
4844    -4498, -4498,  3270,  3663,  3355, 70862, 70862, 70862, -4498, 70862,
4845    52592, 70862, 70862,  2128,  2128, 91235,  3267, -4498,  2128,  2128,
4846     3271, -4498, 52592, 70862, 70862, -4498, -4498, -4498, -4498, 49547,
4847    40837,  3350, -4498, 29762,  3664, -4498, -4498, -4498, -4498, -4498,
4848    -4498, -4498, -4498, 52592, 70862,  3353, -4498,  3356, -4498, -4498,
4849    -4498, 70862, 70862, 70862, 70862,  3593, -4498, -4498, -4498, -4498,
4850    -4498, -4498, -4498, -4498, -4498, -4498, 70862, -4498, 70862, -4498,
4851    -4498,   849,   849, 91235,   225,   225, -4498, -4498, -4498,  3535,
4852      263, -4498,   263,   263, -4498, -4498,   263, -4498,  3285,   362,
4853    -4498,  1440,  1670,  3580,  3583, 29762, -4498,  1009,  4364, -4498,
4854    -4498, -4498, -4498,  3209,  1666,  3345, 56942,   855, -4498,  3568,
4855      178, 58682,  1238,  3298,  3425, -4498,  2226,  2226,  3359, 70862,
4856     3725,  2226,  3185, -4498,  3515,   612, 70862,  3635,  3349, -4498,
4857      849, -4498, -4498,  2774, -4498,  1807, 70862, 58682,  2833,  1935,
4858    -4498, -4498, -4498,  3346,  3199,  1863,   847, 70862, -4498,  3347,
4859     3732, -4498, -4498,  3611,  3511,  3319, -4498, 11322, 11322,   849,
4860    92504,  8225, 91235,  3618, -4498, 70862,   228,  3586,   225, -4498,
4861    -4498,   225,   225, -4498, -4498, -4498, -4498, 70862,  2779,  2779,
4862     2779, -4498,  3514, -4498, -4498,  3578, -4498,   225, 52157,   311,
4863    -4498, -4498, -4498,   311,   311, -4498,   311, -4498, 11322, -4498,
4864    -4498, -4498, -4498,  6353, 32926,  3620, -4498,  3326, 91235, -4498,
4865     3327,  1939,  1940, 34276,  3478, -4498, -4498, -4498,  6707,  3379,
4866    11322,  3433,  3328,  3332,  4444,  4444,  5304,  1941, -4498,  4444,
4867    29762, 29762,  4444,  4444, 29762, -4498, -4498,  6993,  3510, -4498,
4868    -4498,  7315, -4498, -4498, -4498, -4498, -4498, -4498, 50417, 69992,
4869     3336, 70862,  1856, 36025, -4498, -4498,  1698, -4498, 36025,  3587,
4870    -4498, 36025, 56942, -4498, 70862,  3337, 70862, -4498,   114, 31570,
4871    29762,  3391, -4498, -4498, -4498,  3265, -4498,  3391, -4498,  3338,
4872    70862,  2326, -4498, -4498,  3713, 36899,  3674,  3354, -4498, -4498,
4873    -4498, -4498, 52157,  3541, 52157,  1440,  7788,  3209, 36899, 44337,
4874    70862, 70862, 70862,  3506,  3209,  3345, -4498, -4498, -4498, -4498,
4875    -4498, -4498,  3358, -4498, -4498, -4498, -4498,  3435, -4498, -4498,
4876      555,  2756, -4498,  1945, -4498, -4498, -4498, -4498, -4498,  3543,
4877    -4498, -4498, 41285, 52592, 70862, -4498,  3437, -4498, -4498, -4498,
4878    -4498, -4498, 38211, 43465, -4498,   953,  3370,  3371,   937, -4498,
4879    -4498, -4498, -4498, -4498, -4498, 70862,  7878,  3374,   865,  2756,
4880    70862, 70862,   -24,  1101,  1445,  2779,  3672, -4498, -4498, -4498,
4881    -4498,  3543, -4498, -4498,   263, -4498, -4498, -4498, -4498, 49547,
4882    -4498,  3381, -4498,   -10,  3701, 56942,  3783,  3783, 70862, -4498,
4883     8182,  3576, -4498,  3345,  3600,  3646, -4498,  3377, 70862,  3537,
4884     3380,  3382,   807,   807, 70862, 70862, 70862,  1946,  1807, -4498,
4885      325,  3694, 58682,  3094, -4498,  1370,  3384,  3702, -4498,  3804,
4886     2833,  3004,  3389, -4498, -4498, 59987,  3582,  3277,  3199,  3522,
4887    -4498,  3524, -4498,  1098, -4498,  1807, 70862, 70862, 36899, -4498,
4888    91658, -4498,  1947, -4498, -4498, -4498,  3463,  2888,  3500,  3518,
4889     3406, 70862,   653, -4498, -4498, -4498, -4498, -4498, 70862, -4498,
4890      254, -4498, -4498, -4498, -4498, -4498,  4625, 32926, 91235,  1959,
4891    29762, -4498, 29762, -4498,  3810, -4498, -4498, -4498,   740, -4498,
4892    -4498, -4498,  4444,  4444,  4444, -4498,  3811,  3265, -4498, -4498,
4893     1961,  3829, -4498, 70862,  1967, -4498, 29762,  3411, -4498, -4498,
4894    36025,  1698,  3412,  1969, 70862,  1976, 91235,  3420,  3418,    18,
4895     3426, 22613,  3429, -4498, -4498, -4498, -4498, -4498, 11322, 11322,
4896    70862, -4498,  3421, -4498, -4498, -4498, 70862,  1991, -4498,    88,
4897    25694, -4498, -4498,   771,   986,   254,  3642,  3345, -4498,  3428,
4898    -4498, -4498, -4498,  1177,  1177, 70862,  3345, -4498, -4498, 70862,
4899     3501, -4498, -4498, 49547,  3483, -4498,   902,  2756, 70862, 91235,
4900     1954,    85, -4498, 91235, 91235, -4498, -4498, -4498, 29762,  3502,
4901    -4498, -4498, -4498, -4498, -4498, 70862, 70862, 70862, 70862, 70862,
4902      225, -4498,  2019, -4498, 37336, -4498, -4498,  2578,   849,  2578,
4903     1545, -4498, -4498,  2578, -4498,  2578, -4498,  3285,   849,  3783,
4904      306, -4498, -4498, -4498,  1376,  3633, -4498,   159,  3621,  3519,
4905     3434, -4498, 56942,  3873,  3446, -4498, -4498, -4498, -4498, -4498,
4906    -4498, -4498, -4498,  2020,  3094,  3742,  2774,  3347, 70862, -4498,
4907    -4498, -4498, -4498, 29762,  3596,  1807, -4498,  1863,  3446, -4498,
4908    -4498, -4498,  3277, -4498, -4498,  3828,  3630,  3830,  2833, -4498,
4909     2674,  2029, -4498,  8746, 92504, 91235,  3772,  3488,  3490, -4498,
4910    -4498,  3493, 70862, -4498, -4498,  3094, -4498,  4625,  2030, -4498,
4911     2037,  2038,  3607,  3495, -4498, 29762,   107,  3115, 50417,  3468,
4912    -4498,  2039, -4498, 11322, 70862, -4498, -4498, 29762, -4498,  2044,
4913    -4498, -4498, 29762,  3473, 29762, -4498, 31570,  3458, -4498,  3883,
4914    -4498, -4498,  2888, 36899, -4498,  3579, -4498,  3761, -4498, 70862,
4915     3505, 43465,  2879,  2879,  1666, -4498,  1440, -4498, 70862, -4498,
4916    29762, -4498,  3559, -4498, -4498,  2050, -4498,  1140,  3622,  3771,
4917     2059,  2068,  8464, 70862,  2782,  1445,  2782, -4498,  2779, -4498,
4918    -4498, 49547, -4498, 50852, -4498, -4498, -4498,   849, -4498,   849,
4919     3678, 70862, 46502,   849,   849, -4498, -4498, -4498, -4498, -4498,
4920     3803,  3748, -4498, -4498, -4498, -4498,   389, -4498,  3677,  3679,
4921    70862, -4498,  3484, -4498,  2074,  3603, -4498, -4498, 70862,  3907,
4922     3910, -4498,   630,  8501, 56942,  3347,  3199,  1863,  1724, -4498,
4923     3683, -4498,  3684, -4498,  3496,  2774,  8225, -4498, -4498,   301,
4924     3787,  3790, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4925     2840, 32022, 32022,  3498, -4498, -4498, 70862, -4498,  2076,  2089,
4926    -4498,  2090, 31570,  2097, -4498, 70862,  3504, -4498, -4498, 39523,
4927    52157,  1177,  3507, -4498,  3508, -4498, -4498,  3600,  1440,  2756,
4928    11322, 70862, 56942,  3900, -4498, -4498, -4498,  3622, -4498, -4498,
4929    -4498,  2756, 70862, -4498, -4498,  2098, -4498, -4498, -4498, 70862,
4930     3181, -4498,  3181, -4498, -4498,  3638, -4498,   753,   753,  3843,
4931    -4498,  3566, -4498, -4498,  3520, -4498,  3960, 70862, -4498,   953,
4932     1807, 58682, -4498,  3516, -4498,  3277,  3199, -4498, -4498, 36899,
4933     3277, -4498, -4498, -4498,  2192, 56942, 56942, 33378,  3644,   842,
4934     9793, -4498, -4498, -4498, -4498,  2099, -4498,  3658, -4498,  2109,
4935    -4498, -4498, -4498,   941,   254,  2879, 29762,  1440, -4498,  3621,
4936    -4498,  2756,  1954, 70862, -4498, -4498, -4498, -4498, 50852,  3181,
4937     3349, -4498,  3956, -4498,   233, -4498, -4498, -4498, -4498,  3094,
4938     3267,  3347, 49112, -4498,  3277,  2110,  2888, -4498,  1952, -4498,
4939    -4498, -4498, -4498, -4498, -4498, -4498,  3521,  3523,  3946, -4498,
4940    -4498, -4498, -4498, -4498, -4498,  3530, -4498, -4498, -4498, -4498,
4941    -4498,  8853, -4498, -4498, -4498, -4498, -4498,  3841, -4498, -4498,
4942    -4498, -4498, -4498, -4498,  2111, -4498, -4498, -4498, -4498, -4498,
4943     2774, -4498,  2061, -4498, -4498,  2119,  1906,  3608,  3827, 32474,
4944    29762, -4498,  1440,  3692, -4498, 49112,  3277, -4498,  1952,  3639,
4945     3641, -4498,  8974, 56942, -4498,  2888, -4498,  3574,  3575, -4498,
4946     3544, -4498,  3835,  3836, 49112, 56942, 56942,  2117, -4498, -4498,
4947    -4498
4948 };
4949 
4950 /* YYPGOTO[NTERM-NUM].  */
4951 static const yytype_int16 yypgoto[] =
4952 {
4953    -4498, -4498, -4498,  3236, -4498,  -848,   333,  2511,  -597, -4498,
4954    -4498, -4498,  3135, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4955     3169, -4498, -4498,  1691, -2234, -4498, -4498,   136,   158, -1220,
4956      119,  2750,  1347, -4498, -1065, -4498, -4498,  -531,   112, -4498,
4957      218,  -700, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -4498,
4958     -752,  1834,  1183,  -312, -2620, -4498, -4498, -1316, -2963, -4498,
4959      543, -4498, -4498,  1771, -4498, -4498, -4498,  1023,   455,  -536,
4960    -4498, -4498, -4498, -4498, -4498, -4498, -4498,  -679, -4498, -4498,
4961     -865,   156,    48, -2251,  -353, -4498, -4498,   422,  -354, -1357,
4962    -4498, -3319, -4498,   -23, -4498, -4498, -4498,  -328, -1319,  1290,
4963    -4498,  -649, -1088,  1590,  -758, -4498,  -218, -4498,  -838,  -687,
4964     -684,  -783, -3502, -3508, -3928, -3532, -3486,  1296,   157, -2874,
4965    -2966,   160,   392, -4498,   162,   164, -4498,   409,  -755, -1368,
4966    -4498,  -818, -4498, -4498, -4498, -2715, -4498, -4498, -4498, -4498,
4967       72, -4498, -4498, -4498, -4498,   451, -4498, -4498, -4498, -4498,
4968    -4498, -4498, -2465,  1748,  1749, -4498, -4498, -2938, -4498,  -822,
4969    -4498,   589, -2764,  1204, -4498, -4498, -4498,  2492, -4498, -4498,
4970    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -1488, -4498, -4498,
4971    -4498, -4498, -4498,   433,   -25, -4498, -4498, -4498, -4498, -4498,
4972      166, -4498,  1763,  1010, -4498, -4498, -4498,  -832,  -924,  -903,
4973    -4498, -2757, -4498, -4498, -4498, -4498,  -295, -4498, -4498, -4498,
4974    -4498, -4498, -4498,  -909, -4498,  1061, -2887, -4498, -4498,  1068,
4975    -4498, -4498, -4498, -4498, -4498,  -773,  -237,  2520, -4498,  -620,
4976     -737, -4498, -4498, -4498,  -235, -4498, -4498, -4498, -4498, -4498,
4977    -4498, -1009,    93,  -981,  -483, -4498, -4498, -4498, -4498, -2147,
4978    -4498, -4498, -4498, -3334, -4498,  4044,   385,   492,   168, -4498,
4979      -29,    61,  2967, -1070, -2415,   357,  -417, -4498, -1685, -4498,
4980    -4498, -4498, -2356, -4498, -4498, -4498, -4498, -3248,   169, -4498,
4981     2953, -4498, -3520, -4199, -3275, -3731, -4059, -4171, -3246, -4498,
4982    -4498, -1029, -4498, -4498, -4498, -1335,  2054, -1786, -4498, -1918,
4983      418,  1360,  -871, -2533, -3530,  -645, -3000, -4498, -4498, -3452,
4984     -532, -4498, -4498, -4498, -4498, -4498, -4498, -4498, -1023,  -560,
4985    -4498, -4498,  3480, -4498, -4024, -4498,  3452, -4498, -4498, -4498,
4986    -4498,  2342,  2346, -4498,  2347, -4498, -4498, -1336,  1141, -4498,
4987    -4498, -4498, -4498,   106, -4498, -4498, -4498, -4498,  -754,  -869,
4988    -4498, -4498, -4498,   172, -4498, -4498, -4498, -4498,  2072,  -840,
4989     -661,  3367,   173, -4349, -4498, -4498,  -894, -4498,  2752, -4498,
4990    -4498, -4498, -4498, -4498, -4498, -4498, -4498, -2545, -4498, -4498,
4991    -4103, -4498, -4498, -4498, -4498, -4498,  2134,  2142,    83,   -40,
4992    -4498, -4498, -1198, -4498,  -519, -4498,  2413, -4498, -4498, -4498,
4993    -4498, -1592,   174,   469, -4498,     3, -4498, -4498, -4498,   234,
4994    -4498, -4498, -3171,     5, -4498, -4498, -4498, -4498, -4093, -4498,
4995        6,  -674,   756, -4498, -4498, -2588, -4498,   175,    16, -4498,
4996    -4498,     1,     2,   -43,   -41,   -32,     4,   117,  2834, -4498,
4997     2881, -4498,    -2,  1810, -4498, -4498,  -759,  -144, -4498,  1446,
4998     -583,  2115,  2804,  2810, -4498,  1437, -4498, -4498,  1448, -4498,
4999      797,  -656,  -527, -4498, -4498, -4498, -4498,   262,  -582,  2125,
5000    -4498,  2817, -4498, -4498, -4498, -1710,  1444, -3158,   830, -3148,
5001    -3121,   320,   296, -1266,  -319,    26,  -686,  2836, -4498, -4498,
5002      848,  -486, -4498, -4498,  -484, -2603,   793, -4498, -4041, -2142,
5003      624,  2542,  -970, -4498, -4498,  -940, 14299, -4498, -4498, -4498,
5004    14936, 15038, -4498, -4498, 15300, 16352, -4498,  -804,  1048, 16536,
5005     7166,  -944, -1649,   -14, 13548, -2275,  -762, -2407, -4498, -3282,
5006    -2334, -4498, -4498, -4498,  -270,   905,   475, -4498, -4498, -4498,
5007    -4498,   -75, -4498,  -619, -4498,  -621, -4498, -4498, -4498,  -602,
5008    -4497,  2335, -4498, -4498, -4498,  -194, -4498, 17317,  1496, -4498,
5009     -878, -2516, -2532, -3156, -1666, -4498, -4498, -4498, -4498, -4498,
5010    -4498, -4498, -1432, -3046,  -616,  1568, -4498, -4498,  1656, -4498,
5011    -4498, -4498, -1231,  1518,  -770, -2422,  1571, -1863, -4498,  -763,
5012    -4498,  -695,  2341,  -711,  6432, -1257,  7065,  -485, -2059, -1163,
5013    -1439, -4498,   -54, -4498,    -7,   -16,     8,  -133,  -160,  -453,
5014     3712, 12813,  -589, -1233, 10067, 12405, 13518, -2854
5015 };
5016 
5017 /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
5018    positive, shift that token.  If negative, reduce the rule which
5019    number is the opposite.  If YYTABLE_NINF, syntax error.  */
5020 #define YYTABLE_NINF -2420
5021 static const yytype_int16 yytable[] =
5022 {
5023      605,   180,   181,   175,   185,   176,   178,   717,   765,   685,
5024     1648,   857,   955,   986,   672,  1713,  1693,  1251,  1320,  1326,
5025      672,  1423,   181,   544,   185,  1658,  1105,  1106,  1107,   673,
5026      595,  1247,  1111,  1492,  1652,   673,  2457,  2063,  1329,   775,
5027     1972,   831,  2136,   751,  1621,  1957,  1554,  1463,   864,  1962,
5028     1504,  3328,  1644,   764,  1082,  3018,  2649,  1575,  2128,   881,
5029      587,  1048,  1611,  1612,  1535,  1281,  2259,  3438,  2148,  1749,
5030      748,   984,  1620,  1627,  1265,   863,  3176,  3603,   940,  3629,
5031     2137,  3038,  3418,   679,  3674,  3458,   880,  3460,  2344,   637,
5032     2214,  2517,  1542,  2945,  3644,  3874,  1547,   718,  1962,  2165,
5033     1957,  1551,  3909,   647,  1975,  2715,  2717,  2670,  3657,  3908,
5034     1558,  3157,    68,  1458,  3321,  3359,  1457,  3581,  3946,  1599,
5035     1577,  3804,  1471,  1076,  2882,  4112,  2983,   995,  3319,  3320,
5036      769,  1497,  3903,  2224,  2987,  2654,  2989,   807,  4104,  4121,
5037     4115,  4065,   986,  3575,   777,  4105,   826,  3833,  2482,  2362,
5038     3575,  1065,  2580,   778,   711,  3261,    77,    78,  2228,  2229,
5039       79,   745,    80,  3850,    81,  2121,   106,   763,   126,   131,
5040     2036,  1053,   151,   155,   173,   179,  4387,   737,  3365,  4262,
5041     1391,  1493,  1068,  4463,  3641,  4465,  3887,   776,  4511,  3848,
5042     2427,  1313,  1316,   655,  3772,  1686,  1608,  1609,   655,  4611,
5043     1258,  1804,  3218,  4504,  1963, -2178, -2083,  1619, -2213,   554,
5044    -2235,  2235,  1632, -2264, -2083, -2083,  4260,  1574,  1600,  1365,
5045     4537,  4538,  1600,  2472,  2588,   596,  4530,   601,  1611,  1612,
5046     1810,  2149,   697,  3009,  3663,  3312,  1600,  2714,  4741,  4687,
5047      874,  2240, -1670, -1698,  2492,   601, -2084,  1620, -2110, -1941,
5048     3031,   754, -2181,  1627, -2084, -2084, -1941,   655,  2623,  3597,
5049     1812,   655,  1839,  1695,   601,  2624,  2588,  2608,   601, -1960,
5050     1734,  2967,  3215,  3216,  1087, -1683, -1960,  3235,  1091, -1710,
5051     1600,   601,   601,   601,  1531,   812,   814,  3364,  3312,   818,
5052    -2419,   820,  1140, -2055,   601,  2793,  2449, -2054, -2419, -2419,
5053    -1698,  2993,  3174,  4269,  1538,  3648,  2297,  1421,  3314,  1600,
5054     2642,   878,   655,   698,  3265,  3266,   601, -1703,   655,  4723,
5055     2069,  2071,  2139,  4562,  1366,  1476,  2352,  4244,  4852, -1703,
5056     1102,  2222,  4672,  4673,  3419,  4664,  3194,  3010,  1797,  1501,
5057    -1713,  2869,  4939,  2473,  4718, -1713,  2630,  2065,  1593,  1255,
5058     3123,  1521,  3125,  1608,  1609,   885,  1282,  3725,  2341,  4653,
5059     4918,  3314,  2310,  1804,   661,  -835,  1477,   661,  2739,   661,
5060     2794,   601,   661,  2890, -1703,  2066,  4061,  1268,   857,  1619,
5061      772,  2887,  3875,     3,     4,  2751,   662,  4408,   188,   662,
5062     1804,   662,  1810,  2859,   662,  4533,  4844,  2609,   549, -2234,
5063     1594,  4155,  2610,  4157,  2779,  4771,   670,   661,  3218,  1438,
5064      950,   661,   670,  2316,   551,   950,  4534,  2139,  2139,  1810,
5065     3616,  2116,  1812,  4649,  4683,  1504,   950,   857,   682,   662,
5066     1439,   189,  4772,   662,  2672,  1964,  4724,   949,  2611,  2752,
5067     2891,  3876,   958,  1269,  2860,  1858,  2740,  1798,   886,  1812,
5068     1870,  1870,  2139,   968,  2047,  2139,  1136,   699,  2072,  2139,
5069     4602,  2452,  4971,  4265,  3512,  2458,  2764,  2460,  -134,  2450,
5070     2463,  2311,  1770,  -134,  2895,  1844,  2631,  3218,  -399,  1601,
5071      986,  1333,   597,  1601,  4940,  4719,  4665,  2267,   823,  2317,
5072      887,  1103,   986,  1595,   700,   701,  4853,  1601,  2271,  3726,
5073     2164,  2451,  1502,  4827,   935,  4725,  3011,  2888,  3617,  2117,
5074     2217,  1283,  2067,  1284,  2974,  2150,  4062,   945,  1036,  2994,
5075     1840,  4245,  2342,  1478,  2353,  2514,  2151,  2474,  2152,  3502,
5076     2797,  2861,  2870,  3598,   598,  4717,   927,  1650,  1681,  1430,
5077     2073,  1601,  1514,   888,  1596,   755,  2475,  1735,  2589,  3419,
5078     1996,  2896,  4942,   990,   986,  2107,   932,   181,   929,   185,
5079      930,   931,  4150,  1039,  1697,  2115,  2612,  1962,  3664,   599,
5080     1601,   600,  3325, -1941,   602,  2236,  2586,  2241,  1735,  3561,
5081     3562,  3961,  2625,   702,  2153,  2968,   985,   605,  3618,  3012,
5082     3281,  1110,  4812, -1960,  4270,  1367,  1659,  4388,  1277,  1539,
5083      765,  1110,  1278,  2897,  1633,  4409,  2210,  1083,  2212,  3361,
5084     4791,  4353,  1753,  1962,  3575,   555,  2070, -2234,  1479,  2105,
5085     4875,  1628,  2519,   925,  2445,  1683,  2291,  2223,  2200,  1597,
5086     3913,  2203,  2204,  1321,   667,   668,  1539,  3105,  2262,  1650,
5087     1831,  3233,  2219,  2679,   181,   764,   185,  4187,  2299,   672,
5088     4905,   672,  4080,   672,   938, -2083,  1731,  2898,   941,   672,
5089     1098,  1099, -2178,  2258,  1084, -2213,  1089, -2235,  1093,  4404,
5090    -2264,   986,  1741,  2431,  1097,  2181,   966,  1122,  2343,   986,
5091      986,  4212,  3850, -2234,  2862,  4216,  1100,  1750,  3383,  1075,
5092     4111,  1610, -1698,   667,   668, -2084, -2234,   667,   668,  2268,
5093     4092,  4161,  1503,  1141,  2399, -2110,  4880,  1629,  4206, -2181,
5094     2453,  1248,  3718,  1113,  1257,   985,  1259,   857,  4885,  2464,
5095     4249,  1606,  2802,  2877,  1614,   777,  1078,  3619, -1710,  1852,
5096     1800,  1842,  2377,  1606,   778,  4865,  2192,  2007,  2008, -2419,
5097     1277,  2195, -2055,  2657,  1278,  1666, -2054,  2124,   667,  1422,
5098     2765,  2899,   824,  1676,   667,   668,  1622,  3935,  2777,  1684,
5099     3513,  1622,  4342,  1285,  3965,  4669, -1703,  2803,   776,   180,
5100      181,   175,   185,   176,   178,  1623,  2821,  1113, -1703,  4507,
5101     1623,   946,  1037,  1356,  1854,  1421,   601,  4828,  4933,  1624,
5102      655,  3676,  3620,  3867,  1626,  2454,  3367,  3414,  3368,  1828,
5103     1829,  1830,  1831,  3625,  1957,  4497,  1515,  1324,  4891,   711,
5104     1119,  1121,  4506,  2380,  2381,  4421,  2719,  2807,  4845,  4422,
5105     4423,  4051,  4424,  3547,  1826,  1827,  1828,  1829,  1830,  1831,
5106     3551,  3552,   672,  4575,  3555,  3641,  3895,  3161,  1288,  3163,
5107     1267,  3560,  1509,  2878,  3230,  3231,  3232,  3233,  2139,  1118,
5108     1371,  4050,  2943,  1516,   601,  4601,  4096,  2140,  2649,  2649,
5109     2649,  2527,  2900,   601,   686,  1254,  1566,  4566,  2352,  1262,
5110     2901,  3677,  2188,  2902,  2729,  4012,  1295,  2513,  1668,  2516,
5111       68,  4576,  3609,  1438,  2066,  2523,  4096,  4358,  1357,  4577,
5112     1855,  2537,  2538,  2539,  1481,  4510,  3312,  4621,  3312,  2057,
5113     1482,  2555,  2557,  2121,  1439,  2808,  2567,  1567,  1117,  -134,
5114     -134,  3228,  3229,  3230,  3231,  3232,  3233,  4578,  4904,  1669,
5115     3553,  3554,  1589,  2335,    77,    78,  4451,  1349,    79,  3112,
5116       80,  2866,    81,  3885,   106,  2355,   126,   131,  1428,  1429,
5117      151,   155,   173,   179,  3752,  3753,  3754,  3755,  1635, -2052,
5118     3760,  3761,  3762,  3763,  3764,  3765,  3766,  3767,  3768,  3769,
5119     2697,  4389,  2528,  3909,  1338,  3949,  2895,  4127,  1443,  3314,
5120     2057,  3314,  2071,  2059,  4390,   772,  3909,  3312,   770,  2466,
5121     1009,  2214,  2275,  3908,  4633,  2737,  3024,  2058,   696,   711,
5122     1119,  2060,  4579,  1349,  3362,  4920,  4359,  4892,   779,  1483,
5123     1365,   569,  1856,  2336,  1444,  2720,  3808,  3809,  2721,  3331,
5124     3678,  4670,  4429,  1650,  2461,  2462,  2551,  1636,  1650,  1529,
5125     4675,  3947,  2778,  2276,  2569,  1798,   885,  1639,  3077,  1466,
5126     2455,  2529,  3415,  4013,   697,  1358,  3610,  3482,  3059,   771,
5127     3162,  1339,  3164,  2896,  2059,  2944,  1552,  1553,  2722,  1621,
5128     3314,   695,  1592,   985,  4097,  4455, -1670,  4622,  1268,   571,
5129     4459,  4452,  2060,  4461,  1568,   985,  4372,  1586,  3007,  4893,
5130     4749,  1359,  4735,  3583,   672,  3679,  1670,  1637,   780,  3572,
5131     1638,  3337,  3406,  4756,  4841,   181,  3572,   185,  1465,  4746,
5132     4754,  2530,  1340,  4894,  2531,  2897,  4747,  2412,  3978,  1737,
5133     1082,  1360,  1699,  4314,  1701,  1366,  1703,   772,  1705,  3950,
5134     1707,  1708,  1709,   746,  3973,   698,  3909,  1711,  3586,   886,
5135     2375,  3674,  1635,  3407,  1269,   976,  2061,   985,  4921,  2747,
5136     4379, -1670,  4383,  2379,  3431,  4391,  3575,  1136,  1654,  1656,
5137      641,  1277,  3483,  2690,  3025,  1278,  1484,  4255,  3897,  2898,
5138     1088,  1090,  1092,  1758,  4605,  1094,  1095,  1096,  3165,  1569,
5139       14,   887,  4606,  3670,  1361,  1101,  4580,  3860,  2051,  2437,
5140     2186,  1671,  1767,   765,  3510,  1639,  4634,  1411,  2052,  1982,
5141     2277,  4284,  1485,  -999,    40,  1341,  4165,  1460,  4166,  2532,
5142     3717,  1636,  2425,    19,  2337,  2053,  2404,  2061,  3148,  3979,
5143      722,  3432,  1799,  1783,  1862,  4529,  3439,  2338,   579,  2417,
5144      580,  1801,  1486,  2675,   888,  3974,  2543,    44,  1795,  3951,
5145        3,     4,  3952,  1461,  2426,  1843,   667,  1422,  2062,  3718,
5146       40,  2793,  3166,   773,  1555,  2046,  2187,  1020,   857,  4846,
5147     2691,  3511,  4682,  2899,   985,  1863,  4667,  1860,  1861,  2935,
5148     1968,  1637,   985,   985,  1638,  4351,   672,    48,  1020,   699,
5149     3590,   672,   672,    44,  1976,  1977,   885,  1981,   723,  1309,
5150       49,  1983,  4628,   778,   778,  2278,   778,   757,   641,  1640,
5151     3408,  4748,   781,  1303,  3026,  2936,  2929,  2373, -1670,  3484,
5152      977,    50,  2930,  2533,  2689,  2676,   700,   701,    14,  2062,
5153     3591,  4248,  4645,    48,  4851,  2698,  2794,   776,   776,   552,
5154      776,  4058,  3975,  4903,  3592,  2937,    49,  2164,  4906,  4607,
5155     4167,  3898,  2938,  1650,  1462,  3485,  -622,  3027,  3867,  2246,
5156     1346,    19,  1347,  2054,  4235,  3251,  2403,    50,  1311,  4228,
5157     2407,  3258,  1309,  1411,   978,  1985,  2413,  2414,  1324,  1639,
5158      979,    51,   767,  3899,  2900,  3486,  4451,  3317,    32,   886,
5159     1650,   719,  2901,  4685,   724,  2902,   672,  4690,  4691,  2430,
5160    -1484,  4147,  4949,  3120,  3900,  3409,   672,  4362,  1312,  1304,
5161     2819,  3909, -1484,  1986,  2911,    40,  1435, -1484,  4788,  3126,
5162     3963,  2931,  2914,  3440,  2916,  1846,  3109,  3121,   188,  3361,
5163     2315,   887,  3593,  4041,  2328,  4515,  4803,  1109,  2793,  4044,
5164     4045,  1311,  4047,  4536,  4596,  1099,  2246,  1570,    44,  3441,
5165     4363,  3043,  3044,  3045,  3046,   768,  4795,  4796,  3756,  1539,
5166     3757, -1484,  3312,  3051,  4975,  4589,  3312,  1571,  3575,   672,
5167     2100,   189,   672,   672,  2910,  2075,  2218,  2909,  1330,   569,
5168      188, -1484,  4059,  1640,   888,  2076,  3110,  3964,    48,  2468,
5169     1847,   986,  2483,   857,  3714, -1670,  2797,  2751,  3335,  2922,
5170     4804,    49,  1641,  1985, -1670,  2205,  1610, -1670,  1333,  3430,
5171    -1670,  2205,  1988,  2794,  1331,  3378,  -156,  3916,  1110,  3468,
5172     2405, -1484,    50,   189,  2221,  4091,    32,  2962,  3095, -1484,
5173     3892,  3093,  3469,  2159,  1264,  3314,    51,   571,  4266,  3314,
5174      672,  1986,   661,  2795,  1332, -2074,  -528,  4060,  2246,  -156,
5175     4533,  3386,  2837,    40,  2156,  1803,  3738,  1512,  1804,  2156,
5176     4720,  2783,  1335,   562,   662,  3841,  2166,  1989,  2932,  2649,
5177     2469,  4534,  2214,  1650,  2372,  -156,  2325,  1527,  1349,  2796,
5178     3572,  3916,  3758,  1349,  1639,  2157,    44,  1810,  2734,  2672,
5179     2157,  1537,  3759, -2420,  3917,  3842,  1987,  3909,  1336,  2230,
5180     2231,  2232,  2233,  4267,  2933,  2144,  1698,  2145,  2838,  1700,
5181     4218,  1702,   857,  1704,  3514,  1706,   782,  1812,  1572,  1710,
5182     3844,  2030,  4564,  2402,  2839,  2956,    48,  2903,  1337,  2077,
5183      642,  1482,  1617,  1618,  2934,  2206,    40,  2378,  2207,    49,
5184     1988,  2206,  2269,  2270,  2207,   569,  1804,  2386,  2273,  2387,
5185     3918,  2282,  3919,  4740,  1438, -1484,  2392,  2031,  3917,  4930,
5186       50,  2294,  1446,  2146,  2398,  2078,  -993,  2211,  4131,    44,
5187     4132,  3150,  4753,  2797,   643,  1439,  4737,   817,  1343,  3707,
5188     2840,  2903,  3267,  2665,   819,  3494,   579,  2032,   580,  2330,
5189     2331,  2332,  2333,  1472,  3389,  1989,  3270,   826,  3271,  4514,
5190      947,  3217,   948,   571,  3479,  1812,  2274,  2816,  2167,    48,
5191     1447,    35,   585,  3245,  3918,  1277,  3919,  4764,  1299,  1278,
5192      181,  3272,   185, -2420,  4590,  3846,  4620,   839, -2420,  1473,
5193     1483,  2254,  1622,  1474,  4031,  2168,  2893,  1491,   969,  3071,
5194     3480,  4540,   876,  2255,  2439,  3268,  2440,  3039,  2441,  2489,
5195     2442,  1623,  2443,   569,  4032,  4591,  2444,    51,  2169,  1475,
5196     2170,  3366,  2252,  4420, -2420,  1624,  1622,  2722,  2256,   970,
5197     3481,   932,   181,   929,   185,   930,   931,  1738,  3649,  4679,
5198     4676,  3653,  2536,  3294,  2416,  1623,  3674,  2419,  2525,  2526,
5199     3405,  2477,  1448,  2164,  1622,  2540,  2541,  2424,  2253,  1626,
5200     2297,   971,  1078,  1804,   840,  2139,  2432,   690,   986,  1819,
5201     3747,   571,  2399,  1623,  2147,  2551,  2551,  3840,  3583,   884,
5202     2551,  4710,  4850,  2579,  3584,  3273,  4711,  1678,   937,  2939,
5203     3274,  3312,  1810,   691,  4616,  3585,  3312,   692,  2488,  3773,
5204     1449,  3312,   934,  1450,  3312,  2166,  2594,   972,  1679,  2596,
5205     4361,  2597,   579,  2213,   580,  2941,  2511,  2551,  2551,  2940,
5206      870,  4345,  1812,  3586,   582,  3587,  3089,  4493,  3312,  4495,
5207      986,  1870,  4712,  2658,  2598,   584,  4382,  1343,  1555,  4370,
5208     1260,  3312,  1452,  1277,  4014,  2942,   871,  1278,  3841,   939,
5209    -1484,  4346, -2420,  -422,  4533,  1309,  4273,  4274,  3323,  3324,
5210     1310,  1850, -1484,  2726,  3314,  4015, -2074, -1484,  2730,  3314,
5211       35, -1520,  2733,   942,  3314,  4534, -1520,  3314,  3842,  4426,
5212     3713,  2313,  3326,  4335,  1454,  4336,  4337,   857,  3138,  4338,
5213     3397,  2686,  2687,  3843,  2174,  2591,  1491,  4763,  2757,   655,
5214     2345,  3314,  3588,  3844,  1688,  3371,  2225,  1689,  4798, -1483,
5215     1610, -1484,  2037,   969,  3314,  1277,   956, -2055,  3275,  1278,
5216      579, -1483,   580,  1456,  1311,  3894, -1483,  -527,  3276,  3845,
5217     1610, -1484,  2037,  2599,  3244,  3840,  3246,  3247,  2600,  3914,
5218    -1520,  2809,  2166,  2601,   970, -2420,  1555,  2167,  4456,  3630,
5219      964,  4941,  1826,  1827,  1828,  1829,  1830,  1831,  3639,   950,
5220     3589,  3048,  -422,   973,  1312,  3590,  3049,   672,  3420,  1743,
5221    -1483, -1484,  1744,  3190,  2168,  1438,  3627,  4966,  2434, -1484,
5222    -1520,  3312,  2681,  3191,  3582,  3329,  2815,   974,  3192,  3049,
5223    -1483,  2857,  4707,  3443,  4709,   975,  1439,  2169,  4713,  2170,
5224     4714,  2700,   181,   988,   770,  3591,  3841,  1966,  3846,  1969,
5225     1967,  3784,  1970,  2741,  2433,  2744, -1521,  2434,  2771,  3592,
5226     2514, -1521,   972,   950,   985,   826,  4877,  2905,  2446,   992,
5227    -1483,  2447,  2164,   672,  2448,  3279,  3842,  2447, -1483,  3423,
5228     1288,  1035,  2166,  3312,  2185,  2917,  2166,  1043,  2738,  4787,
5229     2894,  3843,  2480,  1044,  3314,  2481,  2927,  3098,  2166,  2649,
5230      986,  3844,  3572,  2671,  2649,   771,  2672,   222,  3944,  2952,
5231     2649,  2602,   553,  2813,  1049,  3936,  2814,   950,  1060,  3119,
5232      639,  2603,  1069,  2884,  2167, -1521,  2885,  3845,  4457,   951,
5233     1803,   952,  1259,  1804,  3128,  3728,  1073,  3130,  3131,   720,
5234    -1544, -1544,  3134,  3135,  2959, -1484,  1610,  3593,  1333,  3139,
5235     1104,  2168,  2166,  3474,  3948,  3953,  3314,  2998,  2801,  1757,
5236     2999,    51,  1810,  2514,  2263, -1521,  3966,   655, -2420,  3002,
5237       40,  1108,  3003,   772,  2169,  3096,  2170,  1112,  2434,  2279,
5238     2166,  1115,  4627,  2251,  3733,  1123,  1125,  2804,  3688,  3689,
5239     3599,  3142,  1812,  3189,  2447,  1127,  2434,  3198,  2300,  2879,
5240     2434,  1133,  1126,    44, -1483,  4962,  3846,  2773,  2774,  2164,
5241      986,  3178,  1149,  1135,  1134,  3218,  2785,  4541,  2787,  3219,
5242     3220,  3221,  2791,  2166,  2167,   672,  3204,  1137,  2167,  2434,
5243       28,  3205,  1139,   672,  2434,   672,  3206,  1138,  3237,  2434,
5244     2167,  2434,  1136,    48,  3250,  2366,  3255,  2434,  1143,  3256,
5245     4114,  2168,  2368,  3509,  2369,  2168,    49,  3278,  2374,  3461,
5246     3466,  3312,  3462,  3467,  2866,  1142,  3962,  2168,  3396,  3661,
5247     1020,  1610,  3662,  2037,  2169,  1145,  2170,    50,  2169,  2976,
5248     2170,  3515,  2388,  1266,  1270,  3686,  3312,  2976,  2434,  1272,
5249     2169,    51,  2170,  2573,  2167,  2976,  2576,  2976, -2420,   773,
5250     4928,  3779,  3789, -2420,  3780,  3790,  1263,  3800,  3883,  2164,
5251     2434,  3884,  3064,  2164,  3065,    40,  3375,  3376,  1271,  1276,
5252     3888,  2168,  2167,  3889,  3544,  2164,  2422,  3911,  3912,  1020,
5253     3295,  2912,  3296,  4951,  3314,  3155,  1289,  4585,  3731, -2420,
5254     1296,  1307,  3893,  3042,  2169,  2721,  2170,  3915,    44,  2168,
5255     2447,  3988,  4093,  3169,  3989,  2447,  4102,  3077,  1297,  3314,
5256     4144,  3155,  1322,  1735,  4400,  2167,  3749,  4162,  4188,  1323,
5257     2434,  2481,  2169,  3072,  2170,  4200,  1299,  4251,  2434,  2164,
5258     2721,   985,  3060,   181,  1819,  3222,  4257,  2973,    48,  4258,
5259     4263,  1300,  2168,  2447,  3040,  2982,  3734,  2984,  1327,  1333,
5260     3778,    49,  4981,  2986,  3572,  4874,  3223,  2164,  1369,  3111,
5261     3113,  3114,  3104,  3106,  3615,  2169,  1364,  2170,  4264,  3115,
5262     4384,  2447,    50,  4385,  4431,  4433,  4441,  4432,  2434,  2481,
5263     4512,  4586,  4613,  4513,  2447,  4614,    51, -1252,  1393, -1252,
5264     3297,   857,  3298,   985,  4629,  3820,  4637,  2481,  1395,  4638,
5265     2164,   986,  4642,   986,  4648,  2672,  2399,  3637,  2581,  1397,
5266     1398,  4650,  3932, -2327,  3637,  2166,  3224, -2420,  3497,  4907,
5267       28,  3179,  3312,  3392,  1432,  3061,  4662,  3183,  3505,  4663,
5268     1430,  1433,   672,  4138,  4139,  4140,  1434,  2551,  2551,  2551,
5269     2551,  1435,  1437,  2551,  2551,  2551,  2551,  2551,  2551,  2551,
5270     2551,  2551,  2551,  3721,  4700,  4736,  1442,  4701,  1849,  3600,
5271     1445,  3602,  4612,  3340,  4755,  4765,  1467,  4663,  2481,  1504,
5272     3782,   986,  4766,  4767,  4777,  3256,  2434,  2672,  2166,  4780,
5273     1468,  3122,  3637,  3124,  1149,  4802,   765,  3218,  2481,  1480,
5274     1489,  3219,  3220,  3221,  4808,  3314,  4967,  2481,  4968,  2551,
5275     2551, -2327,  3448,  4809,  3450,    40,  2481,  1490,  3797,  4835,
5276    -2420,  4866,  4836,  4052,  2672,  4053,  3937,  1826,  1827,  1828,
5277     1829,  1830,  1831,  1494,  4867,  4868,  3856,  2434,  2434,  3667,
5278      765,  1795,  4870,  4887,  4924,  2434,  4888,  3637,    44,  1499,
5279     3861,  3862,  3863,  3372,  4927,  4950,  4964,  4656,  4663,  4965,
5280    -2327,  3608,  4990,  3611,  1299,  4965, -1472,  2167,  4217,  1500,
5281     4220,  1306, -2327,  1308,  1505,  1507,  4282, -2327,  3315,  1508,
5282     4382,  1510, -2327,  1513,  1517,  1795,  1524, -2327,    48,  3967,
5283    -2327,  1518,  1525, -2327,  2168,  3188,  3394,  1528,  1530,  1533,
5284     1536,    49,  2594,  1543,  1546,  3225,  3226,  3227,  1548,  3228,
5285     3229,  3230,  3231,  3232,  3233,  1962,  1539,  2169,  3288,  2170,
5286     1557, -2327,    50,  3533,  3300,  3301,  3302,  1559,  1560,  3540,
5287     2167,  3315,  -176,   985,  3306,  1562,  4908,  1564,  1576,  1578,
5288     3330, -2327,   672,  1585,  2514,   765,  1587,  1591,   207,  1598,
5289     4559,  1603,  2164, -2329,  1604,  1605,  1606,  2168,  1610,  1613,
5290     1803,  1616,  1614,  1804,   932,   181,   929,   185,   930,   931,
5291     1630,  1647,  1649,  1646,  1650,  1657,  1660,  1661,  1664,  1662,
5292     2169, -2327,  2170, -2327,  1663,  1665,  1667,  3306,  3223, -2327,
5293      764,  1673,  1810,  1672,  1674,  1675,  1677,  1682, -2420,  1803,
5294     2775,  1687,  1804,  3470,  1740,  4048,  1805,  1806,  1807,  1712,
5295     4036,  3727,  2790,  1745,  1747,  2164,  3490,  1748,  1755,  1754,
5296    -1674, -1681,  1812,  1808,  1764,  1762,  1763,  1765,  1766,    51,
5297     1768,  1810, -1671,  1769,  1770, -1672,  1771,  1811,  1772,  1773,
5298    -2327, -2329,  1775,   985,  4322,  4323,  3494,  4325,  3224, -1675,
5299     1776,  1777,  2823, -1673,  4124,  1778,  1779,  1780,  1781,  1782,
5300     1784,  1812,  1785,  1786,  1787,  1788,  1789,  1790,  1791,  1835,
5301     1837,  3684,  1839,  1853,  1840,  1849,  1865,  1873,  1974,  1310,
5302     1312,  2003,  2005,  2014,  2033,  2034,  2037,  3807,  2035,   686,
5303    -2329,  2038,  2039,  3340,  2040,  3545,  2041,  2042,  3695,  3696,
5304     3340,  3698, -2329,  3700,  3701,   690,  2043, -2329,  2049,  2068,
5305     2074,  2080, -2329,  4183,  2551, -2327,  3708, -2329,  4400,  2102,
5306    -2329,  1803,  2106, -2329,  1804,  2108,  2109,  2110, -2420,  3464,
5307     2111,  2113,  2114, -2420,  2129,  2130,  2131,  2142,  2154, -2327,
5308     2143, -2327, -2327,  2158,  2160,  2161,  2162,  2163,  2164,  2172,
5309     2173, -2329,  2176,  1810,  3729,  2177,  2175,  2191,  2193, -2420,
5310     2201,  3401, -2343,  3402,  3403,  3404,  2197,  1813,  2208, -2420,
5311     2182, -2329,  1814,  3503,  2183, -2327,  1411,  2198, -2327, -2327,
5312    -2327,  2209,  2215,  1812,  2220,  2216,  2237,  4141,  1149,  2226,
5313     2238,  3218,  4172,  1815,  1816, -2420, -2420, -2420,  2227,  2242,
5314     2239,  2247,  2243,  2264,  2250,  2265,  2272,  3001,  1817,  2280,
5315     2266, -2329,  2281, -2329,  1819,  2284,  2283,  2285,  2287, -2329,
5316     2293,  2298,  3536,  2301,  2302,  2292,  2305,  3225,  3226,  3227,
5317     2306,  3228,  3229,  3230,  3231,  3232,  3233,   564,  2314,  1462,
5318     1818,  2309,  2329,  2334,  2976,  2347,  2350,  2351,  3810,  2359,
5319    -2343,  2976,  2976,  1819,  2365,  2976,  1820,  2363,  2367,  2371,
5320     2376,  2382,  2976,  2384,  2385,  3564,  2391,  2246,  2389,  2390,
5321    -2329,  3574,  2393,  2394,  2395,  2397,  2406,  2408,  3574,  2396,
5322      672,  4367,  3716,  2409,   985,  2410,   985,   672,  2428, -2420,
5323     2429,  2411,  2459,  2465, -2420,  1803,  2478, -2420,  1804, -2343,
5324     2491,  2524,  1805,  1806,  1807,  2568,  1804,  3730,  2519,  2574,
5325     3612, -2343,  2587,  2593,  2578,  2607, -2343,  2627,  2605,   686,
5326     2628, -2343,  2642,  2656,  3635,  2659, -2343,  1810,  2660, -2343,
5327    -2420,  2663, -2343,  1811,  1338,  2662,  1821,   771,  2664,  2673,
5328     2682,  2684,  2674,  2683,  2701, -2329,  2710,  2695,  2711,  2713,
5329     2685,  2723,  2724,  3666,   985,  3549,  4102,  1812,  2745,  2725,
5330    -2343,  3656,   181,  2742,  2747,  2749,  2750,  2766,  2756, -2329,
5331      841, -2329, -2329,  2761,  2772,  1819,  2776,   842,   843,   844,
5332    -2343,  2767,  3687,  3683,   181,   826,  2769,  2788,  2780,  2789,
5333    -2420,  2792,  2806,  2805,  1260,  3168,  4544,  1826,  1827,  1828,
5334     1829,  1830,  1831,  2827,  2811, -2329,  2828,  1264, -2329, -2329,
5335    -2329,  1339,  3180,  2822,  2841,  2846,  2847,  2868,  2873,  2883,
5336    -2343,  2874, -2343,  3186,  2886,  2876,  2889,  2947, -2343,  1822,
5337     1329,  2904,  1823,  1824,  1825,  3814,  1826,  1827,  1828,  1829,
5338     1830,  1831,  3224,  2958,  2970,  2971,  4076,  4077,  2977,  3209,
5339     2965,  2966,  2969,  2978,  2992,  2979,  2980,  2981, -2420,  4081,
5340     4916,  4917,  1340,  1813,  2985,  2988,  2996,   672,  1814,  2990,
5341     3016,  2997,  3030,  3032,  3034,  1113,  4241,  3004,  3041, -2343,
5342     3047,  3057,  3058,  3067,  3055,  3069,  4641,  3050,  3070,  1815,
5343     1816,  3073,  3074,  3056,  3087,  3090,  3088,  4641,  3091,  3092,
5344     3094,  3099,  3100,  3101,  1817,  1639,  3097,  3116,  3102,  3118,
5345     3702,  3132,  3703,  3127,  3103,  3108,  3705,  3117,  3129,  3136,
5346     3133,  3141,  3137,  3144,  3145,  3146,  3147,  2672,   686,  3156,
5347     1683,  2492,  3158,  3149,   765,  3159,  1818,  3795,  3160,  3315,
5348     3167,  3315,  3170,  3175,  1110,  3177,  3933,  3182,  3184,  1819,
5349     3181, -2420,   765,  3200, -2343,  1341,  3187,  3201,  1826,  1827,
5350     1828,  1829,  1830,  1831,  3340,  3202,  3185,  3203, -1933,  3207,
5351     3736,  3252,  4698,  3208,  3210,  3213,  3269,  3264, -2343,  1795,
5352    -2343, -2343,  3236,  3822,  3823,  3824,  3825,  3214,  2434,  3291,
5353     4988,  4989,  3286,  3242,  3317,  3829,  3348,  3832,  3346,  3352,
5354     3369,  3356,  3350,  4239,  3388,  1342,  3249,  3263,  3342,  3377,
5355     3277,  3380,  1343,  3379, -2343,  3287,  3391, -2343, -2343, -2343,
5356     3315, -2420, -2420, -2420,  3339,  3228,  3229,  3230,  3231,  3232,
5357     3233,  3289,  1821,  3290,  3363,  3427,  3400,  3429,  3293,  3393,
5358     3434,  1344,  3322,  3384,  3416,    35,  3385,  3417,  3436,  3433,
5359     3435,  4016,  3447,  3446,  4019,  1803,  3449,  3455,  1804,  3456,
5360     3457,  3465,  1805,  1806,  1807,  3475,  3496,  3500,  3498,  3501,
5361     3504,  1345,  4130,  3506,  3518,  3507,  3508,  4778,  3516,  1808,
5362     4133,  4134,  4135,  4136,  3517,  3519,  3398,  1810,  3520,  3521,
5363     3522,  3523,  2551,  1811,  3524,  3531,  3535,  3526,  3537,  3528,
5364     1346,  4434,  1347,  3410,  3530,  4354,  3525,  3527,  1803,  3529,
5365     3532,  1804,  3539,  3541,  2235,  3543,  3566,  1812,  3550,  4545,
5366     3556,  3557,  3559,  3576,  3579,  1822,  3624,  3626,  1823,  1824,
5367     1825,  3607,  1826,  1827,  1828,  1829,  1830,  1831,  3622,  3606,
5368     1810,  3613,  3574,  3628,  3637,  3636, -2420,  3650,  3645,  3651,
5369     1348,   672,  3654,  3655,  4083,  3647,  3659,  3658,  4544,  4467,
5370     3671,  4546,  3682,  3690,  3691,  1632,  4482,  3709,  3710,  4704,
5371     1812,  3693,  3697,  3699,  4492,  3997,  3711,  4280,  3998,  3712,
5372     3999,  4686,  3715,   672,  3722,  4557,  4547,  3720,  4689,  3927,
5373     3928,  3929,  3930,  3723,  3724,  3741,  3732,  3487,  3996,  3489,
5374     3735,  3737,  4548,   847,   848,   849,  4549,   850,   851,   852,
5375      853,   854,   855,  3218,  3239,  3750,  4694,  1757,  4696,  3238,
5376    -1932,   772,  3791,  1813,  2976,  3802,  4550,  3831,  1814,  4551,
5377     2976,  2976,  3775,  2976,  3815,  3811,  3776,  3777,  3783,  3564,
5378     4318,  3803,  4552,  3806,  4631,  3853,  3855,  3858,  3155,  1815,
5379     1816,  1098,  1099,  3821,  3839,  3868,  3870,  3871,  3872,  3881,
5380     3534,  3873,  3878,  3886,  1817,  3896,  3902,  3923,  3925,  3926,
5381     3939,  3931,  3938,  3940,  3941,  3943, -2420,  3945,  3954,  3969,
5382     3970, -2420,  3957,  1797,  3971,  3548,  3972,  3984,  3982,  3983,
5383     3991,  3985,  3986,  3987,  3994,  3990,  1818,  4003,  4004,  4271,
5384     4011,  4026,  4030,  4028,  4033,  3949,  4040,  4042,  3993,  1819,
5385     4039,  4043,  1820,  4820,  4822,  4046,  4055, -2420,  3673,  4066,
5386     4063,  4071,  4553,  4073,  4079,  4087,  4095,  4086,  4814,  2447,
5387     4554,  4089,  4113,  4290,  4291,  4106,  4107,  4090,  4119,  4120,
5388     4122,  4123,  4125,  4583,  4126,  4109,   181,  4128,  4146,  4129,
5389     4137,  4142,  4148,  4149,  4153,  2551,  4154,  4156,  4164,  4948,
5390     4173,  4174,  1819,  4175,  4159, -1934,  4213,  4056,  4555,   857,
5391     4169,  4176,  4221,  4222,  4227,  4214,  4168,  2823,  4636,  4229,
5392     4177,  4181,  4196,  4209,  4208,  4211,  4226,  4230,  4232,  4500,
5393     4233,  4234,  1821,  4240,  4247,  4250,  1803,  4252,   672,  1804,
5394     4254,  4259,  4260,  4292,  4268,  4293,  4152,  4285,  3685,  4152,
5395     4286,  4152,  4332,  4333,  4294,  4305,  4706,  4315,  4317,  4308,
5396     4320,  4889,  4948,  4321,   681,  4326,   683,  4334,  1810,  4339,
5397      689,  4347,  4348,  4521, -2420,  4355,   706,   714,   681,  4360,
5398      721,  4948,  4364,   714,   714, -2420,   750,  4770,   753,  4366,
5399     4368,  4371,  4365,  4374,  4376,  4386,  4393,  4395,  1812,  4779,
5400     4396,  4397,  4406,  4398,  4781,  4411,  4783,  4417,  4418,  4427,
5401     4428,  4430,  4435,  4439,  4437,  3315,  4438,  4440,  4446,  3315,
5402     4453,  4464,  4460,  4484,  4486,  1822,  3340,  4489,  1823,  1824,
5403     1825,  4494,  1826,  1827,  1828,  1829,  1830,  1831,  4490,  4480,
5404     4299,  4505,  4509,  4508,  4518,  3259,  4413,  4558,  4560,  4414,
5405     4415,  3742,  4309,  4814,  4523,  4524,  4539,  4062,  4528,  4567,
5406     4569,  4570,  4572,  4194,  4573,  4419,  4588,  4574,  4593,  4595,
5407     4516,  3306,  3751,  4594,  4598,  3306,  4600,  4603, -2420,  4604,
5408     4615,  4617,  4236,  4934,  4238,  1826,  1827,  1828,  1829,  1830,
5409     1831,  4619,  4632,  4635,  4639,  4644,  4647,  3774,  -130,  4618,
5410     4678,  4693,  4652,  4253, -2420,  4651,  4660,  4721,  4733, -2420,
5411     4654,  4726,  4671,  4680,  4242,   181,     1,  4656,  4730,  4731,
5412     4738,  4744,  4750,  4751,  4752,  4759,     2,  4762,     3,     4,
5413     4769,  1738,  2495,   808,   813,   813,   816,  4760,   813,  4761,
5414      822,  4768,   808,     5,   750, -2420,  4785,   859,  4786,  4789,
5415     4790,  4792,  4776,   750,  4805,  4687,   750,  4782,  4801,  4819,
5416      813,  4825,   750,     6,  4826,     7,     8,  4829,  4834,  4831,
5417     4837,     9,  4839,    10,   672,  4840,  4847,  4848,  4855,  2496,
5418     4849,  4856,  4883,  4864,    11,   986,    12,  4827,  3816,  4287,
5419     1819,  4876,  4890,  4878,  4828,  4898,  4302,  4303,  4919,  4925,
5420     4902,  4306,  4307,    13,  3574,  4897,    14,  4938,  4959,  4957,
5421     2497,  4958,  4963,   672,  4960,  4969,  4970,  4973,  3155,    15,
5422     4977,    16,  4978,  4982,  4983,    17,  4985,  4986,  4984,  1441,
5423     1396,    18,  2498,  2248,  1301,  3036,  3332,  2872,  3442,    19,
5424     3960,    20,  4357,  2499,  2957,  4329,  4330,    21,  3565,  1872,
5425     4049,  4715,  4813,  4936,  2976,  4797,  2976,  2976,  4597,  4075,
5426     2976,  4599,    22,  2500,  4352,  4582,  3382,  3143,  2501,  4879,
5427     4498,  4932,  4832, -2420,  4830,  4896,  3387,  4110,    23,  4094,
5428     4070,  3958,  3014,  3015,  3459,  2326,  4082,  4369,  4937,  3632,
5429     4987,  3005,  4974,  4571,  3580,   857,  4900,  3577,  4522,  4807,
5430     4884,   688,  2308,  4525,  4378,  4143,  4666,  1732,  2716,  1742,
5431     4116,  3370,  4757,   987,  1061,  2485,  2502,    24,    25,  2486,
5432     3538,  2487,  3155,    26,  3155,  4312,  4380,   181,  3340,  4976,
5433     4910,  2667,  2438,  4399,  2048,    27,  4324,  2503,  4626,   857,
5434     2668,  4794,  4098,  1273,   986,  4873,    28,  3890,  4243,  2000,
5435     3338,  4328,  3347,  2694,  1999,  3869,  4869,  1845,  3345,  4784,
5436     1971,  4237,  2693,  4152,  2004,  3834, -2420,  4152,  4152,  3349,
5437     4152,  4219,  4646,  1826,  1827,  1828,  1829,  1830,  1831,    29,
5438     4207,  3830,  4775,  4774,  3315,  3891,  3692,    30,  2009,  3315,
5439     4630,  3785,  4483,  2383,  3315,  4872,  4871,  3315,  4462,    31,
5440     4863,   207,  2632,  3341,    32,    33,  3195,    34,  3284,  3282,
5441     3334,  2641,    35,  4668,     0,     0,     0,    36,     0,  4381,
5442       37,  3315,     0,     0,     0,    38,     0,     0,  2504,     0,
5443       39,    40,     0,     0,  3315,  2505,     0,     0,    41,     0,
5444        0,  2506,    42,     0,     0,  3306,     0,     0,     0,     0,
5445     3306,     0,    43,  3306,     0,     0,     0,     0,  4699,     0,
5446        0,     0,     0,     0,    44,     0,     0,  4078,     0,     0,
5447        0,     0,     0,  2507,     0,     0,  2508,     0,  4520,  4491,
5448        0,     0,     0,    45,     0,     0,  4485,     0,     0,     0,
5449        0,     0,   894,    46,  2509,     0,     0,     0,   750,    47,
5450      808,     0,     0,   813,    48,   816,  3574,   813,     0,     0,
5451        0,     0,     0,     0,   859,   672,     0,    49,   961,  2510,
5452        0,   826,     0,     0,     0,   813,     0,     0,     0,   986,
5453        0,     0,  1803,     0,     0,  1804,     0,     0,    50,  1805,
5454     1806,  1807,     0,     0,     0,     0,     0,     0,  2976,   808,
5455        0,     0,    51,     0,   816,  -130,  1808,     0,     0,   808,
5456        0,     0,     0,   859,  1810,     0,     0,     0,     0,  1803,
5457     1811,     0,  1804,     0,  3315,     0,  1805,  1806,  1807,     0,
5458      813,     0,     0,  4501,  4502,  4502,     0,     0,     0,     0,
5459        0,     0,     0,  1808,  1812,     0,     0,     0,     0,  4587,
5460      181,  1810,  1149,     0,     0,  3218,     0,  1811,     0,  3219,
5461     3220,  3221,     0,     0,     0,     0,     0,     0,     0,     0,
5462        0,     0,     0,     0,     0,     0,  4608,   181,     0,   750,
5463        0,  1812,   714,   714,   714,     0,  3315,     0,     0,     0,
5464        0,     0,     0,     0,     0,   750,     0,  1132,     0,     0,
5465        0,     0,     0,     0,     0,     0,     0,  1738,   765,     0,
5466        0,     0,     0,     0,     0,     0,     0,  1245,  1245,     0,
5467      750,   714,     0,     0,     0,   714,     0,   765,     0,     0,
5468        0,     0,  1803,     0,     0,  1804,     0,     0,     0,   750,
5469        0,     0,  3306,   750,     0,     0,     0,     0,     0,  1245,
5470     1813,     0,     0,  1795,     0,  1814,     0,   857,     0,     0,
5471        0,   750,     0,     0,  1810,     0,     0,     0,     0,  4609,
5472    -2420,     0,  1795,   750,     0,     0,  1815,  1816,     0,     0,
5473        0,     0,     0,     0,     0,     0,     0,  1813,     0,     0,
5474        0,  1817,  1814,     0,  1812,     0,     0,     0,  4732,     0,
5475        0,     0,     0,     0,     0,     0,     0,     0,   985,     0,
5476        0,     0,  4708,  1815,  1816,     0,   750,   672,     0,     0,
5477        0,     0,  4716,  1818,     0,     0,     0,  4272,  1817,     0,
5478        0,     0,   750,     0,     0,     0,  1819,   813,   813,  1820,
5479        0,     0,  4929,     0,     0,  1149,  3223,     0,  3218,     0,
5480        0,     0,  3219,  3220,  3221,     0,     0,     0,  4289,     0,
5481     1818,     0,   714,   714,  3315,     0,     0,     0,     0,  3798,
5482        0,     0,     0,  1819,     0,     0,  4745,   181,     0,  4304,
5483        0,     0,     0,     0,     0,     0,     0,     0,   808,  3315,
5484        0,     0,     0,     0,     0,     0,     0,     0,     0,   808,
5485    -2420,     0,     0,   859,     0, -2420,  3224,     0,     0,  4695,
5486     3155,  4697,     0,  1149,     0,     0,  3218,     0,   813,  1821,
5487     3219,  3220,  3221,  1149,     0,     0,  3218,     0,     0,     0,
5488     3219,  3220,  3221,     0,     0,     0,     0,  4331,   750,     0,
5489        0, -2420,     0,     0,     0,   813,   813,  4190,     0,     0,
5490        0,     0,     0,     0,     0,     0,  1821,     0,     0,     0,
5491        0,     0,   750,   750,   750,     0,   813,   985,   808,     0,
5492     4843,  4817,     0,  4818,     0,     0,     0,  4823,  4824,     0,
5493        0,     0,     0,     0,     0,     0,  1819,     0,     0,     0,
5494        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5495        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5496        0,     0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,
5497     1827,  1828,  1829,  1830,  1831,     0,  4405,     0,  4882,  2577,
5498        0,     0,     0,     0,     0,   813,     0,   813,   813,  3223,
5499        0,     0,  4502,     0,     0,     0,     0,     0,     0,  1822,
5500        0,     0,  1823,  1824,  1825,     0,  1826,  1827,  1828,  1829,
5501     1830,  1831,     0,     0,     0,  1245,     0,     0,     0, -2420,
5502        0,     0,  1738,     0,     0,  3315,     0,     0,     0,     0,
5503        0,   826,   826,     0,     0,  3225,  3226,  3227,     0,  3228,
5504     3229,  3230,  3231,  3232,  3233,  1715,  1715,     0,     0,  3224,
5505      750,     0,   681,     0,     0,     0,     0, -2420,     0,     0,
5506        0,  4838,     0,     0,     0,     0,     0,  3223,     0,     0,
5507        0,  4901,   181,     0,     0,     0,     0,     0,  1746,     0,
5508        0,   750,     0,     0,  1752,  4915,   181,  4912,   185,  4913,
5509     4914,     0,     0,     0,     0,  4956,     0,  1245,     0,     0,
5510        0,     0,   985,     0,     0,     0,     0,     0,     0,     0,
5511        0,     0, -2420,     0,     0,     0,  4947,  3224,     0,  1826,
5512     1827,  1828,  1829,  1830,  1831,  4946,  1245,  3224,     0,     0,
5513        0,     0,     0,     0,     0,  4886,     0,     0,     0,  4915,
5514     4955,  4912,   185,  4913,  4914,     0,     0,     0,     0,  4980,
5515        0,     0,     0,     0,  1245,  1245,  1245,     0,  1245,     0,
5516        0,   826,   826,     0,     0,     0,     0,     0,     0,     0,
5517        0,     0,     0,     0,     0,     0,     0,     0,  1245,  4947,
5518        0,     0,     0,     0,     0,     0,     0,     0,  4946,     0,
5519        0,     0,     0,     0,     0,     0,     0,     0,  4947,  4915,
5520      181,  4912,   185,  4913,  4914,     0,  4935,  4946,     0,     0,
5521        0,     0,     0,  1802,     0,     0,   750,     0,  1803,  1245,
5522        0,  1804,     0,     0,     0,  1805,  1806,  1807,  3225,  3226,
5523     3227,     0,  3228,  3229,  3230,  3231,  3232,  3233,     0,     0,
5524        0,     0,  1808,     0,     0,  1809,     0,     0,     0,  1245,
5525     1810,     0,     0,  1245,  1245,     0,  1811,     0,     0,     0,
5526        0,     0,     0,     0,   750,   750,  2013,     0,     0,     0,
5527        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5528     1812,     0,  1738,     0,     0,     0,     0,   714,     0,     0,
5529        0,     0,     0,     0,     0,     0,  3225,  3226,  3227,     0,
5530     3228,  3229,  3230,  3231,  3232,  3233,  3225,  3226,  3227,     0,
5531     3228,  3229,  3230,  3231,  3232,  3233,     0,     0,     0,     0,
5532     3534,     0,  2112,     0,     0,     0,     0,   714,     0,     0,
5533        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5534      750,  2138,     0,     0,     0,     0,     0,     0,     0,   750,
5535        0,     0,   813,     0,     0,     0,     0,     0,     0,     0,
5536        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5537        0,     0,     0,  1738,   859,     0,   750,  1738,  1738,     0,
5538        0,     0,     0,     0,   750,     0,  1813,   750,     0,     0,
5539        0,  1814,     0,  1803,     0,     0,  1804,     0,     0,     0,
5540     1805,  1806,  1807,     0,     0,     0,     0,     0,     0,     0,
5541      750,     0,  1815,  1816,     0,     0,     0,  1808,   813,   813,
5542      813,   813,   750,     0,     0,  1810,     0,  1817,     0,     0,
5543        0,  1811,     0,   714,     0,     0,   750,     0,     0,     0,
5544        0,     0,     0,     0,     0,     0,     0,  2260,     0,   750,
5545        0,     0,     0,     0,     0,  1812,     0,     0,     0,  1818,
5546        0,   813,   813,     0,     0,     0,     0,     0,     0,  4758,
5547      813,     0,  1819,     0,     0,  1820,     0,     0,     0,     0,
5548      813,  1149,     0,     0,  3218,     0,     0,     0,  3219,  3220,
5549     3221,     0,     0,     0,     0,     0,     0,     0,     0,   750,
5550        0,     0,     0,     0,     0,  4191,     0,     0,   813,   813,
5551      813,   813,     0,     0,     0,     0,     0,     0,     0,     0,
5552      750,     0,     0,     0,     0,     0,     0,   750,     0,     0,
5553     2260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5554      808,     0,  1803,     0,     0,  1804,     0,   816,     0,  1805,
5555     1806,  1807,  1245,     0,     0,  1821,     0,     0,     0,     0,
5556        0,  1813,     0,     0,     0,     0,  1814,     0,     0,     0,
5557        0,     0,     0,     0,  1810,     0,     0,     0,     0,     0,
5558     1811,     0,     0,     0,     0,     0,     0,  1815,  1816,   808,
5559        0,     0,     0,     0,     0,     0,     0,     0,     0,   859,
5560        0,     0,  1817,   813,  1812,     0,   813,     0,     0,     0,
5561        0,     0,     0,     0,     0,     0,   813,     0,     0,     0,
5562        0,     0,     0,     0,   813,   813,     0,     0,     0,   750,
5563        0,     0,     0,     0,  1818,     0,     0,     0,     0,     0,
5564        0,     0,     0,     0,     0,     0,     0,  1819,  1822,     0,
5565     1820,  1823,  1824,  1825,  1715,  1826,  1827,  1828,  1829,  1830,
5566     1831,   813,     0,   808,     0,     0,     0,   750,   750,     0,
5567      813,  1803,     0,     0,  1804,  3223,     0,   750, -2420, -2420,
5568    -2420,     0,     0,     0,   750,     0,     0,     0,     0,   681,
5569      681,     0,     0,  2494,     0,     0,     0,  1245,     0,  1245,
5570        0,     0,     0,  1810,  1245,  1245,     0,     0,     0,  1811,
5571     1813,  1245,  1245,  1245,     0,  1814,     0,  1245,   859,  1245,
5572     1245,  1245,  1245,  1245,  1245,     0,  1245,     0,  1245,  1245,
5573     1821,     0,  1245,  1812,     0,  3224, -2420, -2420,     0,     0,
5574        0,     0,     0,     0,     0,     0,     0,  1245,  1245,  1245,
5575     1245,  1817,     0,     0,   813,  1245,     0,     0,     0,  1245,
5576        0,     0,  1245,     0,     0,  1245,  1245,  1245,  1245,  1245,
5577     1245,  1245,  1245,  1245,  1372,  1245,     0,     0,     0,     0,
5578        0,   750,  1245, -2420,  1245,     0,     0,     0,     0,     0,
5579        0,   750,     0,     0,     0,     0,  1819,     0,     0,     0,
5580        0,     0,     0,     0,     0,  1803,     0,  1373,  1804,     0,
5581        0,     0,  1805,  1806,  1807,     0,     0,     0,     0,     0,
5582        0,     0,     0,  1822,     0,     0,  1823,  1824,  1825,  1808,
5583     1826,  1827,  1828,  1829,  1830,  1831,     0,  1810,     0,  1813,
5584     3578,     0,     0,  1811,  1814,     0,     0,     0,     0,     0,
5585        0,     0,     0,     0,     0,  1399,     0,     0,     0,     0,
5586        0,  1400,     0,     0,     0,  1375,     0,  1812,     0,     0,
5587        0,     0,     0,     0,     0,  1803,     0,     0,  1804,  1821,
5588     1817,     0,  1805,  1806,  1807,     0,     0,     0,     0,     0,
5589        0,     0,     0,     0,     0,     0,     0,     0,  1376,  1808,
5590        0,  1401,     0,     0,     0,     0,     0,  1810,   750,     0,
5591      750,     0,  1245,  1811,  3225,  3226,  3227,     0,  3228,  3229,
5592     3230,  3231,  3232,  3233,     0,  1819,     0,  1803,     0,     0,
5593     1804,     0,     0,  1377,  1805,  1806,  1807,  1812,     0,     0,
5594        0,     0,     0,     0,     0,     0,     0,   750,     0,     0,
5595     1402,  1808,     0,  1403,  2702,     0,  2709,     0,     0,  1810,
5596     1404,     0,     0,  1405,     0,  1811,  1378,     0,     0,     0,
5597        0,     0,  1822,  1813,     0,  1823,  1824,  1825,  1814,  1826,
5598     1827,  1828,  1829,  1830,  1831,   816,     0,     0,  1406,  1812,
5599        0,     0,     0,     0,   681,  1380,   681,     0,     0,  1815,
5600     1816,  1343,     0,     0,     0,     0,     0,     0,  1821,     0,
5601        0,     0,     0,  1245,  1817,     0,     0,     0,     0,  1407,
5602        0,     0,     0,     0,   808,     0,   813,   813,     0,     0,
5603        0,   808,     0,   859,    35,   813,  2122,   813,  1382,     0,
5604        0,   813,     0,  1813,   750,  1383,  1818,     0,  1814,     0,
5605        0,     0,  1384,     0,     0,     0,     0,     0,     0,  1819,
5606     2123,     0,  1820,     0,     0,   714,     0,     0,     0,  1815,
5607     1816,     0,  1386,     0,     0,  2138,     0,  1408,     0,  1409,
5608     1387,     0,     0,  2825,  1817,     0,     0,     0,     0,  1410,
5609     2836,     0,     0,     0,     0,  1813,     0,  1411,     0,   750,
5610     1814,  1822,     0,     0, -2420, -2420, -2420,  1412,  1826,  1827,
5611     1828,  1829,  1830,  1831,     0,     0,  1818,     0,     0,   750,
5612        0,  1815,  1816,     0,  2881,  2881,     0,     0,     0,  1819,
5613        0,     0,  1820,   816,  1388,     0,  1817,     0,     0,     0,
5614        0,     0,  1821,  1413,     0,     0,  1414,  1415,     0,     0,
5615      813,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5616        0,     0,     0,     0,  1399,     0,     0,     0,  1818,     0,
5617     1400,     0,     0,  1416,     0,     0,     0,  2946,     0,  2949,
5618     2951,  1819,     0,     0,  1820,     0,     0,     0,     0,     0,
5619        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5620        0,     0,     0,     0,     0,     0,   813,     0,     0,     0,
5621     1401,     0,  1821,     0,   813,     0,   813,  1803,     0,     0,
5622     1804,     0,   813,     0,  1805,  1806,  1807,  2082,     0,     0,
5623        0,     0,     0,     0,  1245,  1822,  1417,     0,  1823,  1824,
5624     1825,  1808,  1826,  1827,  1828,  1829,  1830,  1831,  2138,  1810,
5625        0,  2881,  3743,   750,     0,  1811,  3037,     0,     0,   681,
5626     2083,     0,  1403,     0,  1821,     0,     0,     0,  1803,  1404,
5627        0,  1804,  1405,  2084,     0,  1805,  1806,  1807,     0,  1812,
5628        0,     0,     0,     0,     0,  2946,     0,  2085,     0,     0,
5629        0,     0,  1808,     0,   813,  3063,     0,  1406,     0,     0,
5630     1810,     0,     0,     0,     0,  1822,  1811,     0,  1823,  1824,
5631     1825,     0,  1826,  1827,  1828,  1829,  1830,  1831,  1245,     0,
5632        0,     0,  3794,     0,     0,     0,     0,  2086,  1407,     0,
5633     1812,     0,     0,  3107,     0,     0,     0,     0,  2087,     0,
5634        0,     0,     0,     0,     0,     0,     0,     0,   813,     0,
5635      813,  2881,   813,  2881,     0,     0,     0,  1822,  2088,     0,
5636     1823,  1824,  1825,  2089,  1826,  1827,  1828,  1829,  1830,  1831,
5637        0,     0,     0,     0,  3877,     0,  1245,     0,     0,     0,
5638        0,     0,     0,     0,     0,  1813,  1408,     0,  1409,  1715,
5639     1814,     0,     0,     0,     0,     0,     0,     0,  1410,     0,
5640        0,     0,     0,     0,     0,     0,  1411,     0,     0,     0,
5641        0,  1815,  1816,     0,     0,     0,  1412,     0,     0,     0,
5642        0,     0,     0,     0,     0,     0,  1817,   750,     0,     0,
5643        0,     0,  2090,     0,     0,     0,  1813,   808,     0,     0,
5644        0,  1814,     0,   808,     0,     0,     0,     0,     0,     0,
5645        0,     0,  1469,     0,   813,  1414,  1415,     0,  1818,     0,
5646        0,  1245,  1815,  1816,  2091,     0,  1245,     0,     0,     0,
5647        0,  1819,     0,     0,  1820,     0,     0,  1817,     0,     0,
5648        0,     0,  1470,     0,     0,     0,     0,     0,     0,  1245,
5649     1245,  1245,     0,     0,  1245,     0,   207,     0,     0,     0,
5650        0,     0,  1245,  1245,  1245,  1245,     0,     0,     0,  1818,
5651        0,     0,     0,     0,     0,  1245,     0,     0,  1245,     0,
5652     1245,     0,  1819,     0,     0,  1820,     0,     0,     0,     0,
5653     2092,  1245,  1245,     0,     0,  1245,  2093,     0,     0,  2094,
5654        0,     0,     0,     0,     0,  1417,     0,   859,     0,  1245,
5655        0,  1245,     0,  1245,  1821,     0,     0,     0,     0,     0,
5656        0,     0,     0,     0,     0,     0,     0,     0,  2095,     0,
5657        0,  1803,     0,  1245,  1804,  2096,     0,   750,  1805,  1806,
5658     1807,     0,  2097,     0,  3316,     0,  1245,  1245,  1245,  2098,
5659        0,  1803,     0,     0,  1804,  1808,     0,  1372,  1805,  1806,
5660     1807,     0,     0,  1810,  1245,  1821,     0,     0,     0,  1811,
5661        0,     0,     0,     0,  2099,  1808,  1245,     0,     0,     0,
5662        0,  1245,     0,  1810,     0,     0,     0,  1245,     0,  1811,
5663     1373,     0,     0,  1812,     0,     0,     0,  3316,  1399,     0,
5664     3355,     0,     0,  3358,  1400,  2709,     0,  1822,     0,     0,
5665     1823,  1824,  1825,  1812,  1826,  1827,  1828,  1829,  1830,  1831,
5666     1374,     0,     0,     0,  3904,     0,     0,     0,     0,  1446,
5667        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5668        0,     0,     0,     0,  1401,     0,     0,  1245,  1375,  2881,
5669        0,     0,     0,     0,  1715,     0,     0,     0,  1822,     0,
5670        0,  1823,  1824,  1825,     0,  1826,  1827,  1828,  1829,  1830,
5671     1831,     0,     0,     0,     0,  4160,     0,  1447,     0,     0,
5672      813,  1376,   813,   813,   813,     0,     0,     0,     0,     0,
5673        0,     0,     0,     0,     0,     0,  1403,     0,     0,  1813,
5674        0,     0,     0,  1404,  1814,     0,  1405,     0,     0,     0,
5675        0,     0,     0,     0,     0,     0,  1377,     0,     0,  1813,
5676        0,     0,     0,     0,  1814,  1815,  1816,     0,     0,     0,
5677        0,  1406,     0,     0,     0,     0,     0,     0,     0,     0,
5678     1817,     0,     0,     0,     0,  1815,  1816,     0,     0,  1378,
5679        0,     0,     0,     0,     0,     0,     0,     0,     0,  1448,
5680     1817,     0,  1407,     0,     0,     0,     0,     0,     0,     0,
5681        0,     0,  1818,     0,     0,     0,     0,  1379,  1380,     0,
5682        0,     0,     0,     0,  1343,  1819,     0,     0,  1820,     0,
5683        0,   750,  1818,     0,     0,     0,     0,     0,     0,     0,
5684        0,     0,     0,     0,     0,  1819,     0,  1449,  1820,     0,
5685     1450,     0,     0,  1381,     0,     0,     0,    35,     0,     0,
5686     1451,  1382,  1409,     0,   838,     0,     0,     0,  1383,     0,
5687        0,     0,  1410,   868,     0,  1384,     0,     0,     0,     0,
5688     1411,     0,   883,  1385,     0,     0,     0,     0,     0,  1452,
5689     1412,     0,     0,     0,     0,  1386,     0,     0,     0,     0,
5690        0,     0,     0,  1387,     0,     0,     0,     0,  1821,     0,
5691        0,     0,     0,     0,   813,     0,     0,     0,     0,     0,
5692        0,  2881,  2881,     0,     0,     0,  1453,     0,  1821,  1414,
5693     1415,  1454,     0,     0,     0,     0,     0,     0,     0,     0,
5694        0,     0,     0,     0,     0,  1803,     0,     0,  1804,     0,
5695        0,     0,  1805,  1806,  1807,     0,  1455,  1388,   750,   750,
5696        0,     0,     0,     0,     0,     0,     0,     0,     0,  1808,
5697     1456,     0,     0,     0,   750,     0,     0,  1810,     0,     0,
5698        0,     0,     0,  1811,     0,     0,     0,     0,     0,  1715,
5699      750,     0,     0,     0,     0,     0,     0,     0,  1715,   750,
5700      750,  1822,     0,     0,  1823,  1824,  1825,  1812,  1826,  1827,
5701     1828,  1829,  1830,  1831,     0,     0,   750,     0,  4195,  1417,
5702        0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,
5703     1828,  1829,  1830,  1831,     0,     0,     0,     0,  4425,     0,
5704        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5705        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5706        0,     0,     0,     0,     0,     0,     0,     0,     0,   813,
5707        0,   813,     0,     0,     0,   813,     0,     0,     0,     0,
5708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5709        0,   808,     0,     0,     0,     0,     0,     0,     0,     0,
5710        0,   750,     0,     0,     0,     0,     0,     0,     0,     0,
5711        0,     0,     0,  1813,     0,     0,     0,   750,  1814,     0,
5712        0,     0,     0,     0,     0,     0,     0,     0,     0,   813,
5713        0,     0,     0,     0,     0,     0,  1245,     0,     0,  1815,
5714     1816,     0,     0,     0,     0,  1245,     0,     0,     0,     0,
5715        0,  1245,     0,  1245,  1817,     0,  1245,     0,     0,     0,
5716        0,  1245,  1245,  1245,  1245,     0,     0,  1245,  1245,  1245,
5717     1245,  1245,  1245,  1245,  1245,  1245,  1245,     0,     0,     0,
5718     1245,  1245,     0,     0,     0,     0,  1818,     0,     0,     0,
5719     1245,     0,     0,     0,  1245,     0,     0,     0,  1245,  1819,
5720        0,     0,  1820,     0,     0,     0,  1245,     0,     0,  1245,
5721        0,  1245,   892,     0,     0,     0,     0,     0,   933,     0,
5722     1245,     0,     0,  1245,  1245,     0,     0,     0,  1245,  1245,
5723        0,  1803,     0,  3818,  1804,  1245,     0,     0,  1805,  1806,
5724     1807,     0,   750,   750,   750,   808,     0,  3316,  3838,     0,
5725        0,     0,  3838,  3852,     0,  1808,  1399,     0,     0,  1245,
5726        0,     0,  1400,  1810,     0,  1245,  1245,  1245,     0,  1811,
5727        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5728        0,     0,  1821,     0,     0,     0,     0,     0,     0,     0,
5729        0,     0,  1245,  1812,     0,     0,     0,     0,     0,     0,
5730        0,     0,  1401,  2709,     0,  1245,     0,     0,   594,     0,
5731        0,     0,     0,     0,   640,     0,     0,     0,     0,     0,
5732        0,     0,     0,     0,     0,   694,  3910,  1715,  1715,     0,
5733     2260,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5734        0,     0,     0,     0,   762,   762,     0,     0,   813,   813,
5735      813,   813,     0,     0,  1403,     0,     0,     0,     0,     0,
5736        0,  1404,     0,     0,  1405,  1130,     0,     0,     0,     0,
5737        0,     0,     0,     0,     0,  1822,     0,  2138,  1823,  1824,
5738     1825,     0,  1826,  1827,  1828,  1829,  1830,  1831,     0,  1406,
5739     1252,  3956,  4436,     0,     0,     0,     0,     0,     0,  1813,
5740        0,     0,     0,     0,  1814,     0,     0,     0,     0,  1275,
5741        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5742     1407,     0,     0,     0,     0,  1815,  1816,     0,     0,     0,
5743        0,  1302,     0,     0,     0,     0,     0,     0,     0,     0,
5744     1817,  1803,     0,     0,  1804,     0,     0,     0,  1805,  1806,
5745     1807,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5746        0,     0,     0,     0,     0,  1808,     0,     0,     0,     0,
5747        0,     0,  1818,  1810,     0,     0,     0,     0,  1408,  1811,
5748     1409,  4034,     0,     0,     0,  1819,     0,     0,  1820,     0,
5749     1410,     0,     0,   821,     0,     0,     0,     0,  1411,     0,
5750        0,   861,  1427,  1812,   865,   866,     0,   869,  1412,     0,
5751      875,     0,   877,     0,     0,     0,     0,     0,     0,     0,
5752        0,     0,     0,     0,   750,     0,   813,     0,  1245,     0,
5753        0,     0,     0,     0,   750,     0,     0,     0,     0,     0,
5754     4069,     0,     0,     0,  1495,     0,     0,  1414,  1415,  2138,
5755        0,     0,     0,  1803,     0,     0,  1804,     0,     0,     0,
5756     1805,  1806,  1807,     0,     0,     0,     0,     0,  1821,   750,
5757        0,     0,     0,     0,  1496,     0,     0,  1808,     0,  2946,
5758        0,     0,     0,     0,     0,  1810,     0,  4103,     0,     0,
5759        0,  1811,     0,     0,     0,     0,     0,   750,     0,     0,
5760        0,  2260,     0,     0,     0,  1245,  1245,     0,  1550,  1813,
5761        0,     0,     0,     0,  1814,  1812,     0,     0,     0,     0,
5762        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5763        0,     0,  1580,  1583,  1584,  1815,  1816,  1417,     0,  2881,
5764        0,  2881,     0,     0,     0,     0,     0,     0,     0,     0,
5765     1817,   750,     0,     0,     0,     0,     0,     0,     0,     0,
5766        0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,
5767     1828,  1829,  1830,  1831,     0,     0,     0,     0,  4445,     0,
5768        0,  1245,  1818,     0,     0,  1399,     0,     0,     0,     0,
5769        0,  1400,  1245,     0,     0,  1819,     0,     0,  1820,     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,  1813,  1245,     0,     0,     0,  1814,     0,     0,     0,
5773        0,  1401,  1245,  1245,     0,     0,     0,     0,     0,  1245,
5774     1245,     0,     0,     0,  1245,     0,     0,  1815,  1816,  1245,
5775        0,     0,  1245,  1245,     0,     0,     0,  1245,  4199,     0,
5776        0,     0,  1817,  1245,   750,   750,   750,   750,     0,     0,
5777     1252,  3838,  3852,     0,  3838,     0,     0,  4210,  1821,     0,
5778     2178,  3316,     0,  1403,     0,  3316,     0,     0,     0,     0,
5779     1404,  4225,     0,  1405,  1818,     0,     0,  1245,     0,     0,
5780        0,  1252,  1245,     0,     0,     0,     0,  1819,  1245,     0,
5781     1820,     0,     0,     0,     0,   859,     0,     0,  1406,     0,
5782        0,     0,     0,  1245,     0,     0,  3355,     0,     0,     0,
5783        0,  2709,     0,     0,     0,     0,     0,     0,     0,     0,
5784        0,     0,     0,     0,   681,     0,     0,  1245,     0,  1407,
5785        0,     0,     0,     0,   936,     0,     0,     0,     0,     0,
5786        0,     0,   944,     0,     0,     0,     0,  2881,  2881,   957,
5787        0,  1822,   962,   963,  1823,  1824,  1825,   965,  1826,  1827,
5788     1828,  1829,  1830,  1831,     0,  2138,  2661,     0,   982,     0,
5789     1821,     0,     0,     0,  4288,     0,     0,     0,     0,     0,
5790        0,     0,     0,   991,     0,     0,     0,  1408,     0,  1409,
5791        0,     0,     0,     0,     0,     0,     0,     0,  1051,  1410,
5792     1055,     0,     0,  1057,     0,  1059,     0,  1411,  1063,     0,
5793        0,     0,     0,     0,     0,  1245,  1874,  1412,     0,     0,
5794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5795        0,     0,     0,     0,     0,   813,     0,     0,     0,     0,
5796        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5797      813,     0,     0,  2179,     0,     0,  1414,  1415,     0,     0,
5798        0,     0,     0,  1822,     0,  2011,  1823,  1824,  1825,     0,
5799     1826,  1827,  1828,  1829,  1830,  1831,     0,  1245,     0,  1131,
5800     4448,     0,     0,  2180,     0,     0,     0,     0,   808,  1032,
5801        0,     0,     0,  2138,     0,     0,     0,     0,     0,     0,
5802        0,  1715,     0,     0,     0,     0,  1803,     0,     0,  1804,
5803     1032,     0,     0,  1805,  1806,  1807,     0,     0,   813,  3063,
5804        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5805     1808,     0,     0,     0,   762,     0,     0,     0,  1810,     0,
5806     2132,     0,     0,     0,  1811,     0,  1417,   750,     0,  2155,
5807        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5808        0,     0,     0,     0,     0,     0,     0,     0,  1812,     0,
5809        0,     0,     0,     0,     0,     0,  2190,     0,     0,     0,
5810        0,     0,     0,     0,  2196,     0,  1245,  2199,     0,     0,
5811        0,     0,     0,     0,  1363,  1245,  1803,     0,     0,  1804,
5812        0,     0,     0,  1805,  1806,  1807,     0,     0,     0,     0,
5813        0,     0,  1245,  1245,     0,     0,  1245,     0,     0,     0,
5814     1808,     0,  2234,     0,     0,     0,     0,     0,  1810,     0,
5815      808,  3838,     0,     0,  1811,  3316,  2249,     0,     0,     0,
5816     3316,     0,     0,  3316,   808,     0,  2946,     0,  4466,  2261,
5817        0,  1245,  1245,     0,     0,     0,     0,     0,  1812,  1498,
5818        0,     0,     0,     0,     0,     0,     0,  3910,     0,     0,
5819        0,     0,     0,     0,  1813,  1511,     0,     0,     0,  1814,
5820     3910,   859,   813,   813,   813,     0,     0,  1522,     0,  1523,
5821        0,     0,     0,     0,     0,     0,     0,  1526,     0,  2312,
5822     1815,  1816,     0,     0,     0,     0,     0,     0,     0,  1532,
5823        0,     0,     0,     0,  1541,  1817,     0,  1545,     0,     0,
5824     2346,     0,     0,     0,   808,   859,     0,  2358,     0,     0,
5825        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5826        0,     0,     0,     0,     0,     0,     0,  1818,     0,     0,
5827        0,     0,  1590,     0,     0,     0,     0,     0,     0,     0,
5828     1819,     0,     0,  1820,  1813,     0,     0,   808,     0,  1814,
5829      750,  1399,     0,     0,     0,     0,     0,  1400,     0,  1032,
5830     4069,     0,     0,     0,     0,     0,   750,     0,  2881,     0,
5831     1815,  1816,     0,     0,  2138,     0,     0,     0,     0,  1032,
5832        0,     0,     0,     0,     0,  1817,     0,  4103,     0,     0,
5833        0,     0,     0,  1032,     0,     0,     0,  1401,   813,   750,
5834     3910,     0,     0,     0,     0,     0,     0,     0,     0,  2436,
5835        0,     0,     0,     0,     0,     0,     0,  1818,     0,     0,
5836        0,     0,     0,  1821,     0,     0,     0,     0,     0,  1245,
5837     1819,     0,  1245,  1820,  1245,     0,     0,     0,     0,     0,
5838        0,     0,     0,     0,     0,     0,     0,  1252,  1252,  1403,
5839        0,     0,     0,     0,     0,     0,  1404,     0,  1245,  1405,
5840        0,     0,  3316,     0,  2484,     0,  4466,  1733,     0,     0,
5841     1032,     0,     0,  1245,     0,     0,     0,     0,     0,     0,
5842     1803,     0,  4659,  1804,  1406,     0,     0,  1805,  1806,  1807,
5843        0,     0,  1245,     0,     0,     0,     0,     0,     0,     0,
5844        0,     0,     0,     0,  1808,     0,     0,   750,     0,     0,
5845        0,     0,  1810,  1821,     0,  1407,  1822,     0,  1811,  1823,
5846     1824,  1825,     0,  1826,  1827,  1828,  1829,  1830,  1831,     0,
5847     1245,     0,     0,  4496,     0,     0,     0,   813,   813,   813,
5848      813,     0,  1812,     0,     0,     0,     0,     0,     0,     0,
5849     3079,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5850        0,  2640,     0,     0,     0,     0,     0,     0,     0,  1372,
5851        0,  2655,     0,  1408,   808,  1409,     0,     0,     0,  1032,
5852        0,     0,     0,     0,     0,  1410,     0,     0,     0,     0,
5853      750,     0,     0,  1411,     0,  1245,     0,     0,     0,     0,
5854        0,     0,  1373,  1412,     0,     0,  1822,     0,     0,  1823,
5855     1824,  1825,     0,  1826,  1827,  1828,  1829,  1830,  1831,     0,
5856        0,     0,     0,  4527,     0,     0,     0,     0,     0,     0,
5857        0,     0,     0,     0,     0,     0,     0,  1245,     0,  2103,
5858      808,     0,  1414,  1415,     0,     0,     0,     0,  1813,  1245,
5859        0,   762,  1973,  1814,  1245,     0,  1245,     0,  1245,     0,
5860     1375,     0,     0,     0,     0,  3910,     0,     0,     0,  2104,
5861        0,   813,     0,   859,  1815,  1816,     0,     0,     0,     0,
5862        0,     0,  1245,     0,     0,     0,     0,     0,  2666,  1817,
5863     2669,     0,     0,  1376,     0,     0,     0,     0,     0,     0,
5864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5865        0,     0,     0,  1715,  1715,     0,     0,     0,     0,  1859,
5866        0,  1818,     0,  3080,  2101,     0,     0,  1252,  1377,     0,
5867        0,     0,  1417,     0,  1819,     0,     0,  1820,     0,     0,
5868      813,     0,     0,     0,     0,     0,   808,     0,     0,     0,
5869        0,     0,     0,     0,     0,     0,     0,     0,  3079,     0,
5870        0,  1378,  1803,     0,     0,  1804,     0,     0,     0,  1805,
5871     1806,  1807,     0,  1245,  1245,     0,     0,  1372,  2946,     0,
5872        0,     0,     0,  1032,  1245,     0,  1808,  4659,  2189,     0,
5873     1380,  2709,     0,     0,  1810,     0,  1343,     0,     0,  1803,
5874     1811,     0,  1804,     0,   808,     0,  1805,  1806,  1807,     0,
5875     1373,     0,     0,     0,   813,     0,     0,  1821,     0,     0,
5876        0,  1715,     0,  1808,  1812,     0,     0,     0,     0,    35,
5877        0,  1810,     0,  1382,     0,     0,     0,  1811,     0,     0,
5878     1383,     0,     0,  2138,     0,     0,     0,  1384,     0,  1032,
5879        0,  3910,     0,     0,     0,  2123,     0,   808,   808,  1245,
5880        0,  1812,     0,     0,     0,     0,     0,  1386,  1375,     0,
5881        0,     0,     0,     0,     0,  1387,     0,     0,  1245,  2848,
5882        0,     0,     0,     0,     0,   813,  1032,     0,     0,     0,
5883        0,     0,     0,     0,     0,  3082,     0,     0,     0,  2875,
5884        0,  1376,     0,  2304,     0,     0,     0,     0,     0,     0,
5885     1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,  1828,
5886     1829,  1830,  1831,     0,     0,     0,     0,  4565,     0,  1388,
5887     1813,  3080,     0,  3083,  3673,  1814,  1377,     0,     0,     0,
5888        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5889        0,     0,     0,     0,     0,     0,  1815,  1816,     0,     0,
5890        0,  1245,  1245,     0,     0,     0,  1032,  1813,     0,  1378,
5891        0,  1817,  1814,     0,     0,   808,     0,     0,     0,     0,
5892        0,  1032,     0,     0,     0,     0,     0,   808,   808,  1032,
5893        0,     0,     0,  1815,  1816,     0,     0,     0,  1380,     0,
5894     1032,  2401,     0,  1818,  1343,     0,     0,     0,  1817,     0,
5895        0,     0,     0,     0,     0,  2415,  1819,     0,  2418,  1820,
5896     2420,     0,  2421,     0,     0,     0,     0,     0,  2423,     0,
5897        0,     0,     0,  3033,     0,     0,     0,    35,     0,     0,
5898     1818,  3081,     0,     0,     0,     0,     0,  1032,  1383,     0,
5899        0,     0,     0,  1819,     0,  1384,  1820,     0,     0,     0,
5900     1032,     0,     0,  2123,     0,     0,     0,     0,     0,     0,
5901        0,  3079,  1032,  1973,     0,  1386,     0,  1973,     0,  1973,
5902        0,     0,  1973,  1387,  1032,     0,     0,     0,     0,     0,
5903     1372,     0,     0,     0,     0,     0,     0,     0,     0,  1821,
5904        0,     0,     0,  3082,     0,     0,     0,     0,     0,     0,
5905        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5906        0,     0,     0,  1373,     0,     0,     0,     0,  1032,     0,
5907        0,  1032,     0,     0,     0,     0,  1821,  1388,     0,     0,
5908        0,  3083,     0,     0,     0,     0,     0,     0,     0,     0,
5909        0,  1803,     0,     0,  1804,     0,     0,     0,  1805,  1806,
5910     1807,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5911        0,     0,     0,     0,     0,  1808,     0,     0,     0,     0,
5912     1399,  1375,     0,  1810,     0,     0,  1400,     0,     0,  1811,
5913        0,     0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,
5914     1827,  1828,  1829,  1830,  1831,     0,     0,  3172,     0,  4810,
5915        0,     0,     0,  1812,  1376,     0,     0,     0,     0,     0,
5916        0,     0,     0,     0,     0,     0,  1401,     0,     0,  1822,
5917        0,     0,  1823,  1824,  1825,     0,  1826,  1827,  1828,  1829,
5918     1830,  1831,     0,     0,  3080,     0,  4842,     0,     0,  1377,
5919        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5920     1032,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5921        0,     0,  1803,     0,     0,  1804,     0,     0,  1403,  1805,
5922     1806,  1807,  1378,     0,     0,  1404,     0,     0,  1405,     0,
5923     1803,     0,     0,  1804,     0,     0,  1808,  1805,  1806,  1807,
5924        0,     0,     0,     0,  1810,     0,     0,     0,     0,     0,
5925     1811,  1380,     0,  1406,  1808,     0,     0,  1343,  2675,  1813,
5926        0,     0,  1810,     0,  1814,     0,     0,     0,  1811,     0,
5927        0,     0,     0,     0,  1812,     0,     0,     0,     0,     0,
5928        0,     0,     0,     0,  1407,  1815,  1816,     0,     0,     0,
5929       35,     0,  1812,     0,  1382,     0,     0,  3299,     0,     0,
5930     1817,  1383,     0,     0,     0,     0,     0,     0,  1384,     0,
5931        0,     0,     0,     0,     0,     0,  2123,     0,     0,     0,
5932        0,     0,     0,     0,     0,     0,     0,     0,  1386,  2727,
5933     2728,     0,  1818,     0,  2731,  2732,  1387,     0,     0,  2735,
5934     2676,     0,  1408,     0,  1409,  1819,     0,     0,  1820,     0,
5935        0,     0,     0,  2746,  1410,     0,  3082,     0,     0,     0,
5936     2755,     0,  1411,     0,  2758,  2759,     0,     0,  2762,  2763,
5937        0,     0,  1412,     0,     0,  2768,     0,     0,     0,     0,
5938     1813,     0,     0,     0,     0,  1814,     0,  2784,     0,  2786,
5939     1388,     0,     0,     0,  3083,     0,     0,     0,  1813,     0,
5940        0,     0,     0,  1814,     0,     0,  1815,  1816,  2810,     0,
5941        0,  1414,  1415,  2812,     0,  1032,     0,     0,     0,  1032,
5942     1032,  1817,     0,     0,  1815,  1816,  2817,     0,  1821,     0,
5943        0,     0,     0,     0,     0,  2824,     0,  2826,  1416,  1817,
5944     2829,  2832,  2834,     0,     0,     0,     0,  2842,  2845,     0,
5945        0,     0,     0,  1818,     0,     0,     0,  2858,     0,     0,
5946        0,     0,  2867,     0,     0,     0,  1819,  2871,     0,  1820,
5947        0,  1818,     0,     0,     0,     0,     0,     0,     0,     0,
5948        0,     0,  1032,     0,  1819,     0,     0,  1820,     0,     0,
5949        0,     0,     0,  2906,  1032,     0,     0,     0,     0,     0,
5950        0,  1417,     0,     0,  2913,     0,  2915,     0,     0,     0,
5951        0,  2918,     0,     0,     0,  2919,     0,  2923,  2924,  2925,
5952     2926,  1822,  2928,     0,  1823,  1824,  1825,     0,  1826,  1827,
5953     1828,  1829,  1830,  1831,  1032,  2953,  2954,  2955,  4961,     0,
5954        0,     0,     0,     0,     0,  2963,  2964,     0,     0,  1821,
5955        0,  3495,     0,  1803,     0,     0,  1804,     0,     0,     0,
5956     1805,  1806,  1807,     0,     0,     0,     0,  1821,     0,     0,
5957        0,  1803,     0,     0,  1804,     0,     0,  1808,  1805,  1806,
5958     1807,     0,     0,     0,     0,  1810,     0,     0,     0,     0,
5959        0,  1811,  1399,     0,     0,  1808,     0,  3008,  1400,     0,
5960        0,     0,     0,  1810,     0,     0,     0,     0,     0,  1811,
5961        0,     0,     0,     0,     0,  1812,     0,     0,     0,     0,
5962        0,     0,  2677,     0,     0,     0,     0,     0,     0,     0,
5963        0,     0,     0,  1812,     0,     0,     0,  1399,  1401,     0,
5964        0,     0,  1822,  1400,     0,  1823,  1824,  1825,     0,  1826,
5965     1827,  1828,  1829,  1830,  1831,     0,     0,     0,     0,  4979,
5966     1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,  1828,
5967     1829,  1830,  1831,     0,     0,     0,     0,     0,  3604,  3605,
5968        0,     0,     0,  1401,     0,     0,     0,     0,     0,  1032,
5969     1403,     0,     0,     0,  3614,     0,     0,  1404,     0,  3238,
5970     1405,     0,     0,     0,  3239,     0,     0,     0,     0,     0,
5971     3631,     0,     0,     0,     0,     0,     0,     0,     0,  3640,
5972     3642,  1813,     0,     0,     0,  1406,  1814,     0,     0,     0,
5973        0,     0,     0,     0,     0,  1403,  3660,     0,     0,  1813,
5974        0,     0,  1404,     0,  1814,  1405,     0,  1815,  1816,     0,
5975     1973,     0,     0,     0,     0,     0,  1407,     0,     0,  1032,
5976        0,     0,  1817,     0,     0,  1815,  1816,     0,     0,     0,
5977     1406,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5978     1817,  3173,     0,     0,     0,     0,     0,     0,     0,     0,
5979        0,     0,     0,     0,  1818,     0,     0,     0,     0,     0,
5980        0,  1407,     0,     0,     0,     0,     0,  1819,     0,     0,
5981     1820,     0,  1818,     0,  1408,     0,  1409,     0,     0,     0,
5982        0,     0,     0,     0,     0,  1819,  1410,     0,  1820,     0,
5983        0,     0,     0,     0,  1411,     0,     0,  1252,     0,     0,
5984        0,     0,     0,     0,  1412,     0,     0,     0,     0,     0,
5985        0,  3786,  1399,     0,     0,     0,     0,     0,  1400,  1408,
5986        0,  1409,     0,     0,     0,     0,     0,     0,     0,     0,
5987        0,  1410,     0,     0,     0,     0,     0,  1032,     0,  1411,
5988     2818,     0,     0,  1414,  1415,     0,     0,     0,     0,  1412,
5989     1821,     0,     0,     0,  1032,     0,     0,     0,  1401,     0,
5990        0,     0,     0,     0,     0,  1032,     0,     0,  1821,     0,
5991     1416,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5992        0,     0,     0,     0,  3787,  2920,     0,     0,  1414,  1415,
5993        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5994        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
5995     1403,     0,     0,     0,     0,  2921,     0,  1404,     0,     0,
5996     1405,     0,  3826,  3827,  3828,     0,     0,  3336,     0,     0,
5997        0,     0,     0,  1417,     0,     0,     0,     0,     0,     0,
5998        0,     0,     0,  1822,     0,  1406,  1823,  1824,  1825,     0,
5999     1826,  1827,  1828,  1829,  1830,  1831,     0,     0,     0,     0,
6000        0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,
6001     1828,  1829,  1830,  1831,     0,     0,  1407,     0,  1417,  3373,
6002     3374,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6003        0,  1803,     0,     0,  1804,     0,     0,  1973,  1805,  1806,
6004     1807,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6005        0,     0,     0,     0,     0,  1808,     0,     0,     0,     0,
6006        0,     0,  3395,  1810,     0,     0,     0,     0,     0,  1811,
6007        0,  3399,     0,     0,  1408,     0,  1409,     0,     0,     0,
6008        0,     0,     0,     0,     0,     0,  1410,  3411,  3413,     0,
6009        0,     0,  3413,  1812,  1411,     0,     0,  3424,  3425,  3426,
6010        0,  3428,     0,     0,  1412,     0,     0,  1032,     0,     0,
6011     1032,     0,  1032,     0,     0,     0,     0,  1032,  1803,     0,
6012        0,  1804,  3445,     0,     0,  1805,  1806,  1807,     0,     0,
6013        0,     0,  3451,  3452,  3453,  3454,     0,     0,     0,     0,
6014     2960,     0,  1808,  1414,  1415,  3197,     0,     0,     0,     0,
6015     1810,     0,     0,     0,     0,     0,  1811,  1399,     0,     0,
6016        0,     0,     0,  1400,     0,     0,     0,     0,  1032,  3471,
6017     2961,     0,  3476,  3477,  3478,     0,  4922,     0,     0,     0,
6018     1812,     0,  3491,  1803,     0,  1032,  1804,     0,  1446,     0,
6019     1805,  1806,  1807,     0,     0,     0,     0,     0,     0,  1813,
6020        0,     0,     0,  1401,  1814,     0,     0,  1808,     0,     0,
6021     1032,     0,     0,     0,     0,  1810,     0,     0,     0,     0,
6022        0,  1811,     0,     0,     0,  1815,  1816,     0,     0,     0,
6023        0,     0,     0,  1417,     0,     0,  1447,     0,     0,     0,
6024     1817,     0,     0,     0,  4054,  1812,     0,     0,     0,     0,
6025        0,     0,     0,  3542,  4064,  1403,     0,     0,     0,     0,
6026        0,  3546,  1404,     0,     0,  1405,     0,     0,     0,     0,
6027        0,     0,  1818,     0,     0,     0,     0,     0,     0,  1032,
6028     3558,  1032,     0,     0,     0,  1819,  1813,     0,  1820,  4085,
6029     1406,  1814,     0,     0,     0,     0,     0,     0,     0,     0,
6030        0,     0,     0,     0,     0,     0,  3601,     0,     0,  4923,
6031        0,     0,  1815,  1816,     0,     0,     0,  2358,  1448,     0,
6032        0,  1407,     0,     0,     0,     0,     0,  1817,     0,     0,
6033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6034        0,     0,  1032,     0,     0,     0,     0,     0,     0,     0,
6035     3638,  1813,     0,     0,  3643,     0,  1814,     0,     0,  1818,
6036        0,     0,     0,     0,     0,     0,  1449,  1032,  1821,  1450,
6037        0,  2436,  1819,     0,     0,  1820,     0,  1815,  1816,  1451,
6038        0,  1409,     0,  3681,     0,     0,     0,     0,     0,     0,
6039        0,  1410,  1817,  1032,     0,     0,     0,     0,     0,  1411,
6040     1032,     0,     0,     0,     0,     0,     0,     0,  1452,  1412,
6041        0,     0,     0,  3694,     0,     0,  1399,     0,     0,     0,
6042        0,     0,  1400,     0,  1818,     0,     0,  3704,     0,     0,
6043        0,  3706,     0,     0,     0,     0,     0,  1819,     0,     0,
6044     1820,     0,  1973,     0,     0,  2907,     0,     0,  1414,  1415,
6045     1454,     0,     0,     0,     0,  1821,     0,  3211,     0,  1032,
6046        0,  1822,  1401,     0,  1823,  1824,  1825,     0,  1826,  1827,
6047     1828,  1829,  1830,  1831,     0,  2908,     0,  1032,     0,     0,
6048        0,     0,     0,     0,  4202,  4203,  4204,  4205,   810,  1456,
6049     1032,     0,     0,     0,     0,     0,     0,   810,   833,     0,
6050        0,     0,     0,     0,  1803,   833,     0,  1804,     0,     0,
6051        0,  1805,  1806,  1807,  1403,     0,   833,     0,     0,     0,
6052     1821,  1404,     0,     0,  1405,     0,     0,     0,  1808,     0,
6053        0,  3243,     0,     0,     0,     0,  1810,     0,  1417,     0,
6054        0,     0,  1811,     0,     0,     0,     0,     0,  1822,  1406,
6055        0,  1823,  1824,  1825,     0,  1826,  1827,  1828,  1829,  1830,
6056     1831,     0,     0,     0,     0,     0,  1812,     0,     0,     0,
6057        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6058     1407,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6059        0,     0,     0,  1032,     0,     0,     0,     0,     0,     0,
6060        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6061        0,     0,     0,  1822,  1032,     0,  1823,  1824,  1825,     0,
6062     1826,  1827,  1828,  1829,  1830,  1831,     0,     0,     0,     0,
6063        0,     0,     0,     0,     0,     0,     0,     0,  1408,  1032,
6064     1409,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6065     1410,     0,     0,     0,     0,     0,     0,     0,  1411,     0,
6066        0,     0,     0,     0,     0,     0,     0,     0,  1412,     0,
6067        0,     0,  1813,  1032,     0,     0,     0,  1814,     0,     0,
6068        0,     0,     0,     0,     0,     0,  3921,     0,  3922,     0,
6069        0,     0,     0,     0,     0,  3924,     0,     0,  1815,  1816,
6070        0,     0,     0,     0,  3421,     0,     0,  1414,  1415,     0,
6071        0,  1803,  3934,  1817,  1804,     0,     0,     0,  1805,  1806,
6072     1807,     0,     0,     0,     0,     0,     0,     0,  3942,     0,
6073        0,     0,     0,     0,  3422,  1808,     0,     0,     0,     0,
6074        0,     0,  3955,  1810,     0,  1818,     0,     0,  1399,  1811,
6075        0,     0,     0,     0,  1400,     0,     0,     0,  1819,     0,
6076     3959,  1820,     0,     0,     0,  1032,     0,     0,     0,     0,
6077     3968,     0,     0,  1812,     0,     0,     0,     0,     0,     0,
6078        0,     0,     0,     0,     0,     0,     0,  4407,     0,     0,
6079        0,  3992,     0,     0,  1401,     0,     0,  1417,     0,     0,
6080        0,     0,  4000,  4001,  4002,     0,     0,  4005,  4006,  4007,
6081     4008,  4009,  4010,     0,     0,     0,     0,  4017,  4018,     0,
6082     4020,  4021,  4022,  4023,  4024,  4025,     0,  4027,     0,     0,
6083        0,     0,     0,     0,     0,     0,  4035,     0,  4037,  4038,
6084        0,  1821,     0,     0,     0,     0,  1403,     0,     0,     0,
6085        0,     0,     0,  1404,     0,   810,  1405,     0,     0,     0,
6086        0,  3413,  3248,     0,  1032,     0,     0,   833,     0,     0,
6087        0,     0,   833,     0,     0,     0,     0,     0,     0,  1813,
6088     4057,  1406,     0,   833,  1814,     0,     0,     0,     0,     0,
6089        0,     0,     0,     0,     0,     0,     0,     0,     0,   833,
6090        0,     0,     0,     0,   810,  1815,  1816,     0,     0,     0,
6091     1034,     0,  1407,     0,   810,   833,     0,     0,     0,     0,
6092     1817,   833,     0,     0,     0,     0,     0,     0,     0,     0,
6093        0,  1034,   833,     0,  1822,     0,     0,  1823,  1824,  1825,
6094      833,  1826,  1827,  1828,  1829,  1830,  1831,     0,     0,     0,
6095        0,     0,  1818,     0,     0,     0,     0,     0,     0,     0,
6096        0,     0,     0,     0,     0,  1819,     0,     0,  1820,     0,
6097     1408,     0,  1409,     0,     0,     0,     0,  3413,     0,     0,
6098        0,     0,  1410,     0,     0,     0,     0,     0,     0,     0,
6099     1411,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6100     1412,     0,     0,     0,     0,  1973,  1973,  1973,     0,  1032,
6101     4563,     0,     0,     0,     0,     0,     0,  4145,     0,     0,
6102        0,     0,   810,   810,     0,     0,  1252,     0,   833,     0,
6103        0,     0,     0,     0,     0,     0,  3472,     0,     0,  1414,
6104     1415,     0,     0,     0,     0,     0,     0,     0,  1821,     0,
6105        0,     0,     0,     0,   810,     0,     0,     0,  1032,  4610,
6106        0,     0,     0,     0,     0,     0,  3473,     0,     0,     0,
6107        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6108        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6109        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6110        0,  1803,     0,     0,  1804,     0,     0,     0,  1805,  1806,
6111     1807,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6112        0,     0,     0,     0,     0,  1808,     0,     0,  3254,  1417,
6113        0,     0,     0,  1810,     0,     0,     0,     0,     0,  1811,
6114        0,  1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,
6115     1828,  1829,  1830,  1831,     0,     0,     0,     0,     0,     0,
6116        0,     0,     0,  1812,     0,     0,     0,  4674,     0,     0,
6117        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6118        0,     0,     0,     0,     0,     0,     0,     0,     0,  1032,
6119        0,     0,     0,   810,     0,     0,     0,     0,     0,  1032,
6120     1034,     0,     0,     0,   810,     0,     0,     0,     0,     0,
6121        0,     0,     0,     0,  1803,     0,     0,  1804,     0,     0,
6122     1034,  1805,  1806,  1807,     0,     0,  4275,     0,     0,     0,
6123     4276,  4277,  4278,  4279,  1034,     0,  4281,     0,  1808,     0,
6124        0,     0,     0,     0,     0,     0,  1810,     0,     0,     0,
6125     4742,     0,  1811,     0,     0,     0,     0,     0,     0,     0,
6126     4295,  4296,  4297,     0,  4298,     0,  4300,  4301,     0,  1813,
6127        0,     0,     0,   810,  1814,     0,  1812,     0,  4310,  4311,
6128        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6129        0,     0,     0,     0,     0,  1815,  1816,     0,     0,  4319,
6130        0,     0,     0,     0,     0,  1803,  1973,  1973,  1804,  1973,
6131     1817,  1034,  1805,  1806,  1807,     0,     0,   191,     0,  1032,
6132        0,  4327,     0,     0,     0,     0,     0,     0,     0,  1808,
6133        0,     0,  3793,     0,     0,     0,     0,  1810,     0,     0,
6134        0,     0,  1818,  1811,     0,     0,   833,     0,     0,     0,
6135     1032,     0,     0,     0,     0,  1819,     0,     0,  1820,     0,
6136        0,     0,     0,   192,     0,     0,   833,  1812,     0,     0,
6137      810,  1032,     0,     0,     0,     0,     0,   193,   833,     0,
6138        0,  4373,  1813,     0,     0,     0,  1032,  1814,     0,     0,
6139        0,     0,     0,     0,     0,   194,     0,     0,     0,     0,
6140        0,   195,  4392,     0,     0,     0,   833,     0,  1815,  1816,
6141        0,     0,     0,     0,     0,     0,     0,   196,     0,     0,
6142     1034,     0,   833,  1817,     0,     0,     0,     0,   197,  1032,
6143        0,     0,  4416,     0,     0,     0,   198,   833,  1821,     0,
6144      833,     0,     0,     0,     0,     0,     0,     0,   199,     0,
6145        0,     0,   810,   200,     0,  1818,     0,     0,     0,   201,
6146        0,     0,     0,     0,     0,     0,     0,     0,  1819,     0,
6147        0,  1820,     0,  1813,     0,     0,   202,     0,  1814,     0,
6148        0,   810,     0,     0,     0,     0,     0,     0,     0,     0,
6149        0,     0,     0,     0,     0,     0,     0,     0,     0,  1815,
6150     1816,   203,     0,     0,     0,     0,  1973,     0,     0,   810,
6151      810,   810,     0,   810,  1817,     0,     0,     0,  1032,     0,
6152        0,  1973,   204,     0,     0,     0,     0,     0,     0,     0,
6153        0,  1822,     0,   810,  1823,  1824,  1825,     0,  1826,  1827,
6154     1828,  1829,  1830,  1831,     0,     0,  1818,     0,     0,     0,
6155        0,  1821,     0,     0,   205,     0,     0,   833,     0,  1819,
6156     1803,     0,  1820,  1804,  1032,   833,   833,  1805,  1806,  1807,
6157        0,     0,     0,     0,   810,  1958,   206,     0,     0,     0,
6158     3739,     0,     0,     0,  1808,     0,   207,     0,     0,  4517,
6159        0,     0,  1810,     0,     0,     0,     0,     0,  1811,     0,
6160        0,     0,     0,     0,   810,     0,     0,     0,   810,   810,
6161     4526,     0,     0,   208,     0,  4531,  4532,     0,   209,     0,
6162      210,     0,  1812,     0,  1034,     0,   211,     0,     0,   212,
6163     1958,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6164        0,     0,  1821,     0,  1822,     0,     0,  1823,  1824,  1825,
6165        0,  1826,  1827,  1828,  1829,  1830,  1831,   213,   214,     0,
6166     4584,   215,     0,     0,     0,   216,     0,     0,     0,     0,
6167        0,     0,     0,     0,   217,     0,     0,     0,     0,   218,
6168        0,     0,     0,     0,     0,     0,     0,     0,  1032,     0,
6169     1034,   219,     0,     0,     0,     0,     0,     0,     0,     0,
6170        0,     0,     0,     0,   220,     0,  3413,     0,     0,     0,
6171        0,     0,     0,  4625,     0,     0,     0,     0,     0,     0,
6172        0,     0,     0,     0,     0,     0,     0,  1034,  1813,     0,
6173        0,     0,     0,  1814,     0,  1822,     0,     0,  1823,  1824,
6174     1825,     0,  1826,  1827,  1828,  1829,  1830,  1831,  1973,     0,
6175        0,     0,     0,     0,  1815,  1816,     0,     0,     0,  1973,
6176        0,     0,     0,     0,     0,     0,     0,     0,     0,  1817,
6177        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6178        0,  4661,     0,     0,     0,     0,   833,     0,     0,     0,
6179        0,     0,     0,     0,     0,     0,  1032,     0,     0,     0,
6180        0,  1818,     0,     0,  4677,     0,     0,  1034,     0,     0,
6181        0,     0,     0,  4684,  1819,     0,     0,  1820,     0,     0,
6182        0,     0,  1034,     0,  1032,     0,     0,     0,     0,     0,
6183     1034,     0,     0,     0,  1973,     0,  1958,     0,     0,     0,
6184        0,  1034,     0,     0,     0,     0,     0,     0,     0,     0,
6185        0,     0,     0,     0,     0,     0,     0,   833,     0,     0,
6186        0,   833,  1032,     0,     0,     0,     0,     0,     0,     0,
6187        0,     0,     0,   833,     0,     0,     0,     0,     0,     0,
6188        0,     0,     0,     0,     0,     0,     0,     0,  1034,     0,
6189        0,     0,     0,     0,     0,   810,     0,  1821,     0,     0,
6190        0,  1034,     0,     0,     0,     0,     0,   810,     0,     0,
6191        0,     0,     0,  1034,     0,  1032,     0,  3413,     0,  1032,
6192     1032,     0,     0,     0,     0,  1034,     0,     0,     0,     0,
6193        0,     0,     0,     0,     0,     0,     0,     0,     0,  1973,
6194        0,     0,     0,     0,   810,     0,   833,   833,     0,     0,
6195        0,     0,     0,     0,     0,     0,     0,     0,     0,   833,
6196        0,     0,     0,     0,     0,     0,     0,     0,     0,  1034,
6197        0,     0,  1034,  4799,   833,   833,     0,     0,     0,     0,
6198        0,     0,     0,     0,     0,     0,   833,     0,  4811,     0,
6199     1822,     0,     0,  1823,  1824,  1825,     0,  1826,  1827,  1828,
6200     1829,  1830,  1831,     0,     0,     0,     0,     0,     0,     0,
6201        0,  1032,     0,     0,     0,     0,     0,     0,   810,     0,
6202        0,     0,     0,     0,     0,  4833,     0,     0,     0,     0,
6203        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6204        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6205        0,     0,   810,     0,   810,     0,     0,     0,     0,   810,
6206      810,     0,     0,     0,     0,     0,   810,   810,   810,     0,
6207        0,     0,   810,     0,   810,   810,   810,   810,   810,   810,
6208        0,   810,     0,   810,   810,     0,     0,   810,     0,     0,
6209        0,     0,     0,     0,     0,     0,  4881,     0,     0,     0,
6210        0,  1034,   810,   810,   810,   810,  1958,     0,     0,     0,
6211      810,     0,     0,     0,   810,     0,     0,   810,     0,     0,
6212      810,   810,   810,   810,   810,   810,   810,   810,   810,     0,
6213      810,     0,  4899,     0,     0,   557,     0,   810,     0,   810,
6214      558,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6215        0,     0,   559,     0,     0,     0,     0,     0,     0,     0,
6216        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6217        0,     0,     0,   560,     0,     0,     0,     0,     0,     0,
6218        0,     0,     0,     0,     0,     0,   561,     0,     0,     0,
6219        0,     0,     0,     0,     0,     0,   562,     0,     0,     0,
6220     -788,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6221        0,     0,     0,     0,     0,     0,     0,     0,   563,     0,
6222        0,     0,     0,     0,   564,     0,     0,     0,     0,     0,
6223        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6224      565,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6225        0,   566,     0,     0,     0,     0,     0,   606,     0,   567,
6226        0,     0,   607,     0,     0,     0,     0,   810,     0,     0,
6227        0,   568,     0,     0,   608,     0,     0,     0,   569,     0,
6228        0,     0,   570,     0,     0,     0,     0,     0,     0,     0,
6229        0,     0,     0,     0,     0,   609,     0,     0,     0,  -993,
6230        0,     0,     0,     0,     0,     0,     0,     0,   610,     0,
6231        0,     0,     0,     0,     0,     0,  1034,     0,     0,     0,
6232     1034,  1034,   611,     0,     0,     0,     0,     0,     0,     0,
6233      833,     0,     0,     0,  1958,   833,   571,     0,     0,   833,
6234      612,     0,     0,     0,     0,  -528,     0,   833,     0,     0,
6235        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6236        0,     0,   613,     0,     0,   833,     0,     0,   810,     0,
6237        0,     0,     0,   614,     0,     0,     0,   572,     0,   810,
6238      573,   615,     0,  1034,     0,     0,   810,     0,     0,     0,
6239        0,     0,     0,   616,     0,  1034,     0,     0,   617,   574,
6240        0,     0,     0,     0,   618,     0,     0,     0,   833,     0,
6241        0,     0,     0,     0,     0,     0,     0,     0,  -422,     0,
6242        0,   619,     0,     0,     0,     0,   833,   833,     0,     0,
6243        0,     0,     0,     0,     0,  1034,   575,     0,     0,     0,
6244        0,     0,     0,   576,     0,     0,     0,     0,     0,  -422,
6245        0,     0,   577,     0,     0,     0,     0,  1958,   833,     0,
6246        0,  1958,     0,     0,     0,     0,     0,   620,     0,     0,
6247        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6248        0,  -422,     0,     0,   578,   579,     0,   580,   581,     0,
6249      833,     0,     0,     0,   833,     0,     0,   582,     0,   621,
6250        0,     0,   583,     0,     0,     0,     0,     0,   584,     0,
6251      622,   585,   833,     0,   586,     0,     0,     0,     0,     0,
6252        0,   623,     0,   833,     0,     0,     0,  -422,     0,     0,
6253        0,   207,     0,     0,     0,     0,   833,     0,     0,     0,
6254        0,     0,     0,     0,   833,     0,     0,     0,     0,     0,
6255        0,     0,     0,     0,     0,     0,     0,     0,   624,     0,
6256        0,     0,     0,   625,     0,   626,     0,     0,     0,     0,
6257        0,   627,     0,     0,   628,     0,     0,     0,     0,     0,
6258        0,     0,     0,     0,     0,     0,     0,     0,     0,   810,
6259     1034,     0,     0,     0,     0,     0,     0,     0,  1958,     0,
6260        0,     0,     0,   629,     0,     0,   630,     0,     0,     0,
6261      631,     0,     0,     0,     0,     0,     0,   632,     0,   633,
6262        0,     0,     0,     0,   634,     0,     0,     0,     0,     0,
6263        0,     0,     0,     0,     0,     0,   635,     0,     0,     0,
6264        0,     0,     0,     0,     0,     0,     0,     0,     0,   636,
6265        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6266     1034,     0,     0,     0,   833,     0,     0,     0,     0,     0,
6267        0,     0,     0,   810,     0,     0,     0,     0,     0,     0,
6268        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6269        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6270        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6271        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6272        0,     0,     0,     0,     0,     0,   833,     0,     0,     0,
6273        0,   810,     0,     0,     0,     0,     0,     0,     0,     0,
6274        0,     0,     0,     0,     0,     0,     0,     0,   895,     0,
6275        0,     0,     0,   896,     0,     0,     0,     0,     0,     0,
6276        0,     0,   833,     0,     0,     0,     0,     0,     0,     0,
6277        0,     0,     0,     0,     0,     0,     0,     0,  1034,     0,
6278      833,     0,     0,     0,     0,     0,   897,     0,   833,     0,
6279        0,     0,   810,     0,     0,  1034,     0,     0,   810,   898,
6280      899,     0,     0,     0,     0,     0,  1034,     0,     0,   900,
6281        0,     0,     0,   901,     0,     0,   810,     0,     0,     0,
6282        0,   810,     0,     0,     0,     0,     0,     0,     0,     0,
6283        0,   902,     0,     0,     0,     0,   834,     0,     0,     0,
6284        0,     0,     0,   834,   810,   810,   810,     0,     0,   810,
6285        0,     0,     0,   903,   834,     0,     0,   810,   810,   810,
6286      810,     0,     0,     0,   904,  1958,     0,     0,     0,     0,
6287      810,  1958,   905,   810,     0,   810,     0,     0,     0,     0,
6288        0,     0,     0,     0,   906,     0,   810,   810,     0,   907,
6289      810,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6290        0,     0,     0,     0,   810,     0,   810,     0,   810,     0,
6291        0,     0,   908,     0,     0,     0,     0,     0,     0,     0,
6292        0,     0,     0,     0,     0,     0,     0,     0,   810,     0,
6293        0,     0,     0,     0,     0,     0,     0,   909,     0,   810,
6294        0,   810,   810,   810,     0,     0,     0,     0,     0,     0,
6295        0,     0,     0,     0,     0,     0,   833,     0,   910,   810,
6296        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6297        0,   810,     0,     0,     0,     0,   810,     0,     0,     0,
6298        0,     0,   810,     0,     0,     0,     0,     0,     0,     0,
6299      911,     0,   810,     0,     0,     0,     0,     0,     0,     0,
6300        0,     0,     0,     0,     0,     0,     0,     0,  1034,     0,
6301        0,  1034,   912,  1034,     0,     0,     0,     0,  1034,     0,
6302      833,     0,   207,     0,     0,     0,     0,     0,     0,     0,
6303        0,     0,     0,     0,     0,     0,   833,   833,     0,     0,
6304        0,     0,   810,     0,     0,     0,     0,     0,     0,   913,
6305        0,     0,     0,     0,   914,     0,   915,     0,     0,     0,
6306        0,     0,   916,   833,     0,   917,   833,     0,     0,  1034,
6307        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6308        0,     0,     0,     0,     0,     0,  1034,     0,     0,     0,
6309        0,     0,     0,     0,   918,     0,     0,   919,     0,     0,
6310        0,   920,     0,     0,     0,     0,     0,     0,   921,     0,
6311      922,  1034,     0,     0,     0,   923,     0,     0,     0,     0,
6312        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6313        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6314      924,     0,     0,     0,     0,     0,  1958,  1958,  1958,     0,
6315        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6316        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6317      833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6318     1034,     0,  1034,   833,     0,  1958,     0,     0,   833,     0,
6319        0,     0,     0,     0,     0,     0,     0,     0,   833,     0,
6320        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6321      834,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6322        0,   834,     0,     0,     0,     0,     0,     0,     0,     0,
6323        0,     0,     0,     0,     0,     0,     0,   834,     0,     0,
6324        0,     0,     0,  1034,     0,     0,     0,     0,     0,     0,
6325        0,     0,     0,   834,     0,     0,     0,     0,     0,   834,
6326        0,     0,   833,     0,     0,     0,     0,     0,  1034,     0,
6327      834,     0,     0,     0,     0,     0,     0,     0,   834,     0,
6328        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6329        0,     0,     0,     0,  1034,     0,     0,     0,     0,     0,
6330     1958,  1034,     0,     0,     0,     0,     0,   833,     0,   833,
6331        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6332        0,   833,     0,   833,     0,     0,     0,     0,     0,     0,
6333        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6334        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6335        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6336     1034,     0,     0,     0,     0,     0,   834,     0,     0,     0,
6337        0,     0,     0,     0,     0,     0,     0,   833,  1034,     0,
6338        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6339        0,  1034,     0,     0,     0,     0,     0,     0,     0,     0,
6340        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6341        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6342        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6343        0,     0,     0,     0,   833,     0,     0,     0,     0,     0,
6344        0,     0,     0,     0,     0,     0,   810,     0,     0,   833,
6345        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6346        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6347        0,   833,     0,     0,   833,     0,     0,     0,     0,     0,
6348        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6349        0,   810,     0,     0,  1034,     0,     0,     0,     0,     0,
6350      810,     0,     0,     0,     0,     0,   810,     0,   810,     0,
6351        0,   810,     0,     0,     0,  1034,   810,   810,   810,   810,
6352        0,     0,   810,   810,   810,   810,   810,   810,   810,   810,
6353      810,   810,     0,     0,     0,   810,   810,     0,     0,     0,
6354     1034,     0,     0,     0,     0,   810,     0,     0,     0,   810,
6355        0,  1958,     0,   810,     0,     0,     0,     0,     0,     0,
6356        0,   810,     0,     0,   810,     0,   810,     0,     0,     0,
6357        0,     0,     0,     0,  1034,   810,     0,     0,   810,   810,
6358        0,     0,     0,   810,   810,     0,     0,     0,     0,     0,
6359      810,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6360      810,     0,   810,     0,     0,     0,     0,     0,     0,     0,
6361        0,     0,     0,     0,   810,     0,     0,     0,     0,     0,
6362      810,   810,   810,     0,     0,     0,     0,     0,     0,     0,
6363        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6364        0,     0,     0,     0,     0,     0,     0,   810,     0,     0,
6365        0,     0,     0,     0,     0,     0,  1033,     0,     0,     0,
6366      810,     0,     0,     0,     0,     0,  1034,     0,     0,     0,
6367        0,     0,     0,     0,     0,     0,     0,  1033,     0,     0,
6368        0,   810,     0,     0,   834,     0,     0,     0,     0,     0,
6369        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6370        0,     0,     0,     0,   834,     0,     0,     0,     0,     0,
6371        0,     0,     0,   833,     0,     0,   834,     0,     0,     0,
6372        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6373        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6374        0,     0,     0,     0,   834,     0,     0,     0,     0,     0,
6375        0,     0,     0,     0,     0,     0,     0,     0,     0,  1958,
6376      834,     0,     0,     0,  1958,  1034,  1958,     0,     0,     0,
6377        0,     0,     0,     0,     0,   834,     0,     0,   834,     0,
6378        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6379        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6380        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6381        0,     0,     0,     0,     0,     0,     0,     0,   833,     0,
6382        0,   833,     0,     0,     0,     0,     0,     0,     0,     0,
6383        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6384        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6385        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6386        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6387        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6388        0,     0,     0,   810,     0,     0,     0,     0,     0,     0,
6389        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6390        0,     0,     0,   834,   834,     0,   833,   833,     0,     0,
6391     1034,     0,     0,  1959,     0,     0,     0,     0,     0,   833,
6392        0,   833,     0,     0,     0,     0,     0,     0,     0,     0,
6393        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6394        0,     0,     0,     0,     0,     0,  1033,     0,     0,   835,
6395        0,     0,     0,     0,     0,     0,   835,     0,     0,  1034,
6396      810,   810,     0,     0,     0,     0,  1033,   835,  1959,     0,
6397        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6398     1033,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6399        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6400        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6401        0,     0,     0,     0,     0,   833,     0,     0,     0,     0,
6402        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6403        0,     0,     0,     0,     0,     0,   810,     0,     0,     0,
6404        0,     0,     0,     0,     0,     0,     0,   810,     0,     0,
6405        0,     0,     0,     0,     0,     0,     0,  1033,     0,     0,
6406        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6407        0,     0,     0,     0,     0,     0,     0,   810,     0,     0,
6408        0,     0,     0,     0,     0,     0,     0,   810,   810,     0,
6409     1034,     0,     0,     0,   810,   810,     0,     0,     0,   810,
6410     1034,     0,     0,     0,   810,     0,     0,   810,   810,     0,
6411        0,     0,   810,     0,     0,     0,     0,     0,   810,     0,
6412        0,     0,     0,     0,   834,     0,     0,     0,     0,     0,
6413        0,     0,     0,     0,     0,     0,   810,     0,     0,     0,
6414      810,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6415        0,     0,   810,     0,     0,     0,     0,   810,     0,     0,
6416        0,     0,     0,   810,     0,     0,  1033,     0,     0,     0,
6417        0,     0,     0,     0,  1959,     0,     0,     0,   810,     0,
6418        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6419        0,     0,     0,     0,     0,   834,     0,     0,     0,   834,
6420        0,     0,   810,     0,     0,     0,     0,     0,     0,     0,
6421        0,   834,     0,     0,     0,     0,     0,     0,     0,     0,
6422     1034,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6423        0,     0,     0,     0,     0,     0,     0,   833,     0,     0,
6424        0,     0,  1958,     0,     0,     0,     0,     0,     0,     0,
6425        0,  1034,     0,     0,     0,     0,     0,     0,     0,     0,
6426        0,     0,     0,     0,     0,     0,     0,   833,     0,     0,
6427        0,     0,  1034,     0,     0,     0,     0,     0,     0,   833,
6428        0,     0,     0,     0,   834,   834,  1958,  1034,     0,     0,
6429      810,     0,     0,     0,     0,     0,     0,   834,     0,     0,
6430      833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6431        0,     0,   834,   834,     0,     0,     0,     0,   835,     0,
6432        0,     0,     0,   835,   834,     0,     0,     0,     0,     0,
6433     1034,     0,     0,     0,   835,     0,     0,     0,     0,     0,
6434        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6435      835,     0,   810,     0,     0,     0,     0,     0,     0,     0,
6436        0,     0,     0,   810,     0,     0,   835,     0,     0,     0,
6437     2029,     0,   835,     0,     0,     0,     0,     0,     0,     0,
6438        0,     0,     0,   835,     0,     0,     0,     0,     0,     0,
6439        0,   835,     0,     0,     0,     0,     0,     0,     0,     0,
6440        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6441        0,     0,     0,     0,     0,     0,     0,  1034,     0,  1034,
6442        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6443        0,     0,     0,     0,     0,     0,  2029,     0,     0,     0,
6444        0,     0,     0,     0,  1959,   833,     0,     0,     0,     0,
6445        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6446        0,   810,     0,     0,     0,  1034,     0,     0,     0,     0,
6447      810,     0,     0,  1033,     0,     0,     0,     0,     0,   835,
6448        0,     0,     0,     0,     0,     0,     0,   810,   810,     0,
6449        0,   810,     0,     0,     0,     0,     0,     0,     0,     0,
6450        0,     0,     0,  1228,  1228,   810,     0,     0,     0,     0,
6451      810,     0,     0,     0,     0,   810,     0,     0,   810,   810,
6452        0,     0,     0,     0,     0,     0,   810,   810,     0,     0,
6453        0,     0,     0,     0,     0,  1292,     0,     0,     0,     0,
6454        0,     0,   810,     0,     0,     0,     0,     0,     0,   833,
6455        0,   833,     0,  1033,     0,   810,     0,     0,     0,     0,
6456        0,     0,     0,     0,     0,     0,     0,     0,  1033,     0,
6457        0,     0,     0,     0,     0,     0,  2029,     0,     0,     0,
6458        0,     0,     0,     0,     0,     0,     0,  1033,     0,  1034,
6459      833,     0,     0,     0,     0,     0,     0,     0,     0,   810,
6460        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6461        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6462        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6463        0,     0,     0,     0,  1033,     0,  1958,     0,     0,     0,
6464        0,     0,   810,     0,     0,     0,     0,  1033,     0,     0,
6465        0,     0,     0,     0,     0,     0,     0,     0,     0,  1033,
6466        0,     0,     0,     0,     0,     0,     0,     0,   834,     0,
6467        0,  1033,  1959,   834,     0,     0,     0,   834,     0,     0,
6468        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6469        0,     0,     0,     0,     0,   810,     0,  1034,     0,     0,
6470        0,     0,     0,   834,     0,     0,     0,     0,     0,     0,
6471        0,     0,     0,     0,     0,  1033,     0,     0,  1033,     0,
6472        0,     0,     0,     0,   810,  1034,     0,   810,     0,   810,
6473        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6474        0,     0,     0,     0,     0,     0,   834,     0,     0,     0,
6475        0,     0,     0,   810,     0,     0,     0,   810,     0,     0,
6476        0,     0,     0,  1034,   834,   834,     0,     0,   810,     0,
6477        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6478        0,     0,     0,     0,     0,     0,     0,   810,     0,     0,
6479        0,     0,     0,     0,     0,  1959,   834,   835,     0,  1959,
6480        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6481     1958,     0,     0,     0,     0,     0,  1034,   835,     0,     0,
6482     1034,  1034,     0,     0,     0,   810,     0,     0,   834,   835,
6483        0,     0,   834,     0,     0,     0,     0,     0,     0,     0,
6484        0,   833,     0,     0,     0,     0,     0,  1033,     0,     0,
6485      834,     0,     0,     0,     0,     0,     0,   835,     0,     0,
6486        0,   834,     0,     0,     0,     0,     0,     0,     0,   810,
6487        0,     0,     0,   835,   834,     0,     0,     0,     0,     0,
6488        0,     0,   834,     0,     0,  2653,     0,     0,   835,     0,
6489      810,   835,     0,     0,     0,     0,     0,     0,     0,     0,
6490        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6491        0,  1034,  1034,     0,     0,     0,     0,     0,     0,     0,
6492        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6493        0,     0,   810,  1760,     0,   810,  1959,     0,     0,     0,
6494        0,     0,     0,     0,   810,     0,     0,     0,     0,   810,
6495        0,   810,     0,   810,     0,     0,     0,     0,     0,     0,
6496      810,     0,  1774,     0,     0,     0,     0,     0,     0,     0,
6497        0,     0,     0,     0,     0,     0,     0,   810,     0,     0,
6498        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6499     1792,  1793,  1794,     0,  1796,     0,     0,     0,  1958,     0,
6500      833,     0,   834,     0,     0,     0,     0,     0,   835,     0,
6501        0,     0,     0,     0,  1838,     0,   835,   835,     0,     0,
6502        0,     0,     0,     0,     0,     0,  1960,     0,     0,     0,
6503        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6504        0,   810,     0,     0,     0,     0,     0,     0,     0,     0,
6505        0,     0,     0,     0,     0,  1875,     0,     0,     0,     0,
6506        0,     0,  2712,     0,   834,     0,  2029,  2718,   810,   810,
6507        0,     0,     0,     0,     0,     0,     0,     0,     0,   810,
6508        0,  1960,     0,     0,     0,  1980,     0,   833,     0,  1992,
6509     1995,     0,     0,     0,     0,     0,     0,     0,     0,   810,
6510      834,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6511        0,     0,     0,     0,     0,     0,     0,     0,   834,     0,
6512        0,     0,     0,     0,     0,     0,   834,     0,     0,  1033,
6513        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6514        0,  1033,  1023,     0,     0,     0,   810,     0,     0,     0,
6515        0,     0,   810,   810,   810,     0,     0,     0,     0,     0,
6516        0,     0,     0,  1023,     0,     0,     0,     0,     0,     0,
6517        0,     0,     0,   810,     0,     0,     0,     0,     0,     0,
6518        0,  1033,     0,     0,     0,   833,     0,     0,     0,     0,
6519        0,     0,     0,     0,     0,     0,     0,     0,     0,  1958,
6520        0,     0,     0,  1959,     0,     0,     0,     0,     0,  1959,
6521        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6522        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6523        0,     0,     0,     0,     0,     0,     0,   835,     0,     0,
6524        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6525        0,     0,     0,     0,     0,     0,   810,   810,     0,     0,
6526        0,     0,  1958,     0,     0,     0,     0,     0,     0,     0,
6527      810,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6528        0,  1958,   810,   810,     0,     0,     0,  1960,     0,     0,
6529        0,     0,     0,     0,   834,     0,     0,     0,     0,     0,
6530        0,     0,     0,     0,     0,     0,     0,     0,   835,     0,
6531        0,     0,   835,     0,     0,     0,     0,     0,     0,     0,
6532        0,     0,     0,     0,   835,     0,     0,     0,     0,     0,
6533        0,     0,     0,     0,     0,     0,  1033,     0,     0,     0,
6534        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6535        0,     0,     0,     0,     0,     0,     0,     0,   834,     0,
6536        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6537        0,     0,     0,     0,   834,   834,     0,     0,     0,     0,
6538        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6539        0,     0,     0,     0,     0,     0,     0,   835,   835,     0,
6540        0,   834,     0,     0,   834,     0,  2029,     0,     0,     0,
6541      835,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6542        0,     0,     0,     0,     0,   835,   835,     0,     0,     0,
6543        0,     0,  1023,     0,     0,     0,     0,   835,     0,     0,
6544        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6545        0,     0,  1023,     0,     0,     0,     0,     0,     0,     0,
6546        0,     0,     0,     0,     0,     0,  1023,     0,     0,     0,
6547        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6548        0,     0,     0,     0,  1959,  1959,  1959,     0,     0,     0,
6549        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6550        0,     0,     0,     0,     0,     0,     0,     0,   834,     0,
6551        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6552        0,   834,     0,  1959,  1033,     0,   834,     0,     0,     0,
6553        0,     0,     0,     0,     0,     0,   834,     0,     0,     0,
6554     2522,  1033,     0,  1023,     0,     0,     0,     0,     0,     0,
6555        0,     0,  1033,  2542,     0,  2544,     0,  1960,  2556,  2559,
6556     2564,     0,     0,     0,     0,  2570,     0,     0,  2575,     0,
6557        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6558        0,     0,     0,  2582,  2583,  2584,  2585,     0,     0,     0,
6559        0,  2592,     0,     0,     0,  2604,     0,     0,  2606,     0,
6560      834,  2613,  2614,  2615,  2616,  2617,  2618,  2619,  2620,  2621,
6561        0,  2622,     0,     0,     0,     0,     0,     0,  1228,     0,
6562     2650,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6563        0,     0,     0,     0,     0,     0,     0,     0,  1959,     0,
6564        0,     0,     0,     0,     0,   834,     0,   834,     0,     0,
6565        0,     0,  1023,     0,     0,     0,     0,     0,     0,   834,
6566        0,   834,     0,     0,     0,     0,     0,     0,     0,     0,
6567        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6568        0,     0,     0,     0,     0,     0,     0,  2653,  2653,  2653,
6569        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6570        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6571        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6572        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6573        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6574        0,     0,     0,     0,     0,     0,     0,     0,  1292,     0,
6575        0,     0,     0,     0,  2029,     0,     0,  2718,     0,  2718,
6576        0,     0,     0,     0,  2029,     0,     0,     0,     0,     0,
6577        0,     0,   834,     0,     0,     0,     0,     0,     0,  1025,
6578        0,   835,     0,     0,     0,  1960,   835,   834,     0,     0,
6579      835,     0,     0,     0,     0,     0,     0,     0,   835,     0,
6580     1025,     0,     0,     0,     0,     0,     0,     0,     0,   834,
6581        0,     0,   834,     0,     0,  1033,   835,     0,     0,     0,
6582        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6583        0,     0,  1033,     0,     0,     0,     0,     0,     0,     0,
6584        0,     0,     0,     0,     0,     0,     0,     0,     0,  2760,
6585        0,     0,     0,     0,     0,     0,  1023,  2029,     0,   835,
6586        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6587        0,     0,     0,     0,     0,     0,     0,   835,   835,     0,
6588        0,  1026,     0,     0,     0,     0,     0,     0,     0,  1959,
6589        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6590        0,     0,  1026,     0,     0,     0,     0,     0,  1960,   835,
6591        0,     0,  1960,     0,     0,     0,     0,     0,     0,     0,
6592        0,     0,  1023,     0,     0,     0,  1033,     0,  1033,     0,
6593        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6594        0,   835,     0,     0,     0,   835,     0,     0,     0,     0,
6595        0,     0,     0,     0,     0,     0,     0,     0,     0,  1023,
6596        0,     0,     0,   835,     0,     0,     0,     0,     0,     0,
6597        0,     0,     0,     0,   835,     0,     0,     0,     0,     0,
6598        0,     0,     0,     0,     0,     0,     0,   835,     0,  1033,
6599        0,     0,     0,     0,     0,   835,     0,     0,     0,     0,
6600        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6601        0,     0,     0,     0,  1033,     0,     0,     0,     0,     0,
6602        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6603        0,     0,     0,     0,     0,     0,     0,     0,     0,  1023,
6604     2718,     0,     0,     0,     0,     0,     0,  2718,     0,  1960,
6605        0,   834,     0,     0,  1023,     0,     0,     0,     0,     0,
6606        0,     0,  1023,     0,     0,     0,     0,     0,     0,  1025,
6607     3000,     0,     0,  1023,     0,     0,     0,     0,     0,     0,
6608        0,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6609        0,     0,     0,     0,     0,     0,     0,  1959,     0,     0,
6610        0,     0,  1959,  1025,  1959,     0,  1033,     0,     0,     0,
6611        0,     0,     0,     0,     0,   835,     0,     0,     0,     0,
6612     1023,     0,     0,     0,  2718,     0,     0,     0,     0,     0,
6613        0,     0,     0,  1023,     0,     0,     0,  1033,     0,     0,
6614        0,     0,     0,  1028,     0,  1023,     0,     0,     0,     0,
6615        0,     0,     0,     0,     0,     0,   834,  1023,     0,   834,
6616        0,     0,     0,     0,  1028,     0,     0,     0,     0,     0,
6617        0,  1026,     0,     0,     0,     0,     0,   835,     0,     0,
6618     1025,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6619        0,  1026,     0,     0,     0,     0,     0,     0,     0,     0,
6620        0,  1023,     0,     0,  1023,  1026,     0,     0,     0,     0,
6621        0,     0,  3140,   835,     0,     0,     0,     0,     0,     0,
6622        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6623        0,   835,     0,     0,     0,     0,     0,     0,     0,   835,
6624     1033,     0,     0,     0,   834,   834,     0,     0,     0,     0,
6625        0,     0,     0,     0,     0,     0,     0,   834,     0,   834,
6626        0,  1033,     0,     0,     0,     0,     0,     0,     0,     0,
6627        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6628        0,     0,  1026,     0,     0,     0,  1033,     0,     0,  1025,
6629        0,     0,     0,     0,     0,     0,     0,  3193,     0,     0,
6630        0,     0,  3199,     0,     0,     0,     0,     0,     0,     0,
6631        0,     0,     0,     0,     0,     0,  1960,     0,     0,     0,
6632     1033,     0,  1960,     0,     0,     0,     0,  1796,     0,     0,
6633        0,     0,     0,  1023,     0,     0,     0,     0,  2564,     0,
6634     2564,  2564,     0,     0,     0,     0,     0,     0,     0,     0,
6635        0,  3257,     0,   834,  3260,     0,  3262,     0,     0,     0,
6636        0,     0,     0,     0,     0,     0,     0,     0,  2653,     0,
6637        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6638        0,     0,     0,     0,     0,  3280,     0,  3283,     0,  3285,
6639        0,  1026,     0,     0,     0,     0,     0,     0,     0,     0,
6640        0,     0,     0,     0,     0,     0,     0,   835,     0,     0,
6641        0,     0,  2029,     0,     0,     0,     0,     0,     0,     0,
6642        0,     0,  2650,  2650,  2650,     0,     0,     0,     0,     0,
6643        0,     0,     0,  1028,     0,     0,     0,     0,     0,     0,
6644     3333,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6645        0,     0,  1980,  1028,     0,     0,     0,  3344,     0,     0,
6646        0,     0,     0,  1995,     0,     0,     0,  1028,     0,     0,
6647        0,   835,     0,     0,     0,     0,     0,     0,     0,     0,
6648        0,     0,     0,     0,     0,     0,     0,   835,   835,     0,
6649        0,     0,     0,  1025,     0,     0,     0,     0,     0,     0,
6650        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6651        0,  2718,     0,     0,   835,     0,     0,   835,     0,     0,
6652        0,     0,     0,  3381,     0,     0,     0,     0,     0,     0,
6653        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6654        0,     0,     0,     0,  1028,     0,     0,     0,  1023,     0,
6655        0,     0,  1023,  1023,     0,     0,     0,     0,     0,  1025,
6656        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6657        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6658     1959,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6659        0,     0,     0,     0,     0,  1026,  1025,  1960,  1960,  1960,
6660        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6661        0,     0,     0,     0,     0,  1023,     0,   834,     0,     0,
6662        0,   835,     0,     0,  1959,     0,     0,  1023,     0,     0,
6663        0,     0,     0,     0,   835,     0,  1960,     0,   834,   835,
6664        0,     0,     0,     0,     0,     0,     0,     0,     0,   835,
6665        0,     0,     0,  1028,     0,     0,  1033,     0,     0,     0,
6666        0,  1026,     0,     0,     0,     0,     0,  1023,     0,     0,
6667        0,     0,     0,     0,     0,     0,  1025,     0,     0,     0,
6668        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6669        0,  1025,     0,     0,     0,     0,     0,     0,  1026,  1025,
6670        0,     0,     0,     0,     0,  2029,     0,     0,     0,     0,
6671     1025,     0,     0,   835,     0,     0,     0,     0,     0,     0,
6672        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6673        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6674        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6675        0,  1960,     0,     0,     0,     0,     0,  1025,   835,     0,
6676      835,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6677     1025,     0,   835,     0,   835,     0,     0,     0,  1026,     0,
6678        0,     0,  1025,   834,     0,     0,     0,     0,     0,     0,
6679        0,     0,     0,  1026,  1025,     0,     0,     0,     0,     0,
6680        0,  1026,     0,     0,     0,     0,     0,     0,     0,     0,
6681        0,     0,  1026,     0,     0,     0,     0,     0,     0,     0,
6682        0,     0,  1023,     0,     0,     0,     0,     0,   835,     0,
6683        0,     0,     0,     0,     0,     0,  1033,     0,  1025,     0,
6684        0,  1025,     0,     0,     0,     0,  1033,     0,     0,     0,
6685        0,     0,     0,     0,     0,     0,     0,  1028,     0,  1026,
6686        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6687        0,     0,  1026,     0,     0,     0,     0,     0,     0,     0,
6688        0,     0,     0,     0,  1026,   835,     0,   834,     0,   834,
6689        0,     0,  1023,     0,     0,     0,  1026,     0,  2653,     0,
6690      835,     0,     0,  2653,     0,     0,     0,     0,     0,  2653,
6691        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6692        0,     0,   835,  1028,     0,   835,     0,     0,   834,     0,
6693        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6694     1026,     0,     0,  1026,     0,     0,     0,     0,     0,     0,
6695        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6696     1028,     0,     0,     0,     0,     0,  1033,     0,     0,     0,
6697     1025,     0,  3740,     0,  1959,     0,     0,     0,     0,     0,
6698        0,  3744,     0,     0,     0,     0,     0,  3745,     0,  3746,
6699        0,     0,     0,     0,     0,     0,     0,  1033,     0,     0,
6700        0,     0,  1960,     0,     0,     0,     0,     0,     0,     0,
6701     1023,     0,     0,     0,     0,     0,  3770,  3771,  1033,     0,
6702        0,     0,     0,     0,     0,     0,     0,  1023,     0,     0,
6703        0,     0,     0,  2718,  2570,     0,     0,     0,  1023,     0,
6704     1028,     0,  3796,     0,     0,  3799,     0,  3801,     0,     0,
6705        0,     0,     0,     0,     0,  1028,  3805,     0,     0,     0,
6706        0,     0,     0,  1028,  3812,  3813,     0,     0,     0,     0,
6707        0,     0,  1026,     0,  1028,     0,  1033,     0,     0,     0,
6708        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6709        0,     0,     0,     0,     0,  3857,     0,     0,     0,     0,
6710        0,  3864,  3865,  2650,     0,     0,     0,     0,     0,     0,
6711        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6712        0,  1028,     0,     0,     0,     0,     0,     0,  3880,     0,
6713        0,     0,     0,     0,  1028,     0,     0,     0,     0,     0,
6714        0,  1292,     0,     0,     0,     0,  1028,     0,  1959,     0,
6715        0,     0,     0,     0,     0,     0,     0,     0,  1028,     0,
6716        0,     0,     0,  4403,   835,  1033,     0,     0,     0,     0,
6717        0,     0,     0,     0,     0,     0,     0,     0,     0,   834,
6718        0,     0,     0,     0,     0,  1025,     0,     0,     0,  1025,
6719     1025,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
6720        0,     0,  1028,     0,     0,  1028,     0,     0,     0,     0,
6721     1960,  1033,     0,     0,     0,  1960,  1029,  1960,     0,     0,
6722        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6723        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6724     1023,     0,     0,  1023,     0,  1023,     0,     0,     0,     0,
6725     1023,     0,  1025,     0,     0,     0,     0,     0,     0,     0,
6726        0,     0,     0,     0,  1025,     0,     0,     0,     0,   835,
6727        0,     0,   835,     0,     0,     0,     0,     0,     0,     0,
6728        0,     0,     0,     0,     0,     0,     0,  1026,     0,     0,
6729        0,  1026,  1026,     0,     0,     0,     0,     0,     0,     0,
6730        0,  1023,     0,     0,  1025,     0,     0,     0,     0,     0,
6731        0,     0,     0,     0,     0,     0,     0,     0,  1023,     0,
6732        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6733        0,     0,     0,     0,  1028,  2718,  1959,     0,   834,     0,
6734        0,     0,     0,  1023,     0,     0,     0,     0,     0,     0,
6735        0,     0,     0,     0,  1026,     0,     0,   835,   835,     0,
6736        0,     0,     0,     0,     0,     0,  1026,     0,     0,     0,
6737      835,     0,   835,     0,     0,     0,     0,     0,     0,  1031,
6738        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6739        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6740     1031,     0,     0,     0,     0,     0,  1026,     0,     0,     0,
6741        0,     0,  1023,     0,  1023,     0,     0,     0,     0,     0,
6742        0,     0,     0,     0,     0,   834,     0,     0,     0,     0,
6743        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6744        0,  4117,  4118,  2718,     0,     0,     0,     0,     0,     0,
6745        0,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6746        0,     0,     0,     0,     0,     0,   835,     0,     0,     0,
6747        0,  1033,     0,     0,     0,  1023,     0,     0,     0,     0,
6748        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
6749        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6750     1023,     0,     0,     0,     0,  1029,     0,     0,     0,  1033,
6751        0,     0,     0,     0,     0,     0,     0,  4158,     0,  1029,
6752        0,     0,     0,   834,     0,     0,  1023,     0,  4163,  1025,
6753        0,     0,     0,  1023,     0,     0,     0,  1959,     0,     0,
6754        0,     0,     0,     0,     0,     0,     0,     0,     0,  1028,
6755        0,     0,     0,  1028,  1028,     0,     0,     0,     0,     0,
6756        0,  1026,  1033,     0,     0,     0,  1033,  1033,  4178,  4180,
6757        0,     0,     0,     0,     0,  4184,  4185,     0,     0,     0,
6758     4186,     0,     0,     0,     0,  4189,     0,     0,  4192,  4193,
6759        0,     0,  1023,  4197,     0,     0,  1029,     0,     0,  4201,
6760     1959,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6761     1023,     0,     0,     0,     0,     0,  1028,     0,     0,  1959,
6762        0,     0,     0,  1023,     0,     0,     0,     0,  1028,     0,
6763        0,  1026,     0,  2650,     0,     0,     0,     0,  2650,     0,
6764        0,     0,     0,     0,  2650,     0,     0,  1025,     0,     0,
6765        0,     0,     0,     0,     0,     0,     0,  4403,  1033,  1228,
6766        0,     0,     0,     0,  1025,     0,     0,     0,  1028,  1031,
6767        0,     0,     0,     0,     0,  1025,     0,     0,     0,     0,
6768        0,     0,     0,  4256,     0,     0,     0,     0,   835,  1031,
6769        0,     0,     0,  1960,     0,     0,     0,     0,     0,     0,
6770        0,     0,     0,  1031,     0,  1029,     0,     0,     0,     0,
6771        0,     0,     0,     0,     0,     0,     0,     0,   835,     0,
6772        0,     0,     0,     0,     0,     0,  1023,     0,     0,     0,
6773      835,     0,     0,     0,     0,     0,     0,  1960,     0,     0,
6774        0,     0,     0,     0,     0,     0,     0,  1023,     0,  1026,
6775        0,   835,     0,     0,     0,     0,     0,     0,     0,     0,
6776        0,     0,     0,     0,     0,     0,  1026,     0,     0,     0,
6777        0,  4316,  1023,     0,     0,     0,     0,  1026,     0,     0,
6778     1031,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6779        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6780        0,     0,     0,     0,     0,     0,  1023,     0,     0,     0,
6781        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6782        0,     0,     0,  1028,     0,     0,     0,     0,     0,     0,
6783        0,     0,     0,  4350,     0,     0,     0,     0,     0,     0,
6784        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6785        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6786        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6787        0,     0,     0,     0,     0,     0,     0,  1025,     0,     0,
6788     1025,     0,  1025,     0,     0,     0,     0,  1025,     0,  1031,
6789        0,     0,     0,  1028,     0,     0,   835,     0,  1023,     0,
6790        0,     0,     0,     0,     0,     0,     0,     0,     0,  1029,
6791        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6792        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6793        0,     0,     0,     0,     0,     0,     0,     0,  1025,     0,
6794        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6795        0,     0,     0,     0,     0,  1025,     0,     0,     0,     0,
6796        0,     0,     0,     0,     0,     0,     0,     0,  4442,  4443,
6797        0,     0,  4444,     0,     0,  1029,     0,     0,     0,  1026,
6798     1025,     0,  1026,     0,  1026,     0,     0,     0,     0,  1026,
6799        0,     0,     0,     0,     0,     0,     0,  1023,     0,     0,
6800      835,     0,   835,     0,     0,     0,     0,  4478,  4479,     0,
6801        0,  1028,  1029,     0,     0,     0,     0,     0,     0,     0,
6802        0,     0,     0,     0,     0,     0,     0,     0,  1028,     0,
6803        0,     0,     0,     0,     0,     0,     0,     0,     0,  1028,
6804     1026,   835,     0,     0,     0,     0,     0,     0,     0,  1025,
6805        0,  1025,     0,     0,     0,     0,     0,  1026,     0,     0,
6806        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6807        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6808        0,     0,  1026,     0,     0,     0,     0,  1960,     0,     0,
6809        0,     0,  1029,  1031,     0,     0,     0,     0,     0,     0,
6810        0,     0,     0,     0,     0,     0,     0,  1029,     0,     0,
6811        0,     0,  1025,     0,     0,  1029,     0,     0,     0,     0,
6812        0,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
6813        0,     0,     0,     0,     0,     0,     0,  1025,     0,     0,
6814        0,     0,  1023,     0,     0,     0,     0,     0,     0,     0,
6815        0,  1026,     0,  1026,     0,     0,     0,     0,     0,  1031,
6816        0,     0,     0,  1025,     0,     0,     0,     0,     0,     0,
6817     1025,     0,     0,  1029,     0,     0,     0,     0,     0,     0,
6818        0,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
6819        0,  1023,     0,     0,     0,     0,  1031,     0,  1029,     0,
6820        0,     0,     0,     0,     0,     0,     0,     0,  2570,     0,
6821     1029,     0,     0,     0,  1026,     0,     0,     0,     0,     0,
6822        0,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6823        0,     0,     0,     0,  4643,     0,     0,     0,     0,  1026,
6824        0,  1028,     0,     0,  1028,     0,  1028,  1025,     0,  1796,
6825        0,  1028,     0,     0,  1029,     0,     0,  1029,     0,     0,
6826     1025,  1960,     0,     0,     0,  1026,     0,     0,  1292,     0,
6827        0,     0,  1026,     0,     0,     0,  1031,     0,     0,     0,
6828        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6829        0,  1031,   835,     0,     0,     0,     0,     0,     0,  1031,
6830        0,     0,  1028,     0,     0,     0,  4692,     0,     0,     0,
6831     1031,     0,     0,     0,     0,     0,     0,     0,     0,  1028,
6832        0,     0,  1023,     0,     0,     0,     0,     0,     0,     0,
6833        0,  1026,  1023,     0,     0,     0,     0,     0,     0,     0,
6834        0,     0,     0,     0,  1028,     0,     0,     0,     0,  1026,
6835        0,     0,     0,     0,     0,     0,     0,  1031,     0,     0,
6836        0,     0,  1026,  1025,     0,     0,     0,     0,     0,     0,
6837     1031,  4743,     0,     0,     0,     0,     0,     0,     0,     0,
6838        0,     0,  1031,     0,  1025,     0,  1029,     0,     0,     0,
6839        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
6840        0,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6841        0,     0,     0,  1028,     0,  1028,     0,     0,     0,     0,
6842        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6843        0,     0,     0,     0,  4478,     0,     0,     0,  1031,     0,
6844        0,  1031,     0,  1025,     0,     0,     0,     0,     0,  1960,
6845        0,   835,  1023,     0,     0,     0,     0,     0,  4800,     0,
6846        0,     0,     0,     0,     0,  1026,     0,     0,     0,     0,
6847        0,     0,     0,     0,     0,     0,  1028,     0,     0,     0,
6848        0,     0,     0,  1023,     0,     0,  1026,     0,     0,     0,
6849        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6850        0,  1028,     0,     0,  1023,     0,     0,     0,     0,     0,
6851        0,  1026,     0,     0,     0,     0,     0,     0,     0,  1023,
6852        0,     0,     0,     0,     0,     0,     0,  1028,     0,     0,
6853        0,     0,     0,     0,  1028,  1025,     0,     0,   835,     0,
6854        0,     0,     0,     0,     0,  1026,     0,     0,     0,  4860,
6855     4860,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6856     4478,     0,  1023,     0,     0,     0,     0,     0,     0,     0,
6857     1031,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6858        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6859        0,     0,     0,  1028,     0,     0,     0,     0,     0,     0,
6860        0,  1029,     0,     0,     0,  1029,  1029,     0,     0,     0,
6861        0,  1028,     0,     0,     0,     0,     0,     0,     0,     0,
6862        0,     0,     0,     0,  1028,     0,     0,     0,     0,     0,
6863        0,     0,     0,     0,  1025,  4860,   835,  1026,     0,     0,
6864        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6865     1960,  1023,     0,     0,  4931,     0,     0,     0,     0,     0,
6866        0,     0,     0,     0,     0,     0,     0,     0,  1029,     0,
6867        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6868     1029,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6869        0,     0,     0,     0,     0,     0,     0,  1023,     0,     0,
6870        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6871        0,     0,     0,  1960,     0,     0,     0,     0,     0,     0,
6872     1029,     0,     0,     0,     0,     0,     0,  1028,     0,     0,
6873        0,     0,  1960,     0,     0,     0,  1026,  4860,  4972,     0,
6874        0,     0,     0,     0,     0,     0,     0,     0,  1028,     0,
6875        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6876        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6877        0,     0,     0,  1028,     0,  1833,     0,     0,     0,  1025,
6878        0,     0,     0,     0,     0,  1031,     0,     0,     0,  1031,
6879     1031,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6880        0,     0,     0,     0,     0,     0,     0,  1028,     0,     0,
6881        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6882        0,  1023,     0,     0,     0,     0,     0,     0,  1025,     0,
6883        0,     0,     0,     0,     0,     0,     0,     0,     0,  1833,
6884        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6885        0,     0,  1031,     0,     0,     0,     0,     0,     0,     0,
6886        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
6887        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
6888        0,  1026,     0,     0,     0,     0,     0,     0,     0,     0,
6889        0,     0,     0,     0,     0,     0,     0,     0,     0,  1028,
6890        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
6891        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6892        0,     0,     0,     0,     0,     0,     0,     0,     0,  1023,
6893     1026,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6894        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
6895        0,     0,     0,     0,     0,     0,     0,  1023,     0,  1025,
6896        0,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6897        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6898        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6899        0,     0,     0,     0,     0,  1023,     0,     0,  1028,     0,
6900        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6901        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6902        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6903        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6904        0,     0,     0,     0,     0,     0,     0,     0,  1023,     0,
6905        0,     0,  1023,  1023,     0,     0,     0,     0,     0,  1031,
6906        0,  1026,     0,  1029,     0,     0,     0,     0,     0,     0,
6907        0,  1026,     0,     0,     0,     0,     0,     0,     0,     0,
6908     1029,     0,     0,     0,     0,     0,     0,     0,     0,  1025,
6909        0,  1029,     0,     0,     0,     0,     0,     0,     0,     0,
6910        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6911        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6912     1025,     0,     0,     0,     0,     0,     0,     0,     0,  1031,
6913        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6914        0,  1025,     0,  1028,  1023,     0,     0,     0,     0,     0,
6915        0,     0,     0,     0,     0,     0,  1025,     0,     0,     0,
6916        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6917        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6918        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6919        0,  1026,  1028,     0,     0,     0,     0,     0,     0,  1025,
6920        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6921        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6922        0,     0,  1026,     0,     0,     0,     0,     0,     0,     0,
6923        0,     0,  1833,     0,     0,     0,     0,     0,     0,     0,
6924        0,     0,     0,  1026,     0,     0,     0,  1031,     0,     0,
6925        0,     0,     0,     0,     0,     0,     0,     0,  1026,     0,
6926        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
6927        0,     0,     0,     0,     0,  1031,     0,     0,     0,     0,
6928        0,     0,     0,     0,     0,     0,     0,     0,  1025,     0,
6929        0,     0,     0,  1029,     0,     0,  1029,     0,  1029,     0,
6930        0,  1026,     0,  1029,     0,     0,     0,  1833,     0,     0,
6931        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6932        0,  1833,     0,  1028,     0,  2552,     0,     0,     0,     0,
6933        0,     0,     0,  1028,  1025,     0,     0,     0,     0,  1833,
6934     1833,  1833,     0,  1833,     0,     0,     0,     0,     0,     0,
6935        0,     0,     0,     0,  1029,     0,     0,     0,     0,     0,
6936        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6937        0,  1029,     0,     0,     0,     0,     0,     0,     0,     0,
6938        0,     0,     0,     0,     0,  1833,     0,     0,     0,     0,
6939     1026,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
6940        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6941        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6942        0,     0,  1833,     0,     0,     0,     0,     0,     0,     0,
6943        0,     0,     0,     0,     0,     0,  1026,     0,     0,     0,
6944        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6945        0,     0,     0,  1028,     0,     0,     0,     0,  1025,     0,
6946        0,     0,     0,     0,     0,  1029,     0,  1029,     0,     0,
6947        0,     0,     0,     0,     0,     0,     0,  1031,     0,     0,
6948     1031,     0,  1031,     0,  1028,     0,     0,  1031,     0,     0,
6949        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6950        0,     0,     0,     0,     0,  1028,     0,     0,     0,     0,
6951        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6952     1028,     0,     0,     0,     0,     0,     0,  1833,  1029,     0,
6953        0,     0,     0,     0,     0,     0,     0,     0,  1031,  1833,
6954        0,     0,  1833,     0,     0,     0,     0,     0,     0,     0,
6955        0,     0,     0,  1029,     0,  1031,     0,     0,     0,     0,
6956     1026,     0,     0,  1028,     0,     0,  1025,     0,     0,     0,
6957        0,     0,     0,     0,     0,     0,     0,     0,     0,  1029,
6958     1031,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
6959        0,     0,     0,     0,  1025,     0,     0,     0,     0,     0,
6960        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6961        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6962        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6963        0,     0,  1025,     0,     0,     0,     0,     0,     0,     0,
6964        0,     0,     0,     0,     0,  1029,     0,     0,     0,  1031,
6965        0,  1031,  1028,     0,     0,     0,     0,     0,     0,     0,
6966        0,     0,     0,  1029,     0,     0,     0,     0,  1026,     0,
6967        0,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
6968        0,     0,     0,     0,     0,  1025,     0,     0,     0,  1025,
6969     1025,     0,     0,     0,     0,     0,  1026,     0,  1028,     0,
6970        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6971        0,     0,  1031,     0,     0,     0,     0,     0,     0,     0,
6972        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6973        0,     0,     0,     0,  1026,     0,     0,  1031,     0,     0,
6974        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6975        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6976        0,     0,     0,  1031,     0,     0,     0,     0,     0,     0,
6977     1031,     0,     0,     0,     0,     0,     0,     0,     0,  1029,
6978        0,  1025,     0,     0,     0,     0,     0,  1026,     0,     0,
6979        0,  1026,  1026,     0,     0,     0,     0,     0,     0,     0,
6980     1029,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6981        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6982        0,     0,  1028,     0,     0,  1029,     0,     0,     0,  1031,
6983        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6984        0,     0,     0,     0,     0,     0,     0,  1031,     0,     0,
6985        0,     0,     0,     0,     0,     0,     0,     0,     0,  1029,
6986     1031,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6987        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6988        0,     0,     0,  1026,     0,     0,     0,     0,     0,     0,
6989        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6990        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6991        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6992        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6993     1028,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6994        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6995        0,  1029,     0,     0,     0,     0,     0,     0,  1028,     0,
6996        0,     0,     0,  1031,     0,     0,     0,     0,     0,     0,
6997        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
6998        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
6999        0,     0,     0,     0,     0,     0,  1028,     0,     0,     0,
7000        0,     0,     0,     0,     0,     0,     0,     0,     0,  1031,
7001        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7002        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7003        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7004        0,     0,     0,  1031,     0,     0,     0,     0,     0,  1028,
7005     1029,     0,     0,  1028,  1028,     0,     0,     0,     0,     0,
7006        0,     0,     0,     0,     0,     0,     0,     0,     0,  1833,
7007        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7008        0,     0,     0,     0,     0,     0,     0,     0,     0,  1833,
7009        0,  1833,     0,     0,  2552,  2552,     0,  3234,     0,  2552,
7010        0,     0,     0,  1833,     0,     0,  1833,     0,     0,     0,
7011        0,  1833,     0,     0,     0,     0,     0,  1833,     0,     0,
7012        0,     0,  1833,     0,     0,     0,     0,     0,     0,  1833,
7013     1833,  1833,  1833,     0,     0,  1031,  2552,  2552,     0,  1833,
7014        0,     0,     0,     0,     0,  1028,     0,     0,     0,     0,
7015        0,  1833,     0,  1833,     0,     0,     0,     0,     0,     0,
7016     1833,  1833,  1833,  1833,  1833,  1833,  1833,  1833,  1833,  1833,
7017        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7018        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7019        0,     0,     0,     0,     0,  1029,     0,  1833,     0,     0,
7020        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7021        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7023        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
7024        0,     0,     0,     0,  1029,     0,     0,     0,     0,     0,
7025        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7026        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7027        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7028        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7029        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7030        0,     0,     0,     0,     0,     0,     0,  1833,     0,     0,
7031        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7032        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7033        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7034        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7035        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7036        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7037        0,     0,     0,     0,     0,  1029,     0,     0,     0,  1031,
7038        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
7039        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7040        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7041        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7042        0,     0,     0,     0,     0,     0,     0,     0,  1031,     0,
7043        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7044        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7045        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7046        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7047        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7048        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7049        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7050        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
7051        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7052        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7053        0,     0,     0,     0,     0,     0,  1029,     0,     0,     0,
7054        0,     0,     0,     0,     0,     0,     0,  1833,     0,     0,
7055        0,     0,     0,     0,     0,     0,     0,  1029,     0,  1031,
7056        0,     0,     0,     0,     0,     0,     0,     0,     0,  1031,
7057        0,     0,  1029,     0,     0,     0,     0,     0,     0,     0,
7058        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7059        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7060        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7061        0,     0,     0,     0,     0,  1029,     0,     0,     0,     0,
7062        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7063        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7064        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7065        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7066        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7067        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7068        0,     0,     0,     0,     0,     0,     0,  1833,     0,  1031,
7069        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7070        0,     0,     0,     0,  1029,     0,     0,     0,     0,     0,
7071        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7072     1031,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7073        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7074     1833,  1031,     0,     0,     0,     0,  1833,     0,     0,     0,
7075     1029,     0,     0,     0,     0,     0,  1031,     0,     0,     0,
7076        0,     0,  3234,  3234,     0,     0,  2552,  2552,  2552,  2552,
7077        0,     0,  2552,  2552,  2552,  2552,  2552,  2552,  2552,  2552,
7078     2552,  2552,  3234,     0,     0,     0,     0,     0,     0,     0,
7079        0,     0,     0,     0,     0,     0,     0,     0,     0,  1031,
7080        0,     0,     0,     0,  1833,     0,     0,  1833,     0,  1833,
7081        0,     0,  3234,  3234,     0,     0,     0,     0,     0,     0,
7082        0,     0,     0,     0,     0,     0,     0,  1833,  2552,  2552,
7083     1833,     0,  1833,     0,     0,     0,     0,     0,     0,     0,
7084        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7085        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7086        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7087        0,     0,     0,     0,  1029,     0,     0,     0,     0,     0,
7088     1833,     0,     0,     0,     0,     0,     0,     0,  1031,     0,
7089        0,  1833,     0,     0,     0,     0,     0,     0,     0,     0,
7090        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7091        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7092        0,     0,     0,     0,     0,     0,     0,     0,  1833,     0,
7093        0,     0,     0,     0,  1031,     0,     0,     0,     0,     0,
7094        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7095        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7096        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7097        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7098        0,     0,  1029,     0,     0,     0,     0,     0,     0,     0,
7099        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7100        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7101     1029,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7102        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7103        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7104        0,     0,     0,     0,     0,     0,     0,     0,  1029,     0,
7105        0,     0,     0,     0,     0,     0,     0,     0,  1031,     0,
7106        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7107        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7108        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7109        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7110        0,  1029,     0,     0,     0,  1029,  1029,     0,     0,     0,
7111        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7112        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7113        0,     0,     0,  2552,     0,     0,     0,     0,     0,     0,
7114        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7115        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7116        0,     0,     0,     0,     0,     0,  1031,     0,     0,     0,
7117        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7118        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7119        0,     0,     0,     0,  1031,     0,     0,  1029,     0,     0,
7120        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7121        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7122        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7123        0,     0,  1031,     0,     0,     0,     0,     0,     0,     0,
7124        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7125        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7126        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7127        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7128        0,     0,     0,     0,     0,  1031,     0,  1833,     0,  1031,
7129     1031,  1833,  1833,  1833,     0,     0,     0,     0,     0,  3234,
7130     3234,  3234,  3234,     0,     0,     0,     0,  3234,  3234,  3234,
7131     3234,  3234,  3234,  3234,  3234,  3234,  3234,  1833,  1833,     0,
7132        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7133        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7134        0,     0,     0,  1833,     0,     0,  1833,     0,  1833,     0,
7135        0,     0,  1833,     0,     0,  3234,  3234,     0,     0,  1833,
7136     1833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7137        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7138        0,  1031,     0,     0,     0,     0,     0,     0,     0,     0,
7139        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7140        0,     0,     0,     0,  1833,     0,     0,     0,     0,     0,
7141        0,  1833,  1833,     0,     0,     0,     0,     0,     0,     0,
7142        0,     0,     0,     0,     0,     0,     0,  1833,     0,     0,
7143        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7144        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7145        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7146        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7147        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7148        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7149        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7150        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7151        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7152        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7153        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7155        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7156        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7157        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7158        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7159        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7160        0,     0,     0,     0,     0,  3234,     0,     0,     0,     0,
7161        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7162        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7163        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7164        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7165        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7166        0,     0,     0,     0,  1833,  1833,     0,     0,     0,     0,
7167        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7168        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7169        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7170        0,     0,     0,     0,     0,  1833,     0,     0,     0,     0,
7171     1833,  2552,     0,     0,     0,     0,     0,     0,     0,     0,
7172        0,     0,     0,     0,     0,  1833,     0,  1833,     0,     0,
7173        0,  1833,  1833,  1833,     0,     0,  1833,     0,     0,  1833,
7174     1833,     0,     0,     0,  1833,     0,     0,     0,  1833,     0,
7175        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7176        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7177        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7178        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7179        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7180        0,     0,     0,  1833,     0,     0,     0,     0,     0,     0,
7181        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7182        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7183        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7184        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7185        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7186        0,     0,     0,  1833,     0,     0,     0,     0,     0,     0,
7187        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7188        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7189        0,     0,     0,     0,     0,     0,     0,  1833,     0,     0,
7190        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7191        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7192        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7193        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7194        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7195        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7196        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7197        0,     0,     0,  3234,  2552,     0,     0,     0,     0,     0,
7198        0,     0,     0,     0,     0,     0,     0,     0,     0,  1833,
7199     1833,  1833,     0,     0,     0,     0,     0,     0,     0,     0,
7200        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7201        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7202        0,     0,     0,     0,     0,  1833,  1833,     0,     0,     0,
7203        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7204        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7205        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7206        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7207        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7208        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7209        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7210        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7211        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7212        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7213        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7214        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7215        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7216        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7217        0,     0,     0,     0,  3234,     0,     0,     0,     0,     0,
7218        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7219     1833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7220        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7221        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7222        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7223        0,     0,     0,     0,     0,     0,     0,     0,     0,  1833,
7224        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7225        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7226        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7227        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7228        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7229     1833,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7230        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7231        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7232        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7233        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7234        0,     0,     0,     0,     0,     0,     0,  1833,     0,     0,
7235        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7236        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7237        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7238        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
7239        0,     0,     0,   783,  1146,   601,  1147,  1148,  1149,   655,
7240     1150,     0,     0,     0,     0,     0,     0,  1833,   224,   225,
7241      226,   227,   228,   229,   230,   231,  2644,   233,   234,   235,
7242        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
7243      238,   239,   784,   240,   241,   242,   243,  1152,   785,  1153,
7244     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
7245      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
7246        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
7247      268,     0,   269,   270,   271,   272,   273,   274,  1833,   788,
7248      275,   276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
7249      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
7250      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
7251      295,   296,  2645,     0,   297,   298,  1004,   300,   301,  1833,
7252      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
7253      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
7254      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
7255      791,   324,   325,   326,     0,   327,  1174,     0,  1175,   330,
7256        0,   331,   332,   333,   334,   335,   792,   336,   337,   338,
7257      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
7258      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
7259        0,   355,   794,   795,   356,   796,   357,   358,   359,   360,
7260      361,     0,     0,   362,  1179,   797,   364,   798,     0,   365,
7261      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
7262      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
7263     1182,   799,  1183,   386,   387,   388,  1184,   389,   390,   800,
7264      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
7265        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
7266      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
7267      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
7268      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
7269     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
7270      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
7271      803,   448,   449,   450,  1192,   452,   453,   454,   455,   456,
7272      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
7273      465,   466,   467,   468,   469,   804,   470,   471,  1194,   473,
7274        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
7275      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
7276      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
7277      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
7278      506,   507,     0,  1201,   508,   509,   510,   511,   512,  1202,
7279        0,   513,   514,   515,   516,   517,   518,  1203,  2646,   520,
7280      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
7281      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
7282     1207,  1208,  1209,  1210,  1211,   541,   542,   543,  1212,     0,
7283        0,     0,     0,     0,     0,  1213,  1214,  2647,     0,     0,
7284        0,     0,     0,     0,  1216,  2648,   783,  1146,   601,  1147,
7285     1148,  1149,   655,  1150,     0,     0,     0,     0,     0,     0,
7286        0,   224,   225,   226,   227,   228,   229,   230,   231,     0,
7287      233,   234,   235,     0,     0,     0,     0,  1151,     0,     0,
7288      236,   237,     0,   238,   239,   784,   240,   241,   242,   243,
7289     1152,   785,  1153,  1154,     0,   247,   248,   249,   250,   251,
7290     1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,   258,
7291      259,   260,  1159,     0,  1160,     0,   262,   263,   264,   265,
7292      787,   266,   267,   268,     0,   269,   270,   271,   272,   273,
7293      274,     0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,
7294     1165,  1166,  1167,   278,   279,   280,   281,   282,   283,  1168,
7295     1169,   286,     0,   287,     0,   288,   289,   290,   291,   292,
7296      293,     0,   294,   295,   296,     0,     0,   297,   298,  1004,
7297      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
7298        0,   308,   309,   310,   311,  1170,   313,   314,   315,  1171,
7299     1172,   317,     0,   318,   319,  1173,   321,     0,   322,     0,
7300      323,   790,     0,   791,   324,   325,   326,     0,   327,  1174,
7301        0,  1175,   330,     0,   331,   332,   333,   334,   335,   792,
7302      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
7303      345,     0,   346,   793,   347,   348,   349,   350,   351,  1176,
7304     1177,     0,  1178,     0,   355,   794,   795,   356,   796,   357,
7305      358,   359,   360,   361,     0,     0,   362,  1179,   797,   364,
7306      798,     0,   365,   366,   367,  1180,  1181,   368,   369,   370,
7307      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
7308      381,   382,   383,  1182,   799,  1183,   386,   387,   388,  1184,
7309      389,   390,   800,   391,  1185,  1186,   393,  1187,   395,   396,
7310      397,     0,   398,     0,     0,  1188,   400,   401,     0,     0,
7311      402,   403,   801,   404,   802,  1189,   406,   407,   408,   409,
7312      410,   411,   412,   413,     0,     0,   414,   415,  1190,   417,
7313      418,   419,   420,   421,     0,   422,   423,   424,   425,   426,
7314      427,   428,   429,  1191,   431,   432,   433,   434,     0,   435,
7315      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
7316        0,   446,   447,   803,   448,   449,   450,  1192,   452,   453,
7317      454,   455,   456,   457,   458,   459,    40,   460,   461,   462,
7318      463,   464,  1193,   465,   466,   467,   468,   469,   804,   470,
7319      471,  1194,   473,     0,   474,   475,   476,   477,   478,   479,
7320      480,   481,   482,   483,   484,  1195,     0,   486,   487,    44,
7321      488,   805,   489,   490,   491,   492,   493,     0,  1196,  1197,
7322        0,     0,   496,   497,  1198,   499,  1199,  1200,   501,   502,
7323      503,   504,   505,   506,   507,     0,  1201,   508,   509,   510,
7324      511,   512,  1202,     0,   513,   514,   515,   516,   517,  1077,
7325     1203,     0,   520,   806,   521,   522,   523,   524,     0,     0,
7326      525,     0,    49,   526,   527,   528,   529,   530,   531,   532,
7327     1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,
7328      543,  1212,     0,    50,     0,     0,     0,     0,  1213,  1214,
7329        0,     0,     0,     0,     0,     0,     0,  1216,  4655,   783,
7330     1146,   601,  1147,  1148,  1149,   655,  1150,     0,     0,     0,
7331        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
7332      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
7333     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
7334      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
7335      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
7336        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
7337      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
7338      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
7339     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
7340      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
7341      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
7342      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
7343      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
7344      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
7345        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
7346        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
7347      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
7348      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
7349      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
7350      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
7351     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
7352      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
7353      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
7354      387,   388,  1184,   389,   390,   800,   391,  1185,  1186,   393,
7355     1187,   395,   396,   397,     0,   398,     0,     0,  1188,   400,
7356      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
7357      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
7358      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
7359      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
7360      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
7361      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
7362     1192,   452,   453,   454,   455,   456,   457,   458,   459,     0,
7363      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
7364      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
7365      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
7366      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
7367        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
7368     1200,   501,   502,   503,   504,   505,   506,   507,     0,  1201,
7369      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
7370      516,   517,   518,  1203,     0,   520,   806,   521,   522,   523,
7371      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
7372      530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
7373     1211,   541,   542,   543,  1212,     0,     0,     0,     0,     0,
7374        0,  1213,  1214,     0,     0,     0,     0,     0,     0,     0,
7375     1216,  2554,   783,  1146,   601,  1147,  1148,  1149,   655,  1150,
7376        0,     0,     0,     0,     0,     0,     0,   224,   225,   226,
7377      227,   228,   229,   230,   231,     0,   233,   234,   235,     0,
7378        0,     0,     0,  1151,     0,     0,   236,   237,     0,   238,
7379      239,   784,   240,   241,   242,   243,  1152,   785,  1153,  1154,
7380        0,   247,   248,   249,   250,   251,  1155,  1156,   252,   253,
7381     1157,  1158,   256,     0,   257,   258,   259,   260,  1159,     0,
7382     1160,     0,   262,   263,   264,   265,   787,   266,   267,   268,
7383        0,   269,   270,   271,   272,   273,   274,     0,   788,   275,
7384      276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,
7385      279,   280,   281,   282,   283,  1168,  1169,   286,     0,   287,
7386        0,   288,   289,   290,   291,   292,   293,     0,   294,   295,
7387      296,     0,     0,   297,   298,  1004,   300,   301,     0,   302,
7388      303,   304,     0,   305,   306,   307,     0,   308,   309,   310,
7389      311,  1170,   313,   314,   315,  1171,  1172,   317,     0,   318,
7390      319,  1173,   321,     0,   322,     0,   323,   790,     0,   791,
7391      324,   325,   326,     0,   327,  1174,     0,  1175,   330,     0,
7392      331,   332,   333,   334,   335,   792,   336,   337,   338,   339,
7393        0,   340,   341,   342,   343,   344,   345,     0,   346,   793,
7394      347,   348,   349,   350,   351,  1176,  1177,     0,  1178,     0,
7395      355,   794,   795,   356,   796,   357,   358,   359,   360,   361,
7396        0,     0,   362,  1179,   797,   364,   798,     0,   365,   366,
7397      367,  1180,  1181,   368,   369,   370,   371,   372,   373,   374,
7398      375,   376,   377,   378,   379,   380,   381,   382,   383,  1182,
7399      799,  1183,   386,   387,   388,  1184,   389,   390,   800,   391,
7400     1185,  1186,   393,  1187,   395,   396,   397,     0,   398,     0,
7401        0,  1188,   400,   401,     0,     0,   402,   403,   801,   404,
7402      802,  1189,   406,   407,   408,   409,   410,   411,   412,   413,
7403        0,     0,   414,   415,  1190,   417,   418,   419,   420,   421,
7404        0,   422,   423,   424,   425,   426,   427,   428,   429,  1191,
7405      431,   432,   433,   434,     0,   435,   436,   437,   438,   439,
7406      440,   441,   442,   443,   444,   445,     0,   446,   447,   803,
7407      448,   449,   450,  1192,   452,   453,   454,   455,   456,   457,
7408      458,   459,     0,   460,   461,   462,   463,   464,  1193,   465,
7409      466,   467,   468,   469,   804,   470,   471,  1194,   473,     0,
7410      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
7411      484,  1195,     0,   486,   487,     0,   488,   805,   489,   490,
7412      491,   492,   493,     0,  1196,  1197,     0,     0,   496,   497,
7413     1198,   499,  1199,  1200,   501,   502,   503,   504,   505,   506,
7414      507,     0,  1201,   508,   509,   510,   511,   512,  1202,     0,
7415      513,   514,   515,   516,   517,   518,  1203,     0,   520,   806,
7416      521,   522,   523,   524,     0,     0,   525,     0,     0,   526,
7417      527,   528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,
7418     1208,  1209,  1210,  1211,   541,   542,   543,  1212,     0,     0,
7419        0,     0,     0,     0,  1213,  1214,     0,     0,     0,     0,
7420        0,     0,     0,  1216,  3748,   783,  1146,   601,  1147,  1148,
7421     1149,   655,  1150,     0,     0,     0,     0,     0,     0,     0,
7422      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
7423      234,   235,     0,     0,     0,     0,  1151,     0,     0,   236,
7424      237,     0,   238,   239,   784,   240,   241,   242,   243,  1152,
7425      785,  1153,  1154,     0,   247,   248,   249,   250,   251,  1155,
7426     1156,   252,   253,  1157,  1158,   256,     0,   257,   258,   259,
7427      260,  1159,     0,  1160,     0,   262,   263,   264,   265,   787,
7428      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
7429        0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,  1165,
7430     1166,  1167,   278,   279,   280,   281,   282,   283,  1168,  1169,
7431      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
7432        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
7433      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
7434      308,   309,   310,   311,  1170,   313,   314,   315,  1171,  1172,
7435      317,     0,   318,   319,  1173,   321,     0,   322,     0,   323,
7436      790,     0,   791,   324,   325,   326,     0,   327,  1174,     0,
7437     1175,   330,     0,   331,   332,   333,   334,   335,   792,   336,
7438      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
7439        0,   346,   793,   347,   348,   349,   350,   351,  1176,  1177,
7440        0,  1178,     0,   355,   794,   795,   356,   796,   357,   358,
7441      359,   360,   361,     0,     0,   362,  1179,   797,   364,   798,
7442        0,   365,   366,   367,  1180,  1181,   368,   369,   370,   371,
7443      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
7444      382,   383,  1182,   799,  1183,   386,   387,   388,  1184,   389,
7445      390,   800,   391,  1185,  1186,   393,  1187,   395,   396,   397,
7446        0,   398,     0,     0,  1188,   400,   401,     0,     0,   402,
7447      403,   801,   404,   802,  1189,   406,   407,   408,   409,   410,
7448      411,   412,   413,     0,     0,   414,   415,  1190,   417,   418,
7449      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
7450      428,   429,  1191,   431,   432,   433,   434,     0,   435,   436,
7451      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
7452      446,   447,   803,   448,   449,   450,  1192,   452,   453,   454,
7453      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
7454      464,  1193,   465,   466,   467,   468,   469,   804,   470,   471,
7455     1194,   473,     0,   474,   475,   476,   477,   478,   479,   480,
7456      481,   482,   483,   484,  1195,     0,   486,   487,     0,   488,
7457      805,   489,   490,   491,   492,   493,     0,  1196,  1197,     0,
7458        0,   496,   497,  1198,   499,  1199,  1200,   501,   502,   503,
7459      504,   505,   506,   507,     0,  1201,   508,   509,   510,   511,
7460      512,  1202,     0,   513,   514,   515,   516,   517,   518,  1203,
7461        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
7462        0,     0,   526,   527,   528,   529,   530,   531,   532,  1204,
7463     1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,   543,
7464     1212,     0,     0,   223,     0,     0,     0,  1213,  1214,     0,
7465        0,     0,     0,     0,     0,     0,  1216,  3819,   224,   225,
7466      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
7467        0,     0,     0,     0,     0,  3835,     0,   236,   237,     0,
7468      238,   239,     0,   240,   241,   242,   243,   244,     0,   245,
7469      246,     0,   247,   248,   249,   250,   251,     0,     0,   252,
7470      253,   254,   255,   256,     0,   257,   258,   259,   260,   261,
7471        0,     0,     0,   262,   263,   264,   265,     0,   266,   267,
7472      268,     0,   269,   270,   271,   272,   273,   274,     0, -1602,
7473      275,   276,   277,     0,     0,     0,     0,     0,     0,     0,
7474      278,   279,   280,   281,   282,   283,   284,   285,   286,     0,
7475      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
7476      295,   296,     0,     0,   297,   298,   299,   300,   301,     0,
7477      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
7478      310,   311,   312,   313,   314,   315,   316,     0,   317,     0,
7479      318,   319,   320,   321,     0,   322,     0,   323,     0,     0,
7480    -1602,   324,   325,   326,     0,   327,   328,     0,   329,   330,
7481        0,   331,   332,   333,   334,   335,     0,   336,   337,   338,
7482      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
7483    -1602,   347,   348,   349,   350,   351,   352,   353,     0,   354,
7484        0,   355,     0,     0,   356, -1602,   357,   358,   359,   360,
7485      361,     0,     0,   362,   363, -1602,   364,     0,     0,   365,
7486      366,   367,     0,     0,   368,   369,   370,   371,   372,   373,
7487      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
7488      384, -1602,   385,   386,   387,   388,     0,   389,   390,     0,
7489      391,     0,   392,   393,   394,   395,   396,   397,     0,   398,
7490        0,     0,   399,   400,   401,     0,     0,   402,   403,     0,
7491      404,     0,   405,   406,   407,   408,   409,   410,   411,   412,
7492      413,     0,     0,   414,   415,   416,   417,   418,   419,   420,
7493      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
7494      430,   431,   432,   433,   434,     0,   435,   436,   437,   438,
7495      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
7496    -1602,   448,   449,   450,   451,   452,   453,   454,   455,   456,
7497      457,   458,   459,     0,   460,   461,   462,   463,   464,     0,
7498      465,   466,   467,   468,   469,     0,   470,   471,   472,   473,
7499        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
7500      483,   484,   485,     0,   486,   487,     0,   488,     0,   489,
7501      490,   491,   492,   493,     0,   494,   495,     0,     0,   496,
7502      497,   498,   499,   500,     0,   501,   502,   503,   504,   505,
7503      506,   507,     0,     0,   508,   509,   510,   511,   512,     0,
7504        0,   513,   514,   515,   516,   517,   518,   519,     0,   520,
7505        0,   521,   522,   523,   524,     0,     0,   525,     0,     0,
7506      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
7507      536,   537,   538,   539,   540,   541,   542,   543,     0,     0,
7508        0,   996,     0,     0,     0,     0,     0,     0,     0,     0,
7509        0,     0,     0,     0,     0,  1299,   224,   225,   226,   227,
7510      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
7511        0,     0,     0,     0,     0,   236,   237,     0,   238,   239,
7512      784,   240,   241,   242,     0,   997,   785,   998,   999,     0,
7513      247,   248,   249,   250,   251,     0,     0,   252,   253,  1000,
7514     1001,   256,     0,   257,   258,   259,   260,     0,     0,   786,
7515        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
7516      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
7517      277,     0,     0,     0,   789,     0,     0,     0,   278,   279,
7518      280,   281,   282,   283,  1002,  1003,   286,     0,   287,     0,
7519      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
7520        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
7521      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
7522        0,   313,   314,   315,     0,     0,   317,     0,   318,   319,
7523     1005,   321,     0,   322,     0,   323,   790,     0,   791,   324,
7524      325,   326,     0,   327,     0,     0,     0,   330,     0,   331,
7525      332,   333,   334,   335,   792,   336,   337,   338,   339,  2015,
7526      340,   341,   342,   343,   344,   345,     0,   346,   793,  2016,
7527      348,   349,   350,   351,  1007,  1008,     0,  1009,     0,   355,
7528      794,   795,   356,   796,   357,   358,   359,   360,   361,     0,
7529        0,   362,     0,   797,   364,   798,     0,   365,   366,   367,
7530        0,     0,   368,   369,   370,   371,   372,   373,   374,   375,
7531      376,   377,   378,   379,   380,   381,   382,   383,  1010,   799,
7532     1011,   386,   387,     0,     0,   389,   390,   800,   391,     0,
7533        0,   393,  1012,   395,   396,   397,     0,   398,     0,     0,
7534      399,   400,   401,     0,     0,   402,  2018,   801,   404,   802,
7535        0,   406,   407,   408,   409,   410,   411,   412,   413,     0,
7536        0,   414,   415,     0,   417,     0,   419,   420,   421,     0,
7537      422,   423,   424,   425,   426,   427,   428,   429,  1013,   431,
7538      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
7539      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
7540      449,   450,     0,   452,   453,   454,   455,   456,   457,   458,
7541      459,     0,   460,   461,   462,   463,   464,     0,   465,   466,
7542     2019,   468,   469,   804,   470,   471,  1015,   473,     0,   474,
7543      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
7544        0,     0,   486,   487,     0,   488,   805,   489,   490,   491,
7545      492,   493,     0,  1016,  1017,     0,     0,   496,   497,     0,
7546      499,     0,     0,   501,   502,   503,   504,   505,   506,   507,
7547        0,     0,   508,   509,   510,   511,   512,     0,     0,   513,
7548      514,   515,   516,   517,     0,  1018,  2020,   520,   806,   521,
7549      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
7550      528,   529,   530,   531,   996,     0,     0,     0,     0,     0,
7551        0,     0,     0,   541,   542,   543,     0,     0,     0,   224,
7552      225,   226,   227,   228,   229,   230,   231,     0,   233,   234,
7553      235,     0,     0,  2126,     0,     0,     0,     0,   236,   237,
7554        0,   238,   239,   784,   240,   241,   242,     0,   997,   785,
7555      998,   999,     0,   247,   248,   249,   250,   251,     0,     0,
7556      252,   253,  1000,  1001,   256,     0,   257,   258,   259,   260,
7557        0,     0,   786,     0,   262,   263,   264,   265,   787,   266,
7558      267,   268,     0,   269,   270,   271,   272,   273,   274,     0,
7559      788,   275,   276,   277,     0,     0,     0,   789,     0,     0,
7560        0,   278,   279,   280,   281,   282,   283,  1002,  1003,   286,
7561        0,   287,     0,   288,   289,   290,   291,   292,   293,     0,
7562      294,   295,   296,     0,     0,   297,   298,  1004,   300,   301,
7563        0,   302,   303,   304,     0,   305,   306,   307,     0,   308,
7564      309,   310,   311,     0,   313,   314,   315,     0,     0,   317,
7565        0,   318,   319,  1005,   321,     0,   322,     0,   323,   790,
7566        0,   791,   324,   325,   326,     0,   327,     0,     0,     0,
7567      330,     0,   331,   332,   333,   334,   335,   792,   336,   337,
7568      338,   339,  2015,   340,   341,   342,   343,   344,   345,     0,
7569      346,   793,  2016,   348,   349,   350,   351,  1007,  1008,     0,
7570     1009,     0,   355,   794,   795,   356,   796,   357,   358,   359,
7571      360,   361,     0,     0,   362,     0,   797,   364,   798,     0,
7572      365,   366,   367,     0,     0,   368,   369,   370,   371,   372,
7573      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
7574      383,  1010,   799,  1011,   386,   387,     0,     0,   389,   390,
7575      800,   391,     0,     0,   393,  1012,   395,   396,   397,     0,
7576      398,     0,     0,   399,   400,   401,     0,     0,   402,  2018,
7577      801,   404,   802,     0,   406,   407,   408,   409,   410,   411,
7578      412,   413,     0,     0,   414,   415,     0,   417,     0,   419,
7579      420,   421,     0,   422,   423,   424,   425,   426,   427,   428,
7580      429,  1013,   431,   432,   433,   434,     0,   435,   436,   437,
7581      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
7582      447,   803,   448,   449,   450,     0,   452,   453,   454,   455,
7583      456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
7584        0,   465,   466,  2019,   468,   469,   804,   470,   471,  1015,
7585      473,     0,   474,   475,   476,   477,   478,   479,   480,   481,
7586      482,   483,   484,     0,     0,   486,   487,     0,   488,   805,
7587      489,   490,   491,   492,   493,     0,  1016,  1017,     0,     0,
7588      496,   497,     0,   499,     0,     0,   501,   502,   503,   504,
7589      505,   506,   507,     0,     0,   508,   509,   510,   511,   512,
7590        0,     0,   513,   514,   515,   516,   517,     0,  1018,  2020,
7591      520,   806,   521,   522,   523,   524,     0,     0,   525,     0,
7592        0,   526,   527,   528,   529,   530,   531,   783,  1146,   601,
7593     1147,  1148,  1149,   655,  1150,     0,   541,   542,   543,     0,
7594        0,     0,   224,   225,   226,   227,   228,   229,   230,   231,
7595        0,   233,   234,   235,     0,     0,  3075,     0,  1151,     0,
7596        0,   236,   237,     0,   238,   239,   784,   240,   241,   242,
7597      243,  1152,   785,  1153,  1154,     0,   247,   248,   249,   250,
7598      251,  1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,
7599      258,   259,   260,  1159,     0,  1160,     0,   262,   263,   264,
7600      265,   787,   266,   267,   268,     0,   269,   270,   271,   272,
7601      273,   274,     0,   788,   275,   276,   277,  1161,  1162,  1163,
7602     1164,  1165,  1166,  1167,   278,   279,   280,   281,   282,   283,
7603     1168,  1169,   286,  1291,   287,     0,   288,   289,   290,   291,
7604      292,   293,     0,   294,   295,   296,     0,     0,   297,   298,
7605     1004,   300,   301,     0,   302,   303,   304,     0,   305,   306,
7606      307,     0,   308,   309,   310,   311,  1170,   313,   314,   315,
7607     1171,  1172,   317,     0,   318,   319,  1173,   321,     0,   322,
7608        0,   323,   790,     0,   791,   324,   325,   326,     0,   327,
7609     1174,     0,  1175,   330,     0,   331,   332,   333,   334,   335,
7610      792,   336,   337,   338,   339,     0,   340,   341,   342,   343,
7611      344,   345,     0,   346,   793,   347,   348,   349,   350,   351,
7612     1176,  1177,     0,  1178,     0,   355,   794,   795,   356,   796,
7613      357,   358,   359,   360,   361,     0,     0,   362,  1179,   797,
7614      364,   798,     0,   365,   366,   367,  1180,  1181,   368,   369,
7615      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
7616      380,   381,   382,   383,  1182,   799,  1183,   386,   387,   388,
7617     1184,   389,   390,   800,   391,  1185,  1186,   393,  1187,   395,
7618      396,   397,     0,   398,     0,     0,  1188,   400,   401,     0,
7619        0,   402,   403,   801,   404,   802,  1189,   406,   407,   408,
7620      409,   410,   411,   412,   413,     0,     0,   414,   415,  1190,
7621      417,   418,   419,   420,   421,     0,   422,   423,   424,   425,
7622      426,   427,   428,   429,  1191,   431,   432,   433,   434,     0,
7623      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
7624      445,     0,   446,   447,   803,   448,   449,   450,  1192,   452,
7625      453,   454,   455,   456,   457,   458,   459,    40,   460,   461,
7626      462,   463,   464,  1193,   465,   466,   467,   468,   469,   804,
7627      470,   471,  1194,   473,     0,   474,   475,   476,   477,   478,
7628      479,   480,   481,   482,   483,   484,  1195,     0,   486,   487,
7629       44,   488,   805,   489,   490,   491,   492,   493,     0,  1196,
7630     1197,     0,     0,   496,   497,  1198,   499,  1199,  1200,   501,
7631      502,   503,   504,   505,   506,   507,     0,  1201,   508,   509,
7632      510,   511,   512,  1202,     0,   513,   514,   515,   516,   517,
7633     1077,  1203,     0,   520,   806,   521,   522,   523,   524,     0,
7634        0,   525,     0,    49,   526,   527,   528,   529,   530,   531,
7635      532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,
7636      542,   543,  1212,     0,    50,     0,     0,     0,     0,  1213,
7637     1214,     0,     0,     0,     0,     0,     0,     0,  1216,   783,
7638     1146,   601,  1147,  1148,  1149,   655,  1150,     0,     0,     0,
7639        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
7640      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
7641     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
7642      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
7643      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
7644        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
7645      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
7646      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
7647     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
7648      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
7649      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
7650      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
7651      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
7652      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
7653        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
7654        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
7655      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
7656      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
7657      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
7658      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
7659     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
7660      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
7661      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
7662      387,   388,  1184,   389,   390,   800,   391,  1185,  1186,   393,
7663     1187,   395,   396,   397,     0,   398,     0,     0,  1188,   400,
7664      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
7665      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
7666      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
7667      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
7668      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
7669      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
7670     1192,   452,   453,   454,   455,   456,   457,   458,   459,    40,
7671      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
7672      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
7673      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
7674      486,   487,    44,   488,   805,   489,   490,   491,   492,   493,
7675        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
7676     1200,   501,   502,   503,   504,   505,   506,   507,     0,  1201,
7677      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
7678      516,   517,  1077,  1203,     0,   520,   806,   521,   522,   523,
7679      524,     0,     0,   525,     0,    49,   526,   527,   528,   529,
7680      530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
7681     1211,   541,   542,   543,  1212,     0,    50,     0,     0,     0,
7682        0,  1213,  1214,     0,     0,     0,     0,     0,     0,     0,
7683     1216,   783,  1146,   601,  1147,  1148,  1149,   655,  1150,     0,
7684        0,     0,     0,     0,     0,     0,   224,   225,   226,   227,
7685      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
7686        0,     0,  1151,     0,     0,   236,   237,     0,   238,   239,
7687      784,   240,   241,   242,   243,  1152,   785,  1153,  1154,  2560,
7688      247,   248,   249,   250,   251,  1155,  1156,   252,   253,  1157,
7689     1158,   256,     0,   257,   258,   259,   260,  1159,     0,  1160,
7690        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
7691      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
7692      277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,
7693      280,   281,   282,   283,  1168,  1169,   286,     0,   287,     0,
7694      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
7695        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
7696      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
7697     1170,   313,   314,   315,  1171,  1172,   317,     0,   318,   319,
7698     1173,   321,     0,   322,     0,   323,   790,  2561,   791,   324,
7699      325,   326,     0,   327,  1174,     0,  1175,   330,     0,   331,
7700      332,   333,   334,   335,   792,   336,   337,   338,   339,     0,
7701      340,   341,   342,   343,   344,   345,     0,   346,   793,   347,
7702      348,   349,   350,   351,  1176,  1177,     0,  1178,     0,   355,
7703      794,   795,   356,   796,   357,   358,   359,   360,   361,     0,
7704     2562,   362,  1179,   797,   364,   798,     0,   365,   366,   367,
7705     1180,  1181,   368,   369,   370,   371,   372,   373,   374,   375,
7706      376,   377,   378,   379,   380,   381,   382,   383,  1182,   799,
7707     1183,   386,   387,   388,  1184,   389,   390,   800,   391,  1185,
7708     1186,   393,  1187,   395,   396,   397,     0,   398,     0,     0,
7709     1188,   400,   401,     0,     0,   402,   403,   801,   404,   802,
7710     1189,   406,   407,   408,   409,   410,   411,   412,   413,     0,
7711        0,   414,   415,  1190,   417,   418,   419,   420,   421,     0,
7712      422,   423,   424,   425,   426,   427,   428,   429,  1191,   431,
7713      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
7714      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
7715      449,   450,  1192,   452,   453,   454,   455,   456,   457,   458,
7716      459,     0,   460,   461,   462,   463,   464,  1193,   465,   466,
7717      467,   468,   469,   804,   470,   471,  1194,   473,     0,   474,
7718      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
7719     1195,     0,   486,   487,     0,   488,   805,   489,   490,   491,
7720      492,   493,     0,  1196,  1197,     0,  2563,   496,   497,  1198,
7721      499,  1199,  1200,   501,   502,   503,   504,   505,   506,   507,
7722        0,  1201,   508,   509,   510,   511,   512,  1202,     0,   513,
7723      514,   515,   516,   517,   518,  1203,     0,   520,   806,   521,
7724      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
7725      528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,
7726     1209,  1210,  1211,   541,   542,   543,  1212,     0,     0,     0,
7727        0,     0,     0,  1213,  1214,     0,     0,     0,     0,     0,
7728        0,     0,  1216,   783,  1146,   601,  1147,  1148,  1149,   655,
7729     1150,     0,     0,     0,     0,     0,     0,     0,   224,   225,
7730      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
7731        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
7732      238,   239,   784,   240,   241,   242,   243,  1152,   785,  1153,
7733     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
7734      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
7735        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
7736      268,     0,   269,   270,   271,   272,   273,   274,     0,   788,
7737      275,   276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
7738      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
7739      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
7740      295,   296,     0,     0,   297,   298,  1004,   300,   301,     0,
7741      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
7742      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
7743      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
7744      791,   324,   325,   326,     0,   327,  1174,     0,  1175,   330,
7745        0,   331,   332,   333,   334,   335,   792,   336,   337,   338,
7746      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
7747      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
7748        0,   355,   794,   795,   356,   796,   357,   358,   359,   360,
7749      361,     0,     0,   362,  1179,   797,   364,   798,     0,   365,
7750      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
7751      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
7752     1182,   799,  1183,   386,   387,   388,  1184,   389,   390,   800,
7753      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
7754        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
7755      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
7756      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
7757      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
7758     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
7759      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
7760      803,   448,   449,   450,  1192,   452,   453,   454,   455,   456,
7761      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
7762      465,   466,   467,   468,   469,   804,   470,   471,  1194,   473,
7763        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
7764      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
7765      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
7766      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
7767      506,   507,     0,  1201,   508,   509,   510,   511,   512,  1202,
7768        0,   513,   514,   515,   516,   517,   518,  1203,     0,   520,
7769      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
7770      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
7771     1207,  1208,  1209,  1210,  1211,   541,   542,   543,  1212,     0,
7772        0,     0,     0,     0,     0,  1213,  1214,     0,     0,     0,
7773        0,     0,  1757,  2515,  1216,   783,  1146,   601,  1147,  1148,
7774     1149,   655,  1150,     0,     0,     0,     0,     0,     0,     0,
7775      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
7776      234,   235,     0,     0,     0,     0,  1151,     0,     0,   236,
7777      237,     0,   238,   239,   784,   240,   241,   242,   243,  1152,
7778      785,  1153,  1154,     0,   247,   248,   249,   250,   251,  1155,
7779     1156,   252,   253,  1157,  1158,   256,     0,   257,   258,   259,
7780      260,  1159,     0,  1160,     0,   262,   263,   264,   265,   787,
7781      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
7782        0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,  1165,
7783     1166,  1167,   278,   279,   280,   281,   282,   283,  1168,  1169,
7784      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
7785        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
7786      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
7787      308,   309,   310,   311,  1170,   313,   314,   315,  1171,  1172,
7788      317,     0,   318,   319,  1173,   321,     0,   322,     0,   323,
7789      790,     0,   791,   324,   325,   326,     0,   327,  1174,     0,
7790     1175,   330,     0,   331,   332,   333,   334,   335,   792,   336,
7791      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
7792        0,   346,   793,   347,   348,   349,   350,   351,  1176,  1177,
7793        0,  1178,     0,   355,   794,   795,   356,   796,   357,   358,
7794      359,   360,   361,     0,     0,   362,  1179,   797,   364,   798,
7795        0,   365,   366,   367,  1180,  1181,   368,   369,   370,   371,
7796      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
7797      382,   383,  1182,   799,  1183,   386,   387,   388,  1184,   389,
7798      390,   800,   391,  1185,  1186,   393,  1187,   395,   396,   397,
7799        0,   398,     0,     0,  1188,   400,   401,     0,     0,   402,
7800      403,   801,   404,   802,  1189,   406,   407,   408,   409,   410,
7801      411,   412,   413,     0,     0,   414,   415,  1190,   417,   418,
7802      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
7803      428,   429,  1191,   431,   432,   433,   434,     0,   435,   436,
7804      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
7805      446,   447,   803,   448,   449,   450,  1192,   452,   453,   454,
7806      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
7807      464,  1193,   465,   466,   467,   468,   469,   804,   470,   471,
7808     1194,   473,     0,   474,   475,   476,   477,   478,   479,   480,
7809      481,   482,   483,   484,  1195,     0,   486,   487,     0,   488,
7810      805,   489,   490,   491,   492,   493,     0,  1196,  1197,     0,
7811        0,   496,   497,  1198,   499,  1199,  1200,   501,   502,   503,
7812      504,   505,   506,   507,     0,  1201,   508,   509,   510,   511,
7813      512,  1202,     0,   513,   514,   515,   516,   517,   518,  1203,
7814        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
7815        0,     0,   526,   527,   528,   529,   530,   531,   532,  1204,
7816     1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,   543,
7817     1212,     0,     0,     0,     0,     0,     0,  1213,  1214,  1215,
7818        0,     0,     0,     0,     0,     0,  1216,   783,  1146,   601,
7819     1147,  1148,  1149,   655,  1150,     0,     0,     0,     0,     0,
7820        0,     0,   224,   225,   226,   227,   228,   229,   230,   231,
7821        0,   233,   234,   235,     0,     0,     0,     0,  1151,     0,
7822        0,   236,   237,     0,   238,   239,   784,   240,   241,   242,
7823      243,  1152,   785,  1153,  1154,     0,   247,   248,   249,   250,
7824      251,  1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,
7825      258,   259,   260,  1159,     0,  1160,     0,   262,   263,   264,
7826      265,   787,   266,   267,   268,     0,   269,   270,   271,   272,
7827      273,   274,     0,   788,   275,   276,   277,  1161,  1162,  1163,
7828     1164,  1165,  1166,  1167,   278,   279,   280,   281,   282,   283,
7829     1168,  1169,   286,  1291,   287,     0,   288,   289,   290,   291,
7830      292,   293,     0,   294,   295,   296,     0,     0,   297,   298,
7831     1004,   300,   301,     0,   302,   303,   304,     0,   305,   306,
7832      307,     0,   308,   309,   310,   311,  1170,   313,   314,   315,
7833     1171,  1172,   317,     0,   318,   319,  1173,   321,     0,   322,
7834        0,   323,   790,     0,   791,   324,   325,   326,     0,   327,
7835     1174,     0,  1175,   330,     0,   331,   332,   333,   334,   335,
7836      792,   336,   337,   338,   339,     0,   340,   341,   342,   343,
7837      344,   345,     0,   346,   793,   347,   348,   349,   350,   351,
7838     1176,  1177,     0,  1178,     0,   355,   794,   795,   356,   796,
7839      357,   358,   359,   360,   361,     0,     0,   362,  1179,   797,
7840      364,   798,     0,   365,   366,   367,  1180,  1181,   368,   369,
7841      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
7842      380,   381,   382,   383,  1182,   799,  1183,   386,   387,   388,
7843     1184,   389,   390,   800,   391,  1185,  1186,   393,  1187,   395,
7844      396,   397,     0,   398,     0,     0,  1188,   400,   401,     0,
7845        0,   402,   403,   801,   404,   802,  1189,   406,   407,   408,
7846      409,   410,   411,   412,   413,     0,     0,   414,   415,  1190,
7847      417,   418,   419,   420,   421,     0,   422,   423,   424,   425,
7848      426,   427,   428,   429,  1191,   431,   432,   433,   434,     0,
7849      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
7850      445,     0,   446,   447,   803,   448,   449,   450,  1192,   452,
7851      453,   454,   455,   456,   457,   458,   459,     0,   460,   461,
7852      462,   463,   464,  1193,   465,   466,   467,   468,   469,   804,
7853      470,   471,  1194,   473,     0,   474,   475,   476,   477,   478,
7854      479,   480,   481,   482,   483,   484,  1195,     0,   486,   487,
7855        0,   488,   805,   489,   490,   491,   492,   493,     0,  1196,
7856     1197,     0,     0,   496,   497,  1198,   499,  1199,  1200,   501,
7857      502,   503,   504,   505,   506,   507,     0,  1201,   508,   509,
7858      510,   511,   512,  1202,     0,   513,   514,   515,   516,   517,
7859      518,  1203,     0,   520,   806,   521,   522,   523,   524,     0,
7860        0,   525,     0,     0,   526,   527,   528,   529,   530,   531,
7861      532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,
7862      542,   543,  1212,     0,     0,     0,     0,     0,     0,  1213,
7863     1214,     0,     0,     0,     0,     0,     0,     0,  1216,   783,
7864     1146,   601,  1147,  1148,  1149,   655,  1150,     0,     0,     0,
7865        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
7866      230,   231,  1990,   233,   234,   235,     0,     0,     0,     0,
7867     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
7868      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
7869      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
7870        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
7871      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
7872      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
7873     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
7874      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
7875      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
7876      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
7877      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
7878      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
7879        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
7880        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
7881      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
7882      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
7883      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
7884      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
7885     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
7886      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
7887      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
7888      387,   388,  1184,   389,   390,   800,   391,  1185,  1186,   393,
7889     1187,   395,   396,   397,     0,   398,     0,     0,  1188,   400,
7890      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
7891      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
7892      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
7893      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
7894      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
7895      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
7896     1192,   452,   453,   454,   455,   456,   457,   458,   459,     0,
7897      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
7898      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
7899      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
7900      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
7901        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
7902     1200,   501,   502,   503,   504,   505,   506,   507,     0,  1201,
7903      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
7904      516,   517,   518,  1203,     0,   520,   806,   521,   522,   523,
7905      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
7906      530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
7907     1211,   541,   542,   543,  1212,     0,     0,     0,     0,     0,
7908        0,  1213,  1214,     0,     0,     0,     0,     0,     0,     0,
7909     1216,   783,  1146,   601,  1147,  1148,  1149,   655,  1150,     0,
7910        0,     0,     0,     0,     0,     0,   224,   225,   226,   227,
7911      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
7912        0,     0,  1151,     0,     0,   236,   237,     0,   238,   239,
7913      784,   240,   241,   242,   243,  1152,   785,  1153,  1154,     0,
7914      247,   248,   249,   250,   251,  1155,  1156,   252,   253,  1157,
7915     1158,   256,     0,   257,   258,   259,   260,  1159,     0,  1160,
7916        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
7917      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
7918      277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,
7919      280,   281,   282,   283,  1168,  1169,   286,     0,   287,     0,
7920      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
7921        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
7922      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
7923     1170,   313,   314,   315,  1171,  1172,   317,     0,   318,   319,
7924     1173,   321,     0,   322,     0,   323,   790,  2561,   791,   324,
7925      325,   326,     0,   327,  1174,     0,  1175,   330,     0,   331,
7926      332,   333,   334,   335,   792,   336,   337,   338,   339,     0,
7927      340,   341,   342,   343,   344,   345,     0,   346,   793,   347,
7928      348,   349,   350,   351,  1176,  1177,     0,  1178,     0,   355,
7929      794,   795,   356,   796,   357,   358,   359,   360,   361,     0,
7930        0,   362,  1179,   797,   364,   798,     0,   365,   366,   367,
7931     1180,  1181,   368,   369,   370,   371,   372,   373,   374,   375,
7932      376,   377,   378,   379,   380,   381,   382,   383,  1182,   799,
7933     1183,   386,   387,   388,  1184,   389,   390,   800,   391,  1185,
7934     1186,   393,  1187,   395,   396,   397,     0,   398,     0,     0,
7935     1188,   400,   401,     0,     0,   402,   403,   801,   404,   802,
7936     1189,   406,   407,   408,   409,   410,   411,   412,   413,     0,
7937        0,   414,   415,  1190,   417,   418,   419,   420,   421,     0,
7938      422,   423,   424,   425,   426,   427,   428,   429,  1191,   431,
7939      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
7940      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
7941      449,   450,  1192,   452,   453,   454,   455,   456,   457,   458,
7942      459,     0,   460,   461,   462,   463,   464,  1193,   465,   466,
7943      467,   468,   469,   804,   470,   471,  1194,   473,     0,   474,
7944      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
7945     1195,     0,   486,   487,     0,   488,   805,   489,   490,   491,
7946      492,   493,     0,  1196,  1197,     0,     0,   496,   497,  1198,
7947      499,  1199,  1200,   501,   502,   503,   504,   505,   506,   507,
7948        0,  1201,   508,   509,   510,   511,   512,  1202,     0,   513,
7949      514,   515,   516,   517,   518,  1203,     0,   520,   806,   521,
7950      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
7951      528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,
7952     1209,  1210,  1211,   541,   542,   543,  1212,     0,     0,     0,
7953        0,     0,     0,  1213,  1214,     0,     0,     0,     0,     0,
7954        0,     0,  1216,   783,  1146,   601,  1147,  1148,  1149,   655,
7955     1150,     0,     0,     0,     0,     0,     0,     0,   224,   225,
7956      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
7957        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
7958      238,   239,   784,   240,   241,   242,   243,  1152,   785,  1153,
7959     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
7960      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
7961        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
7962      268,     0,   269,   270,   271,   272,   273,   274,     0,   788,
7963      275,   276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
7964      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
7965      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
7966      295,   296,     0,     0,   297,   298,  1004,   300,   301,     0,
7967      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
7968      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
7969      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
7970      791,   324,   325,   326,     0,   327,  1174,     0,  1175,   330,
7971        0,   331,   332,   333,   334,   335,   792,   336,   337,   338,
7972      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
7973      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
7974        0,   355,   794,   795,   356,   796,   357,   358,   359,   360,
7975      361,     0,     0,   362,  1179,   797,   364,   798,     0,   365,
7976      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
7977      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
7978     1182,   799,  1183,   386,   387,   388,  1184,   389,   390,   800,
7979      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
7980        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
7981      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
7982      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
7983      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
7984     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
7985      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
7986      803,   448,   449,   450,  1192,   452,   453,   454,   455,   456,
7987      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
7988      465,   466,   467,   468,   469,   804,   470,   471,  1194,   473,
7989        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
7990      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
7991      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
7992      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
7993      506,   507,     0,  1201,   508,   509,   510,   511,   512,  1202,
7994        0,   513,   514,   515,   516,   517,   518,  1203,  3866,   520,
7995      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
7996      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
7997     1207,  1208,  1209,  1210,  1211,   541,   542,   543,  1212,     0,
7998        0,     0,     0,     0,     0,  1213,  1214,     0,     0,     0,
7999        0,     0,     0,     0,  1216,   783,  1146,   601,  1147,  1148,
8000     1149,   655,  1150,     0,     0,     0,     0,     0,     0,     0,
8001      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
8002      234,   235,     0,     0,     0,     0,  1151,     0,     0,   236,
8003      237,     0,   238,   239,   784,   240,   241,   242,   243,  1152,
8004      785,  1153,  1154,     0,   247,   248,   249,   250,   251,  1155,
8005     1156,   252,   253,  1157,  1158,   256,     0,   257,   258,   259,
8006      260,  1159,     0,  1160,     0,   262,   263,   264,   265,   787,
8007      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
8008        0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,  1165,
8009     1166,  1167,   278,   279,   280,   281,   282,   283,  1168,  1169,
8010      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
8011        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
8012      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
8013      308,   309,   310,   311,  1170,   313,   314,   315,  1171,  1172,
8014      317,     0,   318,   319,  1173,   321,     0,   322,     0,   323,
8015      790,     0,   791,   324,   325,   326,     0,   327,  1174,     0,
8016     1175,   330,     0,   331,   332,   333,   334,   335,   792,   336,
8017      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
8018        0,   346,   793,   347,   348,   349,   350,   351,  1176,  1177,
8019        0,  1178,     0,   355,   794,   795,   356,   796,   357,   358,
8020      359,   360,   361,     0,     0,   362,  1179,   797,   364,   798,
8021        0,   365,   366,   367,  1180,  1181,   368,   369,   370,   371,
8022      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
8023      382,   383,  1182,   799,  1183,   386,   387,   388,  1184,   389,
8024      390,   800,   391,  1185,  1186,   393,  1187,   395,   396,   397,
8025        0,   398,     0,     0,  1188,   400,   401,     0,     0,   402,
8026      403,   801,   404,   802,  1189,   406,   407,   408,   409,   410,
8027      411,   412,   413,     0,     0,   414,   415,  1190,   417,   418,
8028      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
8029      428,   429,  1191,   431,   432,   433,   434,     0,   435,   436,
8030      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
8031      446,   447,   803,   448,   449,   450,  1192,   452,   453,   454,
8032      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
8033      464,  1193,   465,   466,   467,   468,   469,   804,   470,   471,
8034     1194,   473,     0,   474,   475,   476,   477,   478,   479,   480,
8035      481,   482,   483,   484,  1195,     0,   486,   487,     0,   488,
8036      805,   489,   490,   491,   492,   493,     0,  1196,  1197,     0,
8037        0,   496,   497,  1198,   499,  1199,  1200,   501,   502,   503,
8038      504,   505,   506,   507,     0,  1201,   508,   509,   510,   511,
8039      512,  1202,     0,   513,   514,   515,   516,   517,   518,  1203,
8040        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
8041        0,     0,   526,   527,   528,   529,   530,   531,   532,  1204,
8042     1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,   543,
8043     1212,     0,     0,     0,     0,     0,     0,  1213,  1214,     0,
8044        0,     0,     0,     0,     0,     0,  1216,   783,  1146,   601,
8045     1147,  1148,  1149,   655,  1150,     0,     0,     0,     0,     0,
8046        0,     0,   224,   225,   226,   227,   228,   229,   230,   231,
8047        0,   233,   234,   235,     0,     0,     0,     0,  1151,     0,
8048        0,   236,   237,     0,   238,   239,   784,   240,   241,   242,
8049      243,  1152,   785,  1153,  1154,     0,   247,   248,   249,   250,
8050      251,  1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,
8051      258,   259,   260,  1159,     0,  1160,     0,   262,   263,   264,
8052      265,   787,   266,   267,   268,     0,   269,   270,   271,   272,
8053      273,   274,     0,   788,   275,   276,  3879,  1161,  1162,  1163,
8054     1164,  1165,  1166,  1167,   278,   279,   280,   281,   282,   283,
8055     1168,  1169,   286,     0,   287,     0,   288,   289,   290,   291,
8056      292,   293,     0,   294,   295,   296,     0,     0,   297,   298,
8057     1004,   300,   301,     0,   302,   303,   304,     0,   305,   306,
8058      307,     0,   308,   309,   310,   311,  1170,   313,   314,   315,
8059     1171,  1172,   317,     0,   318,   319,  1173,   321,     0,   322,
8060        0,   323,   790,     0,   791,   324,   325,   326,     0,   327,
8061     1174,     0,  1175,   330,     0,   331,   332,   333,   334,   335,
8062      792,   336,   337,   338,   339,     0,   340,   341,   342,   343,
8063      344,   345,     0,   346,   793,   347,   348,   349,   350,   351,
8064     1176,  1177,     0,  1178,     0,   355,   794,   795,   356,   796,
8065      357,   358,   359,   360,   361,     0,     0,   362,  1179,   797,
8066      364,   798,     0,   365,   366,   367,  1180,  1181,   368,   369,
8067      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
8068      380,   381,   382,   383,  1182,   799,  1183,   386,   387,   388,
8069     1184,   389,   390,   800,   391,  1185,  1186,   393,  1187,   395,
8070      396,   397,     0,   398,     0,     0,  1188,   400,   401,     0,
8071        0,   402,   403,   801,   404,   802,  1189,   406,   407,   408,
8072      409,   410,   411,   412,   413,     0,     0,   414,   415,  1190,
8073      417,   418,   419,   420,   421,     0,   422,   423,   424,   425,
8074      426,   427,   428,   429,  1191,   431,   432,   433,   434,     0,
8075      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
8076      445,     0,   446,   447,   803,   448,   449,   450,  1192,   452,
8077      453,   454,   455,   456,   457,   458,   459,     0,   460,   461,
8078      462,   463,   464,  1193,   465,   466,   467,   468,   469,   804,
8079      470,   471,  1194,   473,     0,   474,   475,   476,   477,   478,
8080      479,   480,   481,   482,   483,   484,  1195,     0,   486,   487,
8081        0,   488,   805,   489,   490,   491,   492,   493,     0,  1196,
8082     1197,     0,     0,   496,   497,  1198,   499,  1199,  1200,   501,
8083      502,   503,   504,   505,   506,   507,     0,  1201,   508,   509,
8084      510,   511,   512,  1202,     0,   513,   514,   515,   516,   517,
8085      518,  1203,     0,   520,   806,   521,   522,   523,   524,     0,
8086        0,   525,     0,     0,   526,   527,   528,   529,   530,   531,
8087      532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,
8088      542,   543,  1212,     0,     0,     0,     0,     0,     0,  1213,
8089     1214,     0,     0,     0,     0,     0,     0,     0,  1216,   783,
8090     1146,   601,  1147,  1148,  1149,   655,  1150,     0,     0,     0,
8091        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
8092      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
8093     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
8094      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
8095      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
8096        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
8097      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
8098      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
8099     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
8100      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
8101      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
8102      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
8103      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
8104      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
8105        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
8106        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
8107      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
8108      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
8109      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
8110      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
8111     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
8112      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
8113      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
8114      387,   388,  1184,   389,   390,   800,   391,  1185,  1186,   393,
8115     1187,   395,   396,   397,     0,   398,     0,     0,  1188,   400,
8116      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
8117      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
8118      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
8119      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
8120      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
8121      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
8122     1192,   452,   453,   454,   455,   456,   457,   458,   459,     0,
8123      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
8124      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
8125      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
8126      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
8127        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
8128     1200,   501,   502,   503,   504,   505,   506,   507,     0,  1201,
8129      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
8130      516,   517,   518,  1203,     0,   520,   806,   521,   522,   523,
8131      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
8132      530,   531,  4170,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
8133     1211,   541,   542,   543,  1212,     0,     0,     0,     0,     0,
8134        0,  1213,  1214,     0,     0,     0,     0,     0,     0,     0,
8135     1216,   783,  1146,   601,  1147,  1148,  1149,   655,  1150,     0,
8136        0,     0,     0,     0,     0,     0,   224,   225,   226,   227,
8137      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
8138        0,     0,  1151,     0,     0,   236,   237,     0,   238,   239,
8139      784,   240,   241,   242,   243,  1152,   785,  1153,  1154,     0,
8140      247,   248,   249,   250,   251,  1155,  1156,   252,   253,  1157,
8141     1158,   256,     0,   257,   258,   259,   260,  1159,     0,  1160,
8142        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
8143      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
8144      277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,
8145      280,   281,   282,   283,  1168,  1169,   286,     0,   287,     0,
8146      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
8147        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
8148      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
8149     1170,   313,   314,   315,  1171,  1172,   317,     0,   318,   319,
8150     1173,   321,     0,   322,     0,   323,   790,     0,   791,   324,
8151      325,   326,     0,   327,  1174,     0,  1175,   330,     0,   331,
8152      332,   333,   334,   335,   792,   336,   337,   338,   339,     0,
8153      340,   341,   342,   343,   344,   345,     0,   346,   793,   347,
8154      348,   349,   350,   351,  1176,  1177,     0,  1178,     0,   355,
8155      794,   795,   356,   796,   357,   358,   359,   360,   361,     0,
8156        0,   362,  1179,   797,   364,   798,     0,   365,   366,   367,
8157     1180,  1181,   368,   369,   370,   371,   372,   373,   374,   375,
8158      376,   377,   378,   379,   380,   381,   382,   383,  1182,   799,
8159     1183,   386,  4179,   388,  1184,   389,   390,   800,   391,  1185,
8160     1186,   393,  1187,   395,   396,   397,     0,   398,     0,     0,
8161     1188,   400,   401,     0,     0,   402,   403,   801,   404,   802,
8162     1189,   406,   407,   408,   409,   410,   411,   412,   413,     0,
8163        0,   414,   415,  1190,   417,   418,   419,   420,   421,     0,
8164      422,   423,   424,   425,   426,   427,   428,   429,  1191,   431,
8165      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
8166      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
8167      449,   450,  1192,   452,   453,   454,   455,   456,   457,   458,
8168      459,     0,   460,   461,   462,   463,   464,  1193,   465,   466,
8169      467,   468,   469,   804,   470,   471,  1194,   473,     0,   474,
8170      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
8171     1195,     0,   486,   487,     0,   488,   805,   489,   490,   491,
8172      492,   493,     0,  1196,  1197,     0,     0,   496,   497,  1198,
8173      499,  1199,  1200,   501,   502,   503,   504,   505,   506,   507,
8174        0,  1201,   508,   509,   510,   511,   512,  1202,     0,   513,
8175      514,   515,   516,   517,   518,  1203,     0,   520,   806,   521,
8176      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
8177      528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,
8178     1209,  1210,  1211,   541,   542,   543,  1212,     0,     0,     0,
8179        0,     0,     0,  1213,  1214,     0,     0,     0,     0,     0,
8180        0,     0,  1216,   783,  1146,   601,  1147,  1148,  1149,   655,
8181     1150,     0,     0,     0,     0,     0,     0,     0,   224,   225,
8182      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
8183        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
8184      238,   239,   784,   240,   241,   242,   243,  1152,   785,  1153,
8185     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
8186      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
8187        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
8188      268,     0,   269,   270,   271,   272,   273,   274,     0,   788,
8189      275,  4468,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
8190      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
8191      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
8192      295,   296,     0,     0,   297,   298,  1004,   300,   301,     0,
8193      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
8194      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
8195      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
8196      791,   324,   325,   326,     0,   327,  1174,     0,  4469,   330,
8197        0,   331,   332,   333,   334,   335,   792,   336,   337,   338,
8198      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
8199      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
8200        0,   355,   794,   795,   356,   796,   357,   358,   359,   360,
8201      361,     0,     0,   362,  1179,   797,   364,   798,     0,   365,
8202      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
8203      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
8204     1182,   799,  1183,   386,   387,   388,  1184,   389,   390,   800,
8205      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
8206        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
8207      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
8208      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
8209      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
8210     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
8211      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
8212      803,   448,   449,  4470,  1192,   452,   453,   454,   455,   456,
8213      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
8214      465,   466,   467,   468,   469,   804,   470,   471,  1194,   473,
8215        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
8216      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
8217      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
8218      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
8219      506,   507,     0,  1201,   508,   509,   510,   511,   512,  1202,
8220        0,   513,   514,   515,   516,   517,   518,  1203,     0,   520,
8221      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
8222      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
8223     1207,  1208,  1209,  1210,  1211,   541,   542,   543,  1212,     0,
8224        0,     0,     0,     0,     0,  1213,  1214,     0,     0,     0,
8225        0,     0,     0,     0,  4471,   783,  1146,   601,  1147,  1148,
8226     1149,   655,  1150,     0,     0,     0,     0,     0,     0,     0,
8227      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
8228      234,   235,     0,     0,     0,     0,  1151,     0,     0,   236,
8229      237,     0,   238,   239,   784,   240,   241,   242,  4857,  1152,
8230      785,  1153,  1154,     0,   247,   248,   249,   250,   251,  1155,
8231     1156,   252,   253,  1157,  1158,   256,     0,   257,   258,   259,
8232      260,  1159,     0,  1160,     0,   262,   263,   264,   265,   787,
8233      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
8234        0,   788,   275,   276,  4858,  1161,  1162,  1163,  1164,  1165,
8235     1166,  1167,   278,   279,   280,   281,   282,   283,  1168,  1169,
8236      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
8237        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
8238      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
8239      308,   309,   310,   311,  1170,   313,   314,   315,  1171,  1172,
8240      317,     0,   318,   319,  1173,   321,     0,   322,     0,   323,
8241      790,     0,   791,   324,   325,   326,     0,   327,  1174,     0,
8242     1175,   330,     0,   331,   332,   333,   334,   335,   792,   336,
8243      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
8244        0,   346,   793,   347,   348,   349,   350,   351,  1176,  1177,
8245        0,  1178,     0,   355,   794,   795,   356,   796,   357,   358,
8246      359,   360,   361,     0,     0,   362,  1179,   797,   364,   798,
8247        0,   365,   366,   367,  1180,  1181,   368,   369,   370,   371,
8248      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
8249      382,   383,  1182,   799,  1183,   386,   387,   388,  1184,   389,
8250      390,   800,   391,  1185,  1186,   393,  1187,   395,   396,   397,
8251        0,   398,     0,     0,  1188,   400,   401,     0,     0,   402,
8252      403,   801,   404,   802,  1189,   406,   407,   408,   409,   410,
8253      411,   412,   413,     0,     0,   414,   415,  1190,   417,   418,
8254      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
8255      428,   429,  1191,   431,   432,   433,   434,     0,   435,   436,
8256      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
8257      446,   447,   803,   448,   449,   450,  1192,   452,   453,   454,
8258      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
8259      464,  1193,   465,   466,   467,   468,   469,   804,   470,   471,
8260     1194,   473,     0,   474,   475,   476,   477,   478,   479,   480,
8261      481,   482,   483,   484,  1195,     0,   486,   487,     0,   488,
8262      805,   489,   490,   491,   492,   493,     0,  1196,  1197,     0,
8263        0,   496,   497,  1198,   499,  1199,  1200,   501,   502,   503,
8264      504,  4859,   506,   507,     0,  1201,   508,   509,   510,   511,
8265      512,  1202,     0,   513,   514,   515,   516,   517,   518,  1203,
8266        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
8267        0,     0,   526,   527,   528,   529,   530,   531,   532,  1204,
8268     1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,   543,
8269     1212,     0,     0,     0,     0,     0,     0,  1213,  1214,     0,
8270        0,     0,     0,     0,     0,     0,  1216,   783,  1146,   601,
8271     1147,  1148,  1149,   655,  1150,     0,     0,     0,     0,     0,
8272        0,     0,   224,   225,   226,   227,   228,   229,   230,   231,
8273        0,   233,   234,   235,     0,     0,     0,     0,  1151,     0,
8274        0,   236,   237,     0,   238,   239,   784,   240,   241,   242,
8275      243,  1152,   785,  1153,  1154,     0,   247,   248,   249,   250,
8276      251,  1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,
8277      258,   259,   260,  1159,     0,  1160,     0,   262,   263,   264,
8278      265,   787,   266,   267,   268,     0,   269,   270,   271,   272,
8279      273,   274,     0,   788,   275,   276,  4858,  1161,  1162,  1163,
8280     1164,  1165,  1166,  1167,   278,   279,   280,   281,   282,   283,
8281     1168,  1169,   286,     0,   287,     0,   288,   289,   290,   291,
8282      292,   293,     0,   294,   295,   296,     0,     0,   297,   298,
8283     1004,   300,   301,     0,   302,   303,   304,     0,   305,   306,
8284      307,     0,   308,   309,   310,   311,  1170,   313,   314,   315,
8285     1171,  1172,   317,     0,   318,   319,  1173,   321,     0,   322,
8286        0,   323,   790,     0,   791,   324,   325,   326,     0,   327,
8287     1174,     0,  1175,   330,     0,   331,   332,   333,   334,   335,
8288      792,   336,   337,   338,   339,     0,   340,   341,   342,   343,
8289      344,   345,     0,   346,   793,   347,   348,   349,   350,   351,
8290     1176,  1177,     0,  1178,     0,   355,   794,   795,   356,   796,
8291      357,   358,   359,   360,   361,     0,     0,   362,  1179,   797,
8292      364,   798,     0,   365,   366,   367,  1180,  1181,   368,   369,
8293      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
8294      380,   381,   382,   383,  1182,   799,  1183,   386,   387,   388,
8295     1184,   389,   390,   800,   391,  1185,  1186,   393,  1187,   395,
8296      396,   397,     0,   398,     0,     0,  1188,   400,   401,     0,
8297        0,   402,   403,   801,   404,   802,  1189,   406,   407,   408,
8298      409,   410,   411,   412,   413,     0,     0,   414,   415,  1190,
8299      417,   418,   419,   420,   421,     0,   422,   423,   424,   425,
8300      426,   427,   428,   429,  1191,   431,   432,   433,   434,     0,
8301      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
8302      445,     0,   446,   447,   803,   448,   449,   450,  1192,   452,
8303      453,   454,   455,   456,   457,   458,   459,     0,   460,   461,
8304      462,   463,   464,  1193,   465,   466,   467,   468,   469,   804,
8305      470,   471,  1194,   473,     0,   474,   475,   476,   477,   478,
8306      479,   480,   481,   482,   483,   484,  1195,     0,   486,   487,
8307        0,   488,   805,   489,   490,   491,   492,   493,     0,  1196,
8308     1197,     0,     0,   496,   497,  1198,   499,  1199,  1200,   501,
8309      502,   503,   504,  4859,   506,   507,     0,  1201,   508,   509,
8310      510,   511,   512,  1202,     0,   513,   514,   515,   516,   517,
8311      518,  1203,     0,   520,   806,   521,   522,   523,   524,     0,
8312        0,   525,     0,     0,   526,   527,   528,   529,   530,   531,
8313      532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,
8314      542,   543,  1212,     0,     0,     0,     0,     0,     0,  1213,
8315     1214,     0,     0,     0,     0,     0,     0,     0,  1216,   783,
8316     1146,   601,  1147,  1148,  1149,   655,  1150,     0,     0,     0,
8317        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
8318      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
8319     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
8320      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
8321      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
8322        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
8323      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
8324      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
8325     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
8326      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
8327      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
8328      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
8329      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
8330      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
8331        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
8332        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
8333      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
8334      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
8335      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
8336      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
8337     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
8338      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
8339      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
8340      387,   388,     0,   389,   390,   800,   391,  1185,  1186,   393,
8341     1187,   395,   396,   397,     0,   398,     0,     0,  1188,   400,
8342      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
8343      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
8344      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
8345      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
8346      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
8347      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
8348     2546,   452,   453,   454,   455,   456,   457,   458,   459,     0,
8349      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
8350      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
8351      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
8352      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
8353        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
8354     1200,   501,   502,   503,   504,   505,   506,   507,     0,     0,
8355      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
8356      516,   517,   518,  1203,     0,   520,   806,   521,   522,   523,
8357      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
8358      530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
8359     1211,   541,   542,   543,     0,     0,     0,     0,     0,     0,
8360        0,  2547,  2548,     0,     0,     0,     0,     0,     0,     0,
8361     2549,   783,  1146,   601,  1147,  1148,  1149,   655,  1150,     0,
8362        0,     0,     0,     0,     0,     0,   224,   225,   226,   227,
8363      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
8364        0,     0,  1151,     0,     0,   236,   237,     0,   238,   239,
8365      784,   240,   241,   242, -2420,  1152,   785,  1153,  1154,     0,
8366      247,   248,   249,   250,   251,  1155,  1156,   252,   253,  1157,
8367     1158,   256,     0,   257,   258,   259,   260,  1159,     0,  1160,
8368        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
8369      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
8370     4858,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,
8371      280,   281,   282,   283,  1168,  1169,   286,     0,   287,     0,
8372      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
8373        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
8374      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
8375     1170,   313,   314,   315,  1171,  1172,   317,     0,   318,   319,
8376     1173,   321,     0,   322,     0,   323,   790,     0,   791,   324,
8377      325,   326,     0,   327,  1174,     0,  1175,   330,     0,   331,
8378      332,   333,   334,   335, -2420,   336,   337,   338,   339,     0,
8379      340,   341,   342,   343,   344,   345,     0,   346,   793,   347,
8380      348,   349,   350,   351,  1176,  1177,     0,  1178,     0,   355,
8381        0,     0,   356,   796,   357,   358,   359,   360,   361,     0,
8382        0,   362,  1179,   797,   364, -2420,     0,   365,   366,   367,
8383     1180,  1181,   368,   369,   370,   371,   372,   373,   374,   375,
8384      376,   377,   378,   379,   380,   381,   382,   383,  1182,   799,
8385     1183,   386,   387,   388,  1184,   389,   390,     0,   391,  1185,
8386     1186,   393,  1187,   395,   396,   397,     0,   398,     0,     0,
8387     1188,   400,   401,     0,     0,   402,   403,   801,   404,   802,
8388     1189,   406,   407,   408,   409,   410,   411,   412,   413,     0,
8389        0,   414,   415,  1190,   417,   418,   419,   420,   421,     0,
8390      422,   423,   424,   425,   426,   427,   428,   429,  1191,   431,
8391      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
8392      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
8393      449,   450,  1192,   452,   453,   454,   455,   456,   457,   458,
8394      459,     0,   460,   461,   462,   463,   464,  1193,   465,   466,
8395      467,   468,   469, -2420,   470,   471,  1194,   473,     0,   474,
8396      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
8397     1195,     0,   486,   487,     0,   488,   805,   489,   490,   491,
8398      492,   493,     0,  1196,  1197,     0,     0,   496,   497,  1198,
8399      499,  1199,  1200,   501,   502,   503,   504,  4859,   506,   507,
8400        0,  1201,   508,   509,   510,   511,   512,  1202,     0,   513,
8401      514,   515,   516,   517,   518,  1203,     0,   520,   806,   521,
8402      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
8403      528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,
8404     1209,  1210,  1211,   541,   542,   543, -2420,     0,     0,     0,
8405        0,     0,     0,  1213,  1214,     0,     0,     0,     0,     0,
8406        0,     0,  1216,   783,  1146,   601,  1147,  1148,  1149,   655,
8407     1150,     0,     0,     0,     0,     0,     0,     0,   224,   225,
8408      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
8409        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
8410      238,   239,   784,   240,   241,   242,   243,  1152,   785,  1153,
8411     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
8412      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
8413        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
8414      268,     0,   269,   270,   271,   272,   273,   274,     0,   788,
8415      275,   276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
8416      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
8417      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
8418      295,   296,     0,     0,   297,   298,  1004,   300,   301,     0,
8419      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
8420      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
8421      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
8422      791,   324,   325,   326,     0,   327,  1174,     0,  1175,   330,
8423        0,   331,   332,   333,   334,   335,   792,   336,   337,   338,
8424      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
8425      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
8426        0,   355,     0,   795,   356,   796,   357,   358,   359,   360,
8427      361,     0,     0,   362,  1179,   797,   364,   798,     0,   365,
8428      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
8429      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
8430     1182,   799,  1183,   386,   387,   388,     0,   389,   390,   800,
8431      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
8432        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
8433      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
8434      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
8435      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
8436     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
8437      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
8438      803,   448,   449,   450,  2546,   452,   453,   454,   455,   456,
8439      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
8440      465,   466,   467,   468,   469,   804,   470,   471,  1194,   473,
8441        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
8442      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
8443      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
8444      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
8445      506,   507,     0,     0,   508,   509,   510,   511,   512,  1202,
8446        0,   513,   514,   515,   516,   517,   518,  1203,     0,   520,
8447      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
8448      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
8449     1207,  1208,  1209,  1210,  1211,   541,   542,   543,     0,     0,
8450        0,     0,     0,     0,     0,  2547,  2548,     0,     0,   783,
8451     1146,   601,  1147,  1148,  2549,   655,  1150,     0,     0,     0,
8452        0,     0,     0,     0,   224,   225,   226,   227,   228,   229,
8453      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
8454     1151,     0,     0,   236,   237,     0,   238,   239,   784,   240,
8455      241,   242,   243,  1152,   785,  1153,  1154,     0,   247,   248,
8456      249,   250,   251,  1155,  1156,   252,   253,  1157,  1158,   256,
8457        0,   257,   258,   259,   260,  1159,     0,  1160,     0,   262,
8458      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
8459      271,   272,   273,   274,     0,   788,   275,   276,   277,  1161,
8460     1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,
8461      282,   283,  1168,  1169,   286,     0,   287,     0,   288,   289,
8462      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
8463      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
8464      305,   306,   307,     0,   308,   309,   310,   311,  1170,   313,
8465      314,   315,  1171,  1172,   317,     0,   318,   319,  1173,   321,
8466        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
8467        0,   327,  1174,     0,  1175,   330,     0,   331,   332,   333,
8468      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
8469      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
8470      350,   351,  1176,  1177,     0,  1178,     0,   355,   794,   795,
8471      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
8472     1179,   797,   364,   798,     0,   365,   366,   367,  1180,  1181,
8473      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
8474      378,   379,   380,   381,   382,   383,  1182,   799,  1183,   386,
8475      387,   388,     0,   389,   390,   800,   391,  1185,  1186,   393,
8476     1187,   395,   396,   397,     0,   398,     0,     0,   399,   400,
8477      401,     0,     0,   402,   403,   801,   404,   802,  1189,   406,
8478      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
8479      415,  1190,   417,   418,   419,   420,   421,     0,   422,   423,
8480      424,   425,   426,   427,   428,   429,  1191,   431,   432,   433,
8481      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
8482      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
8483     2546,   452,   453,   454,   455,   456,   457,   458,   459,     0,
8484      460,   461,   462,   463,   464,  1193,   465,   466,   467,   468,
8485      469,   804,   470,   471,  1194,   473,     0,   474,   475,   476,
8486      477,   478,   479,   480,   481,   482,   483,   484,  1195,     0,
8487      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
8488        0,  1196,  1197,     0,     0,   496,   497,  1198,   499,  1199,
8489     1200,   501,   502,   503,   504,   505,   506,   507,     0,     0,
8490      508,   509,   510,   511,   512,  1202,     0,   513,   514,   515,
8491      516,   517,   518,  1203,     0,   520,   806,   521,   522,   523,
8492      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
8493      530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,
8494     1211,   541,   542,   543,     0,     0,   783,  1146,   601,  1147,
8495     1148,     0,   655,  1150,     0,     0,     0,     0,     0,     0,
8496     2549,   224,   225,   226,   227,   228,   229,   230,   231,     0,
8497      233,   234,   235,     0,     0,     0,     0,  1151,     0,     0,
8498      236,   237,     0,   238,   239,   784,   240,   241,   242,   243,
8499     1152,   785,  1153,  1154,     0,  3781,   248,   249,   250,   251,
8500     1155,  1156,   252,   253,  1157,  1158,   256,     0,   257,   258,
8501      259,   260,  1159,     0,  1160,     0,   262,   263,   264,   265,
8502      787,   266,   267,   268,     0,   269,   270,   271,   272,   273,
8503      274,     0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,
8504     1165,  1166,  1167,   278,   279,   280,   281,   282,   283,  1168,
8505     1169,   286,     0,   287,     0,   288,   289,   290,   291,   292,
8506      293,     0,   294,   295,   296,     0,     0,   297,   298,  1004,
8507      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
8508        0,   308,   309,   310,   311,  1170,   313,   314,   315,  1171,
8509     1172,   317,     0,   318,   319,  1173,   321,     0,   322,     0,
8510      323,   790,     0,   791,   324,   325,   326,     0,   327,  1174,
8511        0,  1175,   330,     0,   331,   332,   333,   334,   335,   792,
8512      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
8513      345,     0,   346,   793,   347,   348,   349,   350,   351,  1176,
8514     1177,     0,  1178,     0,   355,   794,   795,   356,   796,   357,
8515      358,   359,   360,   361,     0,     0,   362,  1179,   797,   364,
8516      798,     0,   365,   366,   367,  1180,  1181,   368,   369,   370,
8517      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8518      381,   382,   383,  1182,   799,  1183,   386,   387,   388,     0,
8519      389,   390,   800,   391,  1185,  1186,   393,  1187,   395,   396,
8520      397,     0,   398,     0,     0,   399,   400,   401,     0,     0,
8521      402,   403,   801,   404,   802,  1189,   406,   407,   408,   409,
8522      410,   411,   412,   413,     0,     0,   414,   415,  1190,   417,
8523      418,   419,   420,   421,     0,   422,   423,   424,   425,   426,
8524      427,   428,   429,  1191,   431,   432,   433,   434,     0,   435,
8525      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
8526        0,   446,   447,   803,   448,   449,   450,  2546,   452,   453,
8527      454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
8528      463,   464,  1193,   465,   466,   467,   468,   469,   804,   470,
8529      471,  1194,   473,     0,   474,   475,   476,   477,   478,   479,
8530      480,   481,   482,   483,   484,  1195,     0,   486,   487,     0,
8531      488,   805,   489,   490,   491,   492,   493,     0,  1196,  1197,
8532        0,     0,   496,   497,  1198,   499,  1199,  1200,   501,   502,
8533      503,   504,   505,   506,   507,     0,     0,   508,   509,   510,
8534      511,   512,  1202,     0,   513,   514,   515,   516,   517,   518,
8535     1203,     0,   520,   806,   521,   522,   523,   524,     0,     0,
8536      525,     0,     0,   526,   527,   528,   529,   530,   531,   532,
8537     1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,
8538      543,     0,     0,   783,  1146,   601,  1147,  1148,  1149,   655,
8539     1150,     0,     0,     0,     0,     0,     0,  2549,   224,   225,
8540      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
8541        0,     0,     0,     0,  1151,     0,     0,   236,   237,     0,
8542      238,   239,   784,   240,   241,   242,     0,  1152,   785,  1153,
8543     1154,     0,   247,   248,   249,   250,   251,  1155,  1156,   252,
8544      253,  1157,  1158,   256,     0,   257,   258,   259,   260,  1159,
8545        0,  1160,     0,   262,   263,   264,   265,   787,   266,   267,
8546      268,     0,   269,   270,   271,   272,   273,   274,     0,   788,
8547      275,   276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,
8548      278,   279,   280,   281,   282,   283,  1168,  1169,   286,     0,
8549      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
8550      295,   296,     0,     0,   297,   298,  1004,   300,   301,     0,
8551      302,   303,   304,     0,   305,     0,   307,     0,   308,   309,
8552      310,   311,  1170,   313,   314,   315,  1171,  1172,   317,     0,
8553      318,   319,  1173,   321,     0,   322,     0,   323,   790,     0,
8554      791,   324,   325,   326,     0,   327,  1174,     0,  1175,   330,
8555        0,   331,   332,   333,   334,   335,     0,   336,   337,   338,
8556      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
8557      793,   347,   348,   349,   350,   351,  1176,  1177,     0,  1178,
8558        0,   355,     0,     0,   356,   796,   357,   358,   359,   360,
8559      361,     0,     0,   362,  1179,   797,   364,     0,     0,   365,
8560      366,   367,  1180,  1181,   368,   369,   370,   371,   372,   373,
8561      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
8562     1182,   799,  1183,   386,   387,   388,  1184,   389,   390,     0,
8563      391,  1185,  1186,   393,  1187,   395,   396,   397,     0,   398,
8564        0,     0,  1188,   400,   401,     0,     0,   402,   403,   801,
8565      404,   802,  1189,   406,   407,   408,   409,   410,   411,   412,
8566      413,     0,     0,   414,   415,  1190,   417,   418,   419,   420,
8567      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
8568     1191,   431,   432,   433,   434,     0,   435,   436,   437,   438,
8569      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
8570      803,   448,   449,   450,  1192,   452,   453,   454,   455,   456,
8571      457,   458,   459,     0,   460,   461,   462,   463,   464,  1193,
8572      465,   466,   467,   468,   469,     0,   470,   471,  1194,   473,
8573        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
8574      483,   484,  1195,     0,   486,   487,     0,   488,   805,   489,
8575      490,   491,   492,   493,     0,  1196,  1197,     0,     0,   496,
8576      497,  1198,   499,  1199,  1200,   501,   502,   503,   504,   505,
8577      506,   507,     0,  1201,   508,   509,   510,   511,   512,  1202,
8578        0,   513,   514,   515,   516,   517,   518,  1203,     0,   520,
8579      806,   521,   522,   523,   524,     0,     0,   525,     0,     0,
8580      526,   527,   528,   529,   530,   531,   532,  1204,  1205,  1206,
8581     1207,  1208,  1209,  1210,  1211,   541,   542,   543,     0,     0,
8582      783,     0,     0,     0,     0,  1213,  1214,     0,     0,     0,
8583        0,     0,     0,     0,  1216,   224,   225,   226,   227,   228,
8584      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
8585        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
8586      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
8587      248,   249,   250,   251,     0,  1156,   252,   253,   254,   255,
8588      256,     0,   257,   258,   259,   260,  1159,     0,  1160,     0,
8589      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
8590      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
8591     1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,
8592      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
8593      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
8594        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
8595        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
8596      313,   314,   315,  1171,     0,   317,     0,   318,   319,   320,
8597      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
8598      326,     0,   327,  1174,     0,   329,   330,     0,   331,   332,
8599      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
8600      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
8601      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
8602      795,   356,   796,   357,   358,   359,   360,   361,  3303,     0,
8603      362,  1179,   797,   364,   798,     0,   365,   366,   367,  1180,
8604     1181,   368,   369,   370,   371,   372,   373,   374,   375,   376,
8605      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
8606      386,   387,   388,     0,   389,   390,   800,   391,     0,  1186,
8607      393,   394,   395,   396,   397,     0,   398,     0,   747,   399,
8608      400,   401,     0,     0,   402,   403,   801,   404,   802,  1189,
8609      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
8610      414,   415,  1190,   417,   418,   419,   420,   421,     0,   422,
8611      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
8612      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
8613      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
8614      450,   451,  3304,   453,   454,   455,   456,   457,   458,   459,
8615       40,   460,   461,   462,   463,   464,  1193,   465,   466,   467,
8616      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
8617      476,   477,   478,   479,   480,   481,   482,   483,   484,  1195,
8618        0,   486,   487,    44,   488,   805,   489,   490,   491,   492,
8619      493,     0,   494,   495,     0,     0,   496,   497,  1198,   499,
8620     1199,     0,   501,   502,   503,   504,   505,   506,   507,     0,
8621        0,   508,   509,   510,   511,   512,  1202,     0,   513,   514,
8622      515,   516,   517,  1077,   519,     0,   520,   806,   521,   522,
8623      523,   524,     0,     0,   525,     0,    49,   526,   527,   528,
8624      529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,
8625     1210,  1211,   541,   542,   543,     0,     0,    50,   783,     0,
8626        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8627        0,  3305,     0,   224,   225,   226,   227,   228,   229,   230,
8628      231,     0,   233,   234,   235,     0,     0,     0,     0,     0,
8629        0,     0,   236,   237,     0,   238,   239,   784,   240,   241,
8630      242,   243,   244,   785,   245,   246,     0,   247,   248,   249,
8631      250,   251,     0,  1156,   252,   253,   254,   255,   256,     0,
8632      257,   258,   259,   260,  1159,     0,  1160,     0,   262,   263,
8633      264,   265,   787,   266,   267,   268,     0,   269,   270,   271,
8634      272,   273,   274,     0,   788,   275,   276,   277,  1161,  1162,
8635     1163,  1164,  1165,  1166,  1167,   278,   279,   280,   281,   282,
8636      283,   284,   285,   286,     0,   287,     0,   288,   289,   290,
8637      291,   292,   293,     0,   294,   295,   296,     0,     0,   297,
8638      298,   299,   300,   301,     0,   302,   303,   304,     0,   305,
8639      306,   307,     0,   308,   309,   310,   311,   312,   313,   314,
8640      315,  1171,     0,   317,     0,   318,   319,   320,   321,     0,
8641      322,     0,   323,   790,     0,   791,   324,   325,   326,     0,
8642      327,  1174,     0,   329,   330,     0,   331,   332,   333,   334,
8643      335,   792,   336,   337,   338,   339,     0,   340,   341,   342,
8644      343,   344,   345,     0,   346,   793,   347,   348,   349,   350,
8645      351,   352,   353,     0,   354,     0,   355,   794,   795,   356,
8646      796,   357,   358,   359,   360,   361,  3303,     0,   362,  1179,
8647      797,   364,   798,     0,   365,   366,   367,  1180,  1181,   368,
8648      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
8649      379,   380,   381,   382,   383,   384,   799,   385,   386,   387,
8650      388,     0,   389,   390,   800,   391,     0,  1186,   393,   394,
8651      395,   396,   397,     0,   398,     0,   747,   399,   400,   401,
8652        0,     0,   402,   403,   801,   404,   802,  1189,   406,   407,
8653      408,   409,   410,   411,   412,   413,     0,     0,   414,   415,
8654     1190,   417,   418,   419,   420,   421,     0,   422,   423,   424,
8655      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
8656        0,   435,   436,   437,   438,   439,   440,   441,   442,   443,
8657      444,   445,     0,   446,   447,   803,   448,   449,   450,   451,
8658     3304,   453,   454,   455,   456,   457,   458,   459,     0,   460,
8659      461,   462,   463,   464,  1193,   465,   466,   467,   468,   469,
8660      804,   470,   471,   472,   473,     0,   474,   475,   476,   477,
8661      478,   479,   480,   481,   482,   483,   484,  1195,     0,   486,
8662      487,     0,   488,   805,   489,   490,   491,   492,   493,     0,
8663      494,   495,     0,     0,   496,   497,  1198,   499,  1199,     0,
8664      501,   502,   503,   504,   505,   506,   507,     0,     0,   508,
8665      509,   510,   511,   512,  1202,     0,   513,   514,   515,   516,
8666      517,   518,   519,     0,   520,   806,   521,   522,   523,   524,
8667        0,     0,   525,     0,     0,   526,   527,   528,   529,   530,
8668      531,   532,  1204,  1205,  1206,  1207,  1208,  1209,  1210,  1211,
8669      541,   542,   543,     0,     0,   783,     0,     0,     0,     0,
8670        0,     0,     0,     0,     0,     0,     0,     0,     0,  3305,
8671      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
8672      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
8673      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
8674      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
8675     1156,   252,   253,   254,   255,   256,     0,   257,   258,   259,
8676      260,  1159,     0,  1160,     0,   262,   263,   264,   265,   787,
8677      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
8678        0,   788,   275,   276,   277,  1161,  1162,  1163,  1164,  1165,
8679     1166,  1167,   278,   279,   280,   281,   282,   283,   284,   285,
8680      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
8681        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
8682      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
8683      308,   309,   310,   311,   312,   313,   314,   315,  1171,     0,
8684      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
8685      790,     0,   791,   324,   325,   326,     0,   327,  1174,     0,
8686      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
8687      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
8688        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
8689        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
8690      359,   360,   361,     0,     0,   362,  1179,   797,   364,   798,
8691        0,   365,   366,   367,  1180,  1181,   368,   369,   370,   371,
8692      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
8693      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
8694      390,   800,   391,     0,  1186,   393,   394,   395,   396,   397,
8695        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
8696      403,   801,   404,   802,  1189,   406,   407,   408,   409,   410,
8697      411,   412,   413,     0,     0,   414,   415,  1190,   417,   418,
8698      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
8699      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
8700      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
8701      446,   447,   803,   448,   449,   450,   451,  3304,   453,   454,
8702      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
8703      464,  1193,   465,   466,   467,   468,   469,   804,   470,   471,
8704      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
8705      481,   482,   483,   484,  1195,     0,   486,   487,     0,   488,
8706      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
8707        0,   496,   497,  1198,   499,  1199,     0,   501,   502,   503,
8708      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
8709      512,  1202,     0,   513,   514,   515,   516,   517,   518,   519,
8710        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
8711        0,     0,   526,   527,   528,   529,   530,   531,   532,  1204,
8712     1205,  1206,  1207,  1208,  1209,  1210,  1211,   541,   542,   543,
8713        0,     0,   783,     0,     0,     0,     0,     0,     0,     0,
8714        0,     0,     0,     0,     0,     0,    51,   224,   225,   226,
8715      227,   228,   229,   230,   231,     0,   233,   234,   235,     0,
8716        0,     0,     0,     0,     0,     0,   236,   237,     0,   238,
8717      239,   784,   240,   241,   242,   243,   244,   785,   245,   246,
8718        0,   247,   248,   249,   250,   251,     0,  1156,   252,   253,
8719      254,   255,   256,     0,   257,   258,   259,   260,  1159,     0,
8720     1160,     0,   262,   263,   264,   265,   787,   266,   267,   268,
8721        0,   269,   270,   271,   272,   273,   274,     0,   788,   275,
8722      276,   277,  1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,
8723      279,   280,   281,   282,   283,   284,   285,   286,     0,   287,
8724        0,   288,   289,   290,   291,   292,   293,     0,   294,   295,
8725      296,     0,     0,   297,   298,   299,   300,   301,     0,   302,
8726      303,   304,     0,   305,   306,   307,     0,   308,   309,   310,
8727      311,   312,   313,   314,   315,  1171,     0,   317,     0,   318,
8728      319,   320,   321,     0,   322,     0,   323,   790,     0,   791,
8729      324,   325,   326,     0,   327,  1174,     0,   329,   330,     0,
8730      331,   332,   333,   334,   335,   792,   336,   337,   338,   339,
8731        0,   340,   341,   342,   343,   344,   345,     0,   346,   793,
8732      347,   348,   349,   350,   351,   352,   353,     0,   354,     0,
8733      355,   794,   795,   356,   796,   357,   358,   359,   360,   361,
8734        0,     0,   362,  1179,   797,   364,   798,     0,   365,   366,
8735      367,  1180,  1181,   368,   369,   370,   371,   372,   373,   374,
8736      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
8737      799,   385,   386,   387,   388,     0,   389,   390,   800,   391,
8738        0,  1186,   393,   394,   395,   396,   397,     0,   398,     0,
8739        0,   399,   400,   401,     0,     0,   402,   403,   801,   404,
8740      802,  1189,   406,   407,   408,   409,   410,   411,   412,   413,
8741        0,     0,   414,   415,  1190,   417,   418,   419,   420,   421,
8742        0,   422,   423,   424,   425,   426,   427,   428,   429,   430,
8743      431,   432,   433,   434,     0,   435,   436,   437,   438,   439,
8744      440,   441,   442,   443,   444,   445,     0,   446,   447,   803,
8745      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
8746      458,   459,     0,   460,   461,   462,   463,   464,  1193,   465,
8747      466,   467,   468,   469,   804,   470,   471,   472,   473,     0,
8748      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
8749      484,  1195,     0,   486,   487,     0,   488,   805,   489,   490,
8750      491,   492,   493,     0,   494,   495,     0,     0,   496,   497,
8751     1198,   499,  1199,     0,   501,   502,   503,   504,   505,   506,
8752      507,     0,     0,   508,   509,   510,   511,   512,  1202,     0,
8753      513,   514,   515,   516,   517,   518,   519,     0,   520,   806,
8754      521,   522,   523,   524,     0,     0,   525,     0,     0,   526,
8755      527,   528,   529,   530,   531,   532,  1204,  1205,  1206,  1207,
8756     1208,  1209,  1210,  1211,   541,   542,   543,     0,     0,   827,
8757     1421,   601,     0,     0,     0,   655,     0,     0,     0,     0,
8758        0,     0,     0,  3905,   224,   225,   226,   227,   228,   229,
8759      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
8760        0,     0,     0,   236,   237,     0,   238,   239,   784,   240,
8761      241,   242,   243,   244,   785,   245,   246,     0,   247,   248,
8762      249,   250,   251,     0,     0,   252,   253,   254,   255,   256,
8763        0,   257,   258,   259,   260,   261,     0,   786,     0,   262,
8764      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
8765      271,   272,   273,   274,     0,   788,   275,   276,   277,     0,
8766        0,     0,   789,     0,     0,     0,   278,   279,   280,   281,
8767      282,   283,   284,   285,   286,     0,   287,     0,   288,   289,
8768      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
8769      297,   298,   299,   300,   301,     0,   302,   303,   304,     0,
8770      305,   306,   307,     0,   308,   309,   310,   311,   312,   313,
8771      314,   315,   316,  1690,   317,     0,   318,   319,   320,   321,
8772        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
8773        0,   327,   328,     0,   329,   330,     0,   331,   332,   333,
8774      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
8775      342,   343,   344,   345,     0,   346,   793,   347,   348,   349,
8776      350,   351,   352,   353,     0,   354,     0,   355,   794,   795,
8777      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
8778      363,   797,   364,   798,     0,   365,   366,   367,     0,     0,
8779      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
8780      378,   379,   380,   381,   382,   383,   384,   799,   385,   386,
8781      387,   388,     0,   389,   390,   800,   391,     0,   392,   393,
8782      394,   395,   396,   397,     0,   398,  1691,     0,   399,   400,
8783      401,     0,     0,   402,   403,   801,   404,   802,   405,   406,
8784      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
8785      415,   416,   417,   418,   419,   420,   421,     0,   422,   423,
8786      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
8787      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
8788      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
8789      451,   452,   453,   454,   455,   456,   457,   458,   459,     0,
8790      460,   461,   462,   463,   464,     0,   465,   466,   467,   468,
8791      469,   804,   470,   471,   472,   473,     0,   474,   475,   476,
8792      477,   478,   479,   480,   481,   482,   483,   484,   485,     0,
8793      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
8794        0,   494,   495,     0,     0,   496,   497,   498,   499,   500,
8795     1692,   501,   502,   503,   504,   505,   506,   507,     0,     0,
8796      508,   509,   510,   511,   512,     0,     0,   513,   514,   515,
8797      516,   517,   518,   519,     0,   520,   806,   521,   522,   523,
8798      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
8799      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
8800      540,   541,   542,   543,     0,     0,   827,     0,     0,     0,
8801        0,   667,  1422,  4702,     0,     0,     0,     0,     0,     0,
8802     4703,   224,   225,   226,   227,   228,   229,   230,   231,     0,
8803      233,   234,   235,     3,     4,     0,     0,     0,     0,     0,
8804      236,   237,     0,   238,   239,   784,   240,   241,   242,   243,
8805      244,   785,   245,   246,     0,   247,   248,   249,   250,   251,
8806        0,     0,   252,   253,   254,   255,   256,     0,   257,   258,
8807      259,   260,   261,     0,   786,     0,   262,   263,   264,   265,
8808      787,   266,   267,   268,     0,   269,   270,   271,   272,   273,
8809      274,     0,   788,   275,   276,   277,     0,     0,     0,   789,
8810        0,     0,     0,   278,   279,   280,   281,   282,   283,   284,
8811      285,   286,     0,   287,     0,   288,   289,   290,   291,   292,
8812      293,     0,   294,   295,   296,     0,     0,   297,   298,   299,
8813      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
8814        0,   308,   309,   310,   311,   312,   313,   314,   315,   316,
8815        0,   317,     0,   318,   319,   320,   321,     0,   322,     0,
8816      323,   790,     0,   791,   324,   325,   326,     0,   327,   328,
8817        0,   329,   330,     0,   331,   332,   333,   334,   335,   792,
8818      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
8819      345,     0,   346,   793,   347,   348,   349,   350,   351,   352,
8820      353,     0,   354,     0,   355,   794,   795,   356,   796,   357,
8821      358,   359,   360,   361,     0,     0,   362,   363,   797,   364,
8822      798,     0,   365,   366,   367,     0,     0,   368,   369,   370,
8823      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8824      381,   382,   383,   384,   799,   385,   386,   387,   388,     0,
8825      389,   390,   800,   391,     0,   392,   393,   394,   395,   396,
8826      397,     0,   398,     0,     0,   399,   400,   401,     0,     0,
8827      402,   403,   801,   404,   802,   405,   406,   407,   408,   409,
8828      410,   411,   412,   413,     0,     0,   414,   415,   416,   417,
8829      418,   419,   420,   421,     0,   422,   423,   424,   425,   426,
8830      427,   428,   429,   430,   431,   432,   433,   434,     0,   435,
8831      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
8832        0,   446,   447,   803,   448,   449,   450,   451,   452,   453,
8833      454,   455,   456,   457,   458,   459,    40,   460,   461,   462,
8834      463,   464,     0,   465,   466,   467,   468,   469,   804,   470,
8835      471,   472,   473,     0,   474,   475,   476,   477,   478,   479,
8836      480,   481,   482,   483,   484,   485,     0,   486,   487,    44,
8837      488,   805,   489,   490,   491,   492,   493,     0,   494,   495,
8838        0,     0,   496,   497,   498,   499,   500,     0,   501,   502,
8839      503,   504,   505,   506,   507,     0,     0,   508,   509,   510,
8840      511,   512,     0,     0,   513,   514,   515,   516,   517,  1077,
8841      519,     0,   520,   806,   521,   522,   523,   524,     0,     0,
8842      525,     0,    49,   526,   527,   528,   529,   530,   531,   532,
8843      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
8844      543,     0,     0,    50,   783,     0,     0,     0,     0,     0,
8845        0,     0,     0,     0,     0,     0,     0,    51,     0,   224,
8846      225,   226,   227,   228,   229,   230,   231,     0,   233,   234,
8847      235,     0,     0,     0,     0,     0,     0,     0,   236,   237,
8848        0,   238,   239,   784,   240,   241,   242,   243,   244,   785,
8849      245,   246,     0,   247,   248,   249,   250,   251,     0,     0,
8850      252,   253,   254,   255,   256,     0,   257,   258,   259,   260,
8851      261,     0,   786,     0,   262,   263,   264,   265,   787,   266,
8852      267,   268,     0,   269,   270,   271,   272,   273,   274,     0,
8853      788,   275,   276,   277,     0,     0,     0,   789,     0,     0,
8854        0,   278,   279,   280,   281,   282,   283,   284,   285,   286,
8855        0,   287,     0,   288,   289,   290,   291,   292,   293,     0,
8856      294,   295,   296,     0,     0,   297,   298,   299,   300,   301,
8857        0,   302,   303,   304,     0,   305,   306,   307,     0,   308,
8858      309,   310,   311,   312,   313,   314,   315,   316,     0,   317,
8859        0,   318,   319,   320,   321,     0,   322,     0,   323,   790,
8860        0,   791,   324,   325,   326,     0,   327,   328,     0,   329,
8861      330,     0,   331,   332,   333,   334,   335,   792,   336,   337,
8862      338,   339,     0,   340,   341,   342,   343,   344,   345,     0,
8863      346,   793,   347,   348,   349,   350,   351,   352,   353,     0,
8864      354,     0,   355,   794,   795,   356,   796,   357,   358,   359,
8865      360,   361,     0,     0,   362,   363,   797,   364,   798,     0,
8866      365,   366,   367,     0,     0,   368,   369,   370,   371,   372,
8867      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
8868      383,   384,   799,   385,   386,   387,   388,     0,   389,   390,
8869      800,   391,     0,   392,   393,   394,   395,   396,   397,     0,
8870      398,     0,     0,   399,   400,   401,     0,     0,   402,   403,
8871      801,   404,   802,   405,   406,   407,   408,   409,   410,   411,
8872      412,   413,     0,     0,   414,   415,   416,   417,   418,   419,
8873      420,   421,     0,   422,   423,   424,   425,   426,   427,   428,
8874      429,   430,   431,   432,   433,   434,     0,   435,   436,   437,
8875      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
8876      447,   803,   448,   449,   450,   451,   452,   453,   454,   455,
8877      456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
8878        0,   465,   466,   467,   468,   469,   804,   470,   471,   472,
8879      473,     0,   474,   475,   476,   477,   478,   479,   480,   481,
8880      482,   483,   484,   485,     0,   486,   487,     0,   488,   805,
8881      489,   490,   491,   492,   493,     0,   494,   495,     0,     0,
8882      496,   497,   498,   499,   500,     0,   501,   502,   503,   504,
8883      505,   506,   507,     0,     0,   508,   509,   510,   511,   512,
8884        0,     0,   513,   514,   515,   516,   517,   518,   519,     0,
8885      520,   806,   521,   522,   523,   524,     0,     0,   525,     0,
8886        0,   526,   527,   528,   529,   530,   531,   532,   533,   534,
8887      535,   536,   537,   538,   539,   540,   541,   542,   543,     0,
8888        0,   223,     0,     0,     0,     0,     0,     0,     0,     0,
8889        0,     0,     0,     0,     0,  4519,   224,   225,   226,   227,
8890      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
8891        0,     0,     0,     0,     0,   236,   237,     0,   238,   239,
8892        0,   240,   241,   242,   243,   244,     0,   245,   246,     0,
8893      247,   248,   249,   250,   251,     0,     0,   252,   253,   254,
8894      255,   256,     0,   257,   258,   259,   260,   261,     0,     0,
8895        0,   262,   263,   264,   265,     0,   266,   267,   268,     0,
8896      269,   270,   271,   272,   273,   274,     0,     0,   275,   276,
8897      277,     0,     0,     0,     0,     0,     0,     0,   278,   279,
8898      280,   281,   282,   283,   284,   285,   286,     0,   287,     0,
8899      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
8900        0,     0,   297,   298,   299,   300,   301,     0,   302,   303,
8901      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
8902      312,   313,   314,   315,   316,     0,   317,     0,   318,   319,
8903      320,   321,     0,   322,     0,   323,     0,     0,     0,   324,
8904      325,   326,     0,   327,   328,     0,   329,   330,     0,   331,
8905      332,   333,   334,   335,     0,   336,   337,   338,   339,     0,
8906      340,   341,   342,   343,   344,   345,     0,   346,     0,   347,
8907      348,   349,   350,   351,   352,   353,     0,   354,     0,   355,
8908        0,     0,   356,     0,   357,   358,   359,   360,   361,     0,
8909        0,   362,   363,     0,   364,     0,     0,   365,   366,   367,
8910        0,     0,   368,   369,   370,   371,   372,   373,   374,   375,
8911      376,   377,   378,   379,   380,   381,   382,   383,   384,     0,
8912      385,   386,   387,   388,     0,   389,   390,     0,   391,     0,
8913      392,   393,   394,   395,   396,   397,     0,   398,     0,     0,
8914      399,   400,   401,     0,     0,   402,   403,     0,   404,     0,
8915      405,   406,   407,   408,   409,   410,   411,   412,   413,     0,
8916        0,   414,   415,   416,   417,   418,   419,   420,   421,     0,
8917      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
8918      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
8919      441,   442,   443,   444,   445,     0,   446,   447,     0,   448,
8920      449,   450,   451,   452,   453,   454,   455,   456,   457,   458,
8921      459,    40,   460,   461,   462,   463,   464,     0,   465,   466,
8922      467,   468,   469,     0,   470,   471,   472,   473,     0,   474,
8923      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
8924      485,     0,   486,   487,    44,   488,     0,   489,   490,   491,
8925      492,   493,     0,   494,   495,     0,     0,   496,   497,   498,
8926      499,   500,     0,   501,   502,   503,   504,   505,   506,   507,
8927        0,     0,   508,   509,   510,   511,   512,     0,     0,   513,
8928      514,   515,   516,   517,  1077,   519,     0,   520,     0,   521,
8929      522,   523,   524,     0,     0,   525,     0,    49,   526,   527,
8930      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
8931      538,   539,   540,   541,   542,   543,     0,     0,    50,   223,
8932        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8933        0,     0,    51,     0,   224,   225,   226,   227,   228,   229,
8934      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
8935        0,     0,     0,   236,   237,     0,   238,   239,     0,   240,
8936      241,   242,   243,   244,     0,   245,   246,     0,   247,   248,
8937      249,   250,   251,     0,     0,   252,   253,   254,   255,   256,
8938        0,   257,   258,   259,   260,   261,     0,     0,     0,   262,
8939      263,   264,   265,     0,   266,   267,   268,     0,   269,   270,
8940      271,   272,   273,   274,     0,     0,   275,   276,   277,     0,
8941        0,     0,     0,     0,     0,     0,   278,   279,   280,   281,
8942      282,   283,   284,   285,   286,     0,   287,     0,   288,   289,
8943      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
8944      297,   298,   299,   300,   301,     0,   302,   303,   304,     0,
8945      305,   306,   307,     0,   308,   309,   310,   311,   312,   313,
8946      314,   315,   316,     0,   317,     0,   318,   319,   320,   321,
8947        0,   322,     0,   323,     0,     0,     0,   324,   325,   326,
8948        0,   327,   328,     0,   329,   330,     0,   331,   332,   333,
8949      334,   335,     0,   336,   337,   338,   339,     0,   340,   341,
8950      342,   343,   344,   345,     0,   346,     0,   347,   348,   349,
8951      350,   351,   352,   353,     0,   354,     0,   355,     0,     0,
8952      356,     0,   357,   358,   359,   360,   361,     0,     0,   362,
8953      363,     0,   364,     0,     0,   365,   366,   367,     0,     0,
8954      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
8955      378,   379,   380,   381,   382,   383,   384,     0,   385,   386,
8956      387,   388,     0,   389,   390,     0,   391,     0,   392,   393,
8957      394,   395,   396,   397,     0,   398,     0,     0,   399,   400,
8958      401,     0,     0,   402,   403,     0,   404,     0,   405,   406,
8959      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
8960      415,   416,   417,   418,   419,   420,   421,     0,   422,   423,
8961      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
8962      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
8963      443,   444,   445,     0,   446,   447,     0,   448,   449,   450,
8964      451,   452,   453,   454,   455,   456,   457,   458,   459,     0,
8965      460,   461,   462,   463,   464,     0,   465,   466,   467,   468,
8966      469,     0,   470,   471,   472,   473,     0,   474,   475,   476,
8967      477,   478,   479,   480,   481,   482,   483,   484,   485,     0,
8968      486,   487,     0,   488,     0,   489,   490,   491,   492,   493,
8969        0,   494,   495,     0,     0,   496,   497,   498,   499,   500,
8970        0,   501,   502,   503,   504,   505,   506,   507,     0,     0,
8971      508,   509,   510,   511,   512,     0,     0,   513,   514,   515,
8972      516,   517,   518,   519,     0,   520,     0,   521,   522,   523,
8973      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
8974      530,   531,   532,   533,   534,   535,   536,   537,   538,   539,
8975      540,   541,   542,   543,     0,     0,   223,     0,     0,     0,
8976        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
8977     1274,   224,   225,   226,   227,   228,   229,   230,   231,     0,
8978      233,   234,   235,     0,     0,     0,     0,     0,     0,     0,
8979      236,   237,     0,   238,   239,     0,   240,   241,   242,   243,
8980      244,     0,   245,   246,     0,   247,   248,   249,   250,   251,
8981        0,     0,   252,   253,   254,   255,   256,     0,   257,   258,
8982      259,   260,   261,     0,     0,     0,   262,   263,   264,   265,
8983        0,   266,   267,   268,     0,   269,   270,   271,   272,   273,
8984      274,     0,     0,   275,   276,   277,     0,     0,     0,     0,
8985        0,     0,     0,   278,   279,   280,   281,   282,   283,   284,
8986      285,   286,     0,   287,     0,   288,   289,   290,   291,   292,
8987      293,     0,   294,   295,   296,     0,     0,   297,   298,   299,
8988      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
8989        0,   308,   309,   310,   311,   312,   313,   314,   315,   316,
8990        0,   317,     0,   318,   319,   320,   321,     0,   322,     0,
8991      323,     0,     0,     0,   324,   325,   326,     0,   327,   328,
8992        0,   329,   330,     0,   331,   332,   333,   334,   335,     0,
8993      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
8994      345,     0,   346,     0,   347,   348,   349,   350,   351,   352,
8995      353,     0,   354,     0,   355,     0,     0,   356,     0,   357,
8996      358,   359,   360,   361,     0,     0,   362,   363,     0,   364,
8997        0,     0,   365,   366,   367,     0,     0,   368,   369,   370,
8998      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
8999      381,   382,   383,   384,     0,   385,   386,   387,   388,     0,
9000      389,   390,     0,   391,     0,   392,   393,   394,   395,   396,
9001      397,     0,   398,     0,     0,   399,   400,   401,     0,     0,
9002      402,   403,     0,   404,     0,   405,   406,   407,   408,   409,
9003      410,   411,   412,   413,     0,     0,   414,   415,   416,   417,
9004      418,   419,   420,   421,     0,   422,   423,   424,   425,   426,
9005      427,   428,   429,   430,   431,   432,   433,   434,     0,   435,
9006      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
9007        0,   446,   447,     0,   448,   449,   450,   451,   452,   453,
9008      454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
9009      463,   464,     0,   465,   466,   467,   468,   469,     0,   470,
9010      471,   472,   473,     0,   474,   475,   476,   477,   478,   479,
9011      480,   481,   482,   483,   484,   485,     0,   486,   487,     0,
9012      488,     0,   489,   490,   491,   492,   493,     0,   494,   495,
9013        0,     0,   496,   497,   498,   499,   500,     0,   501,   502,
9014      503,   504,   505,   506,   507,     0,     0,   508,   509,   510,
9015      511,   512,     0,     0,   513,   514,   515,   516,   517,   518,
9016      519,     0,   520,     0,   521,   522,   523,   524,     0,     0,
9017      525,     0,     0,   526,   527,   528,   529,   530,   531,   532,
9018      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
9019      543,     0,     0,   223,     0,     0,     0,     0,     0,     0,
9020        0,     0,     0,     0,     0,     0,     0,  2703,   224,   225,
9021      226,   227,   228,   229,   230,   231,     0,   233,   234,   235,
9022        0,     0,     0,     0,     0,     0,     0,   236,   237,     0,
9023      238,   239,     0,   240,   241,   242,   243,   244,     0,   245,
9024      246,     0,   247,   248,   249,   250,   251,     0,     0,   252,
9025      253,   254,   255,   256,     0,   257,   258,   259,   260,   261,
9026        0,     0,     0,   262,   263,   264,   265,     0,   266,   267,
9027      268,     0,   269,   270,   271,   272,   273,   274,     0,     0,
9028      275,   276,   277,     0,     0,     0,     0,     0,     0,     0,
9029      278,   279,   280,   281,   282,   283,   284,   285,   286,     0,
9030      287,     0,   288,   289,   290,   291,   292,   293,     0,   294,
9031      295,   296,     0,     0,   297,   298,   299,   300,   301,     0,
9032      302,   303,   304,     0,   305,   306,   307,     0,   308,   309,
9033      310,   311,   312,   313,   314,   315,   316,     0,   317,     0,
9034      318,   319,   320,   321,     0,   322,     0,   323,     0,     0,
9035        0,   324,   325,   326,     0,   327,   328,     0,   329,   330,
9036        0,   331,   332,   333,   334,   335,     0,   336,   337,   338,
9037      339,     0,   340,   341,   342,   343,   344,   345,     0,   346,
9038        0,   347,   348,   349,   350,   351,   352,   353,     0,   354,
9039        0,   355,     0,     0,   356,     0,   357,   358,   359,   360,
9040      361,     0,     0,   362,   363,     0,   364,     0,     0,   365,
9041      366,   367,     0,     0,   368,   369,   370,   371,   372,   373,
9042      374,   375,   376,   377,   378,   379,   380,   381,   382,   383,
9043      384,     0,   385,   386,   387,   388,     0,   389,   390,     0,
9044      391,     0,   392,   393,   394,   395,   396,   397,     0,   398,
9045        0,     0,   399,   400,   401,     0,     0,   402,   403,     0,
9046      404,     0,   405,   406,   407,   408,   409,   410,   411,   412,
9047      413,     0,     0,   414,   415,   416,   417,   418,   419,   420,
9048      421,     0,   422,   423,   424,   425,   426,   427,   428,   429,
9049      430,   431,   432,   433,   434,     0,   435,   436,   437,   438,
9050      439,   440,   441,   442,   443,   444,   445,     0,   446,   447,
9051        0,   448,   449,   450,   451,   452,   453,   454,   455,   456,
9052      457,   458,   459,     0,   460,   461,   462,   463,   464,     0,
9053      465,   466,   467,   468,   469,     0,   470,   471,   472,   473,
9054        0,   474,   475,   476,   477,   478,   479,   480,   481,   482,
9055      483,   484,   485,     0,   486,   487,     0,   488,     0,   489,
9056      490,   491,   492,   493,     0,   494,   495,     0,     0,   496,
9057      497,   498,   499,   500,     0,   501,   502,   503,   504,   505,
9058      506,   507,     0,     0,   508,   509,   510,   511,   512,     0,
9059        0,   513,   514,   515,   516,   517,   518,   519,     0,   520,
9060        0,   521,   522,   523,   524,     0,     0,   525,     0,     0,
9061      526,   527,   528,   529,   530,   531,   532,   533,   534,   535,
9062      536,   537,   538,   539,   540,   541,   542,   543,     0,     0,
9063      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9064        0,     0,     0,     0,  3816,   224,   225,   226,   227,   228,
9065      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9066        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
9067      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
9068      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9069      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
9070      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
9071      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
9072        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
9073      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9074      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9075        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9076        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9077      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
9078      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
9079      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9080      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
9081      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
9082      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
9083        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
9084      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
9085        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9086      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
9087      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
9088      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
9089      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
9090      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9091      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9092      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9093      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9094      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
9095      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9096        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9097      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
9098      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9099        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
9100      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9101      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
9102        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9103      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
9104      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9105      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9106      539,   540,   541,   542,   543,     0,     0,     0,     0,     0,
9107      996,  1421,   601,     0,     0,   841,   655,     0,     0,     0,
9108        0,  4224,   842,   843,   844,   224,   225,   226,   227,   228,
9109      229,   230,   231,  1878,   233,   234,   235,  1879,  1880,  1881,
9110     1882,  1883,  1884,  1885,   236,   237,  1886,   238,   239,   784,
9111      240,   241,   242,     0,   997,   785,   998,   999,  1887,   247,
9112      248,   249,   250,   251,  1888,  1889,   252,   253,  1000,  1001,
9113      256,  1890,   257,   258,   259,   260,     0,  1891,   786,  1892,
9114      262,   263,   264,   265,   787,   266,   267,   268,  1893,   269,
9115      270,   271,   272,   273,   274,  1894,   788,   275,   276,   277,
9116     1895,  1896,  1897,   789,  1898,  1899,  1900,   278,   279,   280,
9117      281,   282,   283,  1002,  1003,   286,  1901,   287,  1902,   288,
9118      289,   290,   291,   292,   293,  1903,   294,   295,   296,  1904,
9119     1905,   297,   298,  1004,   300,   301,  1906,   302,   303,   304,
9120     1907,   305,   306,   307,  1908,   308,   309,   310,   311,     0,
9121      313,   314,   315,     0,  1909,   317,  1910,   318,   319,  1005,
9122      321,  1911,   322,  1912,   323,   790,  1913,   791,   324,   325,
9123      326,  1914,   327,     0,  1915,     0,   330,  1916,   331,   332,
9124      333,   334,   335,   792,   336,   337,   338,   339,  1917,   340,
9125      341,   342,   343,   344,   345,  1918,   346,   793,     0,   348,
9126      349,   350,   351,  1007,  1008,  1919,  1009,  1920,   355,   794,
9127      795,   356,   796,   357,   358,   359,   360,   361,  1921,  1922,
9128      362,     0,   797,   364,   798,  1923,   365,   366,   367,  1924,
9129     1925,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9130      377,   378,   379,   380,   381,   382,   383,  1010,   799,  1011,
9131      386,   387,  4313,  1926,   389,   390,   800,   391,  1927,     0,
9132      393,  1012,   395,   396,   397,  1928,   398,  1929,  1930,  3567,
9133      400,   401,  1931,  1932,   402,     0,   801,   404,   802,     0,
9134      406,   407,   408,   409,   410,   411,   412,   413,     0,  1933,
9135      414,   415,     0,   417,     0,   419,   420,   421,  1934,   422,
9136      423,   424,   425,   426,   427,   428,   429,  1013,   431,   432,
9137      433,   434,  1935,   435,   436,   437,   438,   439,   440,   441,
9138      442,   443,   444,   445,  1936,   446,   447,   803,   448,   449,
9139      450,     0,   452,   453,   454,   455,   456,   457,   458,   459,
9140     1937,   460,   461,   462,   463,   464,  1938,   465,   466,  2019,
9141      468,   469,   804,   470,   471,  1015,   473,  1939,   474,   475,
9142      476,   477,   478,   479,   480,   481,   482,   483,   484,     0,
9143     1940,   486,   487,  1941,   488,   805,   489,   490,   491,   492,
9144      493,  1942,  1016,  1017,  1943,  1944,   496,   497,     0,   499,
9145        0,  1945,   501,   502,   503,   504,   505,   506,   507,  1946,
9146     1947,   508,   509,   510,   511,   512,  1948,  1949,   513,   514,
9147      515,   516,   517,     0,  1018,  1950,   520,   806,   521,   522,
9148      523,   524,  1951,  1952,   525,  1953,  1954,   526,   527,   528,
9149      529,   530,   531,     0,     0,     0,     0,     0,     0,     0,
9150        0,     0,   541,   542,   543,     0,     0,     0,   847,   848,
9151      849,     0,  3568,  3569,   852,   853,   854,   855,   996,  1421,
9152      601,     0,     0,   841,   655,     0,     0,     0,     0,     0,
9153      842,   843,   844,   224,   225,   226,   227,   228,   229,   230,
9154      231,  1878,   233,   234,   235,  1879,  1880,  1881,  1882,  1883,
9155     1884,  1885,   236,   237,  1886,   238,   239,   784,   240,   241,
9156      242,     0,   997,   785,   998,   999,  1887,   247,   248,   249,
9157      250,   251,  1888,  1889,   252,   253,  1000,  1001,   256,  1890,
9158      257,   258,   259,   260,     0,  1891,   786,  1892,   262,   263,
9159      264,   265,   787,   266,   267,   268,  1893,   269,   270,   271,
9160      272,   273,   274,  1894,   788,   275,   276,   277,  1895,  1896,
9161     1897,   789,  1898,  1899,  1900,   278,   279,   280,   281,   282,
9162      283,  1002,  1003,   286,  1901,   287,  1902,   288,   289,   290,
9163      291,   292,   293,  1903,   294,   295,   296,  1904,  1905,   297,
9164      298,  1004,   300,   301,  1906,   302,   303,   304,  1907,   305,
9165      306,   307,  1908,   308,   309,   310,   311,     0,   313,   314,
9166      315,     0,  1909,   317,  1910,   318,   319,  1005,   321,  1911,
9167      322,  1912,   323,   790,  1913,   791,   324,   325,   326,  1914,
9168      327,     0,  1915,     0,   330,  1916,   331,   332,   333,   334,
9169      335,   792,   336,   337,   338,   339,  1917,   340,   341,   342,
9170      343,   344,   345,  1918,   346,   793,     0,   348,   349,   350,
9171      351,  1007,  1008,  1919,  1009,  1920,   355,   794,   795,   356,
9172      796,   357,   358,   359,   360,   361,  1921,  1922,   362,     0,
9173      797,   364,   798,  1923,   365,   366,   367,  1924,  1925,   368,
9174      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9175      379,   380,   381,   382,   383,  1010,   799,  1011,   386,   387,
9176        0,  1926,   389,   390,   800,   391,  1927,     0,   393,  1012,
9177      395,   396,   397,  1928,   398,  1929,  1930,  3567,   400,   401,
9178     1931,  1932,   402,     0,   801,   404,   802,     0,   406,   407,
9179      408,   409,   410,   411,   412,   413,     0,  1933,   414,   415,
9180        0,   417,     0,   419,   420,   421,  1934,   422,   423,   424,
9181      425,   426,   427,   428,   429,  1013,   431,   432,   433,   434,
9182     1935,   435,   436,   437,   438,   439,   440,   441,   442,   443,
9183      444,   445,  1936,   446,   447,   803,   448,   449,   450,     0,
9184      452,   453,   454,   455,   456,   457,   458,   459,  1937,   460,
9185      461,   462,   463,   464,  1938,   465,   466,  2019,   468,   469,
9186      804,   470,   471,  1015,   473,  1939,   474,   475,   476,   477,
9187      478,   479,   480,   481,   482,   483,   484,     0,  1940,   486,
9188      487,  1941,   488,   805,   489,   490,   491,   492,   493,  1942,
9189     1016,  1017,  1943,  1944,   496,   497,     0,   499,     0,  1945,
9190      501,   502,   503,   504,   505,   506,   507,  1946,  1947,   508,
9191      509,   510,   511,   512,  1948,  1949,   513,   514,   515,   516,
9192      517,     0,  1018,  1950,   520,   806,   521,   522,   523,   524,
9193     1951,  1952,   525,  1953,  1954,   526,   527,   528,   529,   530,
9194      531,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9195      541,   542,   543,     0,   223,     0,   847,   848,   849,   841,
9196     3568,  3569,   852,   853,   854,   855,   842,   843,   844,   224,
9197      225,   226,   227,   228,   229,   230,   231,     0,   233,   234,
9198      235,     0,     0,     0,     0,     0,     0,     0,   236,   237,
9199        0,   238,   239,     0,   240,   241,   242,   243,   244,     0,
9200      245,   246,     0,   247,   248,   249,   250,   251,     0,     0,
9201      252,   253,   254,   255,   256,     0,   257,   845,   259,   260,
9202      261,     0,     0,     0,   262,   263,   264,   265,     0,   266,
9203      267,   268,     0,   269,   270,   271,   272,   273,   274,     0,
9204        0,   275,   276,   277,     0,     0,     0,     0,     0,     0,
9205        0,   278,   279,   280,   281,   282,   283,   284,   285,   286,
9206        0,   287,     0,   288,   289,   290,   291,   292,   293,     0,
9207      294,   295,   296,     0,     0,   297,   298,   299,   300,   301,
9208        0,   302,   303,   304,     0,   305,   306,   307,     0,   308,
9209      309,   310,   311,   312,   313,   314,   315,   316,     0,   846,
9210        0,   318,   319,   320,   321,     0,   322,     0,   323,     0,
9211        0,     0,   324,   325,   326,     0,   327,   328,     0,   329,
9212      330,     0,   331,   332,   333,   334,   335,     0,   336,   337,
9213      338,   339,     0,   340,   341,   342,   343,   344,   345,     0,
9214      346,     0,   347,   348,   349,   350,   351,   352,   353,     0,
9215      354,     0,   355,     0,     0,   356,     0,   357,   358,   359,
9216      360,   361,     0,     0,   362,   363,     0,   364,     0,     0,
9217      365,   366,   367,     0,     0,   368,   369,   370,   371,   372,
9218      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
9219      383,   384,     0,   385,   386,   387,   388,     0,   389,   390,
9220        0,   391,     0,   392,   393,   394,   395,   396,   397,     0,
9221      398,     0,     0,   399,   400,   401,     0,     0,   402,   403,
9222        0,   404,     0,   405,   406,   407,   408,   409,   410,   411,
9223      412,   413,     0,     0,   414,   415,   416,   417,   418,   419,
9224      420,   421,     0,   422,   423,   424,   425,   426,   427,   428,
9225      429,   430,   431,   432,   433,   434,     0,   435,   436,   437,
9226      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
9227      447,     0,   448,   449,   450,   451,   452,   453,   454,   455,
9228      456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
9229        0,   465,   466,   467,   468,   469,     0,   470,   471,   472,
9230      473,     0,   474,   475,   476,   477,   478,   479,   480,   481,
9231      482,   483,   484,   485,     0,   486,   487,     0,   488,     0,
9232      489,   490,   491,   492,   493,     0,   494,   495,     0,     0,
9233      496,   497,   498,   499,   500,     0,   501,   502,   503,   504,
9234      505,   506,   507,     0,     0,   508,   509,   510,   511,   512,
9235        0,     0,   513,   514,   515,   516,   517,   518,   519,     0,
9236      520,     0,   521,   522,   523,   524,     0,     0,   525,     0,
9237        0,   526,   527,   528,   529,   530,   531,   532,   533,   534,
9238      535,   536,   537,   538,   539,   540,   541,   542,   543,     0,
9239      223,     0,   847,   848,   849,   841,   850,   851,   852,   853,
9240      854,   855,   842,   843,   844,   224,   225,   226,   227,   228,
9241      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9242        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
9243      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
9244      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9245      256,     0,   257,   953,   259,   260,   261,     0,     0,     0,
9246      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
9247      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
9248        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
9249      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9250      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9251        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9252        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9253      313,   314,   315,   316,     0,   954,     0,   318,   319,   320,
9254      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
9255      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9256      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
9257      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
9258      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
9259        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
9260      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
9261        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9262      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
9263      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
9264      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
9265      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
9266      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9267      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9268      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9269      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9270      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
9271      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9272        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9273      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
9274      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9275        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
9276      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9277      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
9278        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9279      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
9280      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9281      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9282      539,   540,   541,   542,   543,     0,   223,     0,   847,   848,
9283      849,   841,   850,   851,   852,   853,   854,   855,   842,   843,
9284      844,   224,   225,   226,   227,   228,   229,   230,   231,     0,
9285      233,   234,   235,     0,     0,     0,     0,     0,     0,     0,
9286      236,   237,     0,   238,   239,     0,   240,   241,   242,   243,
9287      244,     0,   245,   246,     0,   247,   248,   249,   250,   251,
9288        0,     0,   252,   253,   254,   255,   256,     0,   257,  1045,
9289      259,   260,   261,     0,     0,     0,   262,   263,   264,   265,
9290        0,   266,   267,   268,     0,   269,   270,   271,   272,   273,
9291      274,     0,     0,   275,   276,   277,     0,     0,     0,     0,
9292        0,     0,     0,   278,   279,   280,   281,   282,   283,   284,
9293      285,   286,     0,   287,     0,   288,   289,   290,   291,   292,
9294      293,     0,   294,   295,   296,     0,     0,   297,   298,   299,
9295      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
9296        0,   308,   309,   310,   311,   312,   313,   314,   315,   316,
9297        0,  1046,     0,   318,   319,   320,   321,     0,   322,     0,
9298      323,     0,     0,     0,   324,   325,   326,     0,   327,   328,
9299        0,   329,   330,     0,   331,   332,   333,   334,  1047,     0,
9300      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
9301      345,     0,   346,     0,   347,   348,   349,   350,   351,   352,
9302      353,     0,   354,     0,   355,     0,     0,   356,     0,   357,
9303      358,   359,   360,   361,     0,     0,   362,   363,     0,   364,
9304        0,     0,   365,   366,   367,     0,     0,   368,   369,   370,
9305      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
9306      381,   382,   383,   384,     0,   385,   386,   387,   388,     0,
9307      389,   390,     0,   391,     0,   392,   393,   394,   395,   396,
9308      397,     0,   398,     0,     0,   399,   400,   401,     0,     0,
9309      402,   403,     0,   404,     0,   405,   406,   407,   408,   409,
9310      410,   411,   412,   413,     0,     0,   414,   415,   416,   417,
9311      418,   419,   420,   421,     0,   422,   423,   424,   425,   426,
9312      427,   428,   429,   430,   431,   432,   433,   434,     0,   435,
9313      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
9314        0,   446,   447,     0,   448,   449,   450,   451,   452,   453,
9315      454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
9316      463,   464,     0,   465,   466,   467,   468,   469,     0,   470,
9317      471,   472,   473,     0,   474,   475,   476,   477,   478,   479,
9318      480,   481,   482,   483,   484,   485,     0,   486,   487,     0,
9319      488,     0,   489,   490,   491,   492,   493,     0,   494,   495,
9320        0,     0,   496,   497,   498,   499,   500,     0,   501,   502,
9321      503,   504,   505,   506,   507,     0,     0,   508,   509,   510,
9322      511,   512,     0,     0,   513,   514,   515,   516,   517,   518,
9323      519,     0,   520,     0,   521,   522,   523,   524,     0,     0,
9324      525,     0,     0,   526,   527,   528,   529,   530,   531,   532,
9325      533,   534,   535,   536,   537,   538,   539,   540,   541,   542,
9326      543,     0,   223,     0,   847,   848,   849,   841,   850,   851,
9327      852,   853,   854,   855,   842,   843,   844,   224,   225,   226,
9328      227,   228,   229,   230,   231,     0,   233,   234,   235,     0,
9329        0,     0,     0,     0,     0,     0,   236,   237,     0,   238,
9330      239,     0,   240,   241,   242,   243,   244,     0,   245,   246,
9331        0,   247,   248,   249,   250,   251,     0,     0,   252,   253,
9332      254,   255,   256,     0,   257,  1519,   259,   260,   261,     0,
9333        0,     0,   262,   263,   264,   265,     0,   266,   267,   268,
9334        0,   269,   270,   271,   272,   273,   274,     0,     0,   275,
9335      276,   277,     0,     0,     0,     0,     0,     0,     0,   278,
9336      279,   280,   281,   282,   283,   284,   285,   286,     0,   287,
9337        0,   288,   289,   290,   291,   292,   293,     0,   294,   295,
9338      296,     0,     0,   297,   298,   299,   300,   301,     0,   302,
9339      303,   304,     0,   305,   306,   307,     0,   308,   309,   310,
9340      311,   312,   313,   314,   315,   316,     0,  1520,     0,   318,
9341      319,   320,   321,     0,   322,     0,   323,     0,     0,     0,
9342      324,   325,   326,     0,   327,   328,     0,   329,   330,     0,
9343      331,   332,   333,   334,   335,     0,   336,   337,   338,   339,
9344        0,   340,   341,   342,   343,   344,   345,     0,   346,     0,
9345      347,   348,   349,   350,   351,   352,   353,     0,   354,     0,
9346      355,     0,     0,   356,     0,   357,   358,   359,   360,   361,
9347        0,     0,   362,   363,     0,   364,     0,     0,   365,   366,
9348      367,     0,     0,   368,   369,   370,   371,   372,   373,   374,
9349      375,   376,   377,   378,   379,   380,   381,   382,   383,   384,
9350        0,   385,   386,   387,   388,     0,   389,   390,     0,   391,
9351        0,   392,   393,   394,   395,   396,   397,     0,   398,     0,
9352        0,   399,   400,   401,     0,     0,   402,   403,     0,   404,
9353        0,   405,   406,   407,   408,   409,   410,   411,   412,   413,
9354        0,     0,   414,   415,   416,   417,   418,   419,   420,   421,
9355        0,   422,   423,   424,   425,   426,   427,   428,   429,   430,
9356      431,   432,   433,   434,     0,   435,   436,   437,   438,   439,
9357      440,   441,   442,   443,   444,   445,     0,   446,   447,     0,
9358      448,   449,   450,   451,   452,   453,   454,   455,   456,   457,
9359      458,   459,     0,   460,   461,   462,   463,   464,     0,   465,
9360      466,   467,   468,   469,     0,   470,   471,   472,   473,     0,
9361      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
9362      484,   485,     0,   486,   487,     0,   488,     0,   489,   490,
9363      491,   492,   493,     0,   494,   495,     0,     0,   496,   497,
9364      498,   499,   500,     0,   501,   502,   503,   504,   505,   506,
9365      507,     0,     0,   508,   509,   510,   511,   512,     0,     0,
9366      513,   514,   515,   516,   517,   518,   519,     0,   520,     0,
9367      521,   522,   523,   524,     0,     0,   525,     0,     0,   526,
9368      527,   528,   529,   530,   531,   532,   533,   534,   535,   536,
9369      537,   538,   539,   540,   541,   542,   543,     0,   223,     0,
9370      847,   848,   849,   841,   850,   851,   852,   853,   854,   855,
9371      842,   843,   844,   224,   225,   226,   227,   228,   229,   230,
9372      231,     0,   233,   234,   235,     0,     0,     0,     0,     0,
9373        0,     0,   236,   237,     0,   238,   239,     0,   240,   241,
9374      242,   243,   244,     0,   245,   246,     0,   247,   248,   249,
9375      250,   251,     0,     0,   252,   253,   254,   255,   256,     0,
9376      257,   258,   259,   260,   261,     0,     0,     0,   262,   263,
9377      264,   265,     0,   266,   267,   268,     0,   269,   270,   271,
9378      272,   273,   274,     0,     0,   275,   276,   277,     0,     0,
9379        0,     0,     0,     0,     0,   278,   279,   280,   281,   282,
9380      283,   284,   285,   286,     0,   287,     0,   288,   289,   290,
9381      291,   292,   293,     0,   294,   295,   296,     0,     0,   297,
9382      298,   299,   300,   301,     0,   302,   303,   304,     0,   305,
9383      306,   307,     0,   308,   309,   310,   311,   312,   313,   314,
9384      315,   316,     0,   317,     0,   318,   319,   320,   321,     0,
9385      322,     0,   323,     0,     0,     0,   324,   325,   326,     0,
9386      327,   328,     0,   329,   330,     0,   331,   332,   333,   334,
9387      335,     0,   336,   337,   338,   339,     0,   340,   341,   342,
9388      343,   344,   345,     0,   346,     0,   347,   348,   349,   350,
9389      351,   352,   353,     0,   354,     0,   355,     0,     0,   356,
9390        0,   357,   358,   359,   360,   361,     0,     0,   362,   363,
9391        0,   364,     0,     0,   365,   366,   367,     0,     0,   368,
9392      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
9393      379,   380,   381,   382,   383,   384,     0,   385,   386,   387,
9394      388,     0,   389,   390,     0,   391,     0,   392,   393,   394,
9395      395,   396,   397,     0,   398,     0,     0,   399,   400,   401,
9396        0,     0,   402,   403,     0,   404,     0,   405,   406,   407,
9397      408,   409,   410,   411,   412,   413,     0,     0,   414,   415,
9398      416,   417,   418,   419,   420,   421,     0,   422,   423,   424,
9399      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
9400        0,   435,   436,   437,   438,   439,   440,   441,   442,   443,
9401      444,   445,     0,   446,   447,     0,   448,   449,   450,   451,
9402      452,   453,   454,   455,   456,   457,   458,   459,     0,   460,
9403      461,   462,   463,   464,     0,   465,   466,   467,   468,   469,
9404        0,   470,   471,   472,   473,     0,   474,   475,   476,   477,
9405      478,   479,   480,   481,   482,   483,   484,   485,     0,   486,
9406      487,     0,   488,     0,   489,   490,   491,   492,   493,     0,
9407      494,   495,     0,     0,   496,   497,   498,   499,   500,     0,
9408      501,   502,   503,   504,   505,   506,   507,     0,     0,   508,
9409      509,   510,   511,   512,     0,     0,   513,   514,   515,   516,
9410      517,   518,   519,     0,   520,     0,   521,   522,   523,   524,
9411        0,     0,   525,     0,     0,   526,   527,   528,   529,   530,
9412      531,   532,   533,   534,   535,   536,   537,   538,   539,   540,
9413      541,   542,   543,     0,   223,     0,   847,   848,   849,   841,
9414      850,   851,   852,   853,   854,   855,   842,   843,   844,   224,
9415      225,   226,   227,   228,   229,   230,   231,     0,   233,   234,
9416      235,     0,     0,     0,     0,     0,     0,     0,   236,   237,
9417        0,   238,   239,     0,   240,   241,   242,   243,   244,     0,
9418      245,   246,     0,   247,   248,   249,   250,   251,     0,     0,
9419      252,   253,   254,   255,   256,     0,   257,  2781,   259,   260,
9420      261,     0,     0,     0,   262,   263,   264,   265,     0,   266,
9421      267,   268,     0,   269,   270,   271,   272,   273,   274,     0,
9422        0,   275,   276,   277,     0,     0,     0,     0,     0,     0,
9423        0,   278,   279,   280,   281,   282,   283,   284,   285,   286,
9424        0,   287,     0,   288,   289,   290,   291,   292,   293,     0,
9425      294,   295,   296,     0,     0,   297,   298,   299,   300,   301,
9426        0,   302,   303,   304,     0,   305,   306,   307,     0,   308,
9427      309,   310,   311,   312,   313,   314,   315,   316,     0,  2782,
9428        0,   318,   319,   320,   321,     0,   322,     0,   323,     0,
9429        0,     0,   324,   325,   326,     0,   327,   328,     0,   329,
9430      330,     0,   331,   332,   333,   334,   335,     0,   336,   337,
9431      338,   339,     0,   340,   341,   342,   343,   344,   345,     0,
9432      346,     0,   347,   348,   349,   350,   351,   352,   353,     0,
9433      354,     0,   355,     0,     0,   356,     0,   357,   358,   359,
9434      360,   361,     0,     0,   362,   363,     0,   364,     0,     0,
9435      365,   366,   367,     0,     0,   368,   369,   370,   371,   372,
9436      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
9437      383,   384,     0,   385,   386,   387,   388,     0,   389,   390,
9438        0,   391,     0,   392,   393,   394,   395,   396,   397,     0,
9439      398,     0,     0,   399,   400,   401,     0,     0,   402,   403,
9440        0,   404,     0,   405,   406,   407,   408,   409,   410,   411,
9441      412,   413,     0,     0,   414,   415,   416,   417,   418,   419,
9442      420,   421,     0,   422,   423,   424,   425,   426,   427,   428,
9443      429,   430,   431,   432,   433,   434,     0,   435,   436,   437,
9444      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
9445      447,     0,   448,   449,   450,   451,   452,   453,   454,   455,
9446      456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
9447        0,   465,   466,   467,   468,   469,     0,   470,   471,   472,
9448      473,     0,   474,   475,   476,   477,   478,   479,   480,   481,
9449      482,   483,   484,   485,     0,   486,   487,     0,   488,     0,
9450      489,   490,   491,   492,   493,     0,   494,   495,     0,     0,
9451      496,   497,   498,   499,   500,     0,   501,   502,   503,   504,
9452      505,   506,   507,     0,     0,   508,   509,   510,   511,   512,
9453        0,     0,   513,   514,   515,   516,   517,   518,   519,     0,
9454      520,     0,   521,   522,   523,   524,     0,     0,   525,     0,
9455        0,   526,   527,   528,   529,   530,   531,   532,   533,   534,
9456      535,   536,   537,   538,   539,   540,   541,   542,   543,     0,
9457      223,     0,   847,   848,   849,   841,   850,   851,   852,   853,
9458      854,   855,   842,   843,   844,   224,   225,   226,   227,   228,
9459      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9460        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
9461      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
9462      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9463      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
9464      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
9465      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
9466        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
9467      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9468      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9469        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9470        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9471      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
9472      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
9473      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9474      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
9475      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
9476      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
9477        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
9478      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
9479        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9480      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
9481      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
9482      393,   394,   395,   396,   397,     0,   398,     0,     0,  4499,
9483      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
9484      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9485      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9486      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9487      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9488      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
9489      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9490        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9491      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
9492      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9493        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
9494      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9495      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
9496        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9497      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
9498      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9499      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9500      539,   540,   541,   542,   543,  1877,     0,     0,   847,   848,
9501      849,     0,   850,   851,   852,   853,   854,   855,     0,     0,
9502      224,   225,   226,   227,   228,   229,   230,   231,  1878,   233,
9503      234,   235,  1879,  1880,  1881,  1882,  1883,  1884,  1885,   236,
9504      237,  1886,   238,   239,   784,   240,   241,   242,   243,   244,
9505      785,   245,   246,  1887,   247,   248,   249,   250,   251,  1888,
9506     1889,   252,   253,   254,   255,   256,  1890,   257,   258,   259,
9507      260,   261,  1891,   786,  1892,   262,   263,   264,   265,   787,
9508      266,   267,   268,  1893,   269,   270,   271,   272,   273,   274,
9509     1894,   788,   275,   276,   277,  1895,  1896,  1897,   789,  1898,
9510     1899,  1900,   278,   279,   280,   281,   282,   283,   284,   285,
9511      286,  1901,   287,  1902,   288,   289,   290,   291,   292,   293,
9512     1903,   294,   295,   296,  1904,  1905,   297,   298,   299,   300,
9513      301,  1906,   302,   303,   304,  1907,   305,   306,   307,  1908,
9514      308,   309,   310,   311,   312,   313,   314,   315,   316,  1909,
9515      317,  1910,   318,   319,   320,   321,  1911,   322,  1912,   323,
9516      790,  1913,   791,   324,   325,   326,  1914,   327,   328,  1915,
9517      329,   330,  1916,   331,   332,   333,   334,   335,   792,   336,
9518      337,   338,   339,  1917,   340,   341,   342,   343,   344,   345,
9519     1918,   346,   793,   347,   348,   349,   350,   351,   352,   353,
9520     1919,   354,  1920,   355,   794,   795,   356,   796,   357,   358,
9521      359,   360,   361,  1921,  1922,   362,   363,   797,   364,   798,
9522     1923,   365,   366,   367,  1924,  1925,   368,   369,   370,   371,
9523      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9524      382,   383,   384,   799,   385,   386,   387,   388,  1926,   389,
9525      390,   800,   391,  1927,   392,   393,   394,   395,   396,   397,
9526     1928,   398,  1929,  1930,   399,   400,   401,  1931,  1932,   402,
9527      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
9528      411,   412,   413,     0,  1933,   414,   415,   416,   417,   418,
9529      419,   420,   421,  1934,   422,   423,   424,   425,   426,   427,
9530      428,   429,   430,   431,   432,   433,   434,  1935,   435,   436,
9531      437,   438,   439,   440,   441,   442,   443,   444,   445,  1936,
9532      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
9533      455,   456,   457,   458,   459,  1937,   460,   461,   462,   463,
9534      464,  1938,   465,   466,   467,   468,   469,   804,   470,   471,
9535      472,   473,  1939,   474,   475,   476,   477,   478,   479,   480,
9536      481,   482,   483,   484,   485,  1940,   486,   487,  1941,   488,
9537      805,   489,   490,   491,   492,   493,  1942,   494,   495,  1943,
9538     1944,   496,   497,   498,   499,   500,  1945,   501,   502,   503,
9539      504,   505,   506,   507,  1946,  1947,   508,   509,   510,   511,
9540      512,  1948,  1949,   513,   514,   515,   516,   517,   518,   519,
9541     1950,   520,   806,   521,   522,   523,   524,  1951,  1952,   525,
9542     1953,  1954,   526,   527,   528,   529,   530,   531,   532,   533,
9543      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
9544      223,     0,     0,     0,     0,     0,     0,     0,     0,  1955,
9545        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
9546      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9547        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
9548      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
9549      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9550      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
9551      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
9552      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
9553        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
9554      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9555      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9556        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9557        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9558      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
9559      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
9560      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9561      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
9562      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
9563      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
9564        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
9565      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
9566        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9567      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
9568      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
9569      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
9570      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
9571      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9572      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9573      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9574      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9575      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
9576      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9577        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9578      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
9579      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9580        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
9581      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9582      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
9583        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9584      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
9585      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9586      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9587      539,   540,   541,   542,   543,   996,     0,     0,     0,     0,
9588        0,     0,     0,     0,   752,     0,     0,     0,     0,     0,
9589      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
9590      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
9591      237,     0,   238,   239,   784,   240,   241,   242,     0,   997,
9592      785,   998,   999,     0,   247,   248,   249,   250,   251,     0,
9593        0,   252,   253,  1000,  1001,   256,     0,   257,   258,   259,
9594      260,     0,     0,   786,     0,   262,   263,   264,   265,   787,
9595      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
9596        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
9597        0,     0,   278,   279,   280,   281,   282,   283,  1002,  1003,
9598      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
9599        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
9600      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
9601      308,   309,   310,   311,     0,   313,   314,   315,     0,     0,
9602      317,     0,   318,   319,  1005,   321,     0,   322,     0,   323,
9603      790,     0,   791,   324,   325,   326,     0,   327,     0,     0,
9604        0,   330,     0,   331,   332,   333,   334,   335,   792,   336,
9605      337,   338,   339,  2015,   340,   341,   342,   343,   344,   345,
9606        0,   346,   793,  2016,   348,   349,   350,   351,  1007,  1008,
9607        0,  1009,     0,   355,   794,   795,   356,   796,   357,   358,
9608      359,   360,   361,     0,     0,   362,     0,   797,   364,   798,
9609        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
9610      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9611      382,   383,  1010,   799,  1011,   386,   387,     0,     0,   389,
9612      390,   800,   391,     0,     0,   393,  1012,   395,   396,   397,
9613        0,   398,     0,     0,   399,   400,   401,     0,  2017,   402,
9614     2018,   801,   404,   802,     0,   406,   407,   408,   409,   410,
9615      411,   412,   413,     0,     0,   414,   415,     0,   417,     0,
9616      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
9617      428,   429,  1013,   431,   432,   433,   434,     0,   435,   436,
9618      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
9619      446,   447,   803,   448,   449,   450,     0,   452,   453,   454,
9620      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
9621      464,     0,   465,   466,  2019,   468,   469,   804,   470,   471,
9622     1015,   473,     0,   474,   475,   476,   477,   478,   479,   480,
9623      481,   482,   483,   484,     0,     0,   486,   487,     0,   488,
9624      805,   489,   490,   491,   492,   493,     0,  1016,  1017,     0,
9625        0,   496,   497,     0,   499,     0,     0,   501,   502,   503,
9626      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
9627      512,     0,     0,   513,   514,   515,   516,   517,     0,  1018,
9628     2020,   520,   806,   521,   522,   523,   524,     0,     0,   525,
9629        0,     0,   526,   527,   528,   529,   530,   531,     0,     0,
9630        0,     0,     0,     0,     0,  2288,     0,   541,   542,   543,
9631        0,     0,     0,     0,     0,     0,     0,     0,     0,  2021,
9632      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
9633      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
9634      237,     0,   238,   239,   784,   240,   241,   242,     0,   997,
9635      785,   998,   999,     0,   247,   248,   249,   250,   251,     0,
9636        0,   252,   253,  1000,  1001,   256,     0,   257,   258,   259,
9637      260,     0,     0,   786,     0,   262,   263,   264,   265,   787,
9638      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
9639        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
9640        0,     0,   278,   279,   280,   281,   282,   283,  1002,  1003,
9641      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
9642        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
9643      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
9644      308,   309,   310,   311,     0,   313,   314,   315,     0,     0,
9645      317,     0,   318,   319,  1005,   321,     0,   322,     0,   323,
9646      790,     0,   791,   324,   325,   326,     0,   327,     0,     0,
9647        0,   330,     0,   331,   332,   333,   334,   335,   792,   336,
9648      337,   338,   339,  2015,   340,   341,   342,   343,   344,   345,
9649        0,   346,   793,  2016,   348,   349,   350,   351,  1007,  1008,
9650        0,  1009,     0,   355,   794,   795,   356,   796,   357,   358,
9651      359,   360,   361,     0,     0,   362,     0,   797,   364,   798,
9652        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
9653      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9654      382,   383,  1010,   799,  1011,   386,   387,     0,     0,   389,
9655      390,   800,   391,     0,     0,   393,  1012,   395,   396,   397,
9656        0,   398,     0,     0,   399,   400,   401,     0,  2017,   402,
9657     2018,   801,   404,   802,     0,   406,   407,   408,   409,   410,
9658      411,   412,   413,     0,     0,   414,   415,     0,   417,     0,
9659      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
9660      428,   429,  1013,   431,   432,   433,   434,     0,   435,   436,
9661      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
9662      446,   447,   803,   448,   449,   450,     0,   452,   453,   454,
9663      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
9664      464,     0,   465,   466,  2019,   468,   469,   804,   470,   471,
9665     1015,   473,     0,   474,   475,   476,   477,   478,   479,   480,
9666      481,   482,   483,   484,     0,     0,   486,   487,     0,   488,
9667      805,   489,   490,   491,   492,   493,     0,  1016,  1017,     0,
9668        0,   496,   497,     0,   499,     0,     0,   501,   502,   503,
9669      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
9670      512,     0,     0,   513,   514,   515,   516,   517,     0,  1018,
9671     2020,   520,   806,   521,   522,   523,   524,     0,     0,   525,
9672        0,     0,   526,   527,   528,   529,   530,   531,     0,     0,
9673        0,     0,     0,     0,     0,   223,     0,   541,   542,   543,
9674        0,     0,     0,     0,     0,     0,     0,     0,     0,  2021,
9675      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
9676      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
9677      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
9678        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
9679        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
9680      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
9681      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
9682        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
9683        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
9684      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
9685        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
9686      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
9687      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
9688      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
9689        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
9690      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
9691      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
9692        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
9693        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
9694      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
9695        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
9696      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9697      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
9698      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
9699        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
9700      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
9701      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
9702      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
9703      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
9704      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
9705      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
9706      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
9707      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
9708      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
9709      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
9710        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
9711        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
9712      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
9713      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
9714        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
9715        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
9716      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
9717      827,  1421,   601,     0,     0,     0,   655,     0,     0,  4821,
9718        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
9719      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9720        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
9721      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
9722      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9723      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
9724      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
9725      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
9726        0,     0,     0,   789,     0,     0,     0,   278,   279,   280,
9727      281,   282,   283,   284,   285,   286,  1866,   287,     0,   288,
9728      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9729        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9730        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9731      313,   314,   315,   316,  1690,   317,     0,   318,   319,   320,
9732      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
9733      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9734      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
9735      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
9736      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
9737      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
9738      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
9739        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9740      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
9741      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
9742      393,   394,   395,   396,   397,     0,   398,  1691,     0,   399,
9743      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
9744      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9745      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9746      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9747      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9748      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
9749      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9750        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9751      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
9752      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9753        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
9754      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9755      500,  1692,   501,   502,   503,   504,   505,   506,   507,     0,
9756        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9757      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
9758      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9759      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9760      539,   540,   541,   542,   543,   827,  1421,   601,     0,     0,
9761        0,   655,   667,  1422,     0,     0,     0,     0,     0,     0,
9762      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
9763      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
9764      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
9765      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
9766        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
9767      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
9768      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
9769        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
9770        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
9771      286,  1871,   287,     0,   288,   289,   290,   291,   292,   293,
9772        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
9773      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
9774      308,   309,   310,   311,   312,   313,   314,   315,   316,  1690,
9775      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
9776      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
9777      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
9778      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
9779        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
9780        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
9781      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
9782        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
9783      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9784      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
9785      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
9786        0,   398,  1691,     0,   399,   400,   401,     0,     0,   402,
9787      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
9788      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
9789      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
9790      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
9791      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
9792      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
9793      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
9794      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
9795      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
9796      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
9797      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
9798        0,   496,   497,   498,   499,   500,  1692,   501,   502,   503,
9799      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
9800      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
9801        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
9802        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
9803      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
9804      827,  1421,   601,     0,     0,     0,   655,   667,  1422,     0,
9805        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
9806      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
9807        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
9808      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
9809      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9810      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
9811      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
9812      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
9813        0,     0,     0,   789,     0,     0,     0,   278,   279,   280,
9814      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9815      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9816        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9817        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9818      313,   314,   315,   316,  1690,   317,     0,   318,   319,   320,
9819      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
9820      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9821      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
9822      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
9823      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
9824      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
9825      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
9826        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9827      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
9828      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
9829      393,   394,   395,   396,   397,     0,   398,  1691,     0,   399,
9830      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
9831      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9832      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
9833      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9834      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
9835      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
9836      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9837        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9838      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
9839      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9840        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
9841      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9842      500,  1692,   501,   502,   503,   504,   505,   506,   507,     0,
9843        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9844      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
9845      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9846      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9847      539,   540,   541,   542,   543,   827,     0,   601,     0,     0,
9848        0,   655,   667,  1422,     0,     0,     0,     0,     0,     0,
9849      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
9850      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
9851      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
9852      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
9853        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
9854      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
9855      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
9856        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
9857        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
9858      286,  2736,   287,     0,   288,   289,   290,   291,   292,   293,
9859        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
9860      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
9861      308,   309,   310,   311,   312,   313,   314,   315,   316,  1690,
9862      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
9863      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
9864      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
9865      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
9866        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
9867        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
9868      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
9869        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
9870      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9871      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
9872      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
9873        0,   398,  1691,     0,   399,   400,   401,     0,     0,   402,
9874      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
9875      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
9876      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
9877      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
9878      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
9879      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
9880      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
9881      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
9882      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
9883      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
9884      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
9885        0,   496,   497,   498,   499,   500,  1692,   501,   502,   503,
9886      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
9887      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
9888        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
9889        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
9890      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
9891      223,     0,     0,     0,     0,     0,   655,   667,   668,     0,
9892        0,     0,     0,     0,     0,   224,   656,   226,   227,   228,
9893      229,   230,   231,   657,   233,   234,   235,     0,     0,     0,
9894        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
9895      658,   241,   242,   243,   244,     0,   245,   246,     0,   247,
9896      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
9897      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
9898      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
9899      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
9900        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
9901      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
9902      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
9903        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
9904        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
9905      313,   314,   315,   316,     0,   317,     0,   318,   659,   320,
9906      321,     0,   322,     0,   660,     0,   661,     0,   324,   325,
9907      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
9908      333,   334,   335,     0,   336,   337,   338,   339,   662,   340,
9909      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
9910      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
9911        0,   356,     0,   357,   358,   359,   360,   663,     0,     0,
9912      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
9913        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
9914      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
9915      664,   387,   388,     0,   389,   390,     0,   391,     0,   392,
9916      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
9917      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
9918      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
9919      414,   415,   416,   417,   418,   419,   420,   421,     0,   665,
9920      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
9921      433,   434,     0,   435,   436,   666,   438,   439,   440,   441,
9922      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
9923      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
9924        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
9925      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
9926      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
9927        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
9928      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
9929      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
9930        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
9931      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
9932      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
9933      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
9934      539,   540,   541,   542,   543,  1877,  4943,   601,     0,     0,
9935        0,   655,   667,   668,     0,     0,     0,     0,     0,     0,
9936      224,   225,   226,   227,   228,   229,   230,   231,  1878,   233,
9937      234,   235,  1879,  1880,  1881,  1882,  1883,  1884,  1885,   236,
9938      237,  1886,   238,   239,   784,   240,   241,   242,   243,   244,
9939      785,   245,   246,  1887,   247,   248,   249,   250,   251,  1888,
9940     1889,   252,   253,   254,   255,   256,  1890,   257,   258,   259,
9941      260,   261,  1891,   786,  1892,   262,   263,   264,   265,   787,
9942      266,   267,   268,  1893,   269,   270,   271,   272,   273,   274,
9943     1894,   788,   275,   276,   277,  1895,  1896,  1897,   789,  1898,
9944     1899,  1900,   278,   279,   280,   281,   282,   283,   284,   285,
9945      286,  1901,   287,  1902,   288,   289,   290,   291,   292,   293,
9946     1903,   294,   295,   296,  1904,  1905,   297,   298,   299,   300,
9947      301,  1906,   302,   303,   304,  1907,   305,   306,   307,  1908,
9948      308,   309,   310,   311,   312,   313,   314,   315,   316,  1909,
9949      317,  1910,   318,   319,   320,   321,  1911,   322,  1912,   323,
9950      790,  1913,   791,   324,   325,   326,  1914,   327,   328,  1915,
9951      329,   330,  1916,   331,   332,   333,   334,   335,   792,   336,
9952      337,   338,   339,  1917,   340,   341,   342,   343,   344,   345,
9953     1918,   346,   793,   347,   348,   349,   350,   351,   352,   353,
9954     1919,   354,  1920,   355,   794,   795,   356,   796,   357,   358,
9955      359,   360,   361,  1921,  1922,   362,   363,   797,   364,   798,
9956     1923,   365,   366,   367,  1924,  1925,   368,   369,   370,   371,
9957      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
9958      382,   383,   384,   799,   385,   386,   387,   388,  1926,   389,
9959      390,   800,   391,  1927,   392,   393,   394,   395,   396,   397,
9960     1928,   398,  1929,  1930,   399,   400,   401,  1931,  1932,   402,
9961      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
9962      411,   412,   413,     0,  1933,   414,   415,   416,   417,   418,
9963      419,   420,   421,  1934,   422,   423,   424,   425,   426,   427,
9964      428,   429,   430,   431,   432,   433,   434,  1935,   435,   436,
9965      437,   438,   439,   440,   441,   442,   443,   444,   445,  1936,
9966      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
9967      455,   456,   457,   458,   459,  1937,   460,   461,   462,   463,
9968      464,  1938,   465,   466,   467,   468,   469,   804,   470,   471,
9969      472,   473,  1939,   474,   475,   476,   477,   478,   479,   480,
9970      481,   482,   483,   484,   485,  1940,   486,   487,  1941,   488,
9971      805,   489,   490,   491,   492,   493,  1942,   494,   495,  1943,
9972     1944,   496,   497,   498,   499,   500,  1945,   501,   502,   503,
9973      504,   505,   506,   507,  1946,  1947,   508,   509,   510,   511,
9974      512,  1948,  1949,   513,   514,   515,   516,   517,   518,   519,
9975     1950,   520,   806,   521,   522,   523,   524,  1951,  1952,   525,
9976     1953,  1954,   526,   527,   528,   529,   530,   531,   532,   533,
9977      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
9978     1877,     0,     0,     0,     0,     0,     0,     0,     0,     0,
9979        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
9980      229,   230,   231,  1878,   233,   234,   235,  1879,  1880,  1881,
9981     1882,  1883,  1884,  1885,   236,   237,  1886,   238,   239,   784,
9982      240,   241,   242,   243,   244,   785,   245,   246,  1887,   247,
9983      248,   249,   250,   251,  1888,  1889,   252,   253,   254,   255,
9984      256,  1890,   257,   258,   259,   260,   261,  1891,   786,  1892,
9985      262,   263,   264,   265,   787,   266,   267,   268,  1893,   269,
9986      270,   271,   272,   273,   274,  1894,   788,   275,   276,   277,
9987     1895,  1896,  1897,   789,  1898,  1899,  1900,   278,   279,   280,
9988      281,   282,   283,   284,   285,   286,  1901,   287,  1902,   288,
9989      289,   290,   291,   292,   293,  1903,   294,   295,   296,  1904,
9990     1905,   297,   298,   299,   300,   301,  1906,   302,   303,   304,
9991     1907,   305,   306,   307,  1908,   308,   309,   310,   311,   312,
9992      313,   314,   315,   316,  1909,   317,  1910,   318,   319,   320,
9993      321,  1911,   322,  1912,   323,   790,  1913,   791,   324,   325,
9994      326,  1914,   327,   328,  1915,   329,   330,  1916,   331,   332,
9995      333,   334,   335,   792,   336,   337,   338,   339,  1917,   340,
9996      341,   342,   343,   344,   345,  1918,   346,   793,   347,   348,
9997      349,   350,   351,   352,   353,  1919,   354,  1920,   355,   794,
9998      795,   356,   796,   357,   358,   359,   360,   361,  1921,  1922,
9999      362,   363,   797,   364,   798,  1923,   365,   366,   367,  1924,
10000     1925,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10001      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10002      386,   387,   388,  1926,   389,   390,   800,   391,  1927,   392,
10003      393,   394,   395,   396,   397,  1928,   398,  1929,  1930,   399,
10004      400,   401,  1931,  1932,   402,   403,   801,   404,   802,   405,
10005      406,   407,   408,   409,   410,   411,   412,   413,     0,  1933,
10006      414,   415,   416,   417,   418,   419,   420,   421,  1934,   422,
10007      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10008      433,   434,  1935,   435,   436,   437,   438,   439,   440,   441,
10009      442,   443,   444,   445,  1936,   446,   447,   803,   448,   449,
10010      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10011     1937,   460,   461,   462,   463,   464,  1938,   465,   466,   467,
10012      468,   469,   804,   470,   471,   472,   473,  1939,   474,   475,
10013      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10014     1940,   486,   487,  1941,   488,   805,   489,   490,   491,   492,
10015      493,  1942,   494,   495,  1943,  1944,   496,   497,   498,   499,
10016      500,  1945,   501,   502,   503,   504,   505,   506,   507,  1946,
10017     1947,   508,   509,   510,   511,   512,  1948,  1949,   513,   514,
10018      515,   516,   517,   518,   519,  1950,   520,   806,   521,   522,
10019      523,   524,  1951,  1952,   525,  1953,  1954,   526,   527,   528,
10020      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10021      539,   540,   541,   542,   543,  1877,     0,     0,     0,     0,
10022        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10023      224,   225,   226,   227,  2849,   229,   230,   231,  1878,   233,
10024      234,   235,  1879,  1880,  1881,  1882,  1883,  1884,  1885,   236,
10025      237,  1886,   238,   239,   784,   240,   241,   242,   243,   244,
10026      785,   245,   246,  1887,   247,   248,   249,   250,   251,  1888,
10027     1889,   252,   253,   254,   255,   256,  1890,   257,   258,   259,
10028      260,   261,  1891,   786,  1892,   262,   263,   264,   265,   787,
10029      266,   267,   268,  1893,   269,   270,   271,   272,   273,   274,
10030     1894,   788,   275,   276,   277,  1895,  1896,  1897,   789,  1898,
10031     1899,  1900,   278,   279,   280,   281,   282,   283,   284,   285,
10032      286,  1901,   287,  1902,   288,   289,   290,   291,   292,   293,
10033     1903,   294,   295,   296,  1904,  1905,   297,   298,   299,  2850,
10034      301,  1906,   302,   303,   304,  1907,   305,   306,   307,  1908,
10035      308,   309,   310,   311,   312,   313,   314,   315,   316,  1909,
10036      317,  1910,   318,   319,   320,   321,  1911,   322,  1912,   323,
10037      790,  1913,   791,   324,   325,   326,  1914,   327,   328,  1915,
10038      329,   330,  1916,   331,   332,   333,   334,   335,   792,   336,
10039      337,   338,   339,  1917,   340,   341,   342,   343,   344,   345,
10040     1918,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10041     1919,   354,  1920,   355,   794,   795,   356,   796,   357,   358,
10042      359,   360,   361,  1921,  1922,   362,   363,   797,   364,   798,
10043     1923,   365,   366,   367,  1924,  1925,   368,   369,   370,   371,
10044      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10045      382,   383,   384,   799,   385,   386,   387,   388,  1926,   389,
10046      390,   800,   391,  1927,   392,   393,   394,   395,   396,   397,
10047     1928,   398,  1929,  1930,   399,   400,   401,  1931,  1932,   402,
10048      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10049      411,   412,   413,     0,  1933,   414,   415,   416,   417,   418,
10050      419,   420,   421,  1934,   422,   423,   424,   425,   426,   427,
10051      428,   429,   430,   431,   432,   433,   434,  1935,   435,   436,
10052      437,   438,   439,   440,   441,   442,   443,   444,   445,  1936,
10053      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10054      455,   456,   457,   458,   459,  1937,   460,   461,   462,   463,
10055      464,  1938,  2851,   466,   467,   468,   469,   804,   470,   471,
10056      472,   473,  1939,   474,   475,   476,   477,   478,   479,   480,
10057      481,   482,   483,   484,   485,  1940,   486,   487,  1941,   488,
10058      805,   489,   490,   491,   492,   493,  1942,   494,   495,  1943,
10059     1944,   496,   497,   498,   499,   500,  1945,   501,   502,   503,
10060      504,   505,   506,   507,  1946,  1947,   508,   509,   510,   511,
10061      512,  1948,  1949,   513,   514,   515,   516,   517,   518,   519,
10062     1950,   520,   806,   521,   522,   523,   524,  1951,  1952,   525,
10063     1953,  1954,   526,   527,   528,   529,   530,   531,   532,   533,
10064      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10065      783,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10066        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10067      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10068        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10069      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10070      248,   249,   250,   251,     0,  1156,   252,   253,   254,   255,
10071      256,     0,   257,   258,   259,   260,  1159,     0,  1160,     0,
10072      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10073      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10074     1161,  1162,  1163,  1164,  1165,  1166,  1167,   278,   279,   280,
10075      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10076      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10077        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10078        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10079      313,   314,   315,  1171,     0,   317,     0,   318,   319,   320,
10080      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10081      326,     0,   327,  1174,     0,   329,   330,     0,   331,   332,
10082      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
10083      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10084      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10085      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10086      362,  1179,   797,   364,   798,     0,   365,   366,   367,  1180,
10087     1181,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10088      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10089      386,   387,   388,     0,   389,   390,   800,   391,     0,  1186,
10090      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10091      400,   401,     0,     0,   402,   403,   801,   404,   802,  1189,
10092      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10093      414,   415,  1190,   417,   418,   419,   420,   421,     0,   422,
10094      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10095      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10096      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10097      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10098        0,   460,   461,   462,   463,   464,  1193,   465,   466,   467,
10099      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10100      476,   477,   478,   479,   480,   481,   482,   483,   484,  1195,
10101        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10102      493,     0,   494,   495,     0,     0,   496,   497,  1198,   499,
10103     1199,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10104        0,   508,   509,   510,   511,   512,  1202,     0,   513,   514,
10105      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10106      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10107      529,   530,   531,   532,  1204,  1205,  1206,  1207,  1208,  1209,
10108     1210,  1211,   541,   542,   543,   827,     0,   601,     0,     0,
10109        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10110      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10111      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10112      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10113      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10114        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10115      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10116      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10117        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10118        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10119      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10120        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10121      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10122      308,   309,   310,   311,   312,   313,   314,   315,   316,  1690,
10123      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10124      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10125      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10126      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10127        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10128        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10129      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10130        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10131      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10132      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10133      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10134        0,   398,  1691,     0,   399,   400,   401,     0,     0,   402,
10135      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10136      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10137      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10138      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10139      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10140      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10141      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10142      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
10143      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10144      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10145      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10146        0,   496,   497,   498,   499,   500,  1692,   501,   502,   503,
10147      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10148      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10149        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10150        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10151      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10152      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10153        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10154      229,   230,   231,   862,   233,   234,   235,     0,     0,     0,
10155        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10156      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10157      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10158      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10159      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10160      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10161        0,     0,     0,   789,     0,     0,   828,   278,   279,   280,
10162      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10163      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10164        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10165        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10166      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10167      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10168      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10169      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
10170      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10171      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10172      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10173      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10174        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10175      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10176      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10177      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10178      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10179      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10180      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10181      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10182      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10183      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10184      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10185        0,   460,   461,   462,   463,   464,   829,   465,   466,   467,
10186      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10187      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10188        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10189      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10190      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10191        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10192      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10193      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10194      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10195      539,   540,   541,   542,   543,   827,     0,     0,     0,     0,
10196        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10197      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10198      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10199      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10200      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10201        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10202      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10203      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10204        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10205        0,   828,   278,   279,   280,   281,   282,   283,   284,   285,
10206      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10207        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10208      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10209      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10210      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10211      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10212      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10213      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10214        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10215        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10216      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10217        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10218      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10219      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10220      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10221        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10222      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10223      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10224      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10225      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10226      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10227      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10228      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10229      464,   829,   465,   466,   467,   468,   469,   804,   470,   471,
10230      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10231      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10232      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10233        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10234      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10235      512,  2244,     0,   513,   514,   515,   516,   517,   518,   519,
10236        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10237        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10238      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10239      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10240        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10241      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10242        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10243      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10244      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10245      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10246      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10247      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10248        0,     0,     0,   789,     0,     0,   828,   278,   279,   280,
10249      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10250      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10251        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10252        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10253      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10254      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10255      326,     0,   327,   328,  3152,   329,   330,     0,   331,   332,
10256      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
10257      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10258      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10259      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10260      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10261        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10262      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10263      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10264      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10265      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10266      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10267      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10268      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10269      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10270      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10271      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10272        0,   460,   461,   462,   463,   464,   829,   465,   466,   467,
10273      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10274      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10275        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10276      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10277      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10278        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10279      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10280      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10281      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10282      539,   540,   541,   542,   543,   827,     0,     0,     0,     0,
10283        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10284      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10285      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10286      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10287      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10288        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10289      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10290      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10291        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10292        0,   828,   278,   279,   280,   281,   282,   283,   284,   285,
10293      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10294        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10295      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10296      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10297      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10298      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10299      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10300      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10301        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10302        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10303      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10304        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10305      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10306      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10307      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10308        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10309      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10310      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10311      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10312      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10313      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10314      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10315      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10316      464,   829,   465,   466,   467,   468,   469,   804,   470,   471,
10317      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10318      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10319      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10320        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10321      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10322      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10323        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10324        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10325      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10326      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10327        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10328      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10329        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10330      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10331      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10332      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10333      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10334      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10335        0,     0,     0,   789,     0,     0,   828,   278,   279,   280,
10336      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10337      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10338        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10339        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10340      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10341      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10342      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10343      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
10344      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10345      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10346      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10347      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10348        0,   368,   369,   370,   371,   879,   373,   374,   375,   376,
10349      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10350      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10351      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10352      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10353      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10354      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10355      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10356      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10357      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10358      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10359        0,   460,   461,   462,   463,   464,   829,   465,   466,   467,
10360      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10361      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10362        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10363      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10364      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10365        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10366      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10367      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10368      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10369      539,   540,   541,   542,   543,   827,     0,     0,     0,     0,
10370        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10371      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10372      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10373      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10374      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10375        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10376      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10377      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10378        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10379        0,   828,   278,   279,   280,   281,   282,   283,   284,   285,
10380      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10381        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10382      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10383      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10384      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10385      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10386      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10387      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10388        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10389        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10390      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10391        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10392      967,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10393      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10394      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10395        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10396      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10397      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10398      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10399      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10400      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10401      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10402      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10403      464,   829,   465,   466,   467,   468,   469,   804,   470,   471,
10404      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10405      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10406      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10407        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10408      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10409      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10410        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10411        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10412      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10413      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10414        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10415      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10416        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10417      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10418      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10419      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10420      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10421      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10422        0,     0,     0,   789,     0,     0,   828,   278,   279,   280,
10423      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10424      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10425        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10426        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10427      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10428      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10429      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10430      333,   334,  1040,   792,   336,   337,   338,   339,     0,   340,
10431      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10432      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10433      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10434      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10435        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10436      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10437      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10438      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10439      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10440      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10441      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10442      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10443      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10444      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10445      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10446        0,   460,   461,   462,   463,   464,   829,   465,   466,   467,
10447      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10448      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10449        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10450      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10451      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10452        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10453      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10454      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10455      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10456      539,   540,   541,   542,   543,   827,     0,     0,     0,     0,
10457        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10458      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10459      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10460      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10461      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10462        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10463      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10464      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10465        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10466        0,   828,   278,   279,   280,   281,   282,   283,   284,   285,
10467      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10468        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10469      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10470      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10471      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10472      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10473      329,   330,     0,   331,   332,   333,   334,  1052,   792,   336,
10474      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10475        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10476        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10477      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10478        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10479      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10480      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10481      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10482        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10483      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10484      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10485      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10486      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10487      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10488      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10489      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10490      464,   829,   465,   466,   467,   468,   469,   804,   470,   471,
10491      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10492      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10493      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10494        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10495      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10496      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10497        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10498        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10499      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10500      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10501        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10502      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10503        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10504      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10505      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10506      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10507      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10508      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10509        0,     0,     0,   789,     0,     0,   828,   278,   279,   280,
10510      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10511      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10512        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10513        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10514      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10515      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10516      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10517      333,   334,  1066,   792,   336,   337,   338,   339,     0,   340,
10518      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10519      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10520      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10521      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10522        0,   368,   369,   370,   371,  1067,   373,   374,   375,   376,
10523      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10524      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10525      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10526      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10527      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10528      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10529      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10530      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10531      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10532      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10533        0,   460,   461,   462,   463,   464,   829,   465,   466,   467,
10534      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10535      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10536        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10537      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10538      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10539        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10540      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10541      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10542      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10543      539,   540,   541,   542,   543,   827,     0,   601,     0,     0,
10544        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10545      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10546      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10547      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10548      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10549        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10550      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10551      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10552        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10553        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10554      286,  1851,   287,     0,   288,   289,   290,   291,   292,   293,
10555        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10556      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10557      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10558      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10559      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10560      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10561      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10562        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10563        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10564      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10565        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10566      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10567      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10568      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10569        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10570      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10571      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10572      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10573      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10574      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10575      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10576      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10577      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
10578      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10579      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10580      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10581        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10582      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10583      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10584        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10585        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10586      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10587      827,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10588        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10589      229,   230,   231,     0,   233,   234,   235,     3,     4,     0,
10590        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10591      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10592      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10593      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10594      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10595      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10596        0,     0,     0,   789,     0,     0,     0,   278,   279,   280,
10597      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10598      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10599        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10600        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10601      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10602      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10603      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10604      333,   334,   335,   792,   336,   337,   338,   339,     0,   340,
10605      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10606      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10607      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10608      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10609        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10610      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10611      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10612      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10613      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10614      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10615      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10616      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10617      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10618      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10619      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10620        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
10621      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10622      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10623        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10624      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10625      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10626        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10627      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10628      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10629      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10630      539,   540,   541,   542,   543,   827,     0,   601,     0,     0,
10631        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10632      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10633      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10634      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10635      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10636        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10637      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10638      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10639        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10640        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10641      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10642        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10643      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10644      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10645      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10646      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10647      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10648      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10649        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10650        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10651      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10652        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10653      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10654      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10655      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10656        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10657      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10658      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10659      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10660      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10661      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10662      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10663      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10664      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
10665      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10666      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10667      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10668        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10669      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10670      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10671        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10672        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10673      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10674      827,     0,   601,     0,     0,     0,     0,     0,     0,     0,
10675        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10676      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10677        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10678      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10679      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10680      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10681      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10682      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10683        0,     0,     0,   789,     0,     0,     0,   278,   279,   280,
10684      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10685      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10686        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10687        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10688      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10689      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10690      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10691      333,   334,  1680,   792,   336,   337,   338,   339,     0,   340,
10692      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10693      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10694      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10695      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10696        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10697      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10698      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10699      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10700      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10701      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10702      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10703      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10704      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10705      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10706      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10707        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
10708      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10709      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10710        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10711      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10712      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10713        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10714      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10715      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10716      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10717      539,   540,   541,   542,   543,   783,     0,     0,     0,     0,
10718        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10719      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10720      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10721      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10722      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10723        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10724      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10725      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10726        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10727        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10728      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10729        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10730      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10731      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10732      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10733      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10734      329,   330,     0,   331,   332,   333,   334,   335,   792,   336,
10735      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10736        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10737        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10738      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10739        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10740      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10741      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10742      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10743        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10744      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10745      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10746      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10747      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10748      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10749      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10750      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10751      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
10752      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10753      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10754      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10755        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10756      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10757      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10758        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10759        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10760      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10761      783,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10762        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10763      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10764        0,     0,     0,     0,   236,   237,     0,   238,   239,   784,
10765      240,   241,   242,   243,   244,   785,   245,   246,     0,   247,
10766      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10767      256,     0,   257,   258,   259,   260,   261,     0,   786,     0,
10768      262,   263,   264,   265,   787,   266,   267,   268,     0,   269,
10769      270,   271,   272,   273,   274,     0,   788,   275,   276,   277,
10770        0,     0,     0,   789,     0,     0,     0,   278,   279,   280,
10771      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10772      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10773        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10774        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10775      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10776      321,     0,   322,     0,   323,   790,     0,   791,   324,   325,
10777      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10778      333,   334,   989,   792,   336,   337,   338,   339,     0,   340,
10779      341,   342,   343,   344,   345,     0,   346,   793,   347,   348,
10780      349,   350,   351,   352,   353,     0,   354,     0,   355,   794,
10781      795,   356,   796,   357,   358,   359,   360,   361,     0,     0,
10782      362,   363,   797,   364,   798,     0,   365,   366,   367,     0,
10783        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10784      377,   378,   379,   380,   381,   382,   383,   384,   799,   385,
10785      386,   387,   388,     0,   389,   390,   800,   391,     0,   392,
10786      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10787      400,   401,     0,     0,   402,   403,   801,   404,   802,   405,
10788      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10789      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10790      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10791      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10792      442,   443,   444,   445,     0,   446,   447,   803,   448,   449,
10793      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10794        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
10795      468,   469,   804,   470,   471,   472,   473,     0,   474,   475,
10796      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10797        0,   486,   487,     0,   488,   805,   489,   490,   491,   492,
10798      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10799      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10800        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10801      515,   516,   517,   518,   519,     0,   520,   806,   521,   522,
10802      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10803      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10804      539,   540,   541,   542,   543,   783,     0,     0,     0,     0,
10805        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10806      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10807      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10808      237,     0,   238,   239,   784,   240,   241,   242,   243,   244,
10809      785,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10810        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10811      260,   261,     0,   786,     0,   262,   263,   264,   265,   787,
10812      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10813        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
10814        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10815      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10816        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10817      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10818      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10819      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10820      790,     0,   791,   324,   325,   326,     0,   327,   328,     0,
10821      329,   330,     0,   331,   332,   333,   334,  1038,   792,   336,
10822      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10823        0,   346,   793,   347,   348,   349,   350,   351,   352,   353,
10824        0,   354,     0,   355,   794,   795,   356,   796,   357,   358,
10825      359,   360,   361,     0,     0,   362,   363,   797,   364,   798,
10826        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10827      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10828      382,   383,   384,   799,   385,   386,   387,   388,     0,   389,
10829      390,   800,   391,     0,   392,   393,   394,   395,   396,   397,
10830        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10831      403,   801,   404,   802,   405,   406,   407,   408,   409,   410,
10832      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10833      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
10834      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10835      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10836      446,   447,   803,   448,   449,   450,   451,   452,   453,   454,
10837      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10838      464,     0,   465,   466,   467,   468,   469,   804,   470,   471,
10839      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10840      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10841      805,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10842        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10843      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
10844      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10845        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
10846        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10847      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10848      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10849        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10850      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
10851        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
10852      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
10853      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10854      256,  2057,   257,   258,   259,   260,   261,     0,     0,  2133,
10855      262,   263,   264,   265,     0,   266,   267,   268,  2058,   269,
10856      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
10857        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
10858      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10859      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10860        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10861        0,   305,   306,   307,     0,  2134,   309,   310,   311,   312,
10862      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10863      321,     0,   322,  2060,   323,     0,     0,     0,   324,   325,
10864      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
10865      333,   334,  2135,     0,   336,   337,   338,   339,     0,   340,
10866      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
10867      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
10868        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
10869      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
10870        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10871      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
10872      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
10873      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10874      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
10875      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10876      414,   415,   416,   417,   418,   419,   420,   421,  2061,   422,
10877      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10878      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
10879      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
10880      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10881        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
10882      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
10883      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10884        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
10885      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10886      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10887     2062,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10888      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
10889      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10890      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10891      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
10892        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10893      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
10894      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10895      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
10896        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10897        0,   252,   253,   254,   255,   256,  2057,   257,   258,   259,
10898      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
10899      266,   267,   268,  2058,   269,   270,   271,   272,   273,   274,
10900        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
10901        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10902      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10903        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10904      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10905     2134,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10906      317,     0,   318,   319,   320,   321,     0,   322,  2060,   323,
10907        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
10908      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
10909      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10910        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
10911        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
10912      359,   360,   361,     0,     0,   362,   363,     0,   364,  3017,
10913        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
10914      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
10915      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
10916      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
10917        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
10918      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
10919      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
10920      419,   420,   421,  2061,   422,   423,   424,   425,   426,   427,
10921      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
10922      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
10923      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
10924      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
10925      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
10926      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
10927      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
10928        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
10929        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
10930      504,   505,   506,   507,     0,  2062,   508,   509,   510,   511,
10931      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
10932        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
10933        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
10934      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
10935      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10936        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
10937      715,   230,   231,   674,   233,   234,   235,     0,     0,     0,
10938        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
10939      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
10940      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
10941      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
10942      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
10943      270,   271,   272,   273,   274,   675,     0,   275,   276,   277,
10944        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
10945      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
10946      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
10947        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
10948        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
10949      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
10950      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
10951      326,   716,   327,   328,     0,   329,   330,     0,   331,   332,
10952      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
10953      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
10954      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
10955        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
10956      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
10957        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
10958      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
10959      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
10960      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
10961      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
10962      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
10963      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
10964      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
10965      433,   434,   676,   435,   436,   437,   438,   439,   440,   441,
10966      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
10967      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
10968      677,   460,   461,   462,   463,   464,     0,   465,   466,   467,
10969      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
10970      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
10971        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
10972      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
10973      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
10974        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
10975      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
10976      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
10977      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
10978      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
10979        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
10980      224,   225,   226,   227,   228,   229,   230,   231,   674,   233,
10981      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
10982      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
10983        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
10984        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
10985      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
10986      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
10987      675,     0,   275,   276,   277,     0,     0,     0,     0,     0,
10988        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
10989      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
10990        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
10991      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
10992      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
10993      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
10994        0,     0,     0,   324,   325,   326,  2743,   327,   328,     0,
10995      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
10996      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
10997        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
10998        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
10999      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11000        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11001      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11002      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11003      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11004        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11005      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11006      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11007      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11008      428,   429,   430,   431,   432,   433,   434,   676,   435,   436,
11009      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11010      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11011      455,   456,   457,   458,   459,   677,   460,   461,   462,   463,
11012      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11013      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11014      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11015        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11016        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11017      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11018      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11019        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11020        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11021      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11022      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11023        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11024      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
11025        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11026      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11027      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11028      256,  2057,   257,   258,   259,   260,   261,     0,     0,     0,
11029      262,   263,   264,   265,     0,   266,   267,   268,  2058,   269,
11030      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11031        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11032      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11033      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11034        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11035        0,   305,   306,   307,     0,  2134,   309,   310,   311,   312,
11036      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11037      321,     0,   322,  2060,   323,     0,     0,     0,   324,   325,
11038      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11039      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11040      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11041      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11042        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11043      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11044        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11045      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11046      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11047      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11048      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11049      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11050      414,   415,   416,   417,   418,   419,   420,   421,  2061,   422,
11051      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11052      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11053      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11054      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11055        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11056      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11057      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11058        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11059      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11060      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11061     2062,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11062      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11063      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11064      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11065      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11066        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11067      224,   225,   226,   227,   228,   229,   230,   231,   674,   233,
11068      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11069      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11070        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11071        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11072      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11073      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11074      675,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11075        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11076      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11077        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11078      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11079      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11080      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11081        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11082      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11083      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11084        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11085        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11086      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11087        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11088      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11089      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11090      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11091        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11092      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11093      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11094      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11095      428,   429,   430,   431,   432,   433,   434,   676,   435,   436,
11096      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11097      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11098      455,   456,   457,   458,   459,   677,   460,   461,   462,   463,
11099      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11100      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11101      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11102        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11103        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11104      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11105      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11106        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11107        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11108      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11109      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11110        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11111      229,   230,   231,  1717,   233,   234,   235,     0,     0,     0,
11112        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11113      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11114      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11115      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11116      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11117      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11118        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11119     1718,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11120      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11121        0,   297,  1719,   299,   300,   301,     0,   302,   303,   304,
11122        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11123      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11124      321,     0,   322,  1720,   323,     0,     0,     0,  1721,   325,
11125      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11126      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11127      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11128      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11129        0,   356,     0,   357,   358,  1722,  1723,   361,     0,     0,
11130      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11131        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11132      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11133      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11134      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11135      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11136      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11137      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11138      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11139      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11140      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11141      450,   451,   452,   453,   454,  1724,   456,   457,   458,   459,
11142        0,  1725,   461,   462,   463,   464,     0,   465,   466,   467,
11143      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11144      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11145        0,   486,   487,  1726,   488,     0,  1727,   490,   491,   492,
11146      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11147      500,     0,   501,   502,  1728,   504,   505,   506,   507,     0,
11148        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11149      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11150      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11151      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11152      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11153        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11154      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
11155      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11156      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11157        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11158        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11159      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11160      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11161      675,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11162        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11163      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11164        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11165      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11166      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11167      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11168        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11169      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11170      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11171        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11172        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11173      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11174        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11175      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11176      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11177      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11178        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11179      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11180      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11181      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11182      428,   429,   430,   431,   432,   433,   434,   676,   435,   436,
11183      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11184      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11185      455,   456,   457,   458,   459,   677,   460,   461,   462,   463,
11186      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11187      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11188      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11189        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11190        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11191      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11192      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11193        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11194        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11195      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11196      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11197        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11198      229,   230,   231,   872,   233,   234,   235,     0,     0,     0,
11199        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11200      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11201      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11202      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11203      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11204      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11205        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11206      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11207      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11208        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11209        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11210      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11211      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11212      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11213      333,   334,   873,     0,   336,   337,   338,   339,     0,   340,
11214      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11215      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11216        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11217      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11218        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11219      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11220      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11221      393,   394,   395,   396,   397,     0,   398,     0,   747,   399,
11222      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11223      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11224      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11225      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11226      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11227      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11228      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11229        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11230      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11231      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11232        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11233      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11234      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11235        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11236      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11237      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11238      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11239      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11240        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11241      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
11242      234,   235,     3,     4,     0,     0,     0,     0,     0,   236,
11243      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11244        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11245        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11246      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11247      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11248        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11249        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11250      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11251        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11252      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11253      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11254      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11255        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11256      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11257      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11258        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11259        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11260      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11261        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11262      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11263      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11264      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11265        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11266      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11267      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11268      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11269      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11270      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11271      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11272      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11273      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11274      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11275      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11276        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11277        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11278      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11279      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11280        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11281        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11282      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11283      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11284        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11285      229,   230,   231,  2830,   233,   234,   235,     0,     0,     0,
11286        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11287      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11288      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11289      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11290      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11291      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11292        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11293      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11294      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11295        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11296        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11297      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11298      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11299      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11300      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11301      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11302      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11303        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11304      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11305        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11306      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11307      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11308      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11309      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11310      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11311      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11312      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11313      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11314      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11315      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11316        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11317      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11318      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11319        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11320      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11321      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11322        0,   508,   509,   510,   511,   512,  2831,     0,   513,   514,
11323      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11324      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11325      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11326      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11327        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11328      224,   225,   226,   227,   228,   229,   230,   231,  2843,   233,
11329      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11330      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11331        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11332        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11333      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11334      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11335        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11336        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11337      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11338        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11339      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11340      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11341      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11342        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11343      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11344      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11345        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11346        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11347      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11348        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11349      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11350      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11351      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11352        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11353      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11354      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11355      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11356      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11357      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11358      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11359      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11360      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11361      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11362      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11363        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11364        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11365      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11366      512,  2844,     0,   513,   514,   515,   516,   517,   518,   519,
11367        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11368        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11369      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11370      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11371        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11372      229,   230,   231,   232,   233,   234,   235,     0,     0,     0,
11373        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11374      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11375      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11376      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11377      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11378      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11379        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11380      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11381      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11382        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11383        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11384      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11385      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11386      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11387      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11388      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11389      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11390        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11391      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11392        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11393      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11394      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11395      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11396      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11397      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11398      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11399      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11400      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11401      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11402      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11403        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11404      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11405      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11406        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11407      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11408      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11409        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11410      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11411      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11412      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11413      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11414        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11415      224,   225,   226,   227,   228,   229,   230,   231,   592,   233,
11416      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11417      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11418        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11419        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11420      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11421      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11422        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11423        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11424      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11425        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11426      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11427      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11428      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11429        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11430      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11431      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11432        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11433        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11434      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11435        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11436      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11437      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11438      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11439        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11440      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11441      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11442      419,   593,   421,     0,   422,   423,   424,   425,   426,   427,
11443      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11444      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11445      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11446      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11447      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11448      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11449      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11450        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11451        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11452      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11453      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11454        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11455        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11456      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11457      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11458        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11459      229,   230,   231,   707,   233,   234,   235,     0,     0,     0,
11460        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11461      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11462      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11463      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11464      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11465      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11466        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11467      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11468      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11469        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11470        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11471      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11472      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11473      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11474      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11475      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11476      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11477        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11478      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11479        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11480      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11481      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11482      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11483      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11484      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11485      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11486      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11487      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11488      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11489      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11490        0,   460,   461,   462,   463,   708,     0,   465,   466,   467,
11491      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11492      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11493        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11494      493,     0,   709,   495,     0,     0,   710,   497,   498,   499,
11495      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11496        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11497      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11498      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11499      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11500      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11501        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11502      224,   225,   226,   227,   228,   229,   230,   231,   741,   233,
11503      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11504      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11505        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11506        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11507      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11508      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11509        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11510        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11511      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11512        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11513      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11514      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11515      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11516        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11517      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11518      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11519        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11520        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11521      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11522        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11523      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11524      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11525      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11526        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11527      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11528      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11529      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11530      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11531      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11532      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11533      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11534      742,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11535      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11536      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11537        0,   489,   490,   491,   492,   493,     0,   743,   495,     0,
11538        0,   744,   497,   498,   499,   500,     0,   501,   502,   503,
11539      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11540      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11541        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11542        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11543      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11544      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11545        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11546      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
11547        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11548      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11549      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11550      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11551      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11552      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11553        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11554      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11555      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11556        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11557        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11558      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11559      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11560      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11561      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11562      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11563      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11564        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11565      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11566        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11567      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11568      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11569      393,   394,   395,   396,   397,     0,   398,     0,   747,   399,
11570      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11571      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11572      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11573      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11574      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11575      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11576      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11577        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11578      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11579      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11580        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11581      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11582      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11583        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11584      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11585      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11586      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11587      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11588        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11589      224,   225,   226,   227,   228,   229,   230,   231,   836,   233,
11590      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11591      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11592        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11593        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11594      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11595      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11596        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11597        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11598      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11599        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11600      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11601      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11602      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11603        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11604      329,   330,     0,   331,   332,   333,   334,   837,     0,   336,
11605      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11606        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11607        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11608      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11609        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11610      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11611      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11612      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11613        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11614      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11615      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11616      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11617      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11618      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11619      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11620      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11621      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11622      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11623      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11624        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11625        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11626      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11627      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11628        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11629        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11630      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11631      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11632        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11633      229,   230,   231,   981,   233,   234,   235,     0,     0,     0,
11634        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11635      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11636      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11637      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11638      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11639      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11640        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11641      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11642      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11643        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11644        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11645      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11646      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11647      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11648      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11649      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11650      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11651        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11652      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11653        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11654      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11655      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11656      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11657      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11658      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11659      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11660      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11661      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11662      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11663      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11664        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11665      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11666      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11667        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11668      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11669      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11670        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11671      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11672      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11673      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11674      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11675        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11676      224,   225,   226,   227,   228,   229,   230,   231,   707,   233,
11677      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11678      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11679        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11680        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11681      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11682      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11683        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11684        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11685      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11686        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11687      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11688      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11689      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11690        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11691      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11692      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11693        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11694        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11695      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11696        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11697      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11698      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11699      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11700        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11701      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11702      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11703      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11704      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11705      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11706      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11707      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11708      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11709      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11710      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11711        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11712        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11713      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11714      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11715        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11716        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11717      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11718      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11719        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11720      229,   230,   231,  1120,   233,   234,   235,     0,     0,     0,
11721        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11722      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11723      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11724      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11725      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11726      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11727        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11728      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11729      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11730        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11731        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11732      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11733      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11734      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11735      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11736      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11737      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11738        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11739      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11740        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11741      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11742      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11743      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11744      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11745      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11746      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11747      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11748      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11749      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11750      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11751        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11752      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11753      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11754        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11755      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11756      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11757        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11758      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11759      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11760      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11761      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11762        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11763      224,   225,   226,   227,   228,   229,   230,   231,  1249,   233,
11764      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11765      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11766        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11767        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11768      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11769      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11770        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11771        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11772      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11773        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11774      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11775      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11776      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11777        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11778      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11779      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11780        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11781        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11782      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11783        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11784      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11785      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11786      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11787        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11788      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11789      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11790      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11791      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11792      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11793      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11794      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11795      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11796      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11797      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11798        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11799        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11800      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11801      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11802        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11803        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11804      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11805      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11806        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11807      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
11808        0,     0,     0,     0,   236,   237,     0,   238,   239,  1260,
11809      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11810      248,   249,   250,   251,     0,     0,   727,   253,   254,   255,
11811     1261,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11812      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11813      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11814        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11815      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11816      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11817        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11818        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11819      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11820      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11821      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11822      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11823      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11824      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11825        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11826      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11827        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11828      377,   378,   379,   380,   381,   382,   730,   384,     0,   385,
11829      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11830      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11831      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11832      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11833      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11834      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11835      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11836      442,   443,   444,   445,     0,   446,   447,     0,   731,   449,
11837      450,   451,   452,   453,   454,   732,   456,   457,   458,   459,
11838        0,   460,   461,   462,   463,  1253,     0,   465,   466,   467,
11839      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11840      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11841        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11842      493,     0,   734,   495,     0,     0,   735,   497,   498,   499,
11843      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11844        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11845      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11846      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11847      529,   530,   736,   532,   533,   534,   535,   536,   537,   538,
11848      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11849        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11850      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
11851      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11852      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11853        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11854        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11855      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11856      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11857        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11858        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11859      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11860        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11861      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11862      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11863      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11864        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
11865      329,   330,     0,   331,   332,   333,   334,  1370,     0,   336,
11866      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11867        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11868        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11869      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11870        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
11871      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11872      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11873      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11874        0,   398,     0,   747,   399,   400,   401,     0,     0,   402,
11875      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11876      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11877      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11878      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11879      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11880      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11881      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11882      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11883      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11884      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
11885        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
11886        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11887      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
11888      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11889        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11890        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11891      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11892      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11893        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11894      229,   230,   231,  1425,   233,   234,   235,     0,     0,     0,
11895        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11896      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11897      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11898      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11899      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11900      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11901        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11902      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11903      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11904        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11905        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11906      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11907      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11908      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11909      333,   334,  1426,     0,   336,   337,   338,   339,     0,   340,
11910      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11911      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11912        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
11913      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
11914        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
11915      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
11916      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
11917      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
11918      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
11919      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
11920      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
11921      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
11922      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
11923      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
11924      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
11925        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
11926      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
11927      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
11928        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
11929      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
11930      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
11931        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
11932      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
11933      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
11934      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
11935      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
11936        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
11937      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
11938      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
11939      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
11940        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
11941        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
11942      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
11943      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
11944        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
11945        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
11946      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
11947        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
11948      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
11949      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
11950      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
11951        0,     0,     0,   324,   325,  2633,     0,   327,   328,     0,
11952      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
11953      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
11954        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
11955        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
11956      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
11957        0,   365,   366,  2634,     0,     0,   368,   369,   370,   371,
11958      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
11959      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
11960      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
11961        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
11962      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
11963      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
11964      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
11965      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
11966      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
11967      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
11968      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
11969      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
11970      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
11971      481,   482,   483,   484,   485,     0,   486,   487,  2635,   488,
11972        0,   489,  2636,   491,  2637,   493,     0,   494,   495,     0,
11973        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
11974      504,   505,   506,   507,     0,     0,   508,   509,  2638,   511,
11975      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
11976        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
11977        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
11978      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
11979      223,     0,   601,     0,     0,     0,     0,     0,     0,     0,
11980        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
11981      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
11982        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
11983      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
11984      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
11985      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
11986      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
11987      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
11988        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
11989      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
11990      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
11991        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
11992        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
11993      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
11994      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
11995      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
11996      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
11997      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
11998      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
11999        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12000      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12001        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12002      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12003      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12004      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12005      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12006      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12007      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12008      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12009      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12010      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12011      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12012        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12013      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12014      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12015        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12016      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12017      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12018        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12019      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12020      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12021      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12022      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12023        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12024      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12025      234,   235,     0,     0,     0,     0,     0,  3835,     0,   236,
12026      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12027        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12028        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12029      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12030      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12031        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12032        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12033      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12034        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12035      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12036      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12037      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12038        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12039      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
12040      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12041        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12042        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12043      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12044        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12045      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12046      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12047      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12048        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12049      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12050      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12051      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12052      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12053      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12054      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12055      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12056      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12057      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12058      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12059        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12060        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12061      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12062      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12063        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12064        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12065      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12066      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12067        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12068      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12069        0,     0,  3849,     0,   236,   237,     0,   238,   239,     0,
12070      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12071      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12072      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12073      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12074      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12075        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12076      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12077      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12078        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12079        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12080      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12081      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12082      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12083      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
12084      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12085      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12086        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12087      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12088        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12089      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12090      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12091      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12092      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12093      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12094      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12095      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12096      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12097      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12098      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12099        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12100      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12101      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12102        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12103      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12104      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12105        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12106      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12107      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12108      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12109      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12110        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12111      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12112      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12113      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12114        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12115        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12116      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12117      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12118        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12119        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12120      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12121        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12122      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12123      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12124      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12125        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12126      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
12127      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12128        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12129        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12130      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12131        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12132      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12133      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12134      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12135        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12136      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12137      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12138      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12139      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12140      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12141      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12142      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12143      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12144      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12145      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12146        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12147        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12148      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12149      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12150        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12151        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12152      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12153      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12154        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12155      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12156        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12157      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12158      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12159      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12160      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12161      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12162        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12163      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12164      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12165        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12166        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12167      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12168      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12169      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12170      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
12171      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12172      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12173        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12174      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12175        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12176      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12177      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12178      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12179      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12180      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12181      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12182      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12183      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12184      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12185      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12186        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12187      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12188      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12189        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12190      493,     0,   494,   495,     0,     0,   693,   497,   498,   499,
12191      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12192        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12193      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12194      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12195      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12196      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12197        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12198      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12199      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12200      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12201        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12202        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12203      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12204      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12205        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12206        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12207      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12208        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12209      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12210      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12211      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12212        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12213      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
12214      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12215        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12216        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12217      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12218        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12219      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12220      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12221      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12222        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12223      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12224      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12225      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12226      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12227      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12228      446,   447,     0,   448,   449,   450,   451,   452,   453,   705,
12229      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12230      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12231      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12232      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12233        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12234        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12235      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12236      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12237        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12238        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12239      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12240      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12241        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12242      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12243        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12244      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12245      248,   249,   250,   251,     0,     0,   727,   253,   254,   255,
12246      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12247      262,   263,   264,   265,     0,   266,   267,   268,     0,   728,
12248      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12249        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12250      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12251      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12252        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12253        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12254      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12255      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12256      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12257      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
12258      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12259      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12260        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12261      362,   363,     0,   364,     0,     0,   365,   366,   729,     0,
12262        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12263      377,   378,   379,   380,   381,   382,   730,   384,     0,   385,
12264      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12265      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12266      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12267      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12268      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12269      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12270      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12271      442,   443,   444,   445,     0,   446,   447,     0,   731,   449,
12272      450,   451,   452,   453,   454,   732,   456,   457,   458,   459,
12273        0,   460,   461,   462,   463,   733,     0,   465,   466,   467,
12274      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12275      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12276        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12277      493,     0,   734,   495,     0,     0,   735,   497,   498,   499,
12278      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12279        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12280      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12281      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12282      529,   530,   736,   532,   533,   534,   535,   536,   537,   538,
12283      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12284        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12285      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12286      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12287      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12288        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12289        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12290      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12291      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12292        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12293        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12294      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12295        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12296      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12297      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12298      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12299        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12300      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
12301      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12302        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12303        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12304      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12305        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12306      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12307      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12308      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12309        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12310      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12311      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12312      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12313      428,   429,   430,   431,   432,   759,   434,     0,   435,   436,
12314      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12315      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12316      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12317      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12318      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12319      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12320        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12321        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12322      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12323      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12324        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12325        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12326      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12327      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12328        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12329      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12330        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12331      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12332      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12333      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12334      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12335      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12336        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12337      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12338      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12339        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12340        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12341      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12342      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12343      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12344      333,   334,   860,     0,   336,   337,   338,   339,     0,   340,
12345      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12346      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12347        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12348      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12349        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12350      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12351      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12352      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12353      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12354      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12355      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12356      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12357      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12358      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12359      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12360        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12361      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12362      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12363        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12364      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12365      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12366        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12367      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12368      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12369      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12370      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12371        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12372      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12373      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12374      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12375        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12376        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12377      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12378      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12379        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12380        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12381      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12382        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12383      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12384      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12385      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12386        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12387      329,   330,     0,   331,   332,   333,   334,   867,     0,   336,
12388      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12389        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12390        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12391      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12392        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12393      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12394      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12395      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12396        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12397      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12398      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12399      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12400      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12401      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12402      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12403      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12404      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12405      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12406      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12407        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12408        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12409      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12410      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12411        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12412        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12413      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12414      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12415        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12416      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12417        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12418      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12419      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12420      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12421      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12422      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12423        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12424      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12425      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12426        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12427        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12428      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12429      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12430      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12431      333,   334,   882,     0,   336,   337,   338,   339,     0,   340,
12432      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12433      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12434        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12435      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12436        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12437      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12438      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12439      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12440      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12441      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12442      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12443      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12444      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12445      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12446      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12447        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12448      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12449      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12450        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12451      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12452      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12453        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12454      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12455      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12456      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12457      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12458        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12459      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12460      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12461      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12462        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12463        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12464      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12465      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12466        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12467        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12468      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12469        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12470      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12471      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12472      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12473        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12474      329,   330,     0,   331,   332,   333,   334,   943,     0,   336,
12475      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12476        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12477        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12478      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12479        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12480      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12481      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12482      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12483        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12484      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12485      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12486      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12487      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12488      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12489      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12490      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12491      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12492      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12493      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12494        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12495        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12496      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12497      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12498        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12499        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12500      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12501      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12502        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12503      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12504        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12505      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12506      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12507      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12508      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12509      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12510        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12511      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12512      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12513        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12514        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12515      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12516      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12517      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12518      333,   334,   959,     0,   336,   337,   338,   339,     0,   340,
12519      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12520      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12521        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12522      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12523        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12524      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12525      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12526      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12527      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12528      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12529      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12530      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12531      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12532      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12533      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12534        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12535      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12536      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12537        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12538      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12539      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12540        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12541      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12542      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12543      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12544      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12545        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12546      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12547      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12548      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12549        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12550        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12551      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12552      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12553        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12554        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12555      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12556        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12557      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12558      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12559      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12560        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12561      329,   330,     0,   331,   332,   333,   334,   994,     0,   336,
12562      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12563        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12564        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12565      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12566        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12567      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12568      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12569      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12570        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12571      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12572      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12573      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12574      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12575      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12576      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12577      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12578      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12579      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12580      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12581        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12582        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12583      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12584      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12585        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12586        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12587      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12588      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12589        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12590      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12591        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12592      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12593      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12594      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12595      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12596      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12597        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12598      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12599      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12600        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12601        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12602      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12603      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12604      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12605      333,   334,  1050,     0,   336,   337,   338,   339,     0,   340,
12606      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12607      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12608        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12609      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12610        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12611      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12612      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12613      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12614      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12615      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12616      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12617      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12618      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12619      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12620      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12621        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12622      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12623      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12624        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12625      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12626      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12627        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12628      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12629      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12630      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12631      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12632        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12633      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12634      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12635      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12636        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12637        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12638      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12639      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12640        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12641        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12642      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12643        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12644      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12645      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12646      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12647        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12648      329,   330,     0,   331,   332,   333,   334,  1054,     0,   336,
12649      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12650        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12651        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12652      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12653        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12654      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12655      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12656      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12657        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12658      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12659      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12660      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12661      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12662      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12663      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12664      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12665      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12666      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12667      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12668        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12669        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12670      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12671      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12672        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12673        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12674      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12675      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12676        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12677      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12678        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12679      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12680      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12681      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12682      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12683      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12684        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12685      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12686      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12687        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12688        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12689      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12690      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12691      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12692      333,   334,  1056,     0,   336,   337,   338,   339,     0,   340,
12693      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12694      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12695        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12696      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12697        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12698      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12699      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12700      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12701      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12702      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12703      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12704      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12705      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12706      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12707      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12708        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12709      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12710      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12711        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12712      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12713      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12714        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12715      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12716      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12717      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12718      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12719        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12720      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12721      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12722      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12723        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12724        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12725      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12726      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12727        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12728        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12729      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12730        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12731      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12732      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12733      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12734        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12735      329,   330,     0,   331,   332,   333,   334,  1058,     0,   336,
12736      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12737        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12738        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12739      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12740        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12741      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12742      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12743      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12744        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12745      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12746      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12747      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12748      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12749      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12750      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12751      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12752      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12753      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12754      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12755        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12756        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12757      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12758      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12759        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12760        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12761      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12762      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12763        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12764      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12765        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12766      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12767      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12768      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12769      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12770      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12771        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12772      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12773      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12774        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12775        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12776      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12777      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12778      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12779      333,   334,  1062,     0,   336,   337,   338,   339,     0,   340,
12780      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12781      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12782        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12783      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12784        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12785      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12786      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12787      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12788      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12789      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12790      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12791      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12792      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12793      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12794      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12795        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12796      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12797      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12798        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12799      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12800      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12801        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12802      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12803      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12804      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12805      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12806        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12807      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12808      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12809      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12810        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12811        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12812      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12813      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12814        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12815        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12816      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12817        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12818      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12819      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12820      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12821        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12822      329,   330,     0,   331,   332,   333,   334,  1070,     0,   336,
12823      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12824        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12825        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12826      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12827        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12828      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12829      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12830      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12831        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12832      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12833      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12834      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12835      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12836      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12837      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12838      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12839      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12840      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12841      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12842        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12843        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12844      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12845      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12846        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12847        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12848      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12849      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12850        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12851      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12852        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12853      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12854      248,   249,   250,   251,     0,     0,   727,   253,   254,   255,
12855      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12856      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12857      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12858        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12859      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12860      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12861        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12862        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12863      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12864      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12865      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12866      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
12867      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12868      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12869        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12870      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12871        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12872      377,   378,   379,   380,   381,   382,   730,   384,     0,   385,
12873      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12874      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12875      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12876      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12877      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12878      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12879      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12880      442,   443,   444,   445,     0,   446,   447,     0,   731,   449,
12881      450,   451,   452,   453,   454,   732,   456,   457,   458,   459,
12882        0,   460,   461,   462,   463,  1253,     0,   465,   466,   467,
12883      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12884      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12885        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12886      493,     0,   734,   495,     0,     0,   735,   497,   498,   499,
12887      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12888        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12889      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12890      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12891      529,   530,   736,   532,   533,   534,   535,   536,   537,   538,
12892      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12893        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12894      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12895      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12896      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12897        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12898        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12899      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12900      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12901        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12902        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12903      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12904        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12905      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12906      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12907      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12908        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12909      329,   330,     0,   331,   332,   333,   334,  1549,     0,   336,
12910      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12911        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12912        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
12913      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
12914        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
12915      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
12916      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
12917      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
12918        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
12919      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
12920      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
12921      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
12922      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
12923      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
12924      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
12925      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
12926      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
12927      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
12928      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
12929        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
12930        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
12931      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
12932      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
12933        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
12934        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
12935      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
12936      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12937        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
12938      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
12939        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
12940      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
12941      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
12942      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
12943      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
12944      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
12945        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
12946      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
12947      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
12948        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
12949        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
12950      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
12951      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
12952      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
12953      333,   334,  1579,     0,   336,   337,   338,   339,     0,   340,
12954      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
12955      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
12956        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
12957      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
12958        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
12959      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
12960      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
12961      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
12962      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
12963      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
12964      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
12965      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
12966      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
12967      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
12968      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
12969        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
12970      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
12971      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
12972        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
12973      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
12974      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
12975        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
12976      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
12977      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
12978      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
12979      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
12980        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
12981      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
12982      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
12983      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
12984        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
12985        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
12986      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
12987      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
12988        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
12989        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
12990      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
12991        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
12992      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
12993      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
12994      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
12995        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
12996      329,   330,     0,   331,   332,   333,   334,  1581,     0,   336,
12997      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
12998        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
12999        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13000      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13001        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13002      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13003      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13004      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13005        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13006      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13007      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13008      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13009      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13010      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13011      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13012      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13013      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13014      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13015      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13016        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13017        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13018      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13019      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13020        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13021        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13022      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13023      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13024        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13025      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13026        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13027      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13028      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13029      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13030      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13031      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13032        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13033      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13034      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13035        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13036        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13037      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13038      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13039      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13040      333,   334,  1651,     0,   336,   337,   338,   339,     0,   340,
13041      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13042      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13043        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13044      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13045        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13046      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13047      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13048      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13049      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13050      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13051      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13052      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13053      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13054      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13055      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13056        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13057      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13058      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13059        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13060      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13061      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13062        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13063      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13064      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13065      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13066      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13067        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13068      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13069      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13070      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13071        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13072        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13073      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13074      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13075        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13076        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13077      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13078        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13079      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13080      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13081      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13082        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13083      329,   330,     0,   331,   332,   333,   334,  1653,     0,   336,
13084      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13085        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13086        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13087      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13088        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13089      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13090      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13091      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13092        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13093      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13094      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13095      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13096      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13097      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13098      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13099      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13100      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13101      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13102      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13103        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13104        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13105      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13106      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13107        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13108        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13109      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13110      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13111        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13112      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13113        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13114      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13115      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13116      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13117      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13118      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13119        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13120      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13121      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13122        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13123        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13124      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13125      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13126      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13127      333,   334,  1655,     0,   336,   337,   338,   339,     0,   340,
13128      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13129      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13130        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13131      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13132        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13133      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13134      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13135      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13136      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13137      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13138      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13139      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13140      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13141      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13142      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13143        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13144      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13145      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13146        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13147      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13148      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13149        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13150      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13151      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13152      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13153      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13154        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13155      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13156      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13157      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13158        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13159        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13160      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13161      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13162        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13163        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13164      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13165        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13166      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13167      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13168      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13169        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13170      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
13171      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13172        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13173        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13174      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13175        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13176      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13177      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13178      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13179        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13180      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13181      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13182      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13183      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13184      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13185      446,   447,     0,   448,   449,   450,   451,   452,   453,  1751,
13186      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13187      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13188      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13189      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13190        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13191        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13192      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13193      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13194        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13195        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13196      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13197      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13198        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13199      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13200        0,     0,  2012,     0,   236,   237,     0,   238,   239,     0,
13201      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13202      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13203      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13204      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13205      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13206        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13207      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13208      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13209        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13210        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13211      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13212      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13213      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13214      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
13215      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13216      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13217        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13218      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13219        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13220      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13221      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13222      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13223      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13224      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13225      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13226      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13227      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13228      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13229      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13230        0,   460,   461,   462,   463,   464,     0,     0,   466,   467,
13231      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13232      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13233        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13234      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13235      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13236        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13237      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13238      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13239      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13240      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13241        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13242      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13243      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13244      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13245        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13246        0,   727,   253,   254,   255,   256,     0,   257,   258,   259,
13247      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13248      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13249        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13250        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13251      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13252        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13253      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13254      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13255      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13256        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13257      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
13258      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13259        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13260        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13261      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13262        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13263      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13264      382,   730,   384,     0,   385,   386,   387,   388,     0,   389,
13265      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13266        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13267      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13268      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13269      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13270      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13271      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13272      446,   447,     0,   731,   449,   450,   451,   452,   453,   454,
13273      732,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13274     1253,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13275      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13276      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13277        0,  2044,   490,   491,   492,   493,     0,   734,   495,     0,
13278        0,   735,   497,   498,   499,   500,     0,   501,   502,   503,
13279      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13280      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13281        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13282        0,     0,   526,   527,   528,   529,   530,   736,   532,   533,
13283      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13284      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13285        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13286      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13287        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13288      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13289      248,   249,   250,   251,     0,     0,   727,   253,   254,   255,
13290      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13291      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13292      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13293        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13294      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13295      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13296        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13297        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13298      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13299      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13300      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13301      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
13302      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13303      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13304        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13305      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13306        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13307      377,   378,   379,   380,   381,   382,   730,   384,     0,   385,
13308      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13309      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13310      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13311      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13312      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13313      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13314      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13315      442,   443,   444,   445,     0,   446,   447,     0,   731,   449,
13316      450,   451,   452,   453,   454,  2118,   456,   457,   458,   459,
13317        0,   460,   461,   462,   463,  2119,     0,   465,   466,   467,
13318      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13319      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13320        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13321      493,     0,   734,   495,     0,     0,  2120,   497,   498,   499,
13322      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13323        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13324      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13325      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13326      529,   530,   736,   532,   533,   534,   535,   536,   537,   538,
13327      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13328        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13329      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13330      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13331      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13332        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13333        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13334      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13335      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13336        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13337        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13338      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13339        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13340      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13341      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13342      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13343        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13344      329,   330,     0,   331,   332,   333,   334,  2356,     0,   336,
13345      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13346        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13347        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13348      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13349        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13350      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13351      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13352      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13353        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13354      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13355      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13356      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13357      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13358      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13359      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13360      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13361      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13362      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13363      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13364        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13365        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13366      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13367      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13368        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13369        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13370      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13371      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13372        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13373      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13374        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13375      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13376      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13377      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13378      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13379      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13380        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13381      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13382      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13383        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13384        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13385      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13386      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13387      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13388      333,   334,  2360,     0,   336,   337,   338,   339,     0,   340,
13389      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13390      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13391        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13392      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13393        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13394      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13395      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13396      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13397      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13398      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13399      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13400      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13401      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13402      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13403      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13404        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13405      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13406      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13407        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13408      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13409      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13410        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13411      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13412      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13413      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13414      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13415        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13416      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13417      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13418      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13419        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13420        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13421      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13422      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13423        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13424        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13425      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13426        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13427      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13428      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13429      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13430        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13431      329,   330,     0,   331,   332,   333,   334,  2400,     0,   336,
13432      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13433        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13434        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13435      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13436        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13437      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13438      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13439      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13440        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13441      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13442      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13443      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13444      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13445      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13446      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13447      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13448      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13449      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13450      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13451        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13452        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13453      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13454      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13455        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13456        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13457      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13458      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13459        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13460      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13461        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13462      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13463      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13464      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13465      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13466      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13467        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13468      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13469      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13470        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13471        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13472      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13473      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13474      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13475      333,   334,  2435,     0,   336,   337,   338,   339,     0,   340,
13476      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13477      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13478        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13479      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13480        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13481      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13482      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13483      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13484      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13485      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13486      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13487      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13488      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13489      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13490      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13491        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13492      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13493      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13494        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13495      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13496      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13497        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13498      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13499      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13500      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13501      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13502        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13503      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13504      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13505      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13506        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13507        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13508      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13509      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13510        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13511        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13512      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13513        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13514      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13515      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13516      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13517        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13518      329,   330,     0,   331,   332,   333,   334,  2754,     0,   336,
13519      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13520        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13521        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13522      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13523        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13524      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13525      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13526      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13527        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13528      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13529      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13530      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13531      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13532      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13533      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13534      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13535      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13536      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13537      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13538        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13539        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13540      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13541      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13542        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13543        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13544      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13545      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13546        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13547      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13548        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13549      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13550      248,   249,   250,   251,     0,     0,   727,   253,   254,   255,
13551      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13552      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13553      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13554        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13555      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13556      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13557        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13558        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13559      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13560      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13561      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13562      333,   334,   335,     0,   336,   337,   338,   339,     0,   340,
13563      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13564      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13565        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13566      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13567        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13568      377,   378,   379,   380,   381,   382,   730,   384,     0,   385,
13569      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13570      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13571      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13572      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13573      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13574      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13575      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13576      442,   443,   444,   445,     0,   446,   447,     0,   731,   449,
13577      450,   451,   452,   453,   454,   732,   456,   457,   458,   459,
13578        0,   460,   461,   462,   463,  2119,     0,   465,   466,   467,
13579      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13580      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13581        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13582      493,     0,   734,   495,     0,     0,  2120,   497,   498,   499,
13583      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13584        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13585      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13586      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13587      529,   530,   736,   532,   533,   534,   535,   536,   537,   538,
13588      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13589        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13590      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13591      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13592      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13593        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13594        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13595      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13596      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13597        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13598        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13599      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13600        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13601      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13602      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13603      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13604        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13605      329,   330,     0,   331,   332,   333,   334,  2820,     0,   336,
13606      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13607        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13608        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13609      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13610        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13611      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13612      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13613      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13614        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13615      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13616      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13617      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13618      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13619      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13620      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13621      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13622      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13623      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13624      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13625        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13626        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13627      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13628      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13629        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13630        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13631      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13632      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13633        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13634      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13635        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13636      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13637      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13638      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13639      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13640      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13641        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13642      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13643      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13644        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13645        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13646      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13647      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13648      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13649      333,   334,  2833,     0,   336,   337,   338,   339,     0,   340,
13650      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13651      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13652        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13653      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13654        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13655      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13656      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13657      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13658      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13659      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13660      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13661      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13662      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13663      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13664      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13665        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13666      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13667      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13668        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13669      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13670      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13671        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13672      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13673      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13674      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13675      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13676        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13677      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13678      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13679      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13680        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13681        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13682      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13683      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13684        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13685        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13686      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13687        0,   294,   295,   296,     0,     0,   297,   298,   299,   300,
13688      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13689      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13690      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13691        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13692      329,   330,     0,   331,   332,   333,   334,  2835,     0,   336,
13693      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13694        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13695        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13696      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13697        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13698      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13699      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13700      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13701        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13702      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13703      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13704      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13705      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13706      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13707      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13708      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13709      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13710      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13711      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13712        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13713        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13714      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13715      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13716        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13717        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13718      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13719      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13720        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13721      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13722        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13723      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13724      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13725      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13726      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13727      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13728        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13729      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13730      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13731        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13732        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13733      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13734      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13735      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13736      333,   334,  2950,     0,   336,   337,   338,   339,     0,   340,
13737      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13738      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13739        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13740      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13741        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13742      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13743      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13744      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13745      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13746      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13747      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13748      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13749      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13750      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13751      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13752        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13753      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13754      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13755        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13756      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13757      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13758        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13759      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13760      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13761      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13762      539,   540,   541,   542,   543,   223,     0,     0,     0,     0,
13763        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13764      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13765      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13766      237,     0,   238,   239,     0,   240,   241,   242,   243,   244,
13767        0,   245,   246,     0,   247,   248,   249,   250,   251,     0,
13768        0,   252,   253,   254,   255,   256,     0,   257,   258,   259,
13769      260,   261,     0,     0,     0,   262,   263,   264,   265,     0,
13770      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13771        0,     0,   275,   276,   277,     0,     0,     0,     0,     0,
13772        0,     0,   278,   279,   280,   281,   282,   283,   284,   285,
13773      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13774        0,   294,   295,   296,     0,     0,   297,  2972,   299,   300,
13775      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13776      308,   309,   310,   311,   312,   313,   314,   315,   316,     0,
13777      317,     0,   318,   319,   320,   321,     0,   322,     0,   323,
13778        0,     0,     0,   324,   325,   326,     0,   327,   328,     0,
13779      329,   330,     0,   331,   332,   333,   334,   335,     0,   336,
13780      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
13781        0,   346,     0,   347,   348,   349,   350,   351,   352,   353,
13782        0,   354,     0,   355,     0,     0,   356,     0,   357,   358,
13783      359,   360,   361,     0,     0,   362,   363,     0,   364,     0,
13784        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13785      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13786      382,   383,   384,     0,   385,   386,   387,   388,     0,   389,
13787      390,     0,   391,     0,   392,   393,   394,   395,   396,   397,
13788        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13789      403,     0,   404,     0,   405,   406,   407,   408,   409,   410,
13790      411,   412,   413,     0,     0,   414,   415,   416,   417,   418,
13791      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13792      428,   429,   430,   431,   432,   433,   434,     0,   435,   436,
13793      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13794      446,   447,     0,   448,   449,   450,   451,   452,   453,   454,
13795      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13796      464,     0,   465,   466,   467,   468,   469,     0,   470,   471,
13797      472,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13798      481,   482,   483,   484,   485,     0,   486,   487,     0,   488,
13799        0,   489,   490,   491,   492,   493,     0,   494,   495,     0,
13800        0,   496,   497,   498,   499,   500,     0,   501,   502,   503,
13801      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13802      512,     0,     0,   513,   514,   515,   516,   517,   518,   519,
13803        0,   520,     0,   521,   522,   523,   524,     0,     0,   525,
13804        0,     0,   526,   527,   528,   529,   530,   531,   532,   533,
13805      534,   535,   536,   537,   538,   539,   540,   541,   542,   543,
13806      223,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13807        0,     0,     0,     0,     0,   224,   225,   226,   227,   228,
13808      229,   230,   231,     0,   233,   234,   235,     0,     0,     0,
13809        0,     0,     0,     0,   236,   237,     0,   238,   239,     0,
13810      240,   241,   242,   243,   244,     0,   245,   246,     0,   247,
13811      248,   249,   250,   251,     0,     0,   252,   253,   254,   255,
13812      256,     0,   257,   258,   259,   260,   261,     0,     0,     0,
13813      262,   263,   264,   265,     0,   266,   267,   268,     0,   269,
13814      270,   271,   272,   273,   274,     0,     0,   275,   276,   277,
13815        0,     0,     0,     0,     0,     0,     0,   278,   279,   280,
13816      281,   282,   283,   284,   285,   286,     0,   287,     0,   288,
13817      289,   290,   291,   292,   293,     0,   294,   295,   296,     0,
13818        0,   297,   298,   299,   300,   301,     0,   302,   303,   304,
13819        0,   305,   306,   307,     0,   308,   309,   310,   311,   312,
13820      313,   314,   315,   316,     0,   317,     0,   318,   319,   320,
13821      321,     0,   322,     0,   323,     0,     0,     0,   324,   325,
13822      326,     0,   327,   328,     0,   329,   330,     0,   331,   332,
13823      333,   334,  4084,     0,   336,   337,   338,   339,     0,   340,
13824      341,   342,   343,   344,   345,     0,   346,     0,   347,   348,
13825      349,   350,   351,   352,   353,     0,   354,     0,   355,     0,
13826        0,   356,     0,   357,   358,   359,   360,   361,     0,     0,
13827      362,   363,     0,   364,     0,     0,   365,   366,   367,     0,
13828        0,   368,   369,   370,   371,   372,   373,   374,   375,   376,
13829      377,   378,   379,   380,   381,   382,   383,   384,     0,   385,
13830      386,   387,   388,     0,   389,   390,     0,   391,     0,   392,
13831      393,   394,   395,   396,   397,     0,   398,     0,     0,   399,
13832      400,   401,     0,     0,   402,   403,     0,   404,     0,   405,
13833      406,   407,   408,   409,   410,   411,   412,   413,     0,     0,
13834      414,   415,   416,   417,   418,   419,   420,   421,     0,   422,
13835      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
13836      433,   434,     0,   435,   436,   437,   438,   439,   440,   441,
13837      442,   443,   444,   445,     0,   446,   447,     0,   448,   449,
13838      450,   451,   452,   453,   454,   455,   456,   457,   458,   459,
13839        0,   460,   461,   462,   463,   464,     0,   465,   466,   467,
13840      468,   469,     0,   470,   471,   472,   473,     0,   474,   475,
13841      476,   477,   478,   479,   480,   481,   482,   483,   484,   485,
13842        0,   486,   487,     0,   488,     0,   489,   490,   491,   492,
13843      493,     0,   494,   495,     0,     0,   496,   497,   498,   499,
13844      500,     0,   501,   502,   503,   504,   505,   506,   507,     0,
13845        0,   508,   509,   510,   511,   512,     0,     0,   513,   514,
13846      515,   516,   517,   518,   519,     0,   520,     0,   521,   522,
13847      523,   524,     0,     0,   525,     0,     0,   526,   527,   528,
13848      529,   530,   531,   532,   533,   534,   535,   536,   537,   538,
13849      539,   540,   541,   542,   543,   996,     0,     0,     0,     0,
13850        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13851      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
13852      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
13853      237,     0,   238,   239,   784,   240,   241,   242,     0,   997,
13854      785,   998,   999,     0,   247,   248,   249,   250,   251,     0,
13855        0,   252,   253,  1000,  1001,   256,     0,   257,   258,   259,
13856      260,     0,     0,   786,     0,   262,   263,   264,   265,   787,
13857      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
13858        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
13859        0,     0,   278,   279,   280,   281,   282,   283,  1002,  1003,
13860      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
13861        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
13862      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
13863      308,   309,   310,   311,     0,   313,   314,   315,     0,     0,
13864      317,     0,   318,   319,  1005,   321,     0,   322,     0,   323,
13865      790,     0,   791,   324,   325,   326,     0,   327,     0,     0,
13866        0,   330,     0,   331,   332,   333,   334,   335,   792,   336,
13867      337,   338,   339,  2015,   340,   341,   342,   343,   344,   345,
13868        0,   346,   793,  2016,   348,   349,   350,   351,  1007,  1008,
13869        0,  1009,     0,   355,   794,   795,   356,   796,   357,   358,
13870      359,   360,   361,     0,     0,   362,     0,   797,   364,   798,
13871        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
13872      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
13873      382,   383,  1010,   799,  1011,   386,   387,     0,     0,   389,
13874      390,   800,   391,     0,     0,   393,  1012,   395,   396,   397,
13875        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
13876     2018,   801,   404,   802,     0,   406,   407,   408,   409,   410,
13877      411,   412,   413,     0,     0,   414,   415,     0,   417,     0,
13878      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
13879      428,   429,  1013,   431,   432,   433,   434,     0,   435,   436,
13880      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
13881      446,   447,   803,   448,   449,   450,     0,   452,   453,   454,
13882      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
13883      464,     0,   465,   466,  2019,   468,   469,   804,   470,   471,
13884     1015,   473,     0,   474,   475,   476,   477,   478,   479,   480,
13885      481,   482,   483,   484,     0,     0,   486,   487,     0,   488,
13886      805,   489,   490,   491,   492,   493,     0,  1016,  1017,     0,
13887        0,   496,   497,     0,   499,     0,     0,   501,   502,   503,
13888      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
13889      512,     0,     0,   513,   514,   515,   516,   517,     0,  1018,
13890     2020,   520,   806,   521,   522,   523,   524,     0,     0,   525,
13891        0,     0,   526,   527,   528,   529,   530,   531,   996,     0,
13892        0,     0,     0,     0,     0,     0,     0,   541,   542,   543,
13893        0,     0,     0,   224,   225,   226,   227,   228,   229,   230,
13894      231,     0,   233,   234,   235,     0,     0,     0,     0,     0,
13895        0,     0,   236,   237,     0,   238,   239,   784,   240,   241,
13896      242,     0,   997,   785,   998,   999,     0,   247,   248,   249,
13897      250,   251,     0,     0,   252,   253,  1000,  1001,   256,     0,
13898      257,   258,   259,   260,     0,     0,   786,     0,   262,   263,
13899      264,   265,   787,   266,   267,   268,     0,   269,   270,   271,
13900      272,   273,   274,     0,   788,   275,   276,   277,     0,     0,
13901        0,   789,     0,     0,     0,   278,   279,   280,   281,   282,
13902      283,  1002,  1003,   286,     0,   287,     0,   288,   289,   290,
13903      291,   292,   293,     0,   294,   295,   296,     0,     0,   297,
13904      298,  1004,   300,   301,     0,   302,   303,   304,     0,   305,
13905      306,   307,     0,   308,   309,   310,   311,     0,   313,   314,
13906      315,     0,     0,   317,     0,   318,   319,  1005,   321,     0,
13907      322,     0,   323,   790,     0,   791,   324,   325,   326,     0,
13908      327,     0,     0,     0,   330,     0,   331,   332,   333,   334,
13909      335,   792,   336,   337,   338,   339,     0,   340,   341,   342,
13910      343,   344,   345,     0,   346,   793,     0,   348,   349,   350,
13911      351,  1007,  1008,     0,  1009,     0,   355,   794,   795,   356,
13912      796,   357,   358,   359,   360,   361,     0,     0,   362,     0,
13913      797,   364,   798,     0,   365,   366,   367,     0,     0,   368,
13914      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
13915      379,   380,   381,   382,   383,  1010,   799,  1011,   386,   387,
13916        0,     0,   389,   390,   800,   391,  2114,     0,   393,  1012,
13917      395,   396,   397,     0,   398,     0,     0,   399,   400,   401,
13918        0,     0,   402,     0,   801,   404,   802,     0,   406,   407,
13919      408,   409,   410,   411,   412,   413,     0,     0,   414,   415,
13920        0,   417,     0,   419,   420,   421,     0,   422,   423,   424,
13921      425,   426,   427,   428,   429,  1013,   431,   432,   433,   434,
13922        0,   435,   436,   437,   438,   439,   440,   441,   442,   443,
13923      444,   445,     0,   446,   447,   803,   448,   449,   450,     0,
13924      452,   453,   454,   455,   456,   457,   458,   459,     0,   460,
13925      461,   462,   463,   464,     0,   465,   466,  2019,   468,   469,
13926      804,   470,   471,  1015,   473,     0,   474,   475,   476,   477,
13927      478,   479,   480,   481,   482,   483,   484,     0,     0,   486,
13928      487,  3668,   488,   805,   489,   490,   491,   492,   493,     0,
13929     1016,  1017,     0,     0,   496,   497,     0,   499,     0,     0,
13930      501,   502,   503,   504,   505,   506,   507,     0,     0,   508,
13931      509,   510,   511,   512,     0,     0,   513,   514,   515,   516,
13932      517,     0,  1018,     0,   520,   806,   521,   522,   523,   524,
13933        0,     0,   525,     0,     0,   526,   527,   528,   529,   530,
13934      531,   223,     0,     0,     0,     0,     0,     0,     0,     0,
13935      541,   542,   543,     0,     0,     0,   224,   225,   226,   227,
13936      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
13937        0,     0,     0,     0,     0,   236,   237,     0,   238,   239,
13938        0,   240,   241,   242,   243,   244,     0,   245,   246,     0,
13939      247,   248,   249,   250,   251,     0,     0,   252,   253,   254,
13940      255,   256,     0,   257,   258,   259,   260,   261,     0,     0,
13941        0,   262,   263,   264,   265,     0,   266,   267,   268,     0,
13942      269,   270,   271,   272,   273,   274,     0,     0,   275,   276,
13943      277,     0,     0,     0,     0,     0,     0,     0,   278,   279,
13944      280,   281,   282,   283,   284,   285,   286,     0,   287,     0,
13945      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
13946        0,     0,   297,   298,   299,   300,   301,     0,   302,   303,
13947      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
13948      312,   313,   314,   315,   316,     0,   317,     0,   318,   319,
13949      320,   321,     0,   322,     0,   323,     0,     0,     0,   324,
13950      325,   326,     0,   327,   328,     0,   329,   330,     0,   331,
13951      332,   333,   334,   335,     0,   336,   337,   338,   339,     0,
13952      340,   341,   342,   343,   344,   345,     0,   346,     0,   347,
13953      348,   349,   350,   351,   352,   353,     0,   354,     0,   355,
13954        0,     0,   356,     0,   357,   358,   359,   360,   361,     0,
13955        0,   362,   363,     0,   364,     0,     0,   365,   366,   367,
13956        0,     0,   368,   369,   370,   371,   372,   373,   374,   375,
13957      376,   377,   378,   379,   380,   381,   382,   383,   384,     0,
13958      385,   386,   387,   388,     0,   389,   390,     0,   391,     0,
13959      392,   393,   394,   395,   396,   397,     0,   398,     0,     0,
13960      399,   400,   401,     0,     0,   402,   403,     0,   404,     0,
13961      405,   406,   407,   408,   409,   410,     0,   412,   413,     0,
13962        0,   414,   415,   416,   417,   418,   419,   420,   421,     0,
13963      422,   423,   424,   425,   426,   427,     0,   429,   430,   431,
13964      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
13965      441,   442,   443,   444,   445,     0,   446,   447,     0,   448,
13966      449,   450,   451,     0,   453,   454,   455,   456,   457,   458,
13967      459,     0,   460,   461,   462,   463,   464,     0,   465,   466,
13968      467,   468,   469,     0,   470,   471,   472,   473,     0,   474,
13969      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
13970      485,     0,   486,   487,     0,   488,     0,   489,   490,   491,
13971      492,   493,     0,   494,   495,     0,     0,   496,   497,   498,
13972      499,   500,     0,   501,   502,   503,   504,   505,   506,   507,
13973        0,     0,   508,   509,   510,   511,   512,     0,     0,   513,
13974      514,   515,   516,   517,   518,   519,     0,   520,     0,   521,
13975      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
13976      528,   529,   530,   531,   532,   533,   534,   535,   536,   537,
13977      538,   539,   540,   541,   542,   543,   996,     0,     0,     0,
13978        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
13979        0,   224,   225,   226,   227,   228,   229,   230,   231,     0,
13980      233,   234,   235,     0,     0,     0,     0,     0,     0,     0,
13981      236,   237,     0,   238,   239,   784,   240,   241,   242,     0,
13982      997,   785,   998,   999,     0,   247,   248,   249,   250,   251,
13983        0,     0,   252,   253,  1000,  1001,   256,     0,   257,   258,
13984      259,   260,     0,     0,   786,     0,   262,   263,   264,   265,
13985      787,   266,   267,   268,     0,   269,   270,   271,   272,   273,
13986      274,     0,   788,   275,   276,   277,     0,     0,     0,   789,
13987        0,     0,     0,   278,   279,   280,   281,   282,   283,  1002,
13988     1003,   286,     0,   287,     0,   288,   289,   290,   291,   292,
13989      293,     0,   294,   295,   296,     0,     0,   297,   298,  1004,
13990      300,   301,     0,   302,   303,   304,     0,   305,   306,   307,
13991        0,   308,   309,   310,   311,     0,   313,   314,   315,     0,
13992        0,   317,     0,   318,   319,  1005,   321,     0,   322,     0,
13993      323,   790,     0,   791,   324,   325,   326,     0,   327,     0,
13994        0,     0,   330,     0,   331,   332,   333,   334,   335,   792,
13995      336,   337,   338,   339,     0,   340,   341,   342,   343,   344,
13996      345,     0,   346,   793,     0,   348,   349,   350,   351,  1007,
13997     1008,     0,  1009,     0,   355,   794,   795,   356,   796,   357,
13998      358,   359,   360,   361,     0,     0,   362,     0,   797,   364,
13999      798,     0,   365,   366,   367,     0,     0,   368,   369,   370,
14000      371,   372,   373,   374,   375,   376,   377,   378,   379,   380,
14001      381,   382,   383,  1010,   799,  1011,   386,   387,  2184,     0,
14002      389,   390,   800,   391,     0,     0,   393,  1012,   395,   396,
14003      397,     0,   398,     0,     0,   399,   400,   401,     0,     0,
14004      402,     0,   801,   404,   802,     0,   406,   407,   408,   409,
14005      410,   411,   412,   413,     0,     0,   414,   415,     0,   417,
14006        0,   419,   420,   421,     0,   422,   423,   424,   425,   426,
14007      427,   428,   429,  1013,   431,   432,   433,   434,     0,   435,
14008      436,   437,   438,   439,   440,   441,   442,   443,   444,   445,
14009        0,   446,   447,   803,   448,   449,   450,     0,   452,   453,
14010      454,   455,   456,   457,   458,   459,     0,   460,   461,   462,
14011      463,   464,     0,   465,   466,  1014,   468,   469,   804,   470,
14012      471,  1015,   473,     0,   474,   475,   476,   477,   478,   479,
14013      480,   481,   482,   483,   484,     0,     0,   486,   487,     0,
14014      488,   805,   489,   490,   491,   492,   493,     0,  1016,  1017,
14015        0,     0,   496,   497,     0,   499,     0,     0,   501,   502,
14016      503,   504,   505,   506,   507,     0,     0,   508,   509,   510,
14017      511,   512,     0,     0,   513,   514,   515,   516,   517,     0,
14018     1018,     0,   520,   806,   521,   522,   523,   524,     0,     0,
14019      525,     0,     0,   526,   527,   528,   529,   530,   531,   996,
14020        0,     0,     0,     0,     0,     0,     0,     0,   541,   542,
14021      543,     0,     0,     0,   224,   225,   226,   227,   228,   229,
14022      230,   231,     0,   233,   234,   235,     0,     0,     0,     0,
14023        0,     0,     0,   236,   237,     0,   238,   239,   784,   240,
14024      241,   242,     0,   997,   785,   998,   999,     0,   247,   248,
14025      249,   250,   251,     0,     0,   252,   253,  1000,  1001,   256,
14026        0,   257,   258,   259,   260,     0,     0,   786,     0,   262,
14027      263,   264,   265,   787,   266,   267,   268,     0,   269,   270,
14028      271,   272,   273,   274,     0,   788,   275,   276,   277,     0,
14029        0,     0,   789,     0,     0,     0,   278,   279,   280,   281,
14030      282,   283,  1002,  1003,   286,     0,   287,     0,   288,   289,
14031      290,   291,   292,   293,     0,   294,   295,   296,     0,     0,
14032      297,   298,  1004,   300,   301,     0,   302,   303,   304,     0,
14033      305,   306,   307,     0,   308,   309,   310,   311,     0,   313,
14034      314,   315,     0,     0,   317,     0,   318,   319,  1005,   321,
14035        0,   322,     0,   323,   790,     0,   791,   324,   325,   326,
14036        0,   327,     0,     0,     0,   330,     0,   331,   332,   333,
14037      334,   335,   792,   336,   337,   338,   339,     0,   340,   341,
14038      342,   343,   344,   345,     0,   346,   793,     0,   348,   349,
14039      350,   351,  1007,  1008,     0,  1009,     0,   355,   794,   795,
14040      356,   796,   357,   358,   359,   360,   361,     0,     0,   362,
14041        0,   797,   364,   798,     0,   365,   366,   367,     0,     0,
14042      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
14043      378,   379,   380,   381,   382,   383,  1010,   799,  1011,   386,
14044      387,  3488,     0,   389,   390,   800,   391,     0,     0,   393,
14045     1012,   395,   396,   397,     0,   398,     0,     0,   399,   400,
14046      401,     0,     0,   402,     0,   801,   404,   802,     0,   406,
14047      407,   408,   409,   410,   411,   412,   413,     0,     0,   414,
14048      415,     0,   417,     0,   419,   420,   421,     0,   422,   423,
14049      424,   425,   426,   427,   428,   429,  1013,   431,   432,   433,
14050      434,     0,   435,   436,   437,   438,   439,   440,   441,   442,
14051      443,   444,   445,     0,   446,   447,   803,   448,   449,   450,
14052        0,   452,   453,   454,   455,   456,   457,   458,   459,     0,
14053      460,   461,   462,   463,   464,     0,   465,   466,  1014,   468,
14054      469,   804,   470,   471,  1015,   473,     0,   474,   475,   476,
14055      477,   478,   479,   480,   481,   482,   483,   484,     0,     0,
14056      486,   487,     0,   488,   805,   489,   490,   491,   492,   493,
14057        0,  1016,  1017,     0,     0,   496,   497,     0,   499,     0,
14058        0,   501,   502,   503,   504,   505,   506,   507,     0,     0,
14059      508,   509,   510,   511,   512,     0,     0,   513,   514,   515,
14060      516,   517,     0,  1018,     0,   520,   806,   521,   522,   523,
14061      524,     0,     0,   525,     0,     0,   526,   527,   528,   529,
14062      530,   531,   996,     0,     0,     0,     0,     0,     0,     0,
14063        0,   541,   542,   543,     0,     0,     0,   224,   225,   226,
14064      227,   228,   229,   230,   231,     0,   233,   234,   235,     0,
14065        0,     0,     0,     0,     0,     0,   236,   237,     0,   238,
14066      239,   784,   240,   241,   242,     0,   997,   785,   998,   999,
14067        0,   247,   248,   249,   250,   251,     0,     0,   252,   253,
14068     1000,  1001,   256,     0,   257,   258,   259,   260,     0,     0,
14069      786,     0,   262,   263,   264,   265,   787,   266,   267,   268,
14070        0,   269,   270,   271,   272,   273,   274,     0,   788,   275,
14071      276,   277,     0,     0,     0,   789,     0,     0,     0,   278,
14072      279,   280,   281,   282,   283,  1002,  1003,   286,     0,   287,
14073        0,   288,   289,   290,   291,   292,   293,     0,   294,   295,
14074      296,     0,     0,   297,   298,  1004,   300,   301,     0,   302,
14075      303,   304,     0,   305,   306,   307,     0,   308,   309,   310,
14076      311,     0,   313,   314,   315,     0,     0,   317,     0,   318,
14077      319,  1005,   321,     0,   322,     0,   323,   790,     0,   791,
14078      324,   325,   326,     0,   327,     0,     0,     0,   330,     0,
14079      331,   332,   333,   334,  1006,   792,   336,   337,   338,   339,
14080        0,   340,   341,   342,   343,   344,   345,     0,   346,   793,
14081        0,   348,   349,   350,   351,  1007,  1008,     0,  1009,     0,
14082      355,   794,   795,   356,   796,   357,   358,   359,   360,   361,
14083        0,     0,   362,     0,   797,   364,   798,     0,   365,   366,
14084      367,     0,     0,   368,   369,   370,   371,   372,   373,   374,
14085      375,   376,   377,   378,   379,   380,   381,   382,   383,  1010,
14086      799,  1011,   386,   387,     0,     0,   389,   390,   800,   391,
14087        0,     0,   393,  1012,   395,   396,   397,     0,   398,     0,
14088        0,   399,   400,   401,     0,     0,   402,     0,   801,   404,
14089      802,     0,   406,   407,   408,   409,   410,   411,   412,   413,
14090        0,     0,   414,   415,     0,   417,     0,   419,   420,   421,
14091        0,   422,   423,   424,   425,   426,   427,   428,   429,  1013,
14092      431,   432,   433,   434,     0,   435,   436,   437,   438,   439,
14093      440,   441,   442,   443,   444,   445,     0,   446,   447,   803,
14094      448,   449,   450,     0,   452,   453,   454,   455,   456,   457,
14095      458,   459,     0,   460,   461,   462,   463,   464,     0,   465,
14096      466,  1014,   468,   469,   804,   470,   471,  1015,   473,     0,
14097      474,   475,   476,   477,   478,   479,   480,   481,   482,   483,
14098      484,     0,     0,   486,   487,     0,   488,   805,   489,   490,
14099      491,   492,   493,     0,  1016,  1017,     0,     0,   496,   497,
14100        0,   499,     0,     0,   501,   502,   503,   504,   505,   506,
14101      507,     0,     0,   508,   509,   510,   511,   512,     0,     0,
14102      513,   514,   515,   516,   517,     0,  1018,     0,   520,   806,
14103      521,   522,   523,   524,     0,     0,   525,     0,     0,   526,
14104      527,   528,   529,   530,   531,   996,     0,     0,     0,     0,
14105        0,     0,     0,     0,   541,   542,   543,     0,     0,     0,
14106      224,   225,   226,   227,   228,   229,   230,   231,     0,   233,
14107      234,   235,     0,     0,     0,     0,     0,     0,     0,   236,
14108      237,     0,   238,   239,   784,   240,   241,   242,     0,   997,
14109      785,   998,   999,     0,   247,   248,   249,   250,   251,     0,
14110        0,   252,   253,  1000,  1001,   256,     0,   257,   258,   259,
14111      260,     0,     0,   786,     0,   262,   263,   264,   265,   787,
14112      266,   267,   268,     0,   269,   270,   271,   272,   273,   274,
14113        0,   788,   275,   276,   277,     0,     0,     0,   789,     0,
14114        0,     0,   278,   279,   280,   281,   282,   283,  1002,  1003,
14115      286,     0,   287,     0,   288,   289,   290,   291,   292,   293,
14116        0,   294,   295,   296,     0,     0,   297,   298,  1004,   300,
14117      301,     0,   302,   303,   304,     0,   305,   306,   307,     0,
14118      308,   309,   310,   311,     0,   313,   314,   315,     0,     0,
14119      317,     0,   318,   319,  1005,   321,     0,   322,     0,   323,
14120      790,     0,   791,   324,   325,   326,     0,   327,     0,     0,
14121        0,   330,     0,   331,   332,   333,   334,  1064,   792,   336,
14122      337,   338,   339,     0,   340,   341,   342,   343,   344,   345,
14123        0,   346,   793,     0,   348,   349,   350,   351,  1007,  1008,
14124        0,  1009,     0,   355,   794,   795,   356,   796,   357,   358,
14125      359,   360,   361,     0,     0,   362,     0,   797,   364,   798,
14126        0,   365,   366,   367,     0,     0,   368,   369,   370,   371,
14127      372,   373,   374,   375,   376,   377,   378,   379,   380,   381,
14128      382,   383,  1010,   799,  1011,   386,   387,     0,     0,   389,
14129      390,   800,   391,     0,     0,   393,  1012,   395,   396,   397,
14130        0,   398,     0,     0,   399,   400,   401,     0,     0,   402,
14131        0,   801,   404,   802,     0,   406,   407,   408,   409,   410,
14132      411,   412,   413,     0,     0,   414,   415,     0,   417,     0,
14133      419,   420,   421,     0,   422,   423,   424,   425,   426,   427,
14134      428,   429,  1013,   431,   432,   433,   434,     0,   435,   436,
14135      437,   438,   439,   440,   441,   442,   443,   444,   445,     0,
14136      446,   447,   803,   448,   449,   450,     0,   452,   453,   454,
14137      455,   456,   457,   458,   459,     0,   460,   461,   462,   463,
14138      464,     0,   465,   466,  1014,   468,   469,   804,   470,   471,
14139     1015,   473,     0,   474,   475,   476,   477,   478,   479,   480,
14140      481,   482,   483,   484,     0,     0,   486,   487,     0,   488,
14141      805,   489,   490,   491,   492,   493,     0,  1016,  1017,     0,
14142        0,   496,   497,     0,   499,     0,     0,   501,   502,   503,
14143      504,   505,   506,   507,     0,     0,   508,   509,   510,   511,
14144      512,     0,     0,   513,   514,   515,   516,   517,     0,  1018,
14145        0,   520,   806,   521,   522,   523,   524,     0,     0,   525,
14146        0,     0,   526,   527,   528,   529,   530,   531,   996,     0,
14147        0,     0,     0,     0,     0,     0,     0,   541,   542,   543,
14148        0,     0,     0,   224,   225,   226,   227,   228,   229,   230,
14149      231,     0,   233,   234,   235,     0,     0,     0,     0,     0,
14150        0,     0,   236,   237,     0,   238,   239,   784,   240,   241,
14151      242,     0,   997,   785,   998,   999,     0,   247,   248,   249,
14152      250,   251,     0,     0,   252,   253,  1000,  1001,   256,     0,
14153      257,   258,   259,   260,     0,     0,   786,     0,   262,   263,
14154      264,   265,   787,   266,   267,   268,     0,   269,   270,   271,
14155      272,   273,   274,     0,   788,   275,   276,   277,     0,     0,
14156        0,   789,     0,     0,     0,   278,   279,   280,   281,   282,
14157      283,  1002,  1003,   286,     0,   287,     0,   288,   289,   290,
14158      291,   292,   293,     0,   294,   295,   296,     0,     0,   297,
14159      298,  1004,   300,   301,     0,   302,   303,   304,     0,   305,
14160      306,   307,     0,   308,   309,   310,   311,     0,   313,   314,
14161      315,     0,     0,   317,     0,   318,   319,  1005,   321,     0,
14162      322,     0,   323,   790,     0,   791,   324,   325,   326,     0,
14163      327,     0,     0,     0,   330,     0,   331,   332,   333,   334,
14164      335,   792,   336,   337,   338,   339,     0,   340,   341,   342,
14165      343,   344,   345,     0,   346,   793,     0,   348,   349,   350,
14166      351,  1007,  1008,     0,  1009,     0,   355,   794,   795,   356,
14167      796,   357,   358,   359,   360,   361,     0,     0,   362,     0,
14168      797,   364,   798,     0,   365,   366,   367,     0,     0,   368,
14169      369,   370,   371,   372,   373,   374,   375,   376,   377,   378,
14170      379,   380,   381,   382,   383,  1010,   799,  1011,   386,   387,
14171        0,     0,   389,   390,   800,   391,     0,     0,   393,  1012,
14172      395,   396,   397,     0,   398,     0,     0,   399,   400,   401,
14173        0,     0,   402,     0,   801,   404,   802,     0,   406,   407,
14174      408,   409,   410,   411,   412,   413,     0,     0,   414,   415,
14175        0,   417,     0,   419,   420,   421,     0,   422,   423,   424,
14176      425,   426,   427,   428,   429,  1013,   431,   432,   433,   434,
14177        0,   435,   436,   437,   438,   439,   440,   441,   442,   443,
14178      444,   445,     0,   446,   447,   803,   448,   449,   450,     0,
14179      452,   453,   454,   455,   456,   457,   458,   459,     0,   460,
14180      461,   462,   463,   464,     0,   465,   466,  1014,   468,   469,
14181      804,   470,   471,  1015,   473,     0,   474,   475,   476,   477,
14182      478,   479,   480,   481,   482,   483,   484,     0,     0,   486,
14183      487,     0,   488,   805,   489,   490,   491,   492,   493,     0,
14184     1016,  1017,     0,     0,   496,   497,     0,   499,     0,     0,
14185      501,   502,   503,   504,   505,   506,   507,     0,     0,   508,
14186      509,   510,   511,   512,     0,     0,   513,   514,   515,   516,
14187      517,     0,  1018,     0,   520,   806,   521,   522,   523,   524,
14188        0,     0,   525,     0,     0,   526,   527,   528,   529,   530,
14189      531,   996,     0,     0,     0,     0,     0,     0,     0,     0,
14190      541,   542,   543,     0,     0,     0,   224,   225,   226,   227,
14191      228,   229,   230,   231,     0,   233,   234,   235,     0,     0,
14192        0,     0,     0,     0,     0,   236,   237,     0,   238,   239,
14193      784,   240,   241,   242,     0,   997,   785,   998,   999,     0,
14194      247,   248,   249,   250,   251,     0,     0,   252,   253,  1000,
14195     1001,   256,     0,   257,   258,   259,   260,     0,     0,   786,
14196        0,   262,   263,   264,   265,   787,   266,   267,   268,     0,
14197      269,   270,   271,   272,   273,   274,     0,   788,   275,   276,
14198      277,     0,     0,     0,   789,     0,     0,     0,   278,   279,
14199      280,   281,   282,   283,  1002,  1003,   286,     0,   287,     0,
14200      288,   289,   290,   291,   292,   293,     0,   294,   295,   296,
14201        0,     0,   297,   298,  1004,   300,   301,     0,   302,   303,
14202      304,     0,   305,   306,   307,     0,   308,   309,   310,   311,
14203        0,   313,   314,   315,     0,     0,   317,     0,   318,   319,
14204     1005,   321,     0,   322,     0,   323,   790,     0,   791,   324,
14205      325,   326,     0,   327,     0,     0,     0,   330,     0,   331,
14206      332,   333,   334,   335,   792,   336,   337,   338,   339,     0,
14207      340,   341,   342,   343,   344,   345,     0,   346,   793,     0,
14208      348,   349,   350,   351,  1007,  1008,     0,  1009,     0,   355,
14209      794,   795,   356,   796,   357,   358,   359,   360,   361,     0,
14210        0,   362,     0,   797,   364,   798,     0,   365,   366,   367,
14211        0,     0,   368,   369,   370,   371,   372,   373,   374,   375,
14212      376,   377,   378,   379,   380,   381,   382,   383,  1010,   799,
14213     1011,   386,   387,     0,     0,   389,   390,   800,   391,     0,
14214        0,   393,  1012,   395,   396,   397,     0,   398,     0,     0,
14215      399,   400,   401,     0,     0,   402,     0,   801,   404,   802,
14216        0,   406,   407,   408,   409,   410,   411,   412,   413,     0,
14217        0,   414,   415,     0,   417,     0,   419,   420,   421,     0,
14218      422,   423,   424,   425,   426,   427,   428,   429,  1013,   431,
14219      432,   433,   434,     0,   435,   436,   437,   438,   439,   440,
14220      441,   442,   443,   444,   445,     0,   446,   447,   803,   448,
14221      449,   450,     0,   452,   453,   454,   455,   456,   457,   458,
14222      459,     0,   460,   461,   462,   463,   464,     0,   465,   466,
14223     2019,   468,   469,   804,   470,   471,  1015,   473,     0,   474,
14224      475,   476,   477,   478,   479,   480,   481,   482,   483,   484,
14225        0,     0,   486,   487,     0,   488,   805,   489,   490,   491,
14226      492,   493,     0,  1016,  1017,     0,     0,   496,   497,     0,
14227      499,     0,     0,   501,   502,   503,   504,   505,   506,   507,
14228        0,     0,   508,   509,   510,   511,   512,     0,     0,   513,
14229      514,   515,   516,   517,     0,  1018,     0,   520,   806,   521,
14230      522,   523,   524,     0,     0,   525,     0,     0,   526,   527,
14231      528,   529,   530,   531,   996,     0,     0,     0,     0,     0,
14232        0,     0,     0,   541,   542,   543,     0,     0,     0,   224,
14233      225,   226,   227,   228,   229,   230,   231,     0,   233,   234,
14234      235,     0,     0,     0,     0,     0,     0,     0,   236,   237,
14235        0,   238,   239,   784,   240,   241,   242,     0,   997,   785,
14236      998,   999,     0,   247,   248,   249,   250,   251,     0,     0,
14237      252,   253,  1000,  1001,   256,     0,   257,   258,   259,   260,
14238        0,     0,   786,     0,   262,   263,   264,   265,   787,   266,
14239      267,   268,     0,   269,   270,   271,   272,   273,   274,     0,
14240      788,   275,   276,   277,     0,     0,     0,   789,     0,     0,
14241        0,   278,   279,   280,   281,   282,   283,  1002,  1003,   286,
14242        0,   287,     0,   288,   289,   290,   291,   292,   293,     0,
14243      294,   295,   296,     0,     0,   297,   298,  1004,   300,   301,
14244        0,   302,   303,   304,     0,   305,   306,   307,     0,   308,
14245      309,   310,   311,     0,   313,   314,   315,     0,     0,   317,
14246        0,   318,   319,  1005,   321,     0,   322,     0,   323,   790,
14247        0,   791,   324,   325,   326,     0,   327,     0,     0,     0,
14248      330,     0,   331,   332,   333,   334,   335,   792,   336,   337,
14249      338,   339,     0,   340,   341,   342,   343,   344,   345,     0,
14250      346,   793,     0,   348,   349,   350,   351,  1007,  1008,     0,
14251     1009,     0,   355,   794,   795,   356,   796,   357,   358,   359,
14252      360,   361,     0,     0,   362,     0,   797,   364,   798,     0,
14253      365,   366,   367,     0,     0,   368,   369,   370,   371,   372,
14254      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
14255      383,  1010,   799,  1011,   386,   387,     0,     0,   389,   390,
14256      800,   391,     0,     0,   393,  1012,   395,   396,   397,     0,
14257      398,     0,     0,   399,   400,   401,     0,     0,   402,     0,
14258      801,   404,   802,     0,   406,   407,   408,   409,   410,   411,
14259      412,   413,     0,     0,   414,   415,     0,   417,     0,   419,
14260      420,   421,     0,   422,   423,   424,   425,   426,   427,   428,
14261      429,  1013,   431,   432,   433,   434,     0,   435,   436,   437,
14262      438,   439,   440,   441,   442,   443,   444,   445,     0,   446,
14263      447,   803,   448,   449,   450,     0,   452,   453,   454,   455,
14264      456,   457,   458,   459,     0,   460,   461,   462,   463,   464,
14265        0,   465,   466,     0,   468,   469,   804,   470,   471,  1015,
14266      473,     0,   474,   475,   476,   477,   478,   479,   480,   481,
14267      482,   483,   484,     0,     0,   486,   487,     0,   488,   805,
14268      489,   490,   491,   492,   493,     0,  1016,  1017,     0,     0,
14269      496,   497,     0,   499,     0,     0,   501,   502,   503,   504,
14270      505,   506,   507,     0,     0,   508,   509,   510,   511,   512,
14271        0,     0,   513,   514,   515,   516,   517,     0,  1018,     0,
14272      520,   806,   521,   522,   523,   524,     0,     0,   525,     0,
14273        0,   526,   527,   528,   529,   530,   531,   996,     0,     0,
14274        0,     0,     0,     0,     0,     0,   541,   542,   543,     0,
14275        0,     0,   224,   225,   226,   227,   228,   229,   230,   231,
14276        0,   233,   234,   235,     0,     0,     0,     0,     0,     0,
14277        0,   236,   237,     0,   238,   239,   784,   240,   241,   242,
14278        0,     0,   785,     0,     0,     0,   247,   248,   249,   250,
14279      251,     0,     0,   252,   253,     0,     0,   256,     0,   257,
14280      258,   259,   260,     0,     0,   786,     0,   262,   263,   264,
14281      265,   787,   266,   267,   268,     0,   269,   270,   271,   272,
14282      273,   274,     0,   788,   275,   276,   277,     0,     0,     0,
14283      789,     0,     0,     0,   278,   279,   280,   281,   282,   283,
14284        0,     0,   286,     0,   287,     0,   288,   289,   290,   291,
14285      292,   293,     0,   294,   295,   296,     0,     0,   297,   298,
14286      299,   300,   301,     0,   302,   303,   304,     0,   305,   306,
14287      307,     0,   308,   309,   310,   311,     0,   313,   314,   315,
14288        0,     0,   317,     0,   318,   319,     0,   321,     0,   322,
14289        0,   323,   790,     0,   791,   324,   325,   326,     0,   327,
14290        0,     0,     0,   330,     0,   331,   332,   333,   334,   335,
14291      792,   336,   337,   338,   339,     0,   340,   341,   342,   343,
14292      344,   345,     0,   346,   793,     0,   348,   349,   350,   351,
14293        0,     0,     0,     0,     0,   355,   794,   795,   356,   796,
14294      357,   358,   359,   360,   361,     0,     0,   362,     0,   797,
14295      364,   798,     0,   365,   366,   367,     0,     0,   368,   369,
14296      370,   371,   372,   373,   374,   375,   376,   377,   378,   379,
14297      380,   381,   382,   383,     0,   799,     0,   386,   387,     0,
14298        0,   389,   390,   800,   391,     0,     0,   393,     0,   395,
14299      396,   397,     0,   398,     0,     0,   399,   400,   401,     0,
14300        0,   402,     0,   801,   404,   802,     0,   406,   407,   408,
14301      409,   410,   411,   412,   413,     0,     0,   414,   415,     0,
14302      417,     0,   419,   420,   421,     0,   422,   423,   424,   425,
14303      426,   427,   428,   429,     0,   431,   432,   433,   434,     0,
14304      435,   436,   437,   438,   439,   440,   441,   442,   443,   444,
14305      445,     0,   446,   447,   803,   448,   449,   450,     0,   452,
14306      453,   454,   455,   456,   457,   458,   459,     0,   460,   461,
14307      462,   463,   464,     0,   465,   466,     0,   468,   469,   804,
14308      470,   471,     0,   473,     0,   474,   475,   476,   477,   478,
14309      479,   480,   481,   482,   483,   484,     0,     0,   486,   487,
14310        0,   488,   805,   489,   490,   491,   492,   493,     0,     0,
14311        0,     0,     0,   496,   497,     0,   499,     0,     0,   501,
14312      502,   503,   504,   505,   506,   507,     0,     0,   508,   509,
14313      510,   511,   512,     0,     0,   513,   514,   515,   516,   517,
14314        0,     0,     0,   520,   806,   521,   522,   523,   524,     0,
14315        0,   525,     0,     0,   526,   527,   528,   529,   530,   531,
14316        0,     0,     0,     0,     0,     0,     0,     0,     0,   541,
14317      542,   543
14318 };
14319 
14320 #define yypact_value_is_default(Yystate) \
14321   (!!((Yystate) == (-4498)))
14322 
14323 #define yytable_value_is_error(Yytable_value) \
14324   (!!((Yytable_value) == (-2420)))
14325 
14326 static const yytype_int16 yycheck[] =
14327 {
14328       16,     0,     0,     0,     0,     0,     0,    36,    51,    25,
14329     1039,   205,   572,   602,    21,  1103,  1081,   728,   777,   782,
14330       27,   839,    20,     7,    20,  1048,   675,   676,   677,    21,
14331       14,   726,   681,   881,  1043,    27,  1721,  1356,   808,   183,
14332     1297,   201,  1399,    45,  1014,  1278,   955,   869,   208,  1280,
14333      890,  2654,  1033,    51,   643,  2306,  1842,   966,  1393,   219,
14334       12,   621,  1002,  1003,   935,   751,  1505,  2824,  1404,  1139,
14335       44,   602,  1012,  1017,   735,   208,  2491,  3015,   563,  3042,
14336     1399,  2315,  2797,    22,  3084,  2849,   219,  2851,  1576,    17,
14337     1458,  1757,   940,  2235,  3060,  3341,   944,    36,  1329,  1415,
14338     1333,   949,  3384,    20,  1302,  2023,  2024,  1970,  3071,  3384,
14339      958,  2467,     0,   868,  2646,  2703,   868,  3004,  3437,   990,
14340      968,  3277,   874,   642,  2183,  3657,  2273,   612,  2644,  2645,
14341      170,   883,  3380,  1469,  2281,  1845,  2283,   191,  3646,  3669,
14342     3660,  3593,   731,  2997,   185,  3647,   200,  3305,  1740,  1588,
14343     3004,   634,  1801,   185,    35,  2577,     0,     0,  1474,  1475,
14344        0,    42,     0,  3311,     0,  1385,     0,    50,     0,     0,
14345     1333,   624,     0,     0,     0,     0,  4104,    41,  2711,  3910,
14346      825,   881,   635,  4224,  3058,  4226,  3357,   185,  4281,  3310,
14347     1678,   774,   774,     9,  3240,  1073,  1000,  1001,     9,  4398,
14348      731,    11,    11,  4262,    84,     0,     5,  1011,     0,    48,
14349        0,    41,    62,     0,    13,    14,    70,    35,    55,    22,
14350     4323,  4324,    55,    20,    39,    26,  4319,     5,  1168,  1169,
14351       40,    29,   103,    55,   109,  2642,    55,  2023,  4587,   154,
14352      214,    41,     5,     5,   165,     5,     5,  1187,     0,    26,
14353     2309,   160,     0,  1197,    13,    14,    33,     9,    26,   141,
14354       70,     9,   200,  1081,     5,    33,    39,    46,     5,    26,
14355      181,    76,  2547,  2548,    26,     5,    33,  2552,    26,     5,
14356       55,     5,     5,     5,   933,   192,   193,  2709,  2695,   196,
14357        5,   198,   159,     5,     5,   169,   162,     5,    13,    14,
14358       62,   159,   159,   111,   159,   259,  1539,     4,  2642,    55,
14359      159,   218,     9,   184,  2589,  2590,     5,     5,     9,   160,
14360       81,   109,    72,  4347,   127,    78,   256,   260,    27,     5,
14361      293,    81,  4503,  4504,  2799,   247,   129,   159,  1216,   261,
14362        5,    68,   109,   140,    38,     5,   324,    81,    48,   109,
14363     2409,   911,  2411,  1157,  1158,   111,     3,   102,   134,   341,
14364     4857,  2695,   303,    11,   159,   340,   119,   159,   321,   159,
14365      244,     5,   159,   310,    62,   109,   111,   377,   572,  1183,
14366      266,   328,   151,    30,    31,   400,   181,   159,   379,   181,
14367       11,   181,    40,   109,   181,   419,  4745,   176,   410,   159,
14368      100,  3735,   181,  3737,  2089,   298,    21,   159,    11,   419,
14369      570,   159,    27,    88,   260,   575,   440,    72,    72,    40,
14370       26,   113,    70,  4464,  4517,  1265,   586,   621,   156,   181,
14371      440,   422,   325,   181,   458,   315,   277,   570,   217,   454,
14372      377,   210,   575,   443,   160,  1263,   399,  1217,   204,    70,
14373     1268,  1269,    72,   586,  1348,    72,   456,   328,   246,    72,
14374     4388,  1718,  4959,  3915,    81,  1722,    29,  1724,     4,   335,
14375     1727,   412,   454,     9,     3,  1245,   454,    11,   116,   316,
14376     1069,   456,   283,   316,   251,   179,   398,  1516,   102,   164,
14377      246,   454,  1081,   193,   365,   366,   195,   316,  1521,   244,
14378      454,   367,   424,   114,   558,   346,   328,   454,   114,   201,
14379      251,   158,   246,   160,   251,   313,   251,   102,   102,   377,
14380      458,   454,   298,   276,   454,  1756,   324,   324,   326,   251,
14381      404,   247,   259,   415,   335,  4559,   552,   458,  1069,   454,
14382      328,   316,   102,   299,   244,   454,   343,   458,   363,  3014,
14383     1312,    80,  4901,   607,  1143,  1373,   555,   555,   555,   555,
14384      555,   555,   251,   617,  1083,  1383,   345,  1798,   443,   370,
14385      316,   372,   458,   350,   208,   405,  1809,   377,   458,   357,
14386      358,  3468,   350,   454,   382,   390,   602,   603,   194,   411,
14387      363,   458,  4695,   350,   402,   398,  1049,  4105,   452,   454,
14388      643,   458,   456,   132,   454,   377,  1454,   647,  1456,   458,
14389     4669,  4063,  1143,  1844,  3468,   454,   377,   377,   371,  1371,
14390     4791,   458,   415,   551,  1712,   458,  1535,   377,  1446,   329,
14391     3387,  1449,  1450,   777,   445,   446,   454,   453,  1509,   458,
14392      450,   450,  1464,   454,   642,   643,   642,  3803,  1542,   656,
14393     4849,   658,  3615,   660,   561,   454,  1109,   186,   565,   666,
14394      667,   668,   457,  1503,   656,   457,   658,   457,   660,  4121,
14395      457,  1260,  1125,  1682,   666,  1427,   583,   693,   454,  1268,
14396     1269,  3839,  3830,   443,   400,  3843,   670,  1140,  2747,   641,
14397     3656,   454,   454,   445,   446,   454,   456,   445,   446,  1517,
14398     3638,  3747,   458,   719,  1644,   457,  4799,  1019,  3829,   457,
14399     1719,   727,   458,   687,   730,   731,   732,   911,  4811,  1728,
14400     3891,   409,   377,   377,   454,   766,   643,   333,   454,  1260,
14401      454,   454,  1610,   409,   766,  4776,  1436,  1320,  1320,   454,
14402      452,  1441,   454,   454,   456,  1057,   454,  1392,   445,   446,
14403      313,   280,   366,  1065,   445,   446,   421,   377,   102,  1071,
14404      377,   421,   400,   410,   377,  4496,   454,  2103,   766,   768,
14405      768,   768,   768,   768,   768,   440,  2133,   751,   454,  4265,
14406      440,   366,   366,    22,     3,     4,     5,   398,  4881,   454,
14407        9,   114,   398,  3325,   454,   102,  2714,   169,  2716,   447,
14408      448,   449,   450,  3037,  2037,  4257,   366,   781,    55,   690,
14409      691,   692,  4264,  1617,  1618,  4149,   266,   113,  4746,  4153,
14410     4154,  3578,  4156,  2970,   445,   446,   447,   448,   449,   450,
14411     2977,  2978,   839,    26,  2981,  3709,  3369,   140,   755,   140,
14412      159,  2988,   896,  2179,   447,   448,   449,   450,    72,   691,
14413      824,  3566,   117,   907,     5,  4387,   256,    81,  2644,  2645,
14414     2646,     3,   391,     5,   366,   729,    78,  4353,   256,   733,
14415      399,   194,  1432,   402,  2037,   154,   759,  1755,    78,  1757,
14416      768,    74,   167,   419,   109,  1763,   256,    32,   127,    82,
14417      109,  1769,  1770,  1771,    22,   340,  3303,   244,  3305,    64,
14418       28,  1779,  1780,  2123,   440,   201,  1784,   119,   690,   445,
14419      446,   445,   446,   447,   448,   449,   450,   110,  4846,   119,
14420     2979,  2980,   976,   114,   768,   768,  4208,   815,   768,   233,
14421      768,  2164,   768,  3355,   768,  1584,   768,   768,   845,   846,
14422      768,   768,   768,   768,  3219,  3220,  3221,  3222,   104,   260,
14423     3225,  3226,  3227,  3228,  3229,  3230,  3231,  3232,  3233,  3234,
14424      109,   114,   104,  4245,     3,   102,     3,  3682,   274,  3303,
14425       64,  3305,   109,   138,   127,   266,  4258,  3384,   137,   419,
14426      199,  2349,    78,  4258,   244,  2050,    23,    81,   230,   870,
14427      871,   156,   185,   881,  2704,   153,   141,   244,   114,   127,
14428       22,   163,   221,   194,   310,   455,  3281,  3282,   458,  2658,
14429      333,  4497,  4168,   458,  1725,  1726,  1778,   173,   458,   926,
14430     4506,   246,   366,   119,  1786,  1795,   111,   331,  2363,   871,
14431      337,   173,   404,   312,   103,   274,   321,    22,   141,   198,
14432      343,    80,   343,    80,   138,   310,   953,   954,  2029,  2019,
14433     3384,   273,   980,  1069,   454,  4213,    34,   404,   377,   221,
14434     4218,  4209,   156,  4221,   276,  1081,   454,   974,  2301,   316,
14435     4602,   310,  4574,    64,  1081,   398,   276,   233,   194,  2997,
14436      236,  2673,    78,  4613,   454,  1083,  3004,  1083,   870,  4597,
14437     4610,   233,   131,   340,   236,   132,  4598,  1657,   161,  1115,
14438     1689,   340,  1086,  3990,  1088,   127,  1090,   266,  1092,   246,
14439     1094,  1095,  1096,   379,   161,   184,  4398,  1101,   109,   204,
14440     1605,  4121,   104,   119,   443,   161,   291,  1143,   286,   400,
14441     4093,   109,  4098,  1616,   273,   288,  3990,   456,  1045,  1046,
14442       88,   452,   127,   250,   181,   456,   274,  3904,   162,   186,
14443      658,   659,   660,  1151,    56,   663,   664,   665,   324,   371,
14444      108,   246,    64,  3081,   403,   673,   359,   458,   154,  1688,
14445      274,   371,  1170,  1216,   273,   331,   436,   264,   164,   151,
14446      276,  3945,   310,   454,   333,   224,   122,   274,   124,   331,
14447      419,   173,  1675,   141,   385,   181,  1649,   291,  2455,   262,
14448      207,   340,  1218,  1201,    83,   340,   127,   398,   370,  1662,
14449      372,  1227,   340,    36,   299,   262,  1776,   366,  1216,   356,
14450       30,    31,   359,   310,  1677,  1241,   445,   446,   393,   458,
14451      333,   169,   398,   392,   396,   274,   340,   613,  1432,  4747,
14452      347,   340,   340,   280,  1260,   124,  4494,  1263,  1264,   274,
14453     1290,   233,  1268,  1269,   236,   246,  1263,   406,   634,   328,
14454      251,  1268,  1269,   366,  1305,  1306,   111,  1308,    26,   149,
14455      419,   243,  4428,  1305,  1306,   371,  1308,   454,    88,   435,
14456      276,  4600,   398,    26,   321,   310,    22,  1599,   266,   274,
14457      326,   440,    28,   435,  2005,   118,   365,   366,   108,   393,
14458      291,  3889,  4460,   406,  4756,   454,   244,  1305,  1306,   290,
14459     1308,  3586,   359,  4845,   305,   340,   419,   454,  4850,   221,
14460      256,   335,  2231,   458,   411,   310,   264,   364,  3860,  1489,
14461      369,   141,   371,   319,  3866,  2568,  1648,   440,   218,  3855,
14462     1652,  2574,   149,   264,   380,   206,  1658,  1659,  1322,   331,
14463      386,   454,     0,   367,   391,   340,  4638,   416,   306,   204,
14464      458,   290,   399,  4519,   122,   402,  1373,  4523,  4524,  1681,
14465      137,  3727,  4904,  2402,   388,   371,  1383,   139,   258,   122,
14466     2132,  4663,   149,   244,  2202,   333,   181,   154,  4663,  2412,
14467      273,   127,  2210,   314,  2212,   112,   173,  2406,   379,   458,
14468     1560,   246,   393,  3550,  1564,  4292,   266,   377,   169,  3556,
14469     3557,   218,  3559,   312,  4380,  1422,  1576,    24,   366,   340,
14470      182,  2330,  2331,  2332,  2333,   457,  4672,  4673,   122,   454,
14471      124,   198,  3839,  2342,  4966,  4373,  3843,    44,  4292,  1446,
14472     1368,   422,  1449,  1450,  2199,   120,  1462,  2199,   274,   163,
14473      379,   218,   112,   435,   299,   130,   233,   340,   406,   137,
14474      177,  2050,   377,  1657,  3149,   443,   404,   400,  2666,  2221,
14475      330,   419,   454,   206,   452,   101,   454,   455,   456,  2814,
14476      458,   101,   343,   244,   310,  2742,   281,   111,   458,   443,
14477     1650,   258,   440,   422,  1468,  3637,   306,  2249,  2376,   266,
14478     3363,  2372,   456,  1410,   349,  3839,   454,   221,   112,  3843,
14479     1517,   244,   159,   274,   340,   310,   230,   177,  1678,   314,
14480      419,   454,   326,   333,   155,     8,  3192,   903,    11,   155,
14481      154,  2091,   274,    81,   181,   160,   227,   398,   274,  3325,
14482      218,   440,  2910,   458,  1598,   340,  1562,   923,  1436,   310,
14483     3468,   111,   246,  1441,   331,   186,   366,    40,  2043,   458,
14484      186,   937,   256,    46,   188,   190,   299,  4849,   310,  1476,
14485     1477,  1478,  1479,   177,   310,   324,  1084,   326,   382,  1087,
14486      205,  1089,  1776,  1091,  2920,  1093,   458,    70,   195,  1097,
14487      215,   274,  4349,  1647,   326,    22,   406,  2194,   340,   274,
14488      410,    28,    61,    62,   340,   231,   333,  1614,   234,   419,
14489      343,   231,  1519,  1520,   234,   163,    11,  1624,   202,  1626,
14490      244,  1528,   246,  4586,   419,   392,  1633,   310,   188,  4875,
14491      440,  1538,    53,   382,  1641,   310,   184,   328,  3697,   366,
14492     3699,  2459,  4608,   404,   454,   440,  4584,   293,   281,  3137,
14493      382,  2248,   135,  1965,   382,  2888,   370,   340,   372,  1566,
14494     1567,  1568,  1569,   274,  2752,   398,   122,  1721,   124,  4289,
14495      370,  2549,   372,   221,   274,    70,   260,  2130,   369,   406,
14496      101,   314,   396,  2561,   244,   452,   246,  4625,   455,   456,
14497     1688,   147,  1688,   176,   324,   320,  4411,   255,   181,   310,
14498      127,   299,   421,   314,    24,   396,  2191,   340,   303,  2358,
14499      310,  4331,   330,   311,  1698,  2593,  1700,   265,  1702,  1748,
14500     1704,   440,  1706,   163,    44,   355,  1710,   454,   419,   340,
14501      421,  2712,   274,  4148,   217,   454,   421,  2718,   336,   334,
14502      340,  1740,  1740,  1740,  1740,  1740,  1740,  1123,  3064,  4513,
14503     4507,  3067,  1768,  2631,  1661,   440,  4756,  1664,  1765,  1766,
14504     2783,  1735,   183,   454,   421,  1772,  1773,  1674,   310,   454,
14505     3003,   366,  1689,    11,   412,    72,  1683,   314,  2367,   262,
14506     3212,   221,  2722,   440,    81,  2547,  2548,    89,    64,   208,
14507     2552,   246,  4755,  1800,    70,   251,   251,   154,   454,   310,
14508      256,  4208,    40,   340,  4407,    81,  4213,   344,  1747,  3241,
14509      231,  4218,   232,   234,  4221,   227,  1814,   412,   175,   122,
14510     4071,   124,   370,   244,   372,   310,  1754,  2589,  2590,   340,
14511      314,   161,    70,   109,   382,   111,  2367,  4252,  4245,  4254,
14512     2429,  2659,   297,  1859,   147,   393,  4097,   281,   396,  4083,
14513       42,  4258,   273,   452,   154,   340,   340,   456,   160,   382,
14514      137,   191,   345,   303,   419,   149,  3925,  3926,    13,    14,
14515      154,    63,   149,  2033,  4208,   175,   310,   154,  2038,  4213,
14516      314,   149,  2042,   382,  4218,   440,   154,  4221,   190,  4164,
14517     3147,  1558,  2651,  4040,   315,  4042,  4043,  2091,  2429,  4046,
14518     2771,   324,   325,   205,     4,  1812,   340,  4622,  2068,     9,
14519     1577,  4245,   188,   215,   455,   449,   328,   458,  4675,   137,
14520      454,   198,   456,   303,  4258,   452,   312,   454,   384,   456,
14521      370,   149,   372,   354,   218,   449,   154,   230,   394,   241,
14522      454,   218,   456,   246,  2560,    89,  2562,  2563,   251,  3388,
14523      218,  2111,   227,   256,   334,   438,   396,   369,   260,  3047,
14524      330,  4899,   445,   446,   447,   448,   449,   450,  3056,  2129,
14525      246,   260,   412,   230,   258,   251,   265,  1984,  2800,   455,
14526      198,   258,   458,   453,   396,   419,   366,  4950,   458,   266,
14527      258,  4398,  1984,   453,   260,  2656,  2129,    85,   458,   265,
14528      218,  2161,  4547,  2825,  4549,   184,   440,   419,  4553,   421,
14529     4555,  2010,  2010,   232,   137,   291,   160,   455,   320,   455,
14530      458,  3254,   458,  2052,   455,  2054,   149,   458,  2082,   305,
14531     3261,   154,   412,  2193,  2050,  2089,  4793,  2197,   455,   175,
14532      258,   458,   454,  2050,   455,  2605,   190,   458,   266,  2801,
14533     1967,   382,   227,  4460,  1430,  2215,   227,    77,  2050,  4662,
14534     2193,   205,   455,   412,  4398,   458,  2226,  2379,   227,  3855,
14535     2659,   215,  3990,   455,  3860,   198,   458,     5,  3435,  2239,
14536     3866,   384,    10,   455,    52,  3421,   458,  2247,   330,  2401,
14537       18,   394,   208,   455,   369,   218,   458,   241,   400,   370,
14538        8,   372,  2118,    11,  2416,  3175,   454,  2419,  2420,    37,
14539      324,   325,  2424,  2425,  2247,   392,   454,   393,   456,  2431,
14540      454,   396,   227,  2875,  3440,  3441,  4460,   455,  2102,   452,
14541      458,   454,    40,  3364,  1510,   258,  3472,     9,    46,   455,
14542      333,   260,   458,   266,   419,   455,   421,   328,   458,  1525,
14543      227,   458,  4427,   328,  3183,   454,    52,   328,  3102,  3103,
14544     3008,   455,    70,   455,   458,   410,   458,   455,  1544,   328,
14545      458,    42,   412,   366,   392,  4932,   320,  2084,  2085,   454,
14546     2769,  2493,     8,   204,   437,    11,  2093,  4334,  2095,    15,
14547       16,    17,  2099,   227,   369,  2202,   455,   263,   369,   458,
14548      248,   455,   260,  2210,   458,  2212,   455,   263,   455,   458,
14549      369,   458,   456,   406,   455,  1591,   455,   458,   154,   458,
14550     3659,   396,   419,   328,   421,   396,   419,   135,  1604,   455,
14551      455,  4638,   458,   458,  3467,   377,  3469,   396,  2769,   455,
14552     1616,   454,   458,   456,   419,   260,   421,   440,   419,  2265,
14553      421,   328,  1628,   263,    42,   455,  4663,  2273,   458,   204,
14554      419,   454,   421,  1788,   369,  2281,  1791,  2283,   176,   392,
14555     4873,   455,   455,   181,   458,   458,   437,   455,   455,   454,
14556      458,   458,   419,   454,   421,   333,  2739,  2740,   437,   447,
14557      455,   396,   369,   458,   328,   454,  1672,  3385,  3386,  1675,
14558      370,  2208,   372,  4906,  4638,  2465,   158,  4366,  3179,   217,
14559      458,    52,   455,  2329,   419,   458,   421,   455,   366,   396,
14560      458,   455,   455,  2483,   458,   458,  3645,  3662,   454,  4663,
14561      455,  2491,   159,   458,  4120,   369,  3214,   455,   455,   200,
14562      458,   458,   419,  2359,   421,   455,   455,   455,   458,   454,
14563      458,  2367,  2351,  2351,   262,   181,   455,  2264,   406,   458,
14564      455,   455,   396,   458,  2316,  2272,  3184,  2274,   454,   456,
14565     3248,   419,  4975,  2280,  4292,  4790,   202,   454,   423,  2393,
14566     2394,  2395,  2389,  2390,  3033,   419,   340,   421,   455,  2396,
14567      455,   458,   440,   458,   455,   455,   455,   458,   458,   458,
14568      455,   455,   455,   458,   458,   458,   454,   455,   454,   457,
14569      370,  2605,   372,  2429,   455,  3293,   455,   458,   310,   458,
14570      454,  3010,   455,  3012,   455,   458,  3366,   458,  1804,   181,
14571      142,   455,  3413,     0,   458,   227,   262,   345,  2891,   247,
14572      248,  2495,  4849,  2755,   456,  2352,   455,  2501,  2901,   458,
14573      454,   142,  2459,  3710,  3711,  3712,   260,  3219,  3220,  3221,
14574     3222,   181,   310,  3225,  3226,  3227,  3228,  3229,  3230,  3231,
14575     3232,  3233,  3234,  3159,   455,   455,   260,   458,   458,  3010,
14576      142,  3012,  4400,  2677,   455,   455,   181,   458,   458,  3329,
14577     3252,  3080,   455,   455,   455,   458,   458,   458,   227,   455,
14578      142,  2408,   458,  2410,     8,   455,  2549,    11,   458,   260,
14579      154,    15,    16,    17,   455,  4849,   455,   458,   457,  3281,
14580     3282,    88,  2834,   455,  2836,   333,   458,   310,    32,   455,
14581      438,   455,   458,   419,   458,   421,   328,   445,   446,   447,
14582      448,   449,   450,   142,   455,   455,  3316,   458,   458,  3080,
14583     2593,  2549,   455,   455,   455,   458,   458,   458,   366,   216,
14584     3319,  3320,  3321,  2723,   455,   455,   455,   458,   458,   458,
14585      137,  3024,   455,  3026,   455,   458,   457,   369,  3844,   111,
14586     3846,   771,   149,   773,   400,   260,  3943,   154,  2642,   232,
14587     4841,   454,   159,   382,   255,  2593,   330,   164,   406,   328,
14588      167,   412,   154,   170,   396,  2512,  2766,   208,   455,   454,
14589       64,   419,  2610,    35,   246,   441,   442,   443,   423,   445,
14590      446,   447,   448,   449,   450,  3856,   454,   419,  2626,   421,
14591      260,   198,   440,  2945,  2636,  2637,  2638,   246,    42,  2951,
14592      369,  2695,    42,  2659,  2642,   387,   454,   274,   154,   412,
14593     2657,   218,  2659,   412,  3885,  2698,    77,   154,   294,   142,
14594     4345,   142,   454,     0,   454,   142,   409,   396,   454,   287,
14595        8,   142,   454,    11,  2673,  2673,  2673,  2673,  2673,  2673,
14596       34,   142,   142,   423,   458,   142,   142,   260,   260,   142,
14597      419,   258,   421,   260,   142,   142,   142,  2695,   202,   266,
14598     2698,   142,    40,   154,   260,   142,   142,   142,    46,     8,
14599     2086,   366,    11,  2873,    35,  3563,    15,    16,    17,   454,
14600     3542,  3174,  2098,   216,   154,   454,  2886,   154,   454,   260,
14601        5,     5,    70,    32,   154,   454,   454,   454,   454,   454,
14602      454,    40,     5,   454,   454,     5,   454,    46,   454,   454,
14603      317,    88,   454,  2769,  4011,  4012,  3989,  4014,   262,     5,
14604      454,   454,  2138,     5,  3673,   454,   454,   454,   454,   454,
14605      454,    70,   454,   454,   454,   454,   454,   454,   454,   420,
14606      271,  3093,   200,    35,   458,   458,    92,   216,    35,   154,
14607      258,   154,   256,   340,   377,   377,   456,   135,   328,   366,
14608      137,   377,   377,  2997,   328,  2965,   218,   377,  3120,  3121,
14609     3004,  3123,   149,  3125,  3126,   314,   377,   154,   443,   377,
14610       81,   328,   159,  3793,  3586,   392,  3138,   164,  4614,   142,
14611      167,     8,   260,   170,    11,   260,   332,   213,   176,  2855,
14612      377,   377,   251,   181,   377,   399,   369,   260,   324,   416,
14613      260,   418,   419,   256,   454,   377,   377,   174,   454,    81,
14614      458,   198,   181,    40,  3176,   142,   274,   103,   377,    46,
14615       52,  2778,     0,  2780,  2781,  2782,   377,   176,    52,   217,
14616      400,   218,   181,  2899,   400,   452,   264,   377,   455,   456,
14617      457,   377,   377,    70,   369,   377,    41,  3715,     8,   377,
14618       41,    11,  3780,   202,   203,    15,    16,    17,   377,   328,
14619      377,   377,   458,   260,   377,   202,   260,  2293,   217,   260,
14620      423,   258,   202,   260,   262,   377,   202,   419,   387,   266,
14621       35,    24,  2948,   260,   142,   454,   246,   441,   442,   443,
14622      454,   445,   446,   447,   448,   449,   450,   109,   142,   411,
14623      249,   400,   224,   256,  2970,   246,   246,    35,   135,   154,
14624       88,  2977,  2978,   262,    35,  2981,   265,   454,   208,   329,
14625      454,    34,  2988,   375,   375,  2991,   340,  3137,   452,   452,
14626      317,  2997,   377,   377,   377,   377,   142,   142,  3004,   454,
14627     2997,  4079,  3152,   400,  3010,   142,  3012,  3004,   142,   176,
14628      142,   400,   255,   377,   181,     8,   250,   345,    11,   137,
14629      159,   454,    15,    16,    17,   238,    11,  3177,   415,   238,
14630     3027,   149,   375,   454,   458,   377,   154,   167,   454,   366,
14631      150,   159,   159,   379,  3050,   458,   164,    40,   455,   167,
14632      217,   174,   170,    46,     3,   459,   345,   198,   174,   454,
14633      343,   261,   458,   206,    35,   392,   268,   400,    52,   455,
14634      458,   377,   377,  3079,  3080,  2972,  4385,    70,   454,   328,
14635      198,  3070,  3070,   328,   400,   206,   206,   377,   251,   416,
14636        8,   418,   419,   251,   454,   262,   382,    15,    16,    17,
14637      218,   377,  3099,  3092,  3092,  3149,   377,   330,   412,   154,
14638      438,   208,   144,   251,    42,  2481,  4339,   445,   446,   447,
14639      448,   449,   450,   144,   260,   452,   216,   349,   455,   456,
14640      457,    80,  2498,   246,   216,   216,   324,   259,   377,   458,
14641      258,   369,   260,  2509,   377,   260,   260,   175,   266,   438,
14642     3910,   310,   441,   442,   443,  3289,   445,   446,   447,   448,
14643      449,   450,   262,   337,   202,    35,  3609,  3610,   202,   458,
14644      377,   377,   299,   202,   259,   400,   400,   202,   345,  3622,
14645     4855,  4856,   131,   176,   208,   202,   184,  3184,   181,   296,
14646      142,   443,   154,   412,   154,  3159,  3881,   443,   156,   317,
14647      256,   142,   142,   419,   337,   246,  4453,   454,    35,   202,
14648      203,   246,   260,   454,   260,   172,   208,  4464,   172,   154,
14649       35,   452,   437,   437,   217,   331,   455,   236,   455,   142,
14650     3127,   208,  3129,   260,   455,   455,  3133,   455,   260,   337,
14651      260,   246,   154,   181,   181,   181,   423,   458,   366,    23,
14652      458,   165,   377,   458,  3287,   454,   249,  3263,   159,  3303,
14653      235,  3305,   419,   260,   458,    52,  3416,   366,   255,   262,
14654      382,   438,  3305,   455,   392,   224,   208,   455,   445,   446,
14655      447,   448,   449,   450,  3468,   455,   412,   159,   271,   455,
14656     3187,   279,  4539,   455,   455,   455,   159,   437,   416,  3287,
14657      418,   419,   455,  3295,  3296,  3297,  3298,   454,   458,   270,
14658     4985,  4986,   377,   455,   416,  3303,   226,  3305,   398,   406,
14659       52,   260,   416,  3873,   184,   274,   455,   455,   439,   260,
14660      454,   260,   281,   263,   452,   454,   142,   455,   456,   457,
14661     3384,   441,   442,   443,   262,   445,   446,   447,   448,   449,
14662      450,   454,   345,   454,   443,   192,   423,   251,   454,   377,
14663      246,   310,   455,   454,   377,   314,   454,   377,   264,   377,
14664      142,  3521,   142,   332,  3524,     8,   142,   332,    11,   332,
14665      216,   184,    15,    16,    17,   144,   377,   218,   400,   280,
14666      280,   340,  3694,   397,   228,   377,   377,  4644,   377,    32,
14667     3702,  3703,  3704,  3705,   377,   228,  2772,    40,   228,   377,
14668      377,   328,  4164,    46,   377,   260,   246,   328,   340,   328,
14669      369,  4173,   371,  2789,   328,  4064,   377,   377,     8,   377,
14670      377,    11,   142,   377,    41,   377,   169,    70,   202,    48,
14671      202,   202,   202,     3,   455,   438,    42,   312,   441,   442,
14672      443,   458,   445,   446,   447,   448,   449,   450,   377,   455,
14673       40,   387,  3468,   102,   458,   455,    46,   259,   454,   260,
14674      419,  3468,    35,   142,  3624,   455,   142,   377,  4701,  4228,
14675      154,    90,   169,   453,   453,    62,  4235,   142,   328,  4544,
14676       70,   455,   400,   400,  4247,  3501,   328,  3940,  3504,   328,
14677     3506,  4520,   458,  3500,   337,  4343,   115,   263,  4521,  3406,
14678     3407,  3408,  3409,   140,   140,   133,   202,  2883,  3500,  2885,
14679      202,   202,   131,   441,   442,   443,   135,   445,   446,   447,
14680      448,   449,   450,    11,   159,   458,  4535,   452,  4537,   154,
14681      271,   266,   411,   176,  3550,   159,   155,   159,   181,   158,
14682     3556,  3557,   455,  3559,   416,   135,   455,   455,   455,  3565,
14683     4003,   454,   171,   455,  4432,   440,   454,   167,  3718,   202,
14684      203,  3568,  3569,   458,   458,   455,   455,   453,   455,   317,
14685     2946,   454,   261,    79,   217,   387,   154,    35,   400,   400,
14686      192,   208,   377,    52,   369,   142,   176,   454,   387,   377,
14687      377,   181,   332,  4471,   377,  2971,   328,   328,   377,   377,
14688      310,   455,   455,   455,   419,   443,   249,    52,   369,  3921,
14689      154,   144,   142,    70,   387,   102,   202,   202,   454,   262,
14690      455,   202,   265,  4711,  4712,   202,   454,   217,   419,   295,
14691      206,   454,   251,   187,   454,   154,    35,   423,  4703,   458,
14692      259,   455,  3658,  3955,  3956,    75,   369,   458,   458,   454,
14693      387,   458,   377,  4364,   454,  3654,  3654,   455,   102,   453,
14694      337,   164,   159,   202,   202,  4427,   202,   202,   159,  4902,
14695      304,    52,   262,   417,   455,   271,   205,  3584,   297,  3873,
14696      455,   417,   205,   368,   267,   269,   454,  3063,  4447,    52,
14697      455,   458,   455,   455,   454,   454,   454,   170,   455,  4259,
14698      455,   455,   345,   256,   443,   387,     8,   377,  3715,    11,
14699      159,   419,    70,   443,   186,    52,  3732,   251,  3094,  3735,
14700      251,  3737,  4034,  4035,   369,   458,  4544,   377,    64,   458,
14701      377,  4819,  4965,   377,    22,   142,    24,   202,    40,   454,
14702       28,   161,   159,  4303,    46,   400,    34,    35,    36,   181,
14703       38,  4984,   454,    41,    42,   345,    44,  4635,    46,   400,
14704       35,   246,   337,   128,   415,   419,   419,    35,    70,  4647,
14705      159,   260,   154,   454,  4652,   189,  4654,   263,   200,   159,
14706      454,   454,   304,   455,   405,  3839,   353,   455,   278,  3843,
14707      454,   454,   205,   455,    81,   438,  3990,   123,   441,   442,
14708      443,   260,   445,   446,   447,   448,   449,   450,   454,   418,
14709     3970,   305,   377,   455,   377,   458,  4128,   116,    35,  4131,
14710     4132,  3197,  3982,  4888,   454,   454,   154,   251,   454,   229,
14711      184,   454,   295,   135,   454,  4147,   142,   455,   454,    35,
14712     4293,  3839,  3218,   141,   455,  3843,   264,   325,   438,   325,
14713      387,   351,  3868,  4882,  3870,   445,   446,   447,   448,   449,
14714      450,   455,    52,    52,    35,   454,   454,  3243,     0,   351,
14715      369,   369,   454,  3902,   176,   455,   455,   244,     5,   181,
14716      454,   260,   454,   400,  3883,  3883,    18,   458,   369,   455,
14717      148,   295,    64,   263,    64,   123,    28,   404,    30,    31,
14718      405,  3277,    25,   191,   192,   193,   194,   419,   196,   419,
14719      198,   304,   200,    45,   202,   217,   458,   205,    35,   340,
14720      159,   416,   454,   211,   302,   154,   214,   454,   369,   251,
14721      218,   128,   220,    65,   186,    67,    68,   260,   454,   260,
14722      337,    73,    35,    75,  3951,    35,   263,   263,   161,    72,
14723      454,   161,    52,   455,    86,  4544,    88,   114,   454,  3951,
14724      262,   454,   324,   455,   398,     5,  3973,  3974,   324,   311,
14725      454,  3978,  3979,   105,  3990,   455,   108,    21,    32,   458,
14726      103,   458,   141,  3990,   454,   377,   159,   295,  4148,   121,
14727      351,   123,   351,   419,   419,   127,   161,   161,   454,   864,
14728      831,   133,   125,  1492,   768,  2314,  2659,  2173,  2825,   141,
14729     3467,   143,  4066,   136,  2243,  4031,  4032,   149,  2995,  1269,
14730     3565,  4557,  4701,  4888,  4040,  4674,  4042,  4043,  4381,  3607,
14731     4046,  4385,   164,   156,  4057,  4363,  2746,  2447,   161,  4797,
14732     4258,  4879,  4729,   345,  4728,  4828,  2750,  3655,   180,  3640,
14733     3599,  3462,  2304,  2304,  2850,  1563,  3623,  4082,  4890,  3049,
14734     4984,  2298,  4965,  4358,  3003,  4259,  4839,  2999,  4305,  4689,
14735     4807,    27,  1552,  4308,  4090,  3718,  4493,  1110,  2024,  1126,
14736     3662,  2721,  4614,   603,   632,  1743,   209,   219,   220,  1743,
14737     2949,  1744,  4252,   225,  4254,  3989,  4095,  4095,  4292,  4968,
14738     4854,  1967,  1689,  4119,  1352,   237,  4013,   230,  4420,  4303,
14739     1968,  4671,  3643,   746,  4703,  4789,   248,  3361,  3884,  1315,
14740     2674,  4028,  2685,  2008,  1314,  3328,  4782,  1246,  2680,  4656,
14741     1296,  3869,  2007,  4149,  1317,  3305,   438,  4153,  4154,  2695,
14742     4156,  3845,  4461,   445,   446,   447,   448,   449,   450,   281,
14743     3830,  3303,  4638,  4637,  4208,  3362,  3108,   289,  1322,  4213,
14744     4430,  3256,  4237,  1621,  4218,  4786,  4785,  4221,  4222,   301,
14745     4772,   294,  1837,  2677,   306,   307,  2520,   309,  2610,  2608,
14746     2662,  1840,   314,  4495,    -1,    -1,    -1,   319,    -1,  4096,
14747      322,  4245,    -1,    -1,    -1,   327,    -1,    -1,   321,    -1,
14748      332,   333,    -1,    -1,  4258,   328,    -1,    -1,   340,    -1,
14749       -1,   334,   344,    -1,    -1,  4213,    -1,    -1,    -1,    -1,
14750     4218,    -1,   354,  4221,    -1,    -1,    -1,    -1,  4540,    -1,
14751       -1,    -1,    -1,    -1,   366,    -1,    -1,  3613,    -1,    -1,
14752       -1,    -1,    -1,   366,    -1,    -1,   369,    -1,  4302,  4247,
14753       -1,    -1,    -1,   385,    -1,    -1,  4240,    -1,    -1,    -1,
14754       -1,    -1,   550,   395,   387,    -1,    -1,    -1,   556,   401,
14755      558,    -1,    -1,   561,   406,   563,  4292,   565,    -1,    -1,
14756       -1,    -1,    -1,    -1,   572,  4292,    -1,   419,   576,   412,
14757       -1,  4345,    -1,    -1,    -1,   583,    -1,    -1,    -1,  4888,
14758       -1,    -1,     8,    -1,    -1,    11,    -1,    -1,   440,    15,
14759       16,    17,    -1,    -1,    -1,    -1,    -1,    -1,  4334,   607,
14760       -1,    -1,   454,    -1,   612,   457,    32,    -1,    -1,   617,
14761       -1,    -1,    -1,   621,    40,    -1,    -1,    -1,    -1,     8,
14762       46,    -1,    11,    -1,  4398,    -1,    15,    16,    17,    -1,
14763      638,    -1,    -1,  4260,  4261,  4262,    -1,    -1,    -1,    -1,
14764       -1,    -1,    -1,    32,    70,    -1,    -1,    -1,    -1,  4368,
14765     4368,    40,     8,    -1,    -1,    11,    -1,    46,    -1,    15,
14766       16,    17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14767       -1,    -1,    -1,    -1,    -1,    -1,  4395,  4395,    -1,   687,
14768       -1,    70,   690,   691,   692,    -1,  4460,    -1,    -1,    -1,
14769       -1,    -1,    -1,    -1,    -1,   703,    -1,   705,    -1,    -1,
14770       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3803,  4471,    -1,
14771       -1,    -1,    -1,    -1,    -1,    -1,    -1,   725,   726,    -1,
14772      728,   729,    -1,    -1,    -1,   733,    -1,  4490,    -1,    -1,
14773       -1,    -1,     8,    -1,    -1,    11,    -1,    -1,    -1,   747,
14774       -1,    -1,  4460,   751,    -1,    -1,    -1,    -1,    -1,   757,
14775      176,    -1,    -1,  4471,    -1,   181,    -1,  4671,    -1,    -1,
14776       -1,   769,    -1,    -1,    40,    -1,    -1,    -1,    -1,  4396,
14777       46,    -1,  4490,   781,    -1,    -1,   202,   203,    -1,    -1,
14778       -1,    -1,    -1,    -1,    -1,    -1,    -1,   176,    -1,    -1,
14779       -1,   217,   181,    -1,    70,    -1,    -1,    -1,  4572,    -1,
14780       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4544,    -1,
14781       -1,    -1,  4548,   202,   203,    -1,   824,  4544,    -1,    -1,
14782       -1,    -1,  4558,   249,    -1,    -1,    -1,  3923,   217,    -1,
14783       -1,    -1,   840,    -1,    -1,    -1,   262,   845,   846,   265,
14784       -1,    -1,  4874,    -1,    -1,     8,   202,    -1,    11,    -1,
14785       -1,    -1,    15,    16,    17,    -1,    -1,    -1,  3954,    -1,
14786      249,    -1,   870,   871,  4638,    -1,    -1,    -1,    -1,    32,
14787       -1,    -1,    -1,   262,    -1,    -1,  4595,  4595,    -1,  3975,
14788       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   896,  4663,
14789       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   907,
14790      176,    -1,    -1,   911,    -1,   181,   262,    -1,    -1,  4536,
14791     4790,  4538,    -1,     8,    -1,    -1,    11,    -1,   926,   345,
14792       15,    16,    17,     8,    -1,    -1,    11,    -1,    -1,    -1,
14793       15,    16,    17,    -1,    -1,    -1,    -1,  4033,   946,    -1,
14794       -1,   217,    -1,    -1,    -1,   953,   954,    32,    -1,    -1,
14795       -1,    -1,    -1,    -1,    -1,    -1,   345,    -1,    -1,    -1,
14796       -1,    -1,   970,   971,   972,    -1,   974,  4703,   976,    -1,
14797     4744,  4707,    -1,  4709,    -1,    -1,    -1,  4713,  4714,    -1,
14798       -1,    -1,    -1,    -1,    -1,    -1,   262,    -1,    -1,    -1,
14799       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14800       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14801       -1,    -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,
14802      446,   447,   448,   449,   450,    -1,  4122,    -1,  4802,   455,
14803       -1,    -1,    -1,    -1,    -1,  1043,    -1,  1045,  1046,   202,
14804       -1,    -1,  4669,    -1,    -1,    -1,    -1,    -1,    -1,   438,
14805       -1,    -1,   441,   442,   443,    -1,   445,   446,   447,   448,
14806      449,   450,    -1,    -1,    -1,  1073,    -1,    -1,    -1,   345,
14807       -1,    -1,  4168,    -1,    -1,  4849,    -1,    -1,    -1,    -1,
14808       -1,  4855,  4856,    -1,    -1,   441,   442,   443,    -1,   445,
14809      446,   447,   448,   449,   450,  1103,  1104,    -1,    -1,   262,
14810     1108,    -1,  1110,    -1,    -1,    -1,    -1,   202,    -1,    -1,
14811       -1,  4738,    -1,    -1,    -1,    -1,    -1,   202,    -1,    -1,
14812       -1,  4840,  4840,    -1,    -1,    -1,    -1,    -1,  1136,    -1,
14813       -1,  1139,    -1,    -1,  1142,  4854,  4854,  4854,  4854,  4854,
14814     4854,    -1,    -1,    -1,    -1,  4908,    -1,  1155,    -1,    -1,
14815       -1,    -1,  4888,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14816       -1,    -1,   438,    -1,    -1,    -1,  4902,   262,    -1,   445,
14817      446,   447,   448,   449,   450,  4902,  1184,   262,    -1,    -1,
14818       -1,    -1,    -1,    -1,    -1,  4812,    -1,    -1,    -1,  4908,
14819     4908,  4908,  4908,  4908,  4908,    -1,    -1,    -1,    -1,  4973,
14820       -1,    -1,    -1,    -1,  1212,  1213,  1214,    -1,  1216,    -1,
14821       -1,  4985,  4986,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14822       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1236,  4965,
14823       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4965,    -1,
14824       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4984,  4968,
14825     4968,  4968,  4968,  4968,  4968,    -1,  4883,  4984,    -1,    -1,
14826       -1,    -1,    -1,     3,    -1,    -1,  1274,    -1,     8,  1277,
14827       -1,    11,    -1,    -1,    -1,    15,    16,    17,   441,   442,
14828      443,    -1,   445,   446,   447,   448,   449,   450,    -1,    -1,
14829       -1,    -1,    32,    -1,    -1,    35,    -1,    -1,    -1,  1307,
14830       40,    -1,    -1,  1311,  1312,    -1,    46,    -1,    -1,    -1,
14831       -1,    -1,    -1,    -1,  1322,  1323,  1324,    -1,    -1,    -1,
14832       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14833       70,    -1,  4428,    -1,    -1,    -1,    -1,  1345,    -1,    -1,
14834       -1,    -1,    -1,    -1,    -1,    -1,   441,   442,   443,    -1,
14835      445,   446,   447,   448,   449,   450,   441,   442,   443,    -1,
14836      445,   446,   447,   448,   449,   450,    -1,    -1,    -1,    -1,
14837     4466,    -1,  1380,    -1,    -1,    -1,    -1,  1385,    -1,    -1,
14838       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14839     1398,  1399,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1407,
14840       -1,    -1,  1410,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14841       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14842       -1,    -1,    -1,  4519,  1432,    -1,  1434,  4523,  4524,    -1,
14843       -1,    -1,    -1,    -1,  1442,    -1,   176,  1445,    -1,    -1,
14844       -1,   181,    -1,     8,    -1,    -1,    11,    -1,    -1,    -1,
14845       15,    16,    17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14846     1468,    -1,   202,   203,    -1,    -1,    -1,    32,  1476,  1477,
14847     1478,  1479,  1480,    -1,    -1,    40,    -1,   217,    -1,    -1,
14848       -1,    46,    -1,  1491,    -1,    -1,  1494,    -1,    -1,    -1,
14849       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1505,    -1,  1507,
14850       -1,    -1,    -1,    -1,    -1,    70,    -1,    -1,    -1,   249,
14851       -1,  1519,  1520,    -1,    -1,    -1,    -1,    -1,    -1,  4615,
14852     1528,    -1,   262,    -1,    -1,   265,    -1,    -1,    -1,    -1,
14853     1538,     8,    -1,    -1,    11,    -1,    -1,    -1,    15,    16,
14854       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1557,
14855       -1,    -1,    -1,    -1,    -1,    32,    -1,    -1,  1566,  1567,
14856     1568,  1569,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14857     1578,    -1,    -1,    -1,    -1,    -1,    -1,  1585,    -1,    -1,
14858     1588,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14859     1598,    -1,     8,    -1,    -1,    11,    -1,  1605,    -1,    15,
14860       16,    17,  1610,    -1,    -1,   345,    -1,    -1,    -1,    -1,
14861       -1,   176,    -1,    -1,    -1,    -1,   181,    -1,    -1,    -1,
14862       -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,
14863       46,    -1,    -1,    -1,    -1,    -1,    -1,   202,   203,  1647,
14864       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1657,
14865       -1,    -1,   217,  1661,    70,    -1,  1664,    -1,    -1,    -1,
14866       -1,    -1,    -1,    -1,    -1,    -1,  1674,    -1,    -1,    -1,
14867       -1,    -1,    -1,    -1,  1682,  1683,    -1,    -1,    -1,  1687,
14868       -1,    -1,    -1,    -1,   249,    -1,    -1,    -1,    -1,    -1,
14869       -1,    -1,    -1,    -1,    -1,    -1,    -1,   262,   438,    -1,
14870      265,   441,   442,   443,  1712,   445,   446,   447,   448,   449,
14871      450,  1719,    -1,  1721,    -1,    -1,    -1,  1725,  1726,    -1,
14872     1728,     8,    -1,    -1,    11,   202,    -1,  1735,    15,    16,
14873       17,    -1,    -1,    -1,  1742,    -1,    -1,    -1,    -1,  1747,
14874     1748,    -1,    -1,  1751,    -1,    -1,    -1,  1755,    -1,  1757,
14875       -1,    -1,    -1,    40,  1762,  1763,    -1,    -1,    -1,    46,
14876      176,  1769,  1770,  1771,    -1,   181,    -1,  1775,  1776,  1777,
14877     1778,  1779,  1780,  1781,  1782,    -1,  1784,    -1,  1786,  1787,
14878      345,    -1,  1790,    70,    -1,   262,   202,   203,    -1,    -1,
14879       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1805,  1806,  1807,
14880     1808,   217,    -1,    -1,  1812,  1813,    -1,    -1,    -1,  1817,
14881       -1,    -1,  1820,    -1,    -1,  1823,  1824,  1825,  1826,  1827,
14882     1828,  1829,  1830,  1831,    54,  1833,    -1,    -1,    -1,    -1,
14883       -1,  1839,  1840,   249,  1842,    -1,    -1,    -1,    -1,    -1,
14884       -1,  1849,    -1,    -1,    -1,    -1,   262,    -1,    -1,    -1,
14885       -1,    -1,    -1,    -1,    -1,     8,    -1,    87,    11,    -1,
14886       -1,    -1,    15,    16,    17,    -1,    -1,    -1,    -1,    -1,
14887       -1,    -1,    -1,   438,    -1,    -1,   441,   442,   443,    32,
14888      445,   446,   447,   448,   449,   450,    -1,    40,    -1,   176,
14889      455,    -1,    -1,    46,   181,    -1,    -1,    -1,    -1,    -1,
14890       -1,    -1,    -1,    -1,    -1,    22,    -1,    -1,    -1,    -1,
14891       -1,    28,    -1,    -1,    -1,   145,    -1,    70,    -1,    -1,
14892       -1,    -1,    -1,    -1,    -1,     8,    -1,    -1,    11,   345,
14893      217,    -1,    15,    16,    17,    -1,    -1,    -1,    -1,    -1,
14894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   178,    32,
14895       -1,    68,    -1,    -1,    -1,    -1,    -1,    40,  1966,    -1,
14896     1968,    -1,  1970,    46,   441,   442,   443,    -1,   445,   446,
14897      447,   448,   449,   450,    -1,   262,    -1,     8,    -1,    -1,
14898       11,    -1,    -1,   213,    15,    16,    17,    70,    -1,    -1,
14899       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2005,    -1,    -1,
14900      117,    32,    -1,   120,  2012,    -1,  2014,    -1,    -1,    40,
14901      127,    -1,    -1,   130,    -1,    46,   246,    -1,    -1,    -1,
14902       -1,    -1,   438,   176,    -1,   441,   442,   443,   181,   445,
14903      446,   447,   448,   449,   450,  2043,    -1,    -1,   155,    70,
14904       -1,    -1,    -1,    -1,  2052,   275,  2054,    -1,    -1,   202,
14905      203,   281,    -1,    -1,    -1,    -1,    -1,    -1,   345,    -1,
14906       -1,    -1,    -1,  2071,   217,    -1,    -1,    -1,    -1,   186,
14907       -1,    -1,    -1,    -1,  2082,    -1,  2084,  2085,    -1,    -1,
14908       -1,  2089,    -1,  2091,   314,  2093,   316,  2095,   318,    -1,
14909       -1,  2099,    -1,   176,  2102,   325,   249,    -1,   181,    -1,
14910       -1,    -1,   332,    -1,    -1,    -1,    -1,    -1,    -1,   262,
14911      340,    -1,   265,    -1,    -1,  2123,    -1,    -1,    -1,   202,
14912      203,    -1,   352,    -1,    -1,  2133,    -1,   244,    -1,   246,
14913      360,    -1,    -1,  2141,   217,    -1,    -1,    -1,    -1,   256,
14914     2148,    -1,    -1,    -1,    -1,   176,    -1,   264,    -1,  2157,
14915      181,   438,    -1,    -1,   441,   442,   443,   274,   445,   446,
14916      447,   448,   449,   450,    -1,    -1,   249,    -1,    -1,  2177,
14917       -1,   202,   203,    -1,  2182,  2183,    -1,    -1,    -1,   262,
14918       -1,    -1,   265,  2191,   414,    -1,   217,    -1,    -1,    -1,
14919       -1,    -1,   345,   310,    -1,    -1,   313,   314,    -1,    -1,
14920     2208,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14921       -1,    -1,    -1,    -1,    22,    -1,    -1,    -1,   249,    -1,
14922       28,    -1,    -1,   340,    -1,    -1,    -1,  2235,    -1,  2237,
14923     2238,   262,    -1,    -1,   265,    -1,    -1,    -1,    -1,    -1,
14924       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14925       -1,    -1,    -1,    -1,    -1,    -1,  2264,    -1,    -1,    -1,
14926       68,    -1,   345,    -1,  2272,    -1,  2274,     8,    -1,    -1,
14927       11,    -1,  2280,    -1,    15,    16,    17,    25,    -1,    -1,
14928       -1,    -1,    -1,    -1,  2292,   438,   403,    -1,   441,   442,
14929      443,    32,   445,   446,   447,   448,   449,   450,  2306,    40,
14930       -1,  2309,   455,  2311,    -1,    46,  2314,    -1,    -1,  2317,
14931       58,    -1,   120,    -1,   345,    -1,    -1,    -1,     8,   127,
14932       -1,    11,   130,    71,    -1,    15,    16,    17,    -1,    70,
14933       -1,    -1,    -1,    -1,    -1,  2343,    -1,    85,    -1,    -1,
14934       -1,    -1,    32,    -1,  2352,  2353,    -1,   155,    -1,    -1,
14935       40,    -1,    -1,    -1,    -1,   438,    46,    -1,   441,   442,
14936      443,    -1,   445,   446,   447,   448,   449,   450,  2376,    -1,
14937       -1,    -1,   455,    -1,    -1,    -1,    -1,   125,   186,    -1,
14938       70,    -1,    -1,  2391,    -1,    -1,    -1,    -1,   136,    -1,
14939       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2406,    -1,
14940     2408,  2409,  2410,  2411,    -1,    -1,    -1,   438,   156,    -1,
14941      441,   442,   443,   161,   445,   446,   447,   448,   449,   450,
14942       -1,    -1,    -1,    -1,   455,    -1,  2434,    -1,    -1,    -1,
14943       -1,    -1,    -1,    -1,    -1,   176,   244,    -1,   246,  2447,
14944      181,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   256,    -1,
14945       -1,    -1,    -1,    -1,    -1,    -1,   264,    -1,    -1,    -1,
14946       -1,   202,   203,    -1,    -1,    -1,   274,    -1,    -1,    -1,
14947       -1,    -1,    -1,    -1,    -1,    -1,   217,  2485,    -1,    -1,
14948       -1,    -1,   230,    -1,    -1,    -1,   176,  2495,    -1,    -1,
14949       -1,   181,    -1,  2501,    -1,    -1,    -1,    -1,    -1,    -1,
14950       -1,    -1,   310,    -1,  2512,   313,   314,    -1,   249,    -1,
14951       -1,  2519,   202,   203,   262,    -1,  2524,    -1,    -1,    -1,
14952       -1,   262,    -1,    -1,   265,    -1,    -1,   217,    -1,    -1,
14953       -1,    -1,   340,    -1,    -1,    -1,    -1,    -1,    -1,  2547,
14954     2548,  2549,    -1,    -1,  2552,    -1,   294,    -1,    -1,    -1,
14955       -1,    -1,  2560,  2561,  2562,  2563,    -1,    -1,    -1,   249,
14956       -1,    -1,    -1,    -1,    -1,  2573,    -1,    -1,  2576,    -1,
14957     2578,    -1,   262,    -1,    -1,   265,    -1,    -1,    -1,    -1,
14958      328,  2589,  2590,    -1,    -1,  2593,   334,    -1,    -1,   337,
14959       -1,    -1,    -1,    -1,    -1,   403,    -1,  2605,    -1,  2607,
14960       -1,  2609,    -1,  2611,   345,    -1,    -1,    -1,    -1,    -1,
14961       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   366,    -1,
14962       -1,     8,    -1,  2631,    11,   373,    -1,  2635,    15,    16,
14963       17,    -1,   380,    -1,  2642,    -1,  2644,  2645,  2646,   387,
14964       -1,     8,    -1,    -1,    11,    32,    -1,    54,    15,    16,
14965       17,    -1,    -1,    40,  2662,   345,    -1,    -1,    -1,    46,
14966       -1,    -1,    -1,    -1,   412,    32,  2674,    -1,    -1,    -1,
14967       -1,  2679,    -1,    40,    -1,    -1,    -1,  2685,    -1,    46,
14968       87,    -1,    -1,    70,    -1,    -1,    -1,  2695,    22,    -1,
14969     2698,    -1,    -1,  2701,    28,  2703,    -1,   438,    -1,    -1,
14970      441,   442,   443,    70,   445,   446,   447,   448,   449,   450,
14971      117,    -1,    -1,    -1,   455,    -1,    -1,    -1,    -1,    53,
14972       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14973       -1,    -1,    -1,    -1,    68,    -1,    -1,  2745,   145,  2747,
14974       -1,    -1,    -1,    -1,  2752,    -1,    -1,    -1,   438,    -1,
14975       -1,   441,   442,   443,    -1,   445,   446,   447,   448,   449,
14976      450,    -1,    -1,    -1,    -1,   455,    -1,   101,    -1,    -1,
14977     2778,   178,  2780,  2781,  2782,    -1,    -1,    -1,    -1,    -1,
14978       -1,    -1,    -1,    -1,    -1,    -1,   120,    -1,    -1,   176,
14979       -1,    -1,    -1,   127,   181,    -1,   130,    -1,    -1,    -1,
14980       -1,    -1,    -1,    -1,    -1,    -1,   213,    -1,    -1,   176,
14981       -1,    -1,    -1,    -1,   181,   202,   203,    -1,    -1,    -1,
14982       -1,   155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14983      217,    -1,    -1,    -1,    -1,   202,   203,    -1,    -1,   246,
14984       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   183,
14985      217,    -1,   186,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14986       -1,    -1,   249,    -1,    -1,    -1,    -1,   274,   275,    -1,
14987       -1,    -1,    -1,    -1,   281,   262,    -1,    -1,   265,    -1,
14988       -1,  2889,   249,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14989       -1,    -1,    -1,    -1,    -1,   262,    -1,   231,   265,    -1,
14990      234,    -1,    -1,   310,    -1,    -1,    -1,   314,    -1,    -1,
14991      244,   318,   246,    -1,   202,    -1,    -1,    -1,   325,    -1,
14992       -1,    -1,   256,   211,    -1,   332,    -1,    -1,    -1,    -1,
14993      264,    -1,   220,   340,    -1,    -1,    -1,    -1,    -1,   273,
14994      274,    -1,    -1,    -1,    -1,   352,    -1,    -1,    -1,    -1,
14995       -1,    -1,    -1,   360,    -1,    -1,    -1,    -1,   345,    -1,
14996       -1,    -1,    -1,    -1,  2972,    -1,    -1,    -1,    -1,    -1,
14997       -1,  2979,  2980,    -1,    -1,    -1,   310,    -1,   345,   313,
14998      314,   315,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
14999       -1,    -1,    -1,    -1,    -1,     8,    -1,    -1,    11,    -1,
15000       -1,    -1,    15,    16,    17,    -1,   340,   414,  3016,  3017,
15001       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    32,
15002      354,    -1,    -1,    -1,  3032,    -1,    -1,    40,    -1,    -1,
15003       -1,    -1,    -1,    46,    -1,    -1,    -1,    -1,    -1,  3047,
15004     3048,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3056,  3057,
15005     3058,   438,    -1,    -1,   441,   442,   443,    70,   445,   446,
15006      447,   448,   449,   450,    -1,    -1,  3074,    -1,   455,   403,
15007       -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,   446,
15008      447,   448,   449,   450,    -1,    -1,    -1,    -1,   455,    -1,
15009       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15010       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15011       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3127,
15012       -1,  3129,    -1,    -1,    -1,  3133,    -1,    -1,    -1,    -1,
15013       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15014       -1,  3149,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15015       -1,  3159,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15016       -1,    -1,    -1,   176,    -1,    -1,    -1,  3175,   181,    -1,
15017       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3187,
15018       -1,    -1,    -1,    -1,    -1,    -1,  3194,    -1,    -1,   202,
15019      203,    -1,    -1,    -1,    -1,  3203,    -1,    -1,    -1,    -1,
15020       -1,  3209,    -1,  3211,   217,    -1,  3214,    -1,    -1,    -1,
15021       -1,  3219,  3220,  3221,  3222,    -1,    -1,  3225,  3226,  3227,
15022     3228,  3229,  3230,  3231,  3232,  3233,  3234,    -1,    -1,    -1,
15023     3238,  3239,    -1,    -1,    -1,    -1,   249,    -1,    -1,    -1,
15024     3248,    -1,    -1,    -1,  3252,    -1,    -1,    -1,  3256,   262,
15025       -1,    -1,   265,    -1,    -1,    -1,  3264,    -1,    -1,  3267,
15026       -1,  3269,   550,    -1,    -1,    -1,    -1,    -1,   556,    -1,
15027     3278,    -1,    -1,  3281,  3282,    -1,    -1,    -1,  3286,  3287,
15028       -1,     8,    -1,  3291,    11,  3293,    -1,    -1,    15,    16,
15029       17,    -1,  3300,  3301,  3302,  3303,    -1,  3305,  3306,    -1,
15030       -1,    -1,  3310,  3311,    -1,    32,    22,    -1,    -1,  3317,
15031       -1,    -1,    28,    40,    -1,  3323,  3324,  3325,    -1,    46,
15032       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15033       -1,    -1,   345,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15034       -1,    -1,  3350,    70,    -1,    -1,    -1,    -1,    -1,    -1,
15035       -1,    -1,    68,  3361,    -1,  3363,    -1,    -1,    13,    -1,
15036       -1,    -1,    -1,    -1,    19,    -1,    -1,    -1,    -1,    -1,
15037       -1,    -1,    -1,    -1,    -1,    30,  3384,  3385,  3386,    -1,
15038     3388,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15039       -1,    -1,    -1,    -1,    49,    50,    -1,    -1,  3406,  3407,
15040     3408,  3409,    -1,    -1,   120,    -1,    -1,    -1,    -1,    -1,
15041       -1,   127,    -1,    -1,   130,   703,    -1,    -1,    -1,    -1,
15042       -1,    -1,    -1,    -1,    -1,   438,    -1,  3435,   441,   442,
15043      443,    -1,   445,   446,   447,   448,   449,   450,    -1,   155,
15044      728,  3449,   455,    -1,    -1,    -1,    -1,    -1,    -1,   176,
15045       -1,    -1,    -1,    -1,   181,    -1,    -1,    -1,    -1,   747,
15046       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15047      186,    -1,    -1,    -1,    -1,   202,   203,    -1,    -1,    -1,
15048       -1,   769,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15049      217,     8,    -1,    -1,    11,    -1,    -1,    -1,    15,    16,
15050       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15051       -1,    -1,    -1,    -1,    -1,    32,    -1,    -1,    -1,    -1,
15052       -1,    -1,   249,    40,    -1,    -1,    -1,    -1,   244,    46,
15053      246,  3539,    -1,    -1,    -1,   262,    -1,    -1,   265,    -1,
15054      256,    -1,    -1,   198,    -1,    -1,    -1,    -1,   264,    -1,
15055       -1,   206,   840,    70,   209,   210,    -1,   212,   274,    -1,
15056      215,    -1,   217,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15057       -1,    -1,    -1,    -1,  3582,    -1,  3584,    -1,  3586,    -1,
15058       -1,    -1,    -1,    -1,  3592,    -1,    -1,    -1,    -1,    -1,
15059     3598,    -1,    -1,    -1,   310,    -1,    -1,   313,   314,  3607,
15060       -1,    -1,    -1,     8,    -1,    -1,    11,    -1,    -1,    -1,
15061       15,    16,    17,    -1,    -1,    -1,    -1,    -1,   345,  3627,
15062       -1,    -1,    -1,    -1,   340,    -1,    -1,    32,    -1,  3637,
15063       -1,    -1,    -1,    -1,    -1,    40,    -1,  3645,    -1,    -1,
15064       -1,    46,    -1,    -1,    -1,    -1,    -1,  3655,    -1,    -1,
15065       -1,  3659,    -1,    -1,    -1,  3663,  3664,    -1,   946,   176,
15066       -1,    -1,    -1,    -1,   181,    70,    -1,    -1,    -1,    -1,
15067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15068       -1,    -1,   970,   971,   972,   202,   203,   403,    -1,  3697,
15069       -1,  3699,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15070      217,  3709,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15071       -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,   446,
15072      447,   448,   449,   450,    -1,    -1,    -1,    -1,   455,    -1,
15073       -1,  3739,   249,    -1,    -1,    22,    -1,    -1,    -1,    -1,
15074       -1,    28,  3750,    -1,    -1,   262,    -1,    -1,   265,    -1,
15075       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15076       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15077       -1,   176,  3780,    -1,    -1,    -1,   181,    -1,    -1,    -1,
15078       -1,    68,  3790,  3791,    -1,    -1,    -1,    -1,    -1,  3797,
15079     3798,    -1,    -1,    -1,  3802,    -1,    -1,   202,   203,  3807,
15080       -1,    -1,  3810,  3811,    -1,    -1,    -1,  3815,  3816,    -1,
15081       -1,    -1,   217,  3821,  3822,  3823,  3824,  3825,    -1,    -1,
15082     1108,  3829,  3830,    -1,  3832,    -1,    -1,  3835,   345,    -1,
15083      117,  3839,    -1,   120,    -1,  3843,    -1,    -1,    -1,    -1,
15084      127,  3849,    -1,   130,   249,    -1,    -1,  3855,    -1,    -1,
15085       -1,  1139,  3860,    -1,    -1,    -1,    -1,   262,  3866,    -1,
15086      265,    -1,    -1,    -1,    -1,  3873,    -1,    -1,   155,    -1,
15087       -1,    -1,    -1,  3881,    -1,    -1,  3884,    -1,    -1,    -1,
15088       -1,  3889,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15089       -1,    -1,    -1,    -1,  3902,    -1,    -1,  3905,    -1,   186,
15090       -1,    -1,    -1,    -1,   559,    -1,    -1,    -1,    -1,    -1,
15091       -1,    -1,   567,    -1,    -1,    -1,    -1,  3925,  3926,   574,
15092       -1,   438,   577,   578,   441,   442,   443,   582,   445,   446,
15093      447,   448,   449,   450,    -1,  3943,   453,    -1,   593,    -1,
15094      345,    -1,    -1,    -1,  3952,    -1,    -1,    -1,    -1,    -1,
15095       -1,    -1,    -1,   608,    -1,    -1,    -1,   244,    -1,   246,
15096       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   623,   256,
15097      625,    -1,    -1,   628,    -1,   630,    -1,   264,   633,    -1,
15098       -1,    -1,    -1,    -1,    -1,  3993,  1274,   274,    -1,    -1,
15099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15100       -1,    -1,    -1,    -1,    -1,  4013,    -1,    -1,    -1,    -1,
15101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15102     4028,    -1,    -1,   310,    -1,    -1,   313,   314,    -1,    -1,
15103       -1,    -1,    -1,   438,    -1,  1323,   441,   442,   443,    -1,
15104      445,   446,   447,   448,   449,   450,    -1,  4055,    -1,   704,
15105      455,    -1,    -1,   340,    -1,    -1,    -1,    -1,  4066,   613,
15106       -1,    -1,    -1,  4071,    -1,    -1,    -1,    -1,    -1,    -1,
15107       -1,  4079,    -1,    -1,    -1,    -1,     8,    -1,    -1,    11,
15108      634,    -1,    -1,    15,    16,    17,    -1,    -1,  4096,  4097,
15109       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15110       32,    -1,    -1,    -1,   759,    -1,    -1,    -1,    40,    -1,
15111     1398,    -1,    -1,    -1,    46,    -1,   403,  4125,    -1,  1407,
15112       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15113       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    70,    -1,
15114       -1,    -1,    -1,    -1,    -1,    -1,  1434,    -1,    -1,    -1,
15115       -1,    -1,    -1,    -1,  1442,    -1,  4164,  1445,    -1,    -1,
15116       -1,    -1,    -1,    -1,   819,  4173,     8,    -1,    -1,    11,
15117       -1,    -1,    -1,    15,    16,    17,    -1,    -1,    -1,    -1,
15118       -1,    -1,  4190,  4191,    -1,    -1,  4194,    -1,    -1,    -1,
15119       32,    -1,  1480,    -1,    -1,    -1,    -1,    -1,    40,    -1,
15120     4208,  4209,    -1,    -1,    46,  4213,  1494,    -1,    -1,    -1,
15121     4218,    -1,    -1,  4221,  4222,    -1,  4224,    -1,  4226,  1507,
15122       -1,  4229,  4230,    -1,    -1,    -1,    -1,    -1,    70,   884,
15123       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4245,    -1,    -1,
15124       -1,    -1,    -1,    -1,   176,   900,    -1,    -1,    -1,   181,
15125     4258,  4259,  4260,  4261,  4262,    -1,    -1,   912,    -1,   914,
15126       -1,    -1,    -1,    -1,    -1,    -1,    -1,   922,    -1,  1557,
15127      202,   203,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   934,
15128       -1,    -1,    -1,    -1,   939,   217,    -1,   942,    -1,    -1,
15129     1578,    -1,    -1,    -1,  4302,  4303,    -1,  1585,    -1,    -1,
15130       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15131       -1,    -1,    -1,    -1,    -1,    -1,    -1,   249,    -1,    -1,
15132       -1,    -1,   977,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15133      262,    -1,    -1,   265,   176,    -1,    -1,  4345,    -1,   181,
15134     4348,    22,    -1,    -1,    -1,    -1,    -1,    28,    -1,   903,
15135     4358,    -1,    -1,    -1,    -1,    -1,  4364,    -1,  4366,    -1,
15136      202,   203,    -1,    -1,  4372,    -1,    -1,    -1,    -1,   923,
15137       -1,    -1,    -1,    -1,    -1,   217,    -1,  4385,    -1,    -1,
15138       -1,    -1,    -1,   937,    -1,    -1,    -1,    68,  4396,  4397,
15139     4398,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1687,
15140       -1,    -1,    -1,    -1,    -1,    -1,    -1,   249,    -1,    -1,
15141       -1,    -1,    -1,   345,    -1,    -1,    -1,    -1,    -1,  4427,
15142      262,    -1,  4430,   265,  4432,    -1,    -1,    -1,    -1,    -1,
15143       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1725,  1726,   120,
15144       -1,    -1,    -1,    -1,    -1,    -1,   127,    -1,  4456,   130,
15145       -1,    -1,  4460,    -1,  1742,    -1,  4464,  1112,    -1,    -1,
15146     1014,    -1,    -1,  4471,    -1,    -1,    -1,    -1,    -1,    -1,
15147        8,    -1,  4480,    11,   155,    -1,    -1,    15,    16,    17,
15148       -1,    -1,  4490,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15149       -1,    -1,    -1,    -1,    32,    -1,    -1,  4505,    -1,    -1,
15150       -1,    -1,    40,   345,    -1,   186,   438,    -1,    46,   441,
15151      442,   443,    -1,   445,   446,   447,   448,   449,   450,    -1,
15152     4528,    -1,    -1,   455,    -1,    -1,    -1,  4535,  4536,  4537,
15153     4538,    -1,    70,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15154       35,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15155       -1,  1839,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    54,
15156       -1,  1849,    -1,   244,  4572,   246,    -1,    -1,    -1,  1123,
15157       -1,    -1,    -1,    -1,    -1,   256,    -1,    -1,    -1,    -1,
15158     4588,    -1,    -1,   264,    -1,  4593,    -1,    -1,    -1,    -1,
15159       -1,    -1,    87,   274,    -1,    -1,   438,    -1,    -1,   441,
15160      442,   443,    -1,   445,   446,   447,   448,   449,   450,    -1,
15161       -1,    -1,    -1,   455,    -1,    -1,    -1,    -1,    -1,    -1,
15162       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4635,    -1,   310,
15163     4638,    -1,   313,   314,    -1,    -1,    -1,    -1,   176,  4647,
15164       -1,  1296,  1297,   181,  4652,    -1,  4654,    -1,  4656,    -1,
15165      145,    -1,    -1,    -1,    -1,  4663,    -1,    -1,    -1,   340,
15166       -1,  4669,    -1,  4671,   202,   203,    -1,    -1,    -1,    -1,
15167       -1,    -1,  4680,    -1,    -1,    -1,    -1,    -1,  1966,   217,
15168     1968,    -1,    -1,   178,    -1,    -1,    -1,    -1,    -1,    -1,
15169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15170       -1,    -1,    -1,  4711,  4712,    -1,    -1,    -1,    -1,  1263,
15171       -1,   249,    -1,   208,  1369,    -1,    -1,  2005,   213,    -1,
15172       -1,    -1,   403,    -1,   262,    -1,    -1,   265,    -1,    -1,
15173     4738,    -1,    -1,    -1,    -1,    -1,  4744,    -1,    -1,    -1,
15174       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    35,    -1,
15175       -1,   246,     8,    -1,    -1,    11,    -1,    -1,    -1,    15,
15176       16,    17,    -1,  4771,  4772,    -1,    -1,    54,  4776,    -1,
15177       -1,    -1,    -1,  1327,  4782,    -1,    32,  4785,  1433,    -1,
15178      275,  4789,    -1,    -1,    40,    -1,   281,    -1,    -1,     8,
15179       46,    -1,    11,    -1,  4802,    -1,    15,    16,    17,    -1,
15180       87,    -1,    -1,    -1,  4812,    -1,    -1,   345,    -1,    -1,
15181       -1,  4819,    -1,    32,    70,    -1,    -1,    -1,    -1,   314,
15182       -1,    40,    -1,   318,    -1,    -1,    -1,    46,    -1,    -1,
15183      325,    -1,    -1,  4841,    -1,    -1,    -1,   332,    -1,  1393,
15184       -1,  4849,    -1,    -1,    -1,   340,    -1,  4855,  4856,  4857,
15185       -1,    70,    -1,    -1,    -1,    -1,    -1,   352,   145,    -1,
15186       -1,    -1,    -1,    -1,    -1,   360,    -1,    -1,  4876,  2157,
15187       -1,    -1,    -1,    -1,    -1,  4883,  1430,    -1,    -1,    -1,
15188       -1,    -1,    -1,    -1,    -1,   380,    -1,    -1,    -1,  2177,
15189       -1,   178,    -1,  1548,    -1,    -1,    -1,    -1,    -1,    -1,
15190      438,    -1,    -1,   441,   442,   443,    -1,   445,   446,   447,
15191      448,   449,   450,    -1,    -1,    -1,    -1,   455,    -1,   414,
15192      176,   208,    -1,   418,   419,   181,   213,    -1,    -1,    -1,
15193       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15194       -1,    -1,    -1,    -1,    -1,    -1,   202,   203,    -1,    -1,
15195       -1,  4959,  4960,    -1,    -1,    -1,  1510,   176,    -1,   246,
15196       -1,   217,   181,    -1,    -1,  4973,    -1,    -1,    -1,    -1,
15197       -1,  1525,    -1,    -1,    -1,    -1,    -1,  4985,  4986,  1533,
15198       -1,    -1,    -1,   202,   203,    -1,    -1,    -1,   275,    -1,
15199     1544,  1646,    -1,   249,   281,    -1,    -1,    -1,   217,    -1,
15200       -1,    -1,    -1,    -1,    -1,  1660,   262,    -1,  1663,   265,
15201     1665,    -1,  1667,    -1,    -1,    -1,    -1,    -1,  1673,    -1,
15202       -1,    -1,    -1,  2311,    -1,    -1,    -1,   314,    -1,    -1,
15203      249,   318,    -1,    -1,    -1,    -1,    -1,  1591,   325,    -1,
15204       -1,    -1,    -1,   262,    -1,   332,   265,    -1,    -1,    -1,
15205     1604,    -1,    -1,   340,    -1,    -1,    -1,    -1,    -1,    -1,
15206       -1,    35,  1616,  1718,    -1,   352,    -1,  1722,    -1,  1724,
15207       -1,    -1,  1727,   360,  1628,    -1,    -1,    -1,    -1,    -1,
15208       54,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   345,
15209       -1,    -1,    -1,   380,    -1,    -1,    -1,    -1,    -1,    -1,
15210       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15211       -1,    -1,    -1,    87,    -1,    -1,    -1,    -1,  1672,    -1,
15212       -1,  1675,    -1,    -1,    -1,    -1,   345,   414,    -1,    -1,
15213       -1,   418,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15214       -1,     8,    -1,    -1,    11,    -1,    -1,    -1,    15,    16,
15215       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15216       -1,    -1,    -1,    -1,    -1,    32,    -1,    -1,    -1,    -1,
15217       22,   145,    -1,    40,    -1,    -1,    28,    -1,    -1,    46,
15218       -1,    -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,
15219      446,   447,   448,   449,   450,    -1,    -1,  2485,    -1,   455,
15220       -1,    -1,    -1,    70,   178,    -1,    -1,    -1,    -1,    -1,
15221       -1,    -1,    -1,    -1,    -1,    -1,    68,    -1,    -1,   438,
15222       -1,    -1,   441,   442,   443,    -1,   445,   446,   447,   448,
15223      449,   450,    -1,    -1,   208,    -1,   455,    -1,    -1,   213,
15224       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15225     1804,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15226       -1,    -1,     8,    -1,    -1,    11,    -1,    -1,   120,    15,
15227       16,    17,   246,    -1,    -1,   127,    -1,    -1,   130,    -1,
15228        8,    -1,    -1,    11,    -1,    -1,    32,    15,    16,    17,
15229       -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,
15230       46,   275,    -1,   155,    32,    -1,    -1,   281,    36,   176,
15231       -1,    -1,    40,    -1,   181,    -1,    -1,    -1,    46,    -1,
15232       -1,    -1,    -1,    -1,    70,    -1,    -1,    -1,    -1,    -1,
15233       -1,    -1,    -1,    -1,   186,   202,   203,    -1,    -1,    -1,
15234      314,    -1,    70,    -1,   318,    -1,    -1,  2635,    -1,    -1,
15235      217,   325,    -1,    -1,    -1,    -1,    -1,    -1,   332,    -1,
15236       -1,    -1,    -1,    -1,    -1,    -1,   340,    -1,    -1,    -1,
15237       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   352,  2034,
15238     2035,    -1,   249,    -1,  2039,  2040,   360,    -1,    -1,  2044,
15239      118,    -1,   244,    -1,   246,   262,    -1,    -1,   265,    -1,
15240       -1,    -1,    -1,  2058,   256,    -1,   380,    -1,    -1,    -1,
15241     2065,    -1,   264,    -1,  2069,  2070,    -1,    -1,  2073,  2074,
15242       -1,    -1,   274,    -1,    -1,  2080,    -1,    -1,    -1,    -1,
15243      176,    -1,    -1,    -1,    -1,   181,    -1,  2092,    -1,  2094,
15244      414,    -1,    -1,    -1,   418,    -1,    -1,    -1,   176,    -1,
15245       -1,    -1,    -1,   181,    -1,    -1,   202,   203,  2113,    -1,
15246       -1,   313,   314,  2118,    -1,  2019,    -1,    -1,    -1,  2023,
15247     2024,   217,    -1,    -1,   202,   203,  2131,    -1,   345,    -1,
15248       -1,    -1,    -1,    -1,    -1,  2140,    -1,  2142,   340,   217,
15249     2145,  2146,  2147,    -1,    -1,    -1,    -1,  2152,  2153,    -1,
15250       -1,    -1,    -1,   249,    -1,    -1,    -1,  2162,    -1,    -1,
15251       -1,    -1,  2167,    -1,    -1,    -1,   262,  2172,    -1,   265,
15252       -1,   249,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15253       -1,    -1,  2086,    -1,   262,    -1,    -1,   265,    -1,    -1,
15254       -1,    -1,    -1,  2198,  2098,    -1,    -1,    -1,    -1,    -1,
15255       -1,   403,    -1,    -1,  2209,    -1,  2211,    -1,    -1,    -1,
15256       -1,  2216,    -1,    -1,    -1,  2220,    -1,  2222,  2223,  2224,
15257     2225,   438,  2227,    -1,   441,   442,   443,    -1,   445,   446,
15258      447,   448,   449,   450,  2138,  2240,  2241,  2242,   455,    -1,
15259       -1,    -1,    -1,    -1,    -1,  2250,  2251,    -1,    -1,   345,
15260       -1,  2889,    -1,     8,    -1,    -1,    11,    -1,    -1,    -1,
15261       15,    16,    17,    -1,    -1,    -1,    -1,   345,    -1,    -1,
15262       -1,     8,    -1,    -1,    11,    -1,    -1,    32,    15,    16,
15263       17,    -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,
15264       -1,    46,    22,    -1,    -1,    32,    -1,  2302,    28,    -1,
15265       -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,    46,
15266       -1,    -1,    -1,    -1,    -1,    70,    -1,    -1,    -1,    -1,
15267       -1,    -1,   400,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15268       -1,    -1,    -1,    70,    -1,    -1,    -1,    22,    68,    -1,
15269       -1,    -1,   438,    28,    -1,   441,   442,   443,    -1,   445,
15270      446,   447,   448,   449,   450,    -1,    -1,    -1,    -1,   455,
15271      438,    -1,    -1,   441,   442,   443,    -1,   445,   446,   447,
15272      448,   449,   450,    -1,    -1,    -1,    -1,    -1,  3016,  3017,
15273       -1,    -1,    -1,    68,    -1,    -1,    -1,    -1,    -1,  2293,
15274      120,    -1,    -1,    -1,  3032,    -1,    -1,   127,    -1,   154,
15275      130,    -1,    -1,    -1,   159,    -1,    -1,    -1,    -1,    -1,
15276     3048,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3057,
15277     3058,   176,    -1,    -1,    -1,   155,   181,    -1,    -1,    -1,
15278       -1,    -1,    -1,    -1,    -1,   120,  3074,    -1,    -1,   176,
15279       -1,    -1,   127,    -1,   181,   130,    -1,   202,   203,    -1,
15280     2455,    -1,    -1,    -1,    -1,    -1,   186,    -1,    -1,  2363,
15281       -1,    -1,   217,    -1,    -1,   202,   203,    -1,    -1,    -1,
15282      155,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15283      217,  2486,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15284       -1,    -1,    -1,    -1,   249,    -1,    -1,    -1,    -1,    -1,
15285       -1,   186,    -1,    -1,    -1,    -1,    -1,   262,    -1,    -1,
15286      265,    -1,   249,    -1,   244,    -1,   246,    -1,    -1,    -1,
15287       -1,    -1,    -1,    -1,    -1,   262,   256,    -1,   265,    -1,
15288       -1,    -1,    -1,    -1,   264,    -1,    -1,  3175,    -1,    -1,
15289       -1,    -1,    -1,    -1,   274,    -1,    -1,    -1,    -1,    -1,
15290       -1,   288,    22,    -1,    -1,    -1,    -1,    -1,    28,   244,
15291       -1,   246,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15292       -1,   256,    -1,    -1,    -1,    -1,    -1,  2481,    -1,   264,
15293      310,    -1,    -1,   313,   314,    -1,    -1,    -1,    -1,   274,
15294      345,    -1,    -1,    -1,  2498,    -1,    -1,    -1,    68,    -1,
15295       -1,    -1,    -1,    -1,    -1,  2509,    -1,    -1,   345,    -1,
15296      340,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15297       -1,    -1,    -1,    -1,   361,   310,    -1,    -1,   313,   314,
15298       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15299       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15300      120,    -1,    -1,    -1,    -1,   340,    -1,   127,    -1,    -1,
15301      130,    -1,  3300,  3301,  3302,    -1,    -1,  2672,    -1,    -1,
15302       -1,    -1,    -1,   403,    -1,    -1,    -1,    -1,    -1,    -1,
15303       -1,    -1,    -1,   438,    -1,   155,   441,   442,   443,    -1,
15304      445,   446,   447,   448,   449,   450,    -1,    -1,    -1,    -1,
15305       -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,   446,
15306      447,   448,   449,   450,    -1,    -1,   186,    -1,   403,  2724,
15307     2725,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15308       -1,     8,    -1,    -1,    11,    -1,    -1,  2742,    15,    16,
15309       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15310       -1,    -1,    -1,    -1,    -1,    32,    -1,    -1,    -1,    -1,
15311       -1,    -1,  2767,    40,    -1,    -1,    -1,    -1,    -1,    46,
15312       -1,  2776,    -1,    -1,   244,    -1,   246,    -1,    -1,    -1,
15313       -1,    -1,    -1,    -1,    -1,    -1,   256,  2792,  2793,    -1,
15314       -1,    -1,  2797,    70,   264,    -1,    -1,  2802,  2803,  2804,
15315       -1,  2806,    -1,    -1,   274,    -1,    -1,  2711,    -1,    -1,
15316     2714,    -1,  2716,    -1,    -1,    -1,    -1,  2721,     8,    -1,
15317       -1,    11,  2827,    -1,    -1,    15,    16,    17,    -1,    -1,
15318       -1,    -1,  2837,  2838,  2839,  2840,    -1,    -1,    -1,    -1,
15319      310,    -1,    32,   313,   314,    35,    -1,    -1,    -1,    -1,
15320       40,    -1,    -1,    -1,    -1,    -1,    46,    22,    -1,    -1,
15321       -1,    -1,    -1,    28,    -1,    -1,    -1,    -1,  2772,  2874,
15322      340,    -1,  2877,  2878,  2879,    -1,   153,    -1,    -1,    -1,
15323       70,    -1,  2887,     8,    -1,  2789,    11,    -1,    53,    -1,
15324       15,    16,    17,    -1,    -1,    -1,    -1,    -1,    -1,   176,
15325       -1,    -1,    -1,    68,   181,    -1,    -1,    32,    -1,    -1,
15326     2814,    -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,
15327       -1,    46,    -1,    -1,    -1,   202,   203,    -1,    -1,    -1,
15328       -1,    -1,    -1,   403,    -1,    -1,   101,    -1,    -1,    -1,
15329      217,    -1,    -1,    -1,  3582,    70,    -1,    -1,    -1,    -1,
15330       -1,    -1,    -1,  2958,  3592,   120,    -1,    -1,    -1,    -1,
15331       -1,  2966,   127,    -1,    -1,   130,    -1,    -1,    -1,    -1,
15332       -1,    -1,   249,    -1,    -1,    -1,    -1,    -1,    -1,  2883,
15333     2985,  2885,    -1,    -1,    -1,   262,   176,    -1,   265,  3627,
15334      155,   181,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15335       -1,    -1,    -1,    -1,    -1,    -1,  3011,    -1,    -1,   286,
15336       -1,    -1,   202,   203,    -1,    -1,    -1,  3655,   183,    -1,
15337       -1,   186,    -1,    -1,    -1,    -1,    -1,   217,    -1,    -1,
15338       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15339       -1,    -1,  2946,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15340     3055,   176,    -1,    -1,  3059,    -1,   181,    -1,    -1,   249,
15341       -1,    -1,    -1,    -1,    -1,    -1,   231,  2971,   345,   234,
15342       -1,  3709,   262,    -1,    -1,   265,    -1,   202,   203,   244,
15343       -1,   246,    -1,  3088,    -1,    -1,    -1,    -1,    -1,    -1,
15344       -1,   256,   217,  2997,    -1,    -1,    -1,    -1,    -1,   264,
15345     3004,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   273,   274,
15346       -1,    -1,    -1,  3118,    -1,    -1,    22,    -1,    -1,    -1,
15347       -1,    -1,    28,    -1,   249,    -1,    -1,  3132,    -1,    -1,
15348       -1,  3136,    -1,    -1,    -1,    -1,    -1,   262,    -1,    -1,
15349      265,    -1,  3147,    -1,    -1,   310,    -1,    -1,   313,   314,
15350      315,    -1,    -1,    -1,    -1,   345,    -1,   282,    -1,  3063,
15351       -1,   438,    68,    -1,   441,   442,   443,    -1,   445,   446,
15352      447,   448,   449,   450,    -1,   340,    -1,  3081,    -1,    -1,
15353       -1,    -1,    -1,    -1,  3822,  3823,  3824,  3825,   191,   354,
15354     3094,    -1,    -1,    -1,    -1,    -1,    -1,   200,   201,    -1,
15355       -1,    -1,    -1,    -1,     8,   208,    -1,    11,    -1,    -1,
15356       -1,    15,    16,    17,   120,    -1,   219,    -1,    -1,    -1,
15357      345,   127,    -1,    -1,   130,    -1,    -1,    -1,    32,    -1,
15358       -1,    35,    -1,    -1,    -1,    -1,    40,    -1,   403,    -1,
15359       -1,    -1,    46,    -1,    -1,    -1,    -1,    -1,   438,   155,
15360       -1,   441,   442,   443,    -1,   445,   446,   447,   448,   449,
15361      450,    -1,    -1,    -1,    -1,    -1,    70,    -1,    -1,    -1,
15362       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15363      186,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15364       -1,    -1,    -1,  3197,    -1,    -1,    -1,    -1,    -1,    -1,
15365       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15366       -1,    -1,    -1,   438,  3218,    -1,   441,   442,   443,    -1,
15367      445,   446,   447,   448,   449,   450,    -1,    -1,    -1,    -1,
15368       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   244,  3243,
15369      246,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15370      256,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   264,    -1,
15371       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   274,    -1,
15372       -1,    -1,   176,  3277,    -1,    -1,    -1,   181,    -1,    -1,
15373       -1,    -1,    -1,    -1,    -1,    -1,  3391,    -1,  3393,    -1,
15374       -1,    -1,    -1,    -1,    -1,  3400,    -1,    -1,   202,   203,
15375       -1,    -1,    -1,    -1,   310,    -1,    -1,   313,   314,    -1,
15376       -1,     8,  3417,   217,    11,    -1,    -1,    -1,    15,    16,
15377       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3433,    -1,
15378       -1,    -1,    -1,    -1,   340,    32,    -1,    -1,    -1,    -1,
15379       -1,    -1,  3447,    40,    -1,   249,    -1,    -1,    22,    46,
15380       -1,    -1,    -1,    -1,    28,    -1,    -1,    -1,   262,    -1,
15381     3465,   265,    -1,    -1,    -1,  3369,    -1,    -1,    -1,    -1,
15382     3475,    -1,    -1,    70,    -1,    -1,    -1,    -1,    -1,    -1,
15383       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4125,    -1,    -1,
15384       -1,  3496,    -1,    -1,    68,    -1,    -1,   403,    -1,    -1,
15385       -1,    -1,  3507,  3508,  3509,    -1,    -1,  3512,  3513,  3514,
15386     3515,  3516,  3517,    -1,    -1,    -1,    -1,  3522,  3523,    -1,
15387     3525,  3526,  3527,  3528,  3529,  3530,    -1,  3532,    -1,    -1,
15388       -1,    -1,    -1,    -1,    -1,    -1,  3541,    -1,  3543,  3544,
15389       -1,   345,    -1,    -1,    -1,    -1,   120,    -1,    -1,    -1,
15390       -1,    -1,    -1,   127,    -1,   558,   130,    -1,    -1,    -1,
15391       -1,  3566,   159,    -1,  3468,    -1,    -1,   570,    -1,    -1,
15392       -1,    -1,   575,    -1,    -1,    -1,    -1,    -1,    -1,   176,
15393     3585,   155,    -1,   586,   181,    -1,    -1,    -1,    -1,    -1,
15394       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   602,
15395       -1,    -1,    -1,    -1,   607,   202,   203,    -1,    -1,    -1,
15396      613,    -1,   186,    -1,   617,   618,    -1,    -1,    -1,    -1,
15397      217,   624,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15398       -1,   634,   635,    -1,   438,    -1,    -1,   441,   442,   443,
15399      643,   445,   446,   447,   448,   449,   450,    -1,    -1,    -1,
15400       -1,    -1,   249,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15401       -1,    -1,    -1,    -1,    -1,   262,    -1,    -1,   265,    -1,
15402      244,    -1,   246,    -1,    -1,    -1,    -1,  3682,    -1,    -1,
15403       -1,    -1,   256,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15404      264,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15405      274,    -1,    -1,    -1,    -1,  3710,  3711,  3712,    -1,  3613,
15406     4348,    -1,    -1,    -1,    -1,    -1,    -1,  3722,    -1,    -1,
15407       -1,    -1,   725,   726,    -1,    -1,  4364,    -1,   731,    -1,
15408       -1,    -1,    -1,    -1,    -1,    -1,   310,    -1,    -1,   313,
15409      314,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   345,    -1,
15410       -1,    -1,    -1,    -1,   757,    -1,    -1,    -1,  3662,  4397,
15411       -1,    -1,    -1,    -1,    -1,    -1,   340,    -1,    -1,    -1,
15412       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15413       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15415       -1,     8,    -1,    -1,    11,    -1,    -1,    -1,    15,    16,
15416       17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15417       -1,    -1,    -1,    -1,    -1,    32,    -1,    -1,    35,   403,
15418       -1,    -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,    46,
15419       -1,   438,    -1,    -1,   441,   442,   443,    -1,   445,   446,
15420      447,   448,   449,   450,    -1,    -1,    -1,    -1,    -1,    -1,
15421       -1,    -1,    -1,    70,    -1,    -1,    -1,  4505,    -1,    -1,
15422       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15423       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3793,
15424       -1,    -1,    -1,   896,    -1,    -1,    -1,    -1,    -1,  3803,
15425      903,    -1,    -1,    -1,   907,    -1,    -1,    -1,    -1,    -1,
15426       -1,    -1,    -1,    -1,     8,    -1,    -1,    11,    -1,    -1,
15427      923,    15,    16,    17,    -1,    -1,  3931,    -1,    -1,    -1,
15428     3935,  3936,  3937,  3938,   937,    -1,  3941,    -1,    32,    -1,
15429       -1,    -1,    -1,    -1,    -1,    -1,    40,    -1,    -1,    -1,
15430     4588,    -1,    46,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15431     3965,  3966,  3967,    -1,  3969,    -1,  3971,  3972,    -1,   176,
15432       -1,    -1,    -1,   976,   181,    -1,    70,    -1,  3983,  3984,
15433       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15434       -1,    -1,    -1,    -1,    -1,   202,   203,    -1,    -1,  4004,
15435       -1,    -1,    -1,    -1,    -1,     8,  4011,  4012,    11,  4014,
15436      217,  1014,    15,    16,    17,    -1,    -1,    25,    -1,  3923,
15437       -1,  4026,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    32,
15438       -1,    -1,    35,    -1,    -1,    -1,    -1,    40,    -1,    -1,
15439       -1,    -1,   249,    46,    -1,    -1,  1049,    -1,    -1,    -1,
15440     3954,    -1,    -1,    -1,    -1,   262,    -1,    -1,   265,    -1,
15441       -1,    -1,    -1,    71,    -1,    -1,  1069,    70,    -1,    -1,
15442     1073,  3975,    -1,    -1,    -1,    -1,    -1,    85,  1081,    -1,
15443       -1,  4086,   176,    -1,    -1,    -1,  3990,   181,    -1,    -1,
15444       -1,    -1,    -1,    -1,    -1,   103,    -1,    -1,    -1,    -1,
15445       -1,   109,  4107,    -1,    -1,    -1,  1109,    -1,   202,   203,
15446       -1,    -1,    -1,    -1,    -1,    -1,    -1,   125,    -1,    -1,
15447     1123,    -1,  1125,   217,    -1,    -1,    -1,    -1,   136,  4033,
15448       -1,    -1,  4137,    -1,    -1,    -1,   144,  1140,   345,    -1,
15449     1143,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   156,    -1,
15450       -1,    -1,  1155,   161,    -1,   249,    -1,    -1,    -1,   167,
15451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   262,    -1,
15452       -1,   265,    -1,   176,    -1,    -1,   184,    -1,   181,    -1,
15453       -1,  1184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15454       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   202,
15455      203,   209,    -1,    -1,    -1,    -1,  4211,    -1,    -1,  1212,
15456     1213,  1214,    -1,  1216,   217,    -1,    -1,    -1,  4122,    -1,
15457       -1,  4226,   230,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15458       -1,   438,    -1,  1236,   441,   442,   443,    -1,   445,   446,
15459      447,   448,   449,   450,    -1,    -1,   249,    -1,    -1,    -1,
15460       -1,   345,    -1,    -1,   262,    -1,    -1,  1260,    -1,   262,
15461        8,    -1,   265,    11,  4168,  1268,  1269,    15,    16,    17,
15462       -1,    -1,    -1,    -1,  1277,  1278,   284,    -1,    -1,    -1,
15463      374,    -1,    -1,    -1,    32,    -1,   294,    -1,    -1,  4294,
15464       -1,    -1,    40,    -1,    -1,    -1,    -1,    -1,    46,    -1,
15465       -1,    -1,    -1,    -1,  1307,    -1,    -1,    -1,  1311,  1312,
15466     4315,    -1,    -1,   321,    -1,  4320,  4321,    -1,   326,    -1,
15467      328,    -1,    70,    -1,  1327,    -1,   334,    -1,    -1,   337,
15468     1333,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15469       -1,    -1,   345,    -1,   438,    -1,    -1,   441,   442,   443,
15470       -1,   445,   446,   447,   448,   449,   450,   365,   366,    -1,
15471     4365,   369,    -1,    -1,    -1,   373,    -1,    -1,    -1,    -1,
15472       -1,    -1,    -1,    -1,   382,    -1,    -1,    -1,    -1,   387,
15473       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4292,    -1,
15474     1393,   399,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15475       -1,    -1,    -1,    -1,   412,    -1,  4411,    -1,    -1,    -1,
15476       -1,    -1,    -1,  4418,    -1,    -1,    -1,    -1,    -1,    -1,
15477       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1430,   176,    -1,
15478       -1,    -1,    -1,   181,    -1,   438,    -1,    -1,   441,   442,
15479      443,    -1,   445,   446,   447,   448,   449,   450,  4453,    -1,
15480       -1,    -1,    -1,    -1,   202,   203,    -1,    -1,    -1,  4464,
15481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   217,
15482       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15483       -1,  4486,    -1,    -1,    -1,    -1,  1489,    -1,    -1,    -1,
15484       -1,    -1,    -1,    -1,    -1,    -1,  4400,    -1,    -1,    -1,
15485       -1,   249,    -1,    -1,  4509,    -1,    -1,  1510,    -1,    -1,
15486       -1,    -1,    -1,  4518,   262,    -1,    -1,   265,    -1,    -1,
15487       -1,    -1,  1525,    -1,  4428,    -1,    -1,    -1,    -1,    -1,
15488     1533,    -1,    -1,    -1,  4539,    -1,  1539,    -1,    -1,    -1,
15489       -1,  1544,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15490       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1560,    -1,    -1,
15491       -1,  1564,  4466,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15492       -1,    -1,    -1,  1576,    -1,    -1,    -1,    -1,    -1,    -1,
15493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1591,    -1,
15494       -1,    -1,    -1,    -1,    -1,  1598,    -1,   345,    -1,    -1,
15495       -1,  1604,    -1,    -1,    -1,    -1,    -1,  1610,    -1,    -1,
15496       -1,    -1,    -1,  1616,    -1,  4519,    -1,  4622,    -1,  4523,
15497     4524,    -1,    -1,    -1,    -1,  1628,    -1,    -1,    -1,    -1,
15498       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4644,
15499       -1,    -1,    -1,    -1,  1647,    -1,  1649,  1650,    -1,    -1,
15500       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1662,
15501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1672,
15502       -1,    -1,  1675,  4678,  1677,  1678,    -1,    -1,    -1,    -1,
15503       -1,    -1,    -1,    -1,    -1,    -1,  1689,    -1,  4693,    -1,
15504      438,    -1,    -1,   441,   442,   443,    -1,   445,   446,   447,
15505      448,   449,   450,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15506       -1,  4615,    -1,    -1,    -1,    -1,    -1,    -1,  1721,    -1,
15507       -1,    -1,    -1,    -1,    -1,  4730,    -1,    -1,    -1,    -1,
15508       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15509       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15510       -1,    -1,  1755,    -1,  1757,    -1,    -1,    -1,    -1,  1762,
15511     1763,    -1,    -1,    -1,    -1,    -1,  1769,  1770,  1771,    -1,
15512       -1,    -1,  1775,    -1,  1777,  1778,  1779,  1780,  1781,  1782,
15513       -1,  1784,    -1,  1786,  1787,    -1,    -1,  1790,    -1,    -1,
15514       -1,    -1,    -1,    -1,    -1,    -1,  4801,    -1,    -1,    -1,
15515       -1,  1804,  1805,  1806,  1807,  1808,  1809,    -1,    -1,    -1,
15516     1813,    -1,    -1,    -1,  1817,    -1,    -1,  1820,    -1,    -1,
15517     1823,  1824,  1825,  1826,  1827,  1828,  1829,  1830,  1831,    -1,
15518     1833,    -1,  4837,    -1,    -1,    20,    -1,  1840,    -1,  1842,
15519       25,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15520       -1,    -1,    37,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15521       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15522       -1,    -1,    -1,    58,    -1,    -1,    -1,    -1,    -1,    -1,
15523       -1,    -1,    -1,    -1,    -1,    -1,    71,    -1,    -1,    -1,
15524       -1,    -1,    -1,    -1,    -1,    -1,    81,    -1,    -1,    -1,
15525       85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15526       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   103,    -1,
15527       -1,    -1,    -1,    -1,   109,    -1,    -1,    -1,    -1,    -1,
15528       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15529      125,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15530       -1,   136,    -1,    -1,    -1,    -1,    -1,    20,    -1,   144,
15531       -1,    -1,    25,    -1,    -1,    -1,    -1,  1970,    -1,    -1,
15532       -1,   156,    -1,    -1,    37,    -1,    -1,    -1,   163,    -1,
15533       -1,    -1,   167,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15534       -1,    -1,    -1,    -1,    -1,    58,    -1,    -1,    -1,   184,
15535       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    71,    -1,
15536       -1,    -1,    -1,    -1,    -1,    -1,  2019,    -1,    -1,    -1,
15537     2023,  2024,    85,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15538     2033,    -1,    -1,    -1,  2037,  2038,   221,    -1,    -1,  2042,
15539      103,    -1,    -1,    -1,    -1,   230,    -1,  2050,    -1,    -1,
15540       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15541       -1,    -1,   125,    -1,    -1,  2068,    -1,    -1,  2071,    -1,
15542       -1,    -1,    -1,   136,    -1,    -1,    -1,   262,    -1,  2082,
15543      265,   144,    -1,  2086,    -1,    -1,  2089,    -1,    -1,    -1,
15544       -1,    -1,    -1,   156,    -1,  2098,    -1,    -1,   161,   284,
15545       -1,    -1,    -1,    -1,   167,    -1,    -1,    -1,  2111,    -1,
15546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   303,    -1,
15547       -1,   184,    -1,    -1,    -1,    -1,  2129,  2130,    -1,    -1,
15548       -1,    -1,    -1,    -1,    -1,  2138,   321,    -1,    -1,    -1,
15549       -1,    -1,    -1,   328,    -1,    -1,    -1,    -1,    -1,   334,
15550       -1,    -1,   337,    -1,    -1,    -1,    -1,  2160,  2161,    -1,
15551       -1,  2164,    -1,    -1,    -1,    -1,    -1,   230,    -1,    -1,
15552       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15553       -1,   366,    -1,    -1,   369,   370,    -1,   372,   373,    -1,
15554     2193,    -1,    -1,    -1,  2197,    -1,    -1,   382,    -1,   262,
15555       -1,    -1,   387,    -1,    -1,    -1,    -1,    -1,   393,    -1,
15556      273,   396,  2215,    -1,   399,    -1,    -1,    -1,    -1,    -1,
15557       -1,   284,    -1,  2226,    -1,    -1,    -1,   412,    -1,    -1,
15558       -1,   294,    -1,    -1,    -1,    -1,  2239,    -1,    -1,    -1,
15559       -1,    -1,    -1,    -1,  2247,    -1,    -1,    -1,    -1,    -1,
15560       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   321,    -1,
15561       -1,    -1,    -1,   326,    -1,   328,    -1,    -1,    -1,    -1,
15562       -1,   334,    -1,    -1,   337,    -1,    -1,    -1,    -1,    -1,
15563       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2292,
15564     2293,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2301,    -1,
15565       -1,    -1,    -1,   366,    -1,    -1,   369,    -1,    -1,    -1,
15566      373,    -1,    -1,    -1,    -1,    -1,    -1,   380,    -1,   382,
15567       -1,    -1,    -1,    -1,   387,    -1,    -1,    -1,    -1,    -1,
15568       -1,    -1,    -1,    -1,    -1,    -1,   399,    -1,    -1,    -1,
15569       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   412,
15570       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15571     2363,    -1,    -1,    -1,  2367,    -1,    -1,    -1,    -1,    -1,
15572       -1,    -1,    -1,  2376,    -1,    -1,    -1,    -1,    -1,    -1,
15573       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15574       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15575       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15576       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15577       -1,    -1,    -1,    -1,    -1,    -1,  2429,    -1,    -1,    -1,
15578       -1,  2434,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15579       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    20,    -1,
15580       -1,    -1,    -1,    25,    -1,    -1,    -1,    -1,    -1,    -1,
15581       -1,    -1,  2465,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15582       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2481,    -1,
15583     2483,    -1,    -1,    -1,    -1,    -1,    58,    -1,  2491,    -1,
15584       -1,    -1,  2495,    -1,    -1,  2498,    -1,    -1,  2501,    71,
15585       72,    -1,    -1,    -1,    -1,    -1,  2509,    -1,    -1,    81,
15586       -1,    -1,    -1,    85,    -1,    -1,  2519,    -1,    -1,    -1,
15587       -1,  2524,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15588       -1,   103,    -1,    -1,    -1,    -1,   201,    -1,    -1,    -1,
15589       -1,    -1,    -1,   208,  2547,  2548,  2549,    -1,    -1,  2552,
15590       -1,    -1,    -1,   125,   219,    -1,    -1,  2560,  2561,  2562,
15591     2563,    -1,    -1,    -1,   136,  2568,    -1,    -1,    -1,    -1,
15592     2573,  2574,   144,  2576,    -1,  2578,    -1,    -1,    -1,    -1,
15593       -1,    -1,    -1,    -1,   156,    -1,  2589,  2590,    -1,   161,
15594     2593,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15595       -1,    -1,    -1,    -1,  2607,    -1,  2609,    -1,  2611,    -1,
15596       -1,    -1,   184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15597       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2631,    -1,
15598       -1,    -1,    -1,    -1,    -1,    -1,    -1,   209,    -1,  2642,
15599       -1,  2644,  2645,  2646,    -1,    -1,    -1,    -1,    -1,    -1,
15600       -1,    -1,    -1,    -1,    -1,    -1,  2659,    -1,   230,  2662,
15601       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15602       -1,  2674,    -1,    -1,    -1,    -1,  2679,    -1,    -1,    -1,
15603       -1,    -1,  2685,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15604      262,    -1,  2695,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15605       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2711,    -1,
15606       -1,  2714,   284,  2716,    -1,    -1,    -1,    -1,  2721,    -1,
15607     2723,    -1,   294,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15608       -1,    -1,    -1,    -1,    -1,    -1,  2739,  2740,    -1,    -1,
15609       -1,    -1,  2745,    -1,    -1,    -1,    -1,    -1,    -1,   321,
15610       -1,    -1,    -1,    -1,   326,    -1,   328,    -1,    -1,    -1,
15611       -1,    -1,   334,  2766,    -1,   337,  2769,    -1,    -1,  2772,
15612       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15613       -1,    -1,    -1,    -1,    -1,    -1,  2789,    -1,    -1,    -1,
15614       -1,    -1,    -1,    -1,   366,    -1,    -1,   369,    -1,    -1,
15615       -1,   373,    -1,    -1,    -1,    -1,    -1,    -1,   380,    -1,
15616      382,  2814,    -1,    -1,    -1,   387,    -1,    -1,    -1,    -1,
15617       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15618       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15619      412,    -1,    -1,    -1,    -1,    -1,  2849,  2850,  2851,    -1,
15620       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15622     2873,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15623     2883,    -1,  2885,  2886,    -1,  2888,    -1,    -1,  2891,    -1,
15624       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2901,    -1,
15625       -1,    -1,    -1,    -1,    -1,   570,    -1,    -1,    -1,    -1,
15626      575,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15627       -1,   586,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15628       -1,    -1,    -1,    -1,    -1,    -1,    -1,   602,    -1,    -1,
15629       -1,    -1,    -1,  2946,    -1,    -1,    -1,    -1,    -1,    -1,
15630       -1,    -1,    -1,   618,    -1,    -1,    -1,    -1,    -1,   624,
15631       -1,    -1,  2965,    -1,    -1,    -1,    -1,    -1,  2971,    -1,
15632      635,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   643,    -1,
15633       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15634       -1,    -1,    -1,    -1,  2997,    -1,    -1,    -1,    -1,    -1,
15635     3003,  3004,    -1,    -1,    -1,    -1,    -1,  3010,    -1,  3012,
15636       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15637       -1,  3024,    -1,  3026,    -1,    -1,    -1,    -1,    -1,    -1,
15638       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15639       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15640       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15641     3063,    -1,    -1,    -1,    -1,    -1,   731,    -1,    -1,    -1,
15642       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3080,  3081,    -1,
15643       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15644       -1,  3094,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15645       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15646       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15647       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15648       -1,    -1,    -1,    -1,  3137,    -1,    -1,    -1,    -1,    -1,
15649       -1,    -1,    -1,    -1,    -1,    -1,  3149,    -1,    -1,  3152,
15650       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15651       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15652       -1,  3174,    -1,    -1,  3177,    -1,    -1,    -1,    -1,    -1,
15653       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15654       -1,  3194,    -1,    -1,  3197,    -1,    -1,    -1,    -1,    -1,
15655     3203,    -1,    -1,    -1,    -1,    -1,  3209,    -1,  3211,    -1,
15656       -1,  3214,    -1,    -1,    -1,  3218,  3219,  3220,  3221,  3222,
15657       -1,    -1,  3225,  3226,  3227,  3228,  3229,  3230,  3231,  3232,
15658     3233,  3234,    -1,    -1,    -1,  3238,  3239,    -1,    -1,    -1,
15659     3243,    -1,    -1,    -1,    -1,  3248,    -1,    -1,    -1,  3252,
15660       -1,  3254,    -1,  3256,    -1,    -1,    -1,    -1,    -1,    -1,
15661       -1,  3264,    -1,    -1,  3267,    -1,  3269,    -1,    -1,    -1,
15662       -1,    -1,    -1,    -1,  3277,  3278,    -1,    -1,  3281,  3282,
15663       -1,    -1,    -1,  3286,  3287,    -1,    -1,    -1,    -1,    -1,
15664     3293,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15665     3303,    -1,  3305,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15666       -1,    -1,    -1,    -1,  3317,    -1,    -1,    -1,    -1,    -1,
15667     3323,  3324,  3325,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15668       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15669       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3350,    -1,    -1,
15670       -1,    -1,    -1,    -1,    -1,    -1,   613,    -1,    -1,    -1,
15671     3363,    -1,    -1,    -1,    -1,    -1,  3369,    -1,    -1,    -1,
15672       -1,    -1,    -1,    -1,    -1,    -1,    -1,   634,    -1,    -1,
15673       -1,  3384,    -1,    -1,  1049,    -1,    -1,    -1,    -1,    -1,
15674       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15675       -1,    -1,    -1,    -1,  1069,    -1,    -1,    -1,    -1,    -1,
15676       -1,    -1,    -1,  3416,    -1,    -1,  1081,    -1,    -1,    -1,
15677       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15678       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15679       -1,    -1,    -1,    -1,  1109,    -1,    -1,    -1,    -1,    -1,
15680       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3462,
15681     1125,    -1,    -1,    -1,  3467,  3468,  3469,    -1,    -1,    -1,
15682       -1,    -1,    -1,    -1,    -1,  1140,    -1,    -1,  1143,    -1,
15683       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15684       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15685       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15686       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3521,    -1,
15687       -1,  3524,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15688       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15689       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15690       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15691       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15692       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15693       -1,    -1,    -1,  3586,    -1,    -1,    -1,    -1,    -1,    -1,
15694       -1,    -1,    -1,    -1,    -1,  1260,    -1,    -1,    -1,    -1,
15695       -1,    -1,    -1,  1268,  1269,    -1,  3609,  3610,    -1,    -1,
15696     3613,    -1,    -1,  1278,    -1,    -1,    -1,    -1,    -1,  3622,
15697       -1,  3624,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15698       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15699       -1,    -1,    -1,    -1,    -1,    -1,   903,    -1,    -1,   201,
15700       -1,    -1,    -1,    -1,    -1,    -1,   208,    -1,    -1,  3662,
15701     3663,  3664,    -1,    -1,    -1,    -1,   923,   219,  1333,    -1,
15702       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15703      937,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15704       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15705       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15706       -1,    -1,    -1,    -1,    -1,  3718,    -1,    -1,    -1,    -1,
15707       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15708       -1,    -1,    -1,    -1,    -1,    -1,  3739,    -1,    -1,    -1,
15709       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3750,    -1,    -1,
15710       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1014,    -1,    -1,
15711       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15712       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3780,    -1,    -1,
15713       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3790,  3791,    -1,
15714     3793,    -1,    -1,    -1,  3797,  3798,    -1,    -1,    -1,  3802,
15715     3803,    -1,    -1,    -1,  3807,    -1,    -1,  3810,  3811,    -1,
15716       -1,    -1,  3815,    -1,    -1,    -1,    -1,    -1,  3821,    -1,
15717       -1,    -1,    -1,    -1,  1489,    -1,    -1,    -1,    -1,    -1,
15718       -1,    -1,    -1,    -1,    -1,    -1,  3839,    -1,    -1,    -1,
15719     3843,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15720       -1,    -1,  3855,    -1,    -1,    -1,    -1,  3860,    -1,    -1,
15721       -1,    -1,    -1,  3866,    -1,    -1,  1123,    -1,    -1,    -1,
15722       -1,    -1,    -1,    -1,  1539,    -1,    -1,    -1,  3881,    -1,
15723       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15724       -1,    -1,    -1,    -1,    -1,  1560,    -1,    -1,    -1,  1564,
15725       -1,    -1,  3905,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15726       -1,  1576,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15727     3923,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15728       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3940,    -1,    -1,
15729       -1,    -1,  3945,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15730       -1,  3954,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15731       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3970,    -1,    -1,
15732       -1,    -1,  3975,    -1,    -1,    -1,    -1,    -1,    -1,  3982,
15733       -1,    -1,    -1,    -1,  1649,  1650,  3989,  3990,    -1,    -1,
15734     3993,    -1,    -1,    -1,    -1,    -1,    -1,  1662,    -1,    -1,
15735     4003,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15736       -1,    -1,  1677,  1678,    -1,    -1,    -1,    -1,   570,    -1,
15737       -1,    -1,    -1,   575,  1689,    -1,    -1,    -1,    -1,    -1,
15738     4033,    -1,    -1,    -1,   586,    -1,    -1,    -1,    -1,    -1,
15739       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15740      602,    -1,  4055,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15741       -1,    -1,    -1,  4066,    -1,    -1,   618,    -1,    -1,    -1,
15742     1327,    -1,   624,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15743       -1,    -1,    -1,   635,    -1,    -1,    -1,    -1,    -1,    -1,
15744       -1,   643,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15745       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15746       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4120,    -1,  4122,
15747       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15748       -1,    -1,    -1,    -1,    -1,    -1,  1393,    -1,    -1,    -1,
15749       -1,    -1,    -1,    -1,  1809,  4148,    -1,    -1,    -1,    -1,
15750       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15751       -1,  4164,    -1,    -1,    -1,  4168,    -1,    -1,    -1,    -1,
15752     4173,    -1,    -1,  1430,    -1,    -1,    -1,    -1,    -1,   731,
15753       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4190,  4191,    -1,
15754       -1,  4194,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15755       -1,    -1,    -1,   725,   726,  4208,    -1,    -1,    -1,    -1,
15756     4213,    -1,    -1,    -1,    -1,  4218,    -1,    -1,  4221,  4222,
15757       -1,    -1,    -1,    -1,    -1,    -1,  4229,  4230,    -1,    -1,
15758       -1,    -1,    -1,    -1,    -1,   757,    -1,    -1,    -1,    -1,
15759       -1,    -1,  4245,    -1,    -1,    -1,    -1,    -1,    -1,  4252,
15760       -1,  4254,    -1,  1510,    -1,  4258,    -1,    -1,    -1,    -1,
15761       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1525,    -1,
15762       -1,    -1,    -1,    -1,    -1,    -1,  1533,    -1,    -1,    -1,
15763       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1544,    -1,  4292,
15764     4293,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4302,
15765       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15766       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15767       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15768       -1,    -1,    -1,    -1,  1591,    -1,  4339,    -1,    -1,    -1,
15769       -1,    -1,  4345,    -1,    -1,    -1,    -1,  1604,    -1,    -1,
15770       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1616,
15771       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2033,    -1,
15772       -1,  1628,  2037,  2038,    -1,    -1,    -1,  2042,    -1,    -1,
15773       -1,    -1,    -1,    -1,    -1,  2050,    -1,    -1,    -1,    -1,
15774       -1,    -1,    -1,    -1,    -1,  4398,    -1,  4400,    -1,    -1,
15775       -1,    -1,    -1,  2068,    -1,    -1,    -1,    -1,    -1,    -1,
15776       -1,    -1,    -1,    -1,    -1,  1672,    -1,    -1,  1675,    -1,
15777       -1,    -1,    -1,    -1,  4427,  4428,    -1,  4430,    -1,  4432,
15778       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15779       -1,    -1,    -1,    -1,    -1,    -1,  2111,    -1,    -1,    -1,
15780       -1,    -1,    -1,  4456,    -1,    -1,    -1,  4460,    -1,    -1,
15781       -1,    -1,    -1,  4466,  2129,  2130,    -1,    -1,  4471,    -1,
15782       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15783       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4490,    -1,    -1,
15784       -1,    -1,    -1,    -1,    -1,  2160,  2161,  1049,    -1,  2164,
15785       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15786     4513,    -1,    -1,    -1,    -1,    -1,  4519,  1069,    -1,    -1,
15787     4523,  4524,    -1,    -1,    -1,  4528,    -1,    -1,  2193,  1081,
15788       -1,    -1,  2197,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15789       -1,  4544,    -1,    -1,    -1,    -1,    -1,  1804,    -1,    -1,
15790     2215,    -1,    -1,    -1,    -1,    -1,    -1,  1109,    -1,    -1,
15791       -1,  2226,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4572,
15792       -1,    -1,    -1,  1125,  2239,    -1,    -1,    -1,    -1,    -1,
15793       -1,    -1,  2247,    -1,    -1,  1842,    -1,    -1,  1140,    -1,
15794     4593,  1143,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15795       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15796       -1,  4614,  4615,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15797       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15798       -1,    -1,  4635,  1155,    -1,  4638,  2301,    -1,    -1,    -1,
15799       -1,    -1,    -1,    -1,  4647,    -1,    -1,    -1,    -1,  4652,
15800       -1,  4654,    -1,  4656,    -1,    -1,    -1,    -1,    -1,    -1,
15801     4663,    -1,  1184,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15802       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4680,    -1,    -1,
15803       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15804     1212,  1213,  1214,    -1,  1216,    -1,    -1,    -1,  4701,    -1,
15805     4703,    -1,  2367,    -1,    -1,    -1,    -1,    -1,  1260,    -1,
15806       -1,    -1,    -1,    -1,  1236,    -1,  1268,  1269,    -1,    -1,
15807       -1,    -1,    -1,    -1,    -1,    -1,  1278,    -1,    -1,    -1,
15808       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15809       -1,  4744,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15810       -1,    -1,    -1,    -1,    -1,  1277,    -1,    -1,    -1,    -1,
15811       -1,    -1,  2019,    -1,  2429,    -1,  2023,  2024,  4771,  4772,
15812       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4782,
15813       -1,  1333,    -1,    -1,    -1,  1307,    -1,  4790,    -1,  1311,
15814     1312,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4802,
15815     2465,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15816       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2483,    -1,
15817       -1,    -1,    -1,    -1,    -1,    -1,  2491,    -1,    -1,  2086,
15818       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15819       -1,  2098,   613,    -1,    -1,    -1,  4849,    -1,    -1,    -1,
15820       -1,    -1,  4855,  4856,  4857,    -1,    -1,    -1,    -1,    -1,
15821       -1,    -1,    -1,   634,    -1,    -1,    -1,    -1,    -1,    -1,
15822       -1,    -1,    -1,  4876,    -1,    -1,    -1,    -1,    -1,    -1,
15823       -1,  2138,    -1,    -1,    -1,  4888,    -1,    -1,    -1,    -1,
15824       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4902,
15825       -1,    -1,    -1,  2568,    -1,    -1,    -1,    -1,    -1,  2574,
15826       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15827       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15828       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1489,    -1,    -1,
15829       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15830       -1,    -1,    -1,    -1,    -1,    -1,  4959,  4960,    -1,    -1,
15831       -1,    -1,  4965,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15832     4973,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15833       -1,  4984,  4985,  4986,    -1,    -1,    -1,  1539,    -1,    -1,
15834       -1,    -1,    -1,    -1,  2659,    -1,    -1,    -1,    -1,    -1,
15835       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1560,    -1,
15836       -1,    -1,  1564,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15837       -1,    -1,    -1,    -1,  1576,    -1,    -1,    -1,    -1,    -1,
15838       -1,    -1,    -1,    -1,    -1,    -1,  2293,    -1,    -1,    -1,
15839       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15840       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2723,    -1,
15841       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15842       -1,    -1,    -1,    -1,  2739,  2740,    -1,    -1,    -1,    -1,
15843       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15844       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1649,  1650,    -1,
15845       -1,  2766,    -1,    -1,  2769,    -1,  2363,    -1,    -1,    -1,
15846     1662,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15847       -1,    -1,    -1,    -1,    -1,  1677,  1678,    -1,    -1,    -1,
15848       -1,    -1,   903,    -1,    -1,    -1,    -1,  1689,    -1,    -1,
15849       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15850       -1,    -1,   923,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15851       -1,    -1,    -1,    -1,    -1,    -1,   937,    -1,    -1,    -1,
15852       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15853       -1,    -1,    -1,    -1,  2849,  2850,  2851,    -1,    -1,    -1,
15854       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15855       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2873,    -1,
15856       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15857       -1,  2886,    -1,  2888,  2481,    -1,  2891,    -1,    -1,    -1,
15858       -1,    -1,    -1,    -1,    -1,    -1,  2901,    -1,    -1,    -1,
15859     1762,  2498,    -1,  1014,    -1,    -1,    -1,    -1,    -1,    -1,
15860       -1,    -1,  2509,  1775,    -1,  1777,    -1,  1809,  1780,  1781,
15861     1782,    -1,    -1,    -1,    -1,  1787,    -1,    -1,  1790,    -1,
15862       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15863       -1,    -1,    -1,  1805,  1806,  1807,  1808,    -1,    -1,    -1,
15864       -1,  1813,    -1,    -1,    -1,  1817,    -1,    -1,  1820,    -1,
15865     2965,  1823,  1824,  1825,  1826,  1827,  1828,  1829,  1830,  1831,
15866       -1,  1833,    -1,    -1,    -1,    -1,    -1,    -1,  1840,    -1,
15867     1842,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15868       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3003,    -1,
15869       -1,    -1,    -1,    -1,    -1,  3010,    -1,  3012,    -1,    -1,
15870       -1,    -1,  1123,    -1,    -1,    -1,    -1,    -1,    -1,  3024,
15871       -1,  3026,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15872       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15873       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2644,  2645,  2646,
15874       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15875       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15876       -1,    -1,    -1,    -1,    -1,  3080,    -1,    -1,    -1,    -1,
15877       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15878       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15879       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1970,    -1,
15880       -1,    -1,    -1,    -1,  2711,    -1,    -1,  2714,    -1,  2716,
15881       -1,    -1,    -1,    -1,  2721,    -1,    -1,    -1,    -1,    -1,
15882       -1,    -1,  3137,    -1,    -1,    -1,    -1,    -1,    -1,   613,
15883       -1,  2033,    -1,    -1,    -1,  2037,  2038,  3152,    -1,    -1,
15884     2042,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2050,    -1,
15885      634,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3174,
15886       -1,    -1,  3177,    -1,    -1,  2772,  2068,    -1,    -1,    -1,
15887       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15888       -1,    -1,  2789,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15889       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2071,
15890       -1,    -1,    -1,    -1,    -1,    -1,  1327,  2814,    -1,  2111,
15891       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15892       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2129,  2130,    -1,
15893       -1,   613,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3254,
15894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15895       -1,    -1,   634,    -1,    -1,    -1,    -1,    -1,  2160,  2161,
15896       -1,    -1,  2164,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15897       -1,    -1,  1393,    -1,    -1,    -1,  2883,    -1,  2885,    -1,
15898       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15899       -1,  2193,    -1,    -1,    -1,  2197,    -1,    -1,    -1,    -1,
15900       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1430,
15901       -1,    -1,    -1,  2215,    -1,    -1,    -1,    -1,    -1,    -1,
15902       -1,    -1,    -1,    -1,  2226,    -1,    -1,    -1,    -1,    -1,
15903       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2239,    -1,  2946,
15904       -1,    -1,    -1,    -1,    -1,  2247,    -1,    -1,    -1,    -1,
15905       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15906       -1,    -1,    -1,    -1,  2971,    -1,    -1,    -1,    -1,    -1,
15907       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15908       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1510,
15909     2997,    -1,    -1,    -1,    -1,    -1,    -1,  3004,    -1,  2301,
15910       -1,  3416,    -1,    -1,  1525,    -1,    -1,    -1,    -1,    -1,
15911       -1,    -1,  1533,    -1,    -1,    -1,    -1,    -1,    -1,   903,
15912     2292,    -1,    -1,  1544,    -1,    -1,    -1,    -1,    -1,    -1,
15913       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   923,
15914       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3462,    -1,    -1,
15915       -1,    -1,  3467,   937,  3469,    -1,  3063,    -1,    -1,    -1,
15916       -1,    -1,    -1,    -1,    -1,  2367,    -1,    -1,    -1,    -1,
15917     1591,    -1,    -1,    -1,  3081,    -1,    -1,    -1,    -1,    -1,
15918       -1,    -1,    -1,  1604,    -1,    -1,    -1,  3094,    -1,    -1,
15919       -1,    -1,    -1,   613,    -1,  1616,    -1,    -1,    -1,    -1,
15920       -1,    -1,    -1,    -1,    -1,    -1,  3521,  1628,    -1,  3524,
15921       -1,    -1,    -1,    -1,   634,    -1,    -1,    -1,    -1,    -1,
15922       -1,   903,    -1,    -1,    -1,    -1,    -1,  2429,    -1,    -1,
15923     1014,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15924       -1,   923,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15925       -1,  1672,    -1,    -1,  1675,   937,    -1,    -1,    -1,    -1,
15926       -1,    -1,  2434,  2465,    -1,    -1,    -1,    -1,    -1,    -1,
15927       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15928       -1,  2483,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2491,
15929     3197,    -1,    -1,    -1,  3609,  3610,    -1,    -1,    -1,    -1,
15930       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3622,    -1,  3624,
15931       -1,  3218,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15932       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15933       -1,    -1,  1014,    -1,    -1,    -1,  3243,    -1,    -1,  1123,
15934       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2519,    -1,    -1,
15935       -1,    -1,  2524,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15936       -1,    -1,    -1,    -1,    -1,    -1,  2568,    -1,    -1,    -1,
15937     3277,    -1,  2574,    -1,    -1,    -1,    -1,  2549,    -1,    -1,
15938       -1,    -1,    -1,  1804,    -1,    -1,    -1,    -1,  2560,    -1,
15939     2562,  2563,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15940       -1,  2573,    -1,  3718,  2576,    -1,  2578,    -1,    -1,    -1,
15941       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3325,    -1,
15942       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15943       -1,    -1,    -1,    -1,    -1,  2607,    -1,  2609,    -1,  2611,
15944       -1,  1123,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15945       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2659,    -1,    -1,
15946       -1,    -1,  3369,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15947       -1,    -1,  2644,  2645,  2646,    -1,    -1,    -1,    -1,    -1,
15948       -1,    -1,    -1,   903,    -1,    -1,    -1,    -1,    -1,    -1,
15949     2662,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15950       -1,    -1,  2674,   923,    -1,    -1,    -1,  2679,    -1,    -1,
15951       -1,    -1,    -1,  2685,    -1,    -1,    -1,   937,    -1,    -1,
15952       -1,  2723,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15953       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2739,  2740,    -1,
15954       -1,    -1,    -1,  1327,    -1,    -1,    -1,    -1,    -1,    -1,
15955       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15956       -1,  3468,    -1,    -1,  2766,    -1,    -1,  2769,    -1,    -1,
15957       -1,    -1,    -1,  2745,    -1,    -1,    -1,    -1,    -1,    -1,
15958       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15959       -1,    -1,    -1,    -1,  1014,    -1,    -1,    -1,  2019,    -1,
15960       -1,    -1,  2023,  2024,    -1,    -1,    -1,    -1,    -1,  1393,
15961       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15962       -1,    -1,    -1,    -1,    -1,  3940,    -1,    -1,    -1,    -1,
15963     3945,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15964       -1,    -1,    -1,    -1,    -1,  1327,  1430,  2849,  2850,  2851,
15965       -1,    -1,    -1,    -1,    -1,  3970,    -1,    -1,    -1,    -1,
15966       -1,    -1,    -1,    -1,    -1,  2086,    -1,  3982,    -1,    -1,
15967       -1,  2873,    -1,    -1,  3989,    -1,    -1,  2098,    -1,    -1,
15968       -1,    -1,    -1,    -1,  2886,    -1,  2888,    -1,  4003,  2891,
15969       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2901,
15970       -1,    -1,    -1,  1123,    -1,    -1,  3613,    -1,    -1,    -1,
15971       -1,  1393,    -1,    -1,    -1,    -1,    -1,  2138,    -1,    -1,
15972       -1,    -1,    -1,    -1,    -1,    -1,  1510,    -1,    -1,    -1,
15973       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15974       -1,  1525,    -1,    -1,    -1,    -1,    -1,    -1,  1430,  1533,
15975       -1,    -1,    -1,    -1,    -1,  3662,    -1,    -1,    -1,    -1,
15976     1544,    -1,    -1,  2965,    -1,    -1,    -1,    -1,    -1,    -1,
15977       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15978       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15979       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15980       -1,  3003,    -1,    -1,    -1,    -1,    -1,  1591,  3010,    -1,
15981     3012,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15982     1604,    -1,  3024,    -1,  3026,    -1,    -1,    -1,  1510,    -1,
15983       -1,    -1,  1616,  4148,    -1,    -1,    -1,    -1,    -1,    -1,
15984       -1,    -1,    -1,  1525,  1628,    -1,    -1,    -1,    -1,    -1,
15985       -1,  1533,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15986       -1,    -1,  1544,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15987       -1,    -1,  2293,    -1,    -1,    -1,    -1,    -1,  3080,    -1,
15988       -1,    -1,    -1,    -1,    -1,    -1,  3793,    -1,  1672,    -1,
15989       -1,  1675,    -1,    -1,    -1,    -1,  3803,    -1,    -1,    -1,
15990       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1327,    -1,  1591,
15991       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15992       -1,    -1,  1604,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15993       -1,    -1,    -1,    -1,  1616,  3137,    -1,  4252,    -1,  4254,
15994       -1,    -1,  2363,    -1,    -1,    -1,  1628,    -1,  3855,    -1,
15995     3152,    -1,    -1,  3860,    -1,    -1,    -1,    -1,    -1,  3866,
15996       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15997       -1,    -1,  3174,  1393,    -1,  3177,    -1,    -1,  4293,    -1,
15998       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
15999     1672,    -1,    -1,  1675,    -1,    -1,    -1,    -1,    -1,    -1,
16000       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16001     1430,    -1,    -1,    -1,    -1,    -1,  3923,    -1,    -1,    -1,
16002     1804,    -1,  3194,    -1,  4339,    -1,    -1,    -1,    -1,    -1,
16003       -1,  3203,    -1,    -1,    -1,    -1,    -1,  3209,    -1,  3211,
16004       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3954,    -1,    -1,
16005       -1,    -1,  3254,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16006     2481,    -1,    -1,    -1,    -1,    -1,  3238,  3239,  3975,    -1,
16007       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2498,    -1,    -1,
16008       -1,    -1,    -1,  3990,  3256,    -1,    -1,    -1,  2509,    -1,
16009     1510,    -1,  3264,    -1,    -1,  3267,    -1,  3269,    -1,    -1,
16010       -1,    -1,    -1,    -1,    -1,  1525,  3278,    -1,    -1,    -1,
16011       -1,    -1,    -1,  1533,  3286,  3287,    -1,    -1,    -1,    -1,
16012       -1,    -1,  1804,    -1,  1544,    -1,  4033,    -1,    -1,    -1,
16013       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16014       -1,    -1,    -1,    -1,    -1,  3317,    -1,    -1,    -1,    -1,
16015       -1,  3323,  3324,  3325,    -1,    -1,    -1,    -1,    -1,    -1,
16016       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16017       -1,  1591,    -1,    -1,    -1,    -1,    -1,    -1,  3350,    -1,
16018       -1,    -1,    -1,    -1,  1604,    -1,    -1,    -1,    -1,    -1,
16019       -1,  3363,    -1,    -1,    -1,    -1,  1616,    -1,  4513,    -1,
16020       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1628,    -1,
16021       -1,    -1,    -1,  4120,  3416,  4122,    -1,    -1,    -1,    -1,
16022       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4544,
16023       -1,    -1,    -1,    -1,    -1,  2019,    -1,    -1,    -1,  2023,
16024     2024,    -1,    -1,    -1,    -1,   613,    -1,    -1,    -1,    -1,
16025       -1,    -1,  1672,    -1,    -1,  1675,    -1,    -1,    -1,    -1,
16026     3462,  4168,    -1,    -1,    -1,  3467,   634,  3469,    -1,    -1,
16027       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16028       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16029     2711,    -1,    -1,  2714,    -1,  2716,    -1,    -1,    -1,    -1,
16030     2721,    -1,  2086,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16031       -1,    -1,    -1,    -1,  2098,    -1,    -1,    -1,    -1,  3521,
16032       -1,    -1,  3524,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16033       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2019,    -1,    -1,
16034       -1,  2023,  2024,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16035       -1,  2772,    -1,    -1,  2138,    -1,    -1,    -1,    -1,    -1,
16036       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2789,    -1,
16037       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16038       -1,    -1,    -1,    -1,  1804,  4292,  4701,    -1,  4703,    -1,
16039       -1,    -1,    -1,  2814,    -1,    -1,    -1,    -1,    -1,    -1,
16040       -1,    -1,    -1,    -1,  2086,    -1,    -1,  3609,  3610,    -1,
16041       -1,    -1,    -1,    -1,    -1,    -1,  2098,    -1,    -1,    -1,
16042     3622,    -1,  3624,    -1,    -1,    -1,    -1,    -1,    -1,   613,
16043       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16044       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16045      634,    -1,    -1,    -1,    -1,    -1,  2138,    -1,    -1,    -1,
16046       -1,    -1,  2883,    -1,  2885,    -1,    -1,    -1,    -1,    -1,
16047       -1,    -1,    -1,    -1,    -1,  4790,    -1,    -1,    -1,    -1,
16048       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16049       -1,  3663,  3664,  4400,    -1,    -1,    -1,    -1,    -1,    -1,
16050       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2293,
16051       -1,    -1,    -1,    -1,    -1,    -1,  3718,    -1,    -1,    -1,
16052       -1,  4428,    -1,    -1,    -1,  2946,    -1,    -1,    -1,    -1,
16053       -1,    -1,    -1,    -1,    -1,   903,    -1,    -1,    -1,    -1,
16054       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16055     2971,    -1,    -1,    -1,    -1,   923,    -1,    -1,    -1,  4466,
16056       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3739,    -1,   937,
16057       -1,    -1,    -1,  4888,    -1,    -1,  2997,    -1,  3750,  2363,
16058       -1,    -1,    -1,  3004,    -1,    -1,    -1,  4902,    -1,    -1,
16059       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2019,
16060       -1,    -1,    -1,  2023,  2024,    -1,    -1,    -1,    -1,    -1,
16061       -1,  2293,  4519,    -1,    -1,    -1,  4523,  4524,  3790,  3791,
16062       -1,    -1,    -1,    -1,    -1,  3797,  3798,    -1,    -1,    -1,
16063     3802,    -1,    -1,    -1,    -1,  3807,    -1,    -1,  3810,  3811,
16064       -1,    -1,  3063,  3815,    -1,    -1,  1014,    -1,    -1,  3821,
16065     4965,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16066     3081,    -1,    -1,    -1,    -1,    -1,  2086,    -1,    -1,  4984,
16067       -1,    -1,    -1,  3094,    -1,    -1,    -1,    -1,  2098,    -1,
16068       -1,  2363,    -1,  3855,    -1,    -1,    -1,    -1,  3860,    -1,
16069       -1,    -1,    -1,    -1,  3866,    -1,    -1,  2481,    -1,    -1,
16070       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4614,  4615,  3881,
16071       -1,    -1,    -1,    -1,  2498,    -1,    -1,    -1,  2138,   903,
16072       -1,    -1,    -1,    -1,    -1,  2509,    -1,    -1,    -1,    -1,
16073       -1,    -1,    -1,  3905,    -1,    -1,    -1,    -1,  3940,   923,
16074       -1,    -1,    -1,  3945,    -1,    -1,    -1,    -1,    -1,    -1,
16075       -1,    -1,    -1,   937,    -1,  1123,    -1,    -1,    -1,    -1,
16076       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3970,    -1,
16077       -1,    -1,    -1,    -1,    -1,    -1,  3197,    -1,    -1,    -1,
16078     3982,    -1,    -1,    -1,    -1,    -1,    -1,  3989,    -1,    -1,
16079       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3218,    -1,  2481,
16080       -1,  4003,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16081       -1,    -1,    -1,    -1,    -1,    -1,  2498,    -1,    -1,    -1,
16082       -1,  3993,  3243,    -1,    -1,    -1,    -1,  2509,    -1,    -1,
16083     1014,    -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,  3277,    -1,    -1,    -1,
16086       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16087       -1,    -1,    -1,  2293,    -1,    -1,    -1,    -1,    -1,    -1,
16088       -1,    -1,    -1,  4055,    -1,    -1,    -1,    -1,    -1,    -1,
16089       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16090       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16091       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16092       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2711,    -1,    -1,
16093     2714,    -1,  2716,    -1,    -1,    -1,    -1,  2721,    -1,  1123,
16094       -1,    -1,    -1,  2363,    -1,    -1,  4148,    -1,  3369,    -1,
16095       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1327,
16096       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16097       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16098       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2772,    -1,
16099       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16100       -1,    -1,    -1,    -1,    -1,  2789,    -1,    -1,    -1,    -1,
16101       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4190,  4191,
16102       -1,    -1,  4194,    -1,    -1,  1393,    -1,    -1,    -1,  2711,
16103     2814,    -1,  2714,    -1,  2716,    -1,    -1,    -1,    -1,  2721,
16104       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3468,    -1,    -1,
16105     4252,    -1,  4254,    -1,    -1,    -1,    -1,  4229,  4230,    -1,
16106       -1,  2481,  1430,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16107       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2498,    -1,
16108       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2509,
16109     2772,  4293,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2883,
16110       -1,  2885,    -1,    -1,    -1,    -1,    -1,  2789,    -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,  2814,    -1,    -1,    -1,    -1,  4339,    -1,    -1,
16114       -1,    -1,  1510,  1327,    -1,    -1,    -1,    -1,    -1,    -1,
16115       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1525,    -1,    -1,
16116       -1,    -1,  2946,    -1,    -1,  1533,    -1,    -1,    -1,    -1,
16117       -1,    -1,    -1,    -1,    -1,    -1,  1544,    -1,    -1,    -1,
16118       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2971,    -1,    -1,
16119       -1,    -1,  3613,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16120       -1,  2883,    -1,  2885,    -1,    -1,    -1,    -1,    -1,  1393,
16121       -1,    -1,    -1,  2997,    -1,    -1,    -1,    -1,    -1,    -1,
16122     3004,    -1,    -1,  1591,    -1,    -1,    -1,    -1,    -1,    -1,
16123       -1,    -1,    -1,    -1,    -1,    -1,  1604,    -1,    -1,    -1,
16124       -1,  3662,    -1,    -1,    -1,    -1,  1430,    -1,  1616,    -1,
16125       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4430,    -1,
16126     1628,    -1,    -1,    -1,  2946,    -1,    -1,    -1,    -1,    -1,
16127       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3063,
16128       -1,    -1,    -1,    -1,  4456,    -1,    -1,    -1,    -1,  2971,
16129       -1,  2711,    -1,    -1,  2714,    -1,  2716,  3081,    -1,  4471,
16130       -1,  2721,    -1,    -1,  1672,    -1,    -1,  1675,    -1,    -1,
16131     3094,  4513,    -1,    -1,    -1,  2997,    -1,    -1,  4490,    -1,
16132       -1,    -1,  3004,    -1,    -1,    -1,  1510,    -1,    -1,    -1,
16133       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16134       -1,  1525,  4544,    -1,    -1,    -1,    -1,    -1,    -1,  1533,
16135       -1,    -1,  2772,    -1,    -1,    -1,  4528,    -1,    -1,    -1,
16136     1544,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2789,
16137       -1,    -1,  3793,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16138       -1,  3063,  3803,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16139       -1,    -1,    -1,    -1,  2814,    -1,    -1,    -1,    -1,  3081,
16140       -1,    -1,    -1,    -1,    -1,    -1,    -1,  1591,    -1,    -1,
16141       -1,    -1,  3094,  3197,    -1,    -1,    -1,    -1,    -1,    -1,
16142     1604,  4593,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16143       -1,    -1,  1616,    -1,  3218,    -1,  1804,    -1,    -1,    -1,
16144       -1,    -1,    -1,    -1,  1628,    -1,    -1,    -1,    -1,    -1,
16145       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3243,
16146       -1,    -1,    -1,  2883,    -1,  2885,    -1,    -1,    -1,    -1,
16147       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16148       -1,    -1,    -1,    -1,  4656,    -1,    -1,    -1,  1672,    -1,
16149       -1,  1675,    -1,  3277,    -1,    -1,    -1,    -1,    -1,  4701,
16150       -1,  4703,  3923,    -1,    -1,    -1,    -1,    -1,  4680,    -1,
16151       -1,    -1,    -1,    -1,    -1,  3197,    -1,    -1,    -1,    -1,
16152       -1,    -1,    -1,    -1,    -1,    -1,  2946,    -1,    -1,    -1,
16153       -1,    -1,    -1,  3954,    -1,    -1,  3218,    -1,    -1,    -1,
16154       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16155       -1,  2971,    -1,    -1,  3975,    -1,    -1,    -1,    -1,    -1,
16156       -1,  3243,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3990,
16157       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2997,    -1,    -1,
16158       -1,    -1,    -1,    -1,  3004,  3369,    -1,    -1,  4790,    -1,
16159       -1,    -1,    -1,    -1,    -1,  3277,    -1,    -1,    -1,  4771,
16160     4772,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16161     4782,    -1,  4033,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16162     1804,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16163       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16164       -1,    -1,    -1,  3063,    -1,    -1,    -1,    -1,    -1,    -1,
16165       -1,  2019,    -1,    -1,    -1,  2023,  2024,    -1,    -1,    -1,
16166       -1,  3081,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16167       -1,    -1,    -1,    -1,  3094,    -1,    -1,    -1,    -1,    -1,
16168       -1,    -1,    -1,    -1,  3468,  4857,  4888,  3369,    -1,    -1,
16169       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16170     4902,  4122,    -1,    -1,  4876,    -1,    -1,    -1,    -1,    -1,
16171       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2086,    -1,
16172       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16173     2098,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16174       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4168,    -1,    -1,
16175       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16176       -1,    -1,    -1,  4965,    -1,    -1,    -1,    -1,    -1,    -1,
16177     2138,    -1,    -1,    -1,    -1,    -1,    -1,  3197,    -1,    -1,
16178       -1,    -1,  4984,    -1,    -1,    -1,  3468,  4959,  4960,    -1,
16179       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3218,    -1,
16180       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16181       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16182       -1,    -1,    -1,  3243,    -1,  1228,    -1,    -1,    -1,  3613,
16183       -1,    -1,    -1,    -1,    -1,  2019,    -1,    -1,    -1,  2023,
16184     2024,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16185       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3277,    -1,    -1,
16186       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16187       -1,  4292,    -1,    -1,    -1,    -1,    -1,    -1,  3662,    -1,
16188       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  1292,
16189       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16190       -1,    -1,  2086,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16191       -1,    -1,    -1,    -1,  2098,    -1,    -1,    -1,    -1,    -1,
16192       -1,    -1,    -1,    -1,    -1,  2293,    -1,    -1,    -1,    -1,
16193       -1,  3613,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16194       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3369,
16195       -1,    -1,    -1,    -1,  2138,    -1,    -1,    -1,    -1,    -1,
16196       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4400,
16198     3662,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16199       -1,    -1,    -1,    -1,    -1,  2363,    -1,    -1,    -1,    -1,
16200       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4428,    -1,  3793,
16201       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3803,
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,  4466,    -1,    -1,  3468,    -1,
16205       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -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,  4519,    -1,
16210       -1,    -1,  4523,  4524,    -1,    -1,    -1,    -1,    -1,  2293,
16211       -1,  3793,    -1,  2481,    -1,    -1,    -1,    -1,    -1,    -1,
16212       -1,  3803,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16213     2498,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3923,
16214       -1,  2509,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16215       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16216       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16217     3954,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2363,
16218       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16219       -1,  3975,    -1,  3613,  4615,    -1,    -1,    -1,    -1,    -1,
16220       -1,    -1,    -1,    -1,    -1,    -1,  3990,    -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,  3923,  3662,    -1,    -1,    -1,    -1,    -1,    -1,  4033,
16225       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16226       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16227       -1,    -1,  3954,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16228       -1,    -1,  1685,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16229       -1,    -1,    -1,  3975,    -1,    -1,    -1,  2481,    -1,    -1,
16230       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3990,    -1,
16231       -1,    -1,    -1,    -1,  2498,    -1,    -1,    -1,    -1,    -1,
16232       -1,    -1,    -1,    -1,    -1,  2509,    -1,    -1,    -1,    -1,
16233       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4122,    -1,
16234       -1,    -1,    -1,  2711,    -1,    -1,  2714,    -1,  2716,    -1,
16235       -1,  4033,    -1,  2721,    -1,    -1,    -1,  1760,    -1,    -1,
16236       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16237       -1,  1774,    -1,  3793,    -1,  1778,    -1,    -1,    -1,    -1,
16238       -1,    -1,    -1,  3803,  4168,    -1,    -1,    -1,    -1,  1792,
16239     1793,  1794,    -1,  1796,    -1,    -1,    -1,    -1,    -1,    -1,
16240       -1,    -1,    -1,    -1,  2772,    -1,    -1,    -1,    -1,    -1,
16241       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16242       -1,  2789,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16243       -1,    -1,    -1,    -1,    -1,  1838,    -1,    -1,    -1,    -1,
16244     4122,    -1,    -1,    -1,    -1,    -1,  2814,    -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,  1875,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16248       -1,    -1,    -1,    -1,    -1,    -1,  4168,    -1,    -1,    -1,
16249       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16250       -1,    -1,    -1,  3923,    -1,    -1,    -1,    -1,  4292,    -1,
16251       -1,    -1,    -1,    -1,    -1,  2883,    -1,  2885,    -1,    -1,
16252       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2711,    -1,    -1,
16253     2714,    -1,  2716,    -1,  3954,    -1,    -1,  2721,    -1,    -1,
16254       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16255       -1,    -1,    -1,    -1,    -1,  3975,    -1,    -1,    -1,    -1,
16256       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16257     3990,    -1,    -1,    -1,    -1,    -1,    -1,  1980,  2946,    -1,
16258       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2772,  1992,
16259       -1,    -1,  1995,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16260       -1,    -1,    -1,  2971,    -1,  2789,    -1,    -1,    -1,    -1,
16261     4292,    -1,    -1,  4033,    -1,    -1,  4400,    -1,    -1,    -1,
16262       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2997,
16263     2814,    -1,    -1,    -1,    -1,    -1,  3004,    -1,    -1,    -1,
16264       -1,    -1,    -1,    -1,  4428,    -1,    -1,    -1,    -1,    -1,
16265       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16266       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16267       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16268       -1,    -1,  4466,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16269       -1,    -1,    -1,    -1,    -1,  3063,    -1,    -1,    -1,  2883,
16270       -1,  2885,  4122,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16271       -1,    -1,    -1,  3081,    -1,    -1,    -1,    -1,  4400,    -1,
16272       -1,    -1,    -1,    -1,    -1,    -1,  3094,    -1,    -1,    -1,
16273       -1,    -1,    -1,    -1,    -1,  4519,    -1,    -1,    -1,  4523,
16274     4524,    -1,    -1,    -1,    -1,    -1,  4428,    -1,  4168,    -1,
16275       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16276       -1,    -1,  2946,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16277       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16278       -1,    -1,    -1,    -1,  4466,    -1,    -1,  2971,    -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,  2997,    -1,    -1,    -1,    -1,    -1,    -1,
16282     3004,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3197,
16283       -1,  4615,    -1,    -1,    -1,    -1,    -1,  4519,    -1,    -1,
16284       -1,  4523,  4524,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16285     3218,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16286       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16287       -1,    -1,  4292,    -1,    -1,  3243,    -1,    -1,    -1,  3063,
16288       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16289       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3081,    -1,    -1,
16290       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3277,
16291     3094,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16292       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16293       -1,    -1,    -1,  4615,    -1,    -1,    -1,    -1,    -1,    -1,
16294       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16295       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16296       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16297       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16298     4400,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16299       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16300       -1,  3369,    -1,    -1,    -1,    -1,    -1,    -1,  4428,    -1,
16301       -1,    -1,    -1,  3197,    -1,    -1,    -1,    -1,    -1,    -1,
16302       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16303       -1,    -1,    -1,    -1,  3218,    -1,    -1,    -1,    -1,    -1,
16304       -1,    -1,    -1,    -1,    -1,    -1,  4466,    -1,    -1,    -1,
16305       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3243,
16306       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16307       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16308       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16309       -1,    -1,    -1,  3277,    -1,    -1,    -1,    -1,    -1,  4519,
16310     3468,    -1,    -1,  4523,  4524,    -1,    -1,    -1,    -1,    -1,
16311       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2522,
16312       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16313       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  2542,
16314       -1,  2544,    -1,    -1,  2547,  2548,    -1,  2550,    -1,  2552,
16315       -1,    -1,    -1,  2556,    -1,    -1,  2559,    -1,    -1,    -1,
16316       -1,  2564,    -1,    -1,    -1,    -1,    -1,  2570,    -1,    -1,
16317       -1,    -1,  2575,    -1,    -1,    -1,    -1,    -1,    -1,  2582,
16318     2583,  2584,  2585,    -1,    -1,  3369,  2589,  2590,    -1,  2592,
16319       -1,    -1,    -1,    -1,    -1,  4615,    -1,    -1,    -1,    -1,
16320       -1,  2604,    -1,  2606,    -1,    -1,    -1,    -1,    -1,    -1,
16321     2613,  2614,  2615,  2616,  2617,  2618,  2619,  2620,  2621,  2622,
16322       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16323       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16324       -1,    -1,    -1,    -1,    -1,  3613,    -1,  2650,    -1,    -1,
16325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16326       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16328       -1,    -1,    -1,    -1,  3468,    -1,    -1,    -1,    -1,    -1,
16329       -1,    -1,    -1,    -1,  3662,    -1,    -1,    -1,    -1,    -1,
16330       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16331       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16332       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16333       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16334       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16335       -1,    -1,    -1,    -1,    -1,    -1,    -1,  2760,    -1,    -1,
16336       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16337       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16338       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16339       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16340       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16341       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16342       -1,    -1,    -1,    -1,    -1,  3793,    -1,    -1,    -1,  3613,
16343       -1,    -1,    -1,    -1,    -1,  3803,    -1,    -1,    -1,    -1,
16344       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16345       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16346       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16347       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3662,    -1,
16348       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16349       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16350       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16351       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16352       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16353       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16354       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16355       -1,    -1,    -1,    -1,    -1,  3923,    -1,    -1,    -1,    -1,
16356       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16357       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16358       -1,    -1,    -1,    -1,    -1,    -1,  3954,    -1,    -1,    -1,
16359       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3000,    -1,    -1,
16360       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3975,    -1,  3793,
16361       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3803,
16362       -1,    -1,  3990,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16363       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16364       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16365       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16366       -1,    -1,    -1,    -1,    -1,  4033,    -1,    -1,    -1,    -1,
16367       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16368       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16369       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16370       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16371       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16372       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16373       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3140,    -1,  3923,
16374       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16375       -1,    -1,    -1,    -1,  4122,    -1,    -1,    -1,    -1,    -1,
16376       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16377     3954,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16378       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16379     3193,  3975,    -1,    -1,    -1,    -1,  3199,    -1,    -1,    -1,
16380     4168,    -1,    -1,    -1,    -1,    -1,  3990,    -1,    -1,    -1,
16381       -1,    -1,  3215,  3216,    -1,    -1,  3219,  3220,  3221,  3222,
16382       -1,    -1,  3225,  3226,  3227,  3228,  3229,  3230,  3231,  3232,
16383     3233,  3234,  3235,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16384       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4033,
16385       -1,    -1,    -1,    -1,  3257,    -1,    -1,  3260,    -1,  3262,
16386       -1,    -1,  3265,  3266,    -1,    -1,    -1,    -1,    -1,    -1,
16387       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3280,  3281,  3282,
16388     3283,    -1,  3285,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16389       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16390       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16391       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16392       -1,    -1,    -1,    -1,  4292,    -1,    -1,    -1,    -1,    -1,
16393     3333,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4122,    -1,
16394       -1,  3344,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16395       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16396       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16397       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  3381,    -1,
16398       -1,    -1,    -1,    -1,  4168,    -1,    -1,    -1,    -1,    -1,
16399       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16400       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16401       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16402       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16403       -1,    -1,  4400,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16404       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16405       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16406     4428,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16407       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16408       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16409       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4466,    -1,
16410       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4292,    -1,
16411       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16412       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16413       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16415       -1,  4519,    -1,    -1,    -1,  4523,  4524,    -1,    -1,    -1,
16416       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16417       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16418       -1,    -1,    -1,  3586,    -1,    -1,    -1,    -1,    -1,    -1,
16419       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16420       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16421       -1,    -1,    -1,    -1,    -1,    -1,  4400,    -1,    -1,    -1,
16422       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16423       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16424       -1,    -1,    -1,    -1,  4428,    -1,    -1,  4615,    -1,    -1,
16425       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16426       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16427       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16428       -1,    -1,  4466,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16429       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16430       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16431       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16432       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16433       -1,    -1,    -1,    -1,    -1,  4519,    -1,  3740,    -1,  4523,
16434     4524,  3744,  3745,  3746,    -1,    -1,    -1,    -1,    -1,  3752,
16435     3753,  3754,  3755,    -1,    -1,    -1,    -1,  3760,  3761,  3762,
16436     3763,  3764,  3765,  3766,  3767,  3768,  3769,  3770,  3771,    -1,
16437       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16438       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16439       -1,    -1,    -1,  3796,    -1,    -1,  3799,    -1,  3801,    -1,
16440       -1,    -1,  3805,    -1,    -1,  3808,  3809,    -1,    -1,  3812,
16441     3813,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16442       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16443       -1,  4615,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16444       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16445       -1,    -1,    -1,    -1,  3857,    -1,    -1,    -1,    -1,    -1,
16446       -1,  3864,  3865,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16447       -1,    -1,    -1,    -1,    -1,    -1,    -1,  3880,    -1,    -1,
16448       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16449       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16450       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16451       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16452       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16453       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16454       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16455       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16456       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16457       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16460       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16461       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16462       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16463       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16464       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16465       -1,    -1,    -1,    -1,    -1,  4058,    -1,    -1,    -1,    -1,
16466       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16467       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16468       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16469       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16470       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16471       -1,    -1,    -1,    -1,  4117,  4118,    -1,    -1,    -1,    -1,
16472       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16473       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16474       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16475       -1,    -1,    -1,    -1,    -1,  4158,    -1,    -1,    -1,    -1,
16476     4163,  4164,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16477       -1,    -1,    -1,    -1,    -1,  4178,    -1,  4180,    -1,    -1,
16478       -1,  4184,  4185,  4186,    -1,    -1,  4189,    -1,    -1,  4192,
16479     4193,    -1,    -1,    -1,  4197,    -1,    -1,    -1,  4201,    -1,
16480       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16481       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16482       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16483       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16484       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16485       -1,    -1,    -1,  4256,    -1,    -1,    -1,    -1,    -1,    -1,
16486       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16487       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16488       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16489       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16490       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16491       -1,    -1,    -1,  4316,    -1,    -1,    -1,    -1,    -1,    -1,
16492       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16493       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16494       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4350,    -1,    -1,
16495       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16496       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16497       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16498       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16499       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16500       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16502       -1,    -1,    -1,  4426,  4427,    -1,    -1,    -1,    -1,    -1,
16503       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4442,
16504     4443,  4444,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16505       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16506       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16507       -1,    -1,    -1,    -1,    -1,  4478,  4479,    -1,    -1,    -1,
16508       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16509       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16510       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16511       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16512       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16513       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16514       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16515       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16516       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16517       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16518       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16519       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16520       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16521       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16522       -1,    -1,    -1,    -1,  4627,    -1,    -1,    -1,    -1,    -1,
16523       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16524     4643,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16525       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16526       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16527       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16528       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,  4692,
16529       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16530       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16531       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16532       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16533       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16534     4743,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16535       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16536       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16537       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16538       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16539       -1,    -1,    -1,    -1,    -1,    -1,    -1,  4800,    -1,    -1,
16540       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16541       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16542       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16543       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16544       -1,    -1,    -1,     3,     4,     5,     6,     7,     8,     9,
16545       10,    -1,    -1,    -1,    -1,    -1,    -1,  4860,    18,    19,
16546       20,    21,    22,    23,    24,    25,    26,    27,    28,    29,
16547       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
16548       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
16549       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
16550       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
16551       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
16552       80,    -1,    82,    83,    84,    85,    86,    87,  4931,    89,
16553       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
16554      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
16555      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
16556      120,   121,   122,    -1,   124,   125,   126,   127,   128,  4972,
16557      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
16558      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
16559      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
16560      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
16561       -1,   171,   172,   173,   174,   175,   176,   177,   178,   179,
16562      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
16563      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
16564       -1,   201,   202,   203,   204,   205,   206,   207,   208,   209,
16565      210,    -1,    -1,   213,   214,   215,   216,   217,    -1,   219,
16566      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
16567      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
16568      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
16569      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
16570       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
16571      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
16572      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
16573      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
16574      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
16575      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
16576      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
16577      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
16578      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
16579       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
16580      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
16581      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
16582      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
16583      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
16584       -1,   401,   402,   403,   404,   405,   406,   407,   408,   409,
16585      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
16586      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
16587      430,   431,   432,   433,   434,   435,   436,   437,   438,    -1,
16588       -1,    -1,    -1,    -1,    -1,   445,   446,   447,    -1,    -1,
16589       -1,    -1,    -1,    -1,   454,   455,     3,     4,     5,     6,
16590        7,     8,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
16591       -1,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
16592       27,    28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,
16593       37,    38,    -1,    40,    41,    42,    43,    44,    45,    46,
16594       47,    48,    49,    50,    -1,    52,    53,    54,    55,    56,
16595       57,    58,    59,    60,    61,    62,    63,    -1,    65,    66,
16596       67,    68,    69,    -1,    71,    -1,    73,    74,    75,    76,
16597       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
16598       87,    -1,    89,    90,    91,    92,    93,    94,    95,    96,
16599       97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
16600      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
16601      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
16602      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
16603       -1,   138,   139,   140,   141,   142,   143,   144,   145,   146,
16604      147,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
16605      157,   158,    -1,   160,   161,   162,   163,    -1,   165,   166,
16606       -1,   168,   169,    -1,   171,   172,   173,   174,   175,   176,
16607      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
16608      187,    -1,   189,   190,   191,   192,   193,   194,   195,   196,
16609      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
16610      207,   208,   209,   210,    -1,    -1,   213,   214,   215,   216,
16611      217,    -1,   219,   220,   221,   222,   223,   224,   225,   226,
16612      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
16613      237,   238,   239,   240,   241,   242,   243,   244,   245,   246,
16614      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
16615      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
16616      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
16617      277,   278,   279,   280,    -1,    -1,   283,   284,   285,   286,
16618      287,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
16619      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
16620      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
16621       -1,   318,   319,   320,   321,   322,   323,   324,   325,   326,
16622      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
16623      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
16624      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
16625      357,   358,   359,   360,   361,   362,    -1,   364,   365,   366,
16626      367,   368,   369,   370,   371,   372,   373,    -1,   375,   376,
16627       -1,    -1,   379,   380,   381,   382,   383,   384,   385,   386,
16628      387,   388,   389,   390,   391,    -1,   393,   394,   395,   396,
16629      397,   398,   399,    -1,   401,   402,   403,   404,   405,   406,
16630      407,    -1,   409,   410,   411,   412,   413,   414,    -1,    -1,
16631      417,    -1,   419,   420,   421,   422,   423,   424,   425,   426,
16632      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
16633      437,   438,    -1,   440,    -1,    -1,    -1,    -1,   445,   446,
16634       -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,   455,     3,
16635        4,     5,     6,     7,     8,     9,    10,    -1,    -1,    -1,
16636       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
16637       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
16638       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
16639       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
16640       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
16641       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
16642       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
16643       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
16644       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
16645      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
16646      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
16647      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
16648      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
16649      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
16650       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
16651       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
16652      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
16653      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
16654      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
16655      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
16656      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
16657      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
16658      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
16659      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
16660      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
16661      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
16662      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
16663      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
16664      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
16665      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
16666      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
16667      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
16668      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
16669      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
16670      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
16671      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
16672       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
16673      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
16674      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
16675      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
16676      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
16677      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
16678      434,   435,   436,   437,   438,    -1,    -1,    -1,    -1,    -1,
16679       -1,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16680      454,   455,     3,     4,     5,     6,     7,     8,     9,    10,
16681       -1,    -1,    -1,    -1,    -1,    -1,    -1,    18,    19,    20,
16682       21,    22,    23,    24,    25,    -1,    27,    28,    29,    -1,
16683       -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,    40,
16684       41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
16685       -1,    52,    53,    54,    55,    56,    57,    58,    59,    60,
16686       61,    62,    63,    -1,    65,    66,    67,    68,    69,    -1,
16687       71,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
16688       -1,    82,    83,    84,    85,    86,    87,    -1,    89,    90,
16689       91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
16690      101,   102,   103,   104,   105,   106,   107,   108,    -1,   110,
16691       -1,   112,   113,   114,   115,   116,   117,    -1,   119,   120,
16692      121,    -1,    -1,   124,   125,   126,   127,   128,    -1,   130,
16693      131,   132,    -1,   134,   135,   136,    -1,   138,   139,   140,
16694      141,   142,   143,   144,   145,   146,   147,   148,    -1,   150,
16695      151,   152,   153,    -1,   155,    -1,   157,   158,    -1,   160,
16696      161,   162,   163,    -1,   165,   166,    -1,   168,   169,    -1,
16697      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
16698       -1,   182,   183,   184,   185,   186,   187,    -1,   189,   190,
16699      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
16700      201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
16701       -1,    -1,   213,   214,   215,   216,   217,    -1,   219,   220,
16702      221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
16703      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
16704      241,   242,   243,   244,   245,   246,   247,   248,   249,   250,
16705      251,   252,   253,   254,   255,   256,   257,    -1,   259,    -1,
16706       -1,   262,   263,   264,    -1,    -1,   267,   268,   269,   270,
16707      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
16708       -1,    -1,   283,   284,   285,   286,   287,   288,   289,   290,
16709       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
16710      301,   302,   303,   304,    -1,   306,   307,   308,   309,   310,
16711      311,   312,   313,   314,   315,   316,    -1,   318,   319,   320,
16712      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
16713      331,   332,    -1,   334,   335,   336,   337,   338,   339,   340,
16714      341,   342,   343,   344,   345,   346,   347,   348,   349,    -1,
16715      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
16716      361,   362,    -1,   364,   365,    -1,   367,   368,   369,   370,
16717      371,   372,   373,    -1,   375,   376,    -1,    -1,   379,   380,
16718      381,   382,   383,   384,   385,   386,   387,   388,   389,   390,
16719      391,    -1,   393,   394,   395,   396,   397,   398,   399,    -1,
16720      401,   402,   403,   404,   405,   406,   407,    -1,   409,   410,
16721      411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,
16722      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
16723      431,   432,   433,   434,   435,   436,   437,   438,    -1,    -1,
16724       -1,    -1,    -1,    -1,   445,   446,    -1,    -1,    -1,    -1,
16725       -1,    -1,    -1,   454,   455,     3,     4,     5,     6,     7,
16726        8,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16727       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
16728       28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,    37,
16729       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
16730       48,    49,    50,    -1,    52,    53,    54,    55,    56,    57,
16731       58,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
16732       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
16733       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
16734       -1,    89,    90,    91,    92,    93,    94,    95,    96,    97,
16735       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
16736      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
16737       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
16738      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
16739      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
16740      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
16741      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
16742      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
16743      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
16744       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
16745       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
16746      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
16747       -1,   219,   220,   221,   222,   223,   224,   225,   226,   227,
16748      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
16749      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
16750      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
16751       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
16752      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
16753      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
16754      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
16755      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
16756      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
16757      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
16758      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
16759      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
16760      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
16761      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
16762      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
16763       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
16764      388,   389,   390,   391,    -1,   393,   394,   395,   396,   397,
16765      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
16766       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
16767       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
16768      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
16769      438,    -1,    -1,     3,    -1,    -1,    -1,   445,   446,    -1,
16770       -1,    -1,    -1,    -1,    -1,    -1,   454,   455,    18,    19,
16771       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
16772       -1,    -1,    -1,    -1,    -1,    35,    -1,    37,    38,    -1,
16773       40,    41,    -1,    43,    44,    45,    46,    47,    -1,    49,
16774       50,    -1,    52,    53,    54,    55,    56,    -1,    -1,    59,
16775       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
16776       -1,    -1,    -1,    73,    74,    75,    76,    -1,    78,    79,
16777       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
16778       90,    91,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16779      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
16780      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
16781      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
16782      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
16783      140,   141,   142,   143,   144,   145,   146,    -1,   148,    -1,
16784      150,   151,   152,   153,    -1,   155,    -1,   157,    -1,    -1,
16785      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
16786       -1,   171,   172,   173,   174,   175,    -1,   177,   178,   179,
16787      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
16788      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
16789       -1,   201,    -1,    -1,   204,   205,   206,   207,   208,   209,
16790      210,    -1,    -1,   213,   214,   215,   216,    -1,    -1,   219,
16791      220,   221,    -1,    -1,   224,   225,   226,   227,   228,   229,
16792      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
16793      240,   241,   242,   243,   244,   245,    -1,   247,   248,    -1,
16794      250,    -1,   252,   253,   254,   255,   256,   257,    -1,   259,
16795       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,    -1,
16796      270,    -1,   272,   273,   274,   275,   276,   277,   278,   279,
16797      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
16798      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
16799      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
16800      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
16801      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
16802      330,   331,   332,    -1,   334,   335,   336,   337,   338,    -1,
16803      340,   341,   342,   343,   344,    -1,   346,   347,   348,   349,
16804       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
16805      360,   361,   362,    -1,   364,   365,    -1,   367,    -1,   369,
16806      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
16807      380,   381,   382,   383,    -1,   385,   386,   387,   388,   389,
16808      390,   391,    -1,    -1,   394,   395,   396,   397,   398,    -1,
16809       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
16810       -1,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
16811      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
16812      430,   431,   432,   433,   434,   435,   436,   437,    -1,    -1,
16813       -1,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16814       -1,    -1,    -1,    -1,    -1,   455,    18,    19,    20,    21,
16815       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
16816       -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,
16817       42,    43,    44,    45,    -1,    47,    48,    49,    50,    -1,
16818       52,    53,    54,    55,    56,    -1,    -1,    59,    60,    61,
16819       62,    63,    -1,    65,    66,    67,    68,    -1,    -1,    71,
16820       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
16821       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
16822       92,    -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,
16823      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
16824      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
16825       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
16826      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
16827       -1,   143,   144,   145,    -1,    -1,   148,    -1,   150,   151,
16828      152,   153,    -1,   155,    -1,   157,   158,    -1,   160,   161,
16829      162,   163,    -1,   165,    -1,    -1,    -1,   169,    -1,   171,
16830      172,   173,   174,   175,   176,   177,   178,   179,   180,   181,
16831      182,   183,   184,   185,   186,   187,    -1,   189,   190,   191,
16832      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
16833      202,   203,   204,   205,   206,   207,   208,   209,   210,    -1,
16834       -1,   213,    -1,   215,   216,   217,    -1,   219,   220,   221,
16835       -1,    -1,   224,   225,   226,   227,   228,   229,   230,   231,
16836      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
16837      242,   243,   244,    -1,    -1,   247,   248,   249,   250,    -1,
16838       -1,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
16839      262,   263,   264,    -1,    -1,   267,   268,   269,   270,   271,
16840       -1,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
16841       -1,   283,   284,    -1,   286,    -1,   288,   289,   290,    -1,
16842      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
16843      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
16844      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
16845      322,   323,    -1,   325,   326,   327,   328,   329,   330,   331,
16846      332,    -1,   334,   335,   336,   337,   338,    -1,   340,   341,
16847      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
16848      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
16849       -1,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
16850      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,    -1,
16851      382,    -1,    -1,   385,   386,   387,   388,   389,   390,   391,
16852       -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,   401,
16853      402,   403,   404,   405,    -1,   407,   408,   409,   410,   411,
16854      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
16855      422,   423,   424,   425,     3,    -1,    -1,    -1,    -1,    -1,
16856       -1,    -1,    -1,   435,   436,   437,    -1,    -1,    -1,    18,
16857       19,    20,    21,    22,    23,    24,    25,    -1,    27,    28,
16858       29,    -1,    -1,   455,    -1,    -1,    -1,    -1,    37,    38,
16859       -1,    40,    41,    42,    43,    44,    45,    -1,    47,    48,
16860       49,    50,    -1,    52,    53,    54,    55,    56,    -1,    -1,
16861       59,    60,    61,    62,    63,    -1,    65,    66,    67,    68,
16862       -1,    -1,    71,    -1,    73,    74,    75,    76,    77,    78,
16863       79,    80,    -1,    82,    83,    84,    85,    86,    87,    -1,
16864       89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,    -1,
16865       -1,   100,   101,   102,   103,   104,   105,   106,   107,   108,
16866       -1,   110,    -1,   112,   113,   114,   115,   116,   117,    -1,
16867      119,   120,   121,    -1,    -1,   124,   125,   126,   127,   128,
16868       -1,   130,   131,   132,    -1,   134,   135,   136,    -1,   138,
16869      139,   140,   141,    -1,   143,   144,   145,    -1,    -1,   148,
16870       -1,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
16871       -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,    -1,
16872      169,    -1,   171,   172,   173,   174,   175,   176,   177,   178,
16873      179,   180,   181,   182,   183,   184,   185,   186,   187,    -1,
16874      189,   190,   191,   192,   193,   194,   195,   196,   197,    -1,
16875      199,    -1,   201,   202,   203,   204,   205,   206,   207,   208,
16876      209,   210,    -1,    -1,   213,    -1,   215,   216,   217,    -1,
16877      219,   220,   221,    -1,    -1,   224,   225,   226,   227,   228,
16878      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
16879      239,   240,   241,   242,   243,   244,    -1,    -1,   247,   248,
16880      249,   250,    -1,    -1,   253,   254,   255,   256,   257,    -1,
16881      259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,
16882      269,   270,   271,    -1,   273,   274,   275,   276,   277,   278,
16883      279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,   288,
16884      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
16885      299,   300,   301,   302,   303,   304,    -1,   306,   307,   308,
16886      309,   310,   311,   312,   313,   314,   315,   316,    -1,   318,
16887      319,   320,   321,   322,   323,    -1,   325,   326,   327,   328,
16888      329,   330,   331,   332,    -1,   334,   335,   336,   337,   338,
16889       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
16890      349,    -1,   351,   352,   353,   354,   355,   356,   357,   358,
16891      359,   360,   361,    -1,    -1,   364,   365,    -1,   367,   368,
16892      369,   370,   371,   372,   373,    -1,   375,   376,    -1,    -1,
16893      379,   380,    -1,   382,    -1,    -1,   385,   386,   387,   388,
16894      389,   390,   391,    -1,    -1,   394,   395,   396,   397,   398,
16895       -1,    -1,   401,   402,   403,   404,   405,    -1,   407,   408,
16896      409,   410,   411,   412,   413,   414,    -1,    -1,   417,    -1,
16897       -1,   420,   421,   422,   423,   424,   425,     3,     4,     5,
16898        6,     7,     8,     9,    10,    -1,   435,   436,   437,    -1,
16899       -1,    -1,    18,    19,    20,    21,    22,    23,    24,    25,
16900       -1,    27,    28,    29,    -1,    -1,   455,    -1,    34,    -1,
16901       -1,    37,    38,    -1,    40,    41,    42,    43,    44,    45,
16902       46,    47,    48,    49,    50,    -1,    52,    53,    54,    55,
16903       56,    57,    58,    59,    60,    61,    62,    63,    -1,    65,
16904       66,    67,    68,    69,    -1,    71,    -1,    73,    74,    75,
16905       76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
16906       86,    87,    -1,    89,    90,    91,    92,    93,    94,    95,
16907       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
16908      106,   107,   108,   109,   110,    -1,   112,   113,   114,   115,
16909      116,   117,    -1,   119,   120,   121,    -1,    -1,   124,   125,
16910      126,   127,   128,    -1,   130,   131,   132,    -1,   134,   135,
16911      136,    -1,   138,   139,   140,   141,   142,   143,   144,   145,
16912      146,   147,   148,    -1,   150,   151,   152,   153,    -1,   155,
16913       -1,   157,   158,    -1,   160,   161,   162,   163,    -1,   165,
16914      166,    -1,   168,   169,    -1,   171,   172,   173,   174,   175,
16915      176,   177,   178,   179,   180,    -1,   182,   183,   184,   185,
16916      186,   187,    -1,   189,   190,   191,   192,   193,   194,   195,
16917      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
16918      206,   207,   208,   209,   210,    -1,    -1,   213,   214,   215,
16919      216,   217,    -1,   219,   220,   221,   222,   223,   224,   225,
16920      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
16921      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
16922      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
16923      256,   257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,
16924       -1,   267,   268,   269,   270,   271,   272,   273,   274,   275,
16925      276,   277,   278,   279,   280,    -1,    -1,   283,   284,   285,
16926      286,   287,   288,   289,   290,    -1,   292,   293,   294,   295,
16927      296,   297,   298,   299,   300,   301,   302,   303,   304,    -1,
16928      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
16929      316,    -1,   318,   319,   320,   321,   322,   323,   324,   325,
16930      326,   327,   328,   329,   330,   331,   332,   333,   334,   335,
16931      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
16932      346,   347,   348,   349,    -1,   351,   352,   353,   354,   355,
16933      356,   357,   358,   359,   360,   361,   362,    -1,   364,   365,
16934      366,   367,   368,   369,   370,   371,   372,   373,    -1,   375,
16935      376,    -1,    -1,   379,   380,   381,   382,   383,   384,   385,
16936      386,   387,   388,   389,   390,   391,    -1,   393,   394,   395,
16937      396,   397,   398,   399,    -1,   401,   402,   403,   404,   405,
16938      406,   407,    -1,   409,   410,   411,   412,   413,   414,    -1,
16939       -1,   417,    -1,   419,   420,   421,   422,   423,   424,   425,
16940      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
16941      436,   437,   438,    -1,   440,    -1,    -1,    -1,    -1,   445,
16942      446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,     3,
16943        4,     5,     6,     7,     8,     9,    10,    -1,    -1,    -1,
16944       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
16945       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
16946       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
16947       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
16948       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
16949       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
16950       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
16951       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
16952       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
16953      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
16954      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
16955      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
16956      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
16957      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
16958       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
16959       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
16960      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
16961      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
16962      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
16963      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
16964      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
16965      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
16966      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
16967      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
16968      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
16969      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
16970      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
16971      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
16972      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
16973      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
16974      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
16975      324,   325,   326,   327,   328,   329,   330,   331,   332,   333,
16976      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
16977      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
16978      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
16979      364,   365,   366,   367,   368,   369,   370,   371,   372,   373,
16980       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
16981      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
16982      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
16983      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
16984      414,    -1,    -1,   417,    -1,   419,   420,   421,   422,   423,
16985      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
16986      434,   435,   436,   437,   438,    -1,   440,    -1,    -1,    -1,
16987       -1,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
16988      454,     3,     4,     5,     6,     7,     8,     9,    10,    -1,
16989       -1,    -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,
16990       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
16991       -1,    -1,    34,    -1,    -1,    37,    38,    -1,    40,    41,
16992       42,    43,    44,    45,    46,    47,    48,    49,    50,    51,
16993       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
16994       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    71,
16995       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
16996       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
16997       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
16998      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
16999      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
17000       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
17001      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
17002      142,   143,   144,   145,   146,   147,   148,    -1,   150,   151,
17003      152,   153,    -1,   155,    -1,   157,   158,   159,   160,   161,
17004      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
17005      172,   173,   174,   175,   176,   177,   178,   179,   180,    -1,
17006      182,   183,   184,   185,   186,   187,    -1,   189,   190,   191,
17007      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
17008      202,   203,   204,   205,   206,   207,   208,   209,   210,    -1,
17009      212,   213,   214,   215,   216,   217,    -1,   219,   220,   221,
17010      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
17011      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17012      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
17013      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
17014      262,   263,   264,    -1,    -1,   267,   268,   269,   270,   271,
17015      272,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
17016       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
17017      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
17018      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
17019      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
17020      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17021      332,    -1,   334,   335,   336,   337,   338,   339,   340,   341,
17022      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
17023      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17024      362,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
17025      372,   373,    -1,   375,   376,    -1,   378,   379,   380,   381,
17026      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17027       -1,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
17028      402,   403,   404,   405,   406,   407,    -1,   409,   410,   411,
17029      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
17030      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17031      432,   433,   434,   435,   436,   437,   438,    -1,    -1,    -1,
17032       -1,    -1,    -1,   445,   446,    -1,    -1,    -1,    -1,    -1,
17033       -1,    -1,   454,     3,     4,     5,     6,     7,     8,     9,
17034       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    18,    19,
17035       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
17036       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
17037       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
17038       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
17039       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
17040       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
17041       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
17042       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
17043      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
17044      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
17045      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
17046      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
17047      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
17048      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
17049      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
17050       -1,   171,   172,   173,   174,   175,   176,   177,   178,   179,
17051      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
17052      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17053       -1,   201,   202,   203,   204,   205,   206,   207,   208,   209,
17054      210,    -1,    -1,   213,   214,   215,   216,   217,    -1,   219,
17055      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
17056      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17057      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
17058      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
17059       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
17060      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
17061      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
17062      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
17063      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
17064      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
17065      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17066      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
17067      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17068       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17069      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
17070      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
17071      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17072      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
17073       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
17074      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
17075      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17076      430,   431,   432,   433,   434,   435,   436,   437,   438,    -1,
17077       -1,    -1,    -1,    -1,    -1,   445,   446,    -1,    -1,    -1,
17078       -1,    -1,   452,   453,   454,     3,     4,     5,     6,     7,
17079        8,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17080       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
17081       28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,    37,
17082       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
17083       48,    49,    50,    -1,    52,    53,    54,    55,    56,    57,
17084       58,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
17085       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
17086       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
17087       -1,    89,    90,    91,    92,    93,    94,    95,    96,    97,
17088       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
17089      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
17090       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
17091      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
17092      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
17093      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
17094      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
17095      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
17096      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
17097       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
17098       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
17099      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
17100       -1,   219,   220,   221,   222,   223,   224,   225,   226,   227,
17101      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
17102      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
17103      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
17104       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
17105      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
17106      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
17107      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
17108      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
17109      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
17110      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
17111      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
17112      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
17113      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
17114      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
17115      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
17116       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17117      388,   389,   390,   391,    -1,   393,   394,   395,   396,   397,
17118      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
17119       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
17120       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
17121      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
17122      438,    -1,    -1,    -1,    -1,    -1,    -1,   445,   446,   447,
17123       -1,    -1,    -1,    -1,    -1,    -1,   454,     3,     4,     5,
17124        6,     7,     8,     9,    10,    -1,    -1,    -1,    -1,    -1,
17125       -1,    -1,    18,    19,    20,    21,    22,    23,    24,    25,
17126       -1,    27,    28,    29,    -1,    -1,    -1,    -1,    34,    -1,
17127       -1,    37,    38,    -1,    40,    41,    42,    43,    44,    45,
17128       46,    47,    48,    49,    50,    -1,    52,    53,    54,    55,
17129       56,    57,    58,    59,    60,    61,    62,    63,    -1,    65,
17130       66,    67,    68,    69,    -1,    71,    -1,    73,    74,    75,
17131       76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
17132       86,    87,    -1,    89,    90,    91,    92,    93,    94,    95,
17133       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17134      106,   107,   108,   109,   110,    -1,   112,   113,   114,   115,
17135      116,   117,    -1,   119,   120,   121,    -1,    -1,   124,   125,
17136      126,   127,   128,    -1,   130,   131,   132,    -1,   134,   135,
17137      136,    -1,   138,   139,   140,   141,   142,   143,   144,   145,
17138      146,   147,   148,    -1,   150,   151,   152,   153,    -1,   155,
17139       -1,   157,   158,    -1,   160,   161,   162,   163,    -1,   165,
17140      166,    -1,   168,   169,    -1,   171,   172,   173,   174,   175,
17141      176,   177,   178,   179,   180,    -1,   182,   183,   184,   185,
17142      186,   187,    -1,   189,   190,   191,   192,   193,   194,   195,
17143      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
17144      206,   207,   208,   209,   210,    -1,    -1,   213,   214,   215,
17145      216,   217,    -1,   219,   220,   221,   222,   223,   224,   225,
17146      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
17147      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17148      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17149      256,   257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,
17150       -1,   267,   268,   269,   270,   271,   272,   273,   274,   275,
17151      276,   277,   278,   279,   280,    -1,    -1,   283,   284,   285,
17152      286,   287,   288,   289,   290,    -1,   292,   293,   294,   295,
17153      296,   297,   298,   299,   300,   301,   302,   303,   304,    -1,
17154      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
17155      316,    -1,   318,   319,   320,   321,   322,   323,   324,   325,
17156      326,   327,   328,   329,   330,   331,   332,    -1,   334,   335,
17157      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
17158      346,   347,   348,   349,    -1,   351,   352,   353,   354,   355,
17159      356,   357,   358,   359,   360,   361,   362,    -1,   364,   365,
17160       -1,   367,   368,   369,   370,   371,   372,   373,    -1,   375,
17161      376,    -1,    -1,   379,   380,   381,   382,   383,   384,   385,
17162      386,   387,   388,   389,   390,   391,    -1,   393,   394,   395,
17163      396,   397,   398,   399,    -1,   401,   402,   403,   404,   405,
17164      406,   407,    -1,   409,   410,   411,   412,   413,   414,    -1,
17165       -1,   417,    -1,    -1,   420,   421,   422,   423,   424,   425,
17166      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
17167      436,   437,   438,    -1,    -1,    -1,    -1,    -1,    -1,   445,
17168      446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,     3,
17169        4,     5,     6,     7,     8,     9,    10,    -1,    -1,    -1,
17170       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
17171       24,    25,    26,    27,    28,    29,    -1,    -1,    -1,    -1,
17172       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
17173       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
17174       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
17175       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
17176       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
17177       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
17178       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17179      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
17180      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
17181      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
17182      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
17183      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
17184       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
17185       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
17186      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
17187      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
17188      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
17189      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
17190      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
17191      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
17192      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17193      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
17194      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
17195      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
17196      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
17197      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
17198      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
17199      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
17200      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
17201      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
17202      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
17203      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
17204      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
17205      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
17206       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
17207      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
17208      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
17209      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
17210      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
17211      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
17212      434,   435,   436,   437,   438,    -1,    -1,    -1,    -1,    -1,
17213       -1,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17214      454,     3,     4,     5,     6,     7,     8,     9,    10,    -1,
17215       -1,    -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,
17216       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
17217       -1,    -1,    34,    -1,    -1,    37,    38,    -1,    40,    41,
17218       42,    43,    44,    45,    46,    47,    48,    49,    50,    -1,
17219       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
17220       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    71,
17221       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
17222       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
17223       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
17224      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
17225      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
17226       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
17227      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
17228      142,   143,   144,   145,   146,   147,   148,    -1,   150,   151,
17229      152,   153,    -1,   155,    -1,   157,   158,   159,   160,   161,
17230      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
17231      172,   173,   174,   175,   176,   177,   178,   179,   180,    -1,
17232      182,   183,   184,   185,   186,   187,    -1,   189,   190,   191,
17233      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
17234      202,   203,   204,   205,   206,   207,   208,   209,   210,    -1,
17235       -1,   213,   214,   215,   216,   217,    -1,   219,   220,   221,
17236      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
17237      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17238      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
17239      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
17240      262,   263,   264,    -1,    -1,   267,   268,   269,   270,   271,
17241      272,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
17242       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
17243      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
17244      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
17245      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
17246      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17247      332,    -1,   334,   335,   336,   337,   338,   339,   340,   341,
17248      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
17249      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17250      362,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
17251      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,   381,
17252      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17253       -1,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
17254      402,   403,   404,   405,   406,   407,    -1,   409,   410,   411,
17255      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
17256      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17257      432,   433,   434,   435,   436,   437,   438,    -1,    -1,    -1,
17258       -1,    -1,    -1,   445,   446,    -1,    -1,    -1,    -1,    -1,
17259       -1,    -1,   454,     3,     4,     5,     6,     7,     8,     9,
17260       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    18,    19,
17261       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
17262       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
17263       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
17264       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
17265       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
17266       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
17267       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
17268       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
17269      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
17270      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
17271      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
17272      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
17273      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
17274      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
17275      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
17276       -1,   171,   172,   173,   174,   175,   176,   177,   178,   179,
17277      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
17278      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17279       -1,   201,   202,   203,   204,   205,   206,   207,   208,   209,
17280      210,    -1,    -1,   213,   214,   215,   216,   217,    -1,   219,
17281      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
17282      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17283      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
17284      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
17285       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
17286      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
17287      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
17288      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
17289      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
17290      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
17291      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17292      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
17293      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17294       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17295      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
17296      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
17297      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17298      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
17299       -1,   401,   402,   403,   404,   405,   406,   407,   408,   409,
17300      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
17301      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17302      430,   431,   432,   433,   434,   435,   436,   437,   438,    -1,
17303       -1,    -1,    -1,    -1,    -1,   445,   446,    -1,    -1,    -1,
17304       -1,    -1,    -1,    -1,   454,     3,     4,     5,     6,     7,
17305        8,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17306       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
17307       28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,    37,
17308       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
17309       48,    49,    50,    -1,    52,    53,    54,    55,    56,    57,
17310       58,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
17311       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
17312       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
17313       -1,    89,    90,    91,    92,    93,    94,    95,    96,    97,
17314       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
17315      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
17316       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
17317      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
17318      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
17319      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
17320      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
17321      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
17322      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
17323       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
17324       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
17325      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
17326       -1,   219,   220,   221,   222,   223,   224,   225,   226,   227,
17327      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
17328      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
17329      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
17330       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
17331      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
17332      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
17333      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
17334      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
17335      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
17336      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
17337      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
17338      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
17339      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
17340      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
17341      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
17342       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17343      388,   389,   390,   391,    -1,   393,   394,   395,   396,   397,
17344      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
17345       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
17346       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
17347      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
17348      438,    -1,    -1,    -1,    -1,    -1,    -1,   445,   446,    -1,
17349       -1,    -1,    -1,    -1,    -1,    -1,   454,     3,     4,     5,
17350        6,     7,     8,     9,    10,    -1,    -1,    -1,    -1,    -1,
17351       -1,    -1,    18,    19,    20,    21,    22,    23,    24,    25,
17352       -1,    27,    28,    29,    -1,    -1,    -1,    -1,    34,    -1,
17353       -1,    37,    38,    -1,    40,    41,    42,    43,    44,    45,
17354       46,    47,    48,    49,    50,    -1,    52,    53,    54,    55,
17355       56,    57,    58,    59,    60,    61,    62,    63,    -1,    65,
17356       66,    67,    68,    69,    -1,    71,    -1,    73,    74,    75,
17357       76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
17358       86,    87,    -1,    89,    90,    91,    92,    93,    94,    95,
17359       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17360      106,   107,   108,    -1,   110,    -1,   112,   113,   114,   115,
17361      116,   117,    -1,   119,   120,   121,    -1,    -1,   124,   125,
17362      126,   127,   128,    -1,   130,   131,   132,    -1,   134,   135,
17363      136,    -1,   138,   139,   140,   141,   142,   143,   144,   145,
17364      146,   147,   148,    -1,   150,   151,   152,   153,    -1,   155,
17365       -1,   157,   158,    -1,   160,   161,   162,   163,    -1,   165,
17366      166,    -1,   168,   169,    -1,   171,   172,   173,   174,   175,
17367      176,   177,   178,   179,   180,    -1,   182,   183,   184,   185,
17368      186,   187,    -1,   189,   190,   191,   192,   193,   194,   195,
17369      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
17370      206,   207,   208,   209,   210,    -1,    -1,   213,   214,   215,
17371      216,   217,    -1,   219,   220,   221,   222,   223,   224,   225,
17372      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
17373      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17374      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17375      256,   257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,
17376       -1,   267,   268,   269,   270,   271,   272,   273,   274,   275,
17377      276,   277,   278,   279,   280,    -1,    -1,   283,   284,   285,
17378      286,   287,   288,   289,   290,    -1,   292,   293,   294,   295,
17379      296,   297,   298,   299,   300,   301,   302,   303,   304,    -1,
17380      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
17381      316,    -1,   318,   319,   320,   321,   322,   323,   324,   325,
17382      326,   327,   328,   329,   330,   331,   332,    -1,   334,   335,
17383      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
17384      346,   347,   348,   349,    -1,   351,   352,   353,   354,   355,
17385      356,   357,   358,   359,   360,   361,   362,    -1,   364,   365,
17386       -1,   367,   368,   369,   370,   371,   372,   373,    -1,   375,
17387      376,    -1,    -1,   379,   380,   381,   382,   383,   384,   385,
17388      386,   387,   388,   389,   390,   391,    -1,   393,   394,   395,
17389      396,   397,   398,   399,    -1,   401,   402,   403,   404,   405,
17390      406,   407,    -1,   409,   410,   411,   412,   413,   414,    -1,
17391       -1,   417,    -1,    -1,   420,   421,   422,   423,   424,   425,
17392      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
17393      436,   437,   438,    -1,    -1,    -1,    -1,    -1,    -1,   445,
17394      446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,     3,
17395        4,     5,     6,     7,     8,     9,    10,    -1,    -1,    -1,
17396       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
17397       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
17398       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
17399       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
17400       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
17401       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
17402       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
17403       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
17404       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17405      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
17406      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
17407      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
17408      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
17409      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
17410       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
17411       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
17412      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
17413      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
17414      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
17415      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
17416      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
17417      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
17418      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17419      244,   245,   246,   247,   248,   249,   250,   251,   252,   253,
17420      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
17421      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
17422      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
17423      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
17424      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
17425      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
17426      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
17427      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
17428      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
17429      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
17430      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
17431      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
17432       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
17433      384,   385,   386,   387,   388,   389,   390,   391,    -1,   393,
17434      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
17435      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
17436      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
17437      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
17438      434,   435,   436,   437,   438,    -1,    -1,    -1,    -1,    -1,
17439       -1,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17440      454,     3,     4,     5,     6,     7,     8,     9,    10,    -1,
17441       -1,    -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,
17442       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
17443       -1,    -1,    34,    -1,    -1,    37,    38,    -1,    40,    41,
17444       42,    43,    44,    45,    46,    47,    48,    49,    50,    -1,
17445       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
17446       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    71,
17447       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
17448       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
17449       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
17450      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
17451      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
17452       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
17453      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
17454      142,   143,   144,   145,   146,   147,   148,    -1,   150,   151,
17455      152,   153,    -1,   155,    -1,   157,   158,    -1,   160,   161,
17456      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
17457      172,   173,   174,   175,   176,   177,   178,   179,   180,    -1,
17458      182,   183,   184,   185,   186,   187,    -1,   189,   190,   191,
17459      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
17460      202,   203,   204,   205,   206,   207,   208,   209,   210,    -1,
17461       -1,   213,   214,   215,   216,   217,    -1,   219,   220,   221,
17462      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
17463      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17464      242,   243,   244,   245,   246,   247,   248,   249,   250,   251,
17465      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
17466      262,   263,   264,    -1,    -1,   267,   268,   269,   270,   271,
17467      272,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
17468       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
17469      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
17470      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
17471      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
17472      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17473      332,    -1,   334,   335,   336,   337,   338,   339,   340,   341,
17474      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
17475      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17476      362,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
17477      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,   381,
17478      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17479       -1,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
17480      402,   403,   404,   405,   406,   407,    -1,   409,   410,   411,
17481      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
17482      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17483      432,   433,   434,   435,   436,   437,   438,    -1,    -1,    -1,
17484       -1,    -1,    -1,   445,   446,    -1,    -1,    -1,    -1,    -1,
17485       -1,    -1,   454,     3,     4,     5,     6,     7,     8,     9,
17486       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    18,    19,
17487       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
17488       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
17489       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
17490       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
17491       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
17492       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
17493       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
17494       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
17495      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
17496      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
17497      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
17498      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
17499      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
17500      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
17501      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
17502       -1,   171,   172,   173,   174,   175,   176,   177,   178,   179,
17503      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
17504      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17505       -1,   201,   202,   203,   204,   205,   206,   207,   208,   209,
17506      210,    -1,    -1,   213,   214,   215,   216,   217,    -1,   219,
17507      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
17508      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17509      240,   241,   242,   243,   244,   245,   246,   247,   248,   249,
17510      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
17511       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
17512      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
17513      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
17514      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
17515      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
17516      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
17517      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17518      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
17519      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17520       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17521      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
17522      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
17523      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17524      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
17525       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
17526      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
17527      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17528      430,   431,   432,   433,   434,   435,   436,   437,   438,    -1,
17529       -1,    -1,    -1,    -1,    -1,   445,   446,    -1,    -1,    -1,
17530       -1,    -1,    -1,    -1,   454,     3,     4,     5,     6,     7,
17531        8,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17532       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
17533       28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,    37,
17534       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
17535       48,    49,    50,    -1,    52,    53,    54,    55,    56,    57,
17536       58,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
17537       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
17538       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
17539       -1,    89,    90,    91,    92,    93,    94,    95,    96,    97,
17540       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
17541      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
17542       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
17543      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
17544      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
17545      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
17546      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
17547      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
17548      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
17549       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
17550       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
17551      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
17552       -1,   219,   220,   221,   222,   223,   224,   225,   226,   227,
17553      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
17554      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
17555      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
17556       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
17557      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
17558      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
17559      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
17560      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
17561      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
17562      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
17563      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
17564      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
17565      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
17566      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
17567      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
17568       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
17569      388,   389,   390,   391,    -1,   393,   394,   395,   396,   397,
17570      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
17571       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
17572       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
17573      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
17574      438,    -1,    -1,    -1,    -1,    -1,    -1,   445,   446,    -1,
17575       -1,    -1,    -1,    -1,    -1,    -1,   454,     3,     4,     5,
17576        6,     7,     8,     9,    10,    -1,    -1,    -1,    -1,    -1,
17577       -1,    -1,    18,    19,    20,    21,    22,    23,    24,    25,
17578       -1,    27,    28,    29,    -1,    -1,    -1,    -1,    34,    -1,
17579       -1,    37,    38,    -1,    40,    41,    42,    43,    44,    45,
17580       46,    47,    48,    49,    50,    -1,    52,    53,    54,    55,
17581       56,    57,    58,    59,    60,    61,    62,    63,    -1,    65,
17582       66,    67,    68,    69,    -1,    71,    -1,    73,    74,    75,
17583       76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
17584       86,    87,    -1,    89,    90,    91,    92,    93,    94,    95,
17585       96,    97,    98,    99,   100,   101,   102,   103,   104,   105,
17586      106,   107,   108,    -1,   110,    -1,   112,   113,   114,   115,
17587      116,   117,    -1,   119,   120,   121,    -1,    -1,   124,   125,
17588      126,   127,   128,    -1,   130,   131,   132,    -1,   134,   135,
17589      136,    -1,   138,   139,   140,   141,   142,   143,   144,   145,
17590      146,   147,   148,    -1,   150,   151,   152,   153,    -1,   155,
17591       -1,   157,   158,    -1,   160,   161,   162,   163,    -1,   165,
17592      166,    -1,   168,   169,    -1,   171,   172,   173,   174,   175,
17593      176,   177,   178,   179,   180,    -1,   182,   183,   184,   185,
17594      186,   187,    -1,   189,   190,   191,   192,   193,   194,   195,
17595      196,   197,    -1,   199,    -1,   201,   202,   203,   204,   205,
17596      206,   207,   208,   209,   210,    -1,    -1,   213,   214,   215,
17597      216,   217,    -1,   219,   220,   221,   222,   223,   224,   225,
17598      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
17599      236,   237,   238,   239,   240,   241,   242,   243,   244,   245,
17600      246,   247,   248,   249,   250,   251,   252,   253,   254,   255,
17601      256,   257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,
17602       -1,   267,   268,   269,   270,   271,   272,   273,   274,   275,
17603      276,   277,   278,   279,   280,    -1,    -1,   283,   284,   285,
17604      286,   287,   288,   289,   290,    -1,   292,   293,   294,   295,
17605      296,   297,   298,   299,   300,   301,   302,   303,   304,    -1,
17606      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
17607      316,    -1,   318,   319,   320,   321,   322,   323,   324,   325,
17608      326,   327,   328,   329,   330,   331,   332,    -1,   334,   335,
17609      336,   337,   338,   339,   340,   341,   342,   343,   344,   345,
17610      346,   347,   348,   349,    -1,   351,   352,   353,   354,   355,
17611      356,   357,   358,   359,   360,   361,   362,    -1,   364,   365,
17612       -1,   367,   368,   369,   370,   371,   372,   373,    -1,   375,
17613      376,    -1,    -1,   379,   380,   381,   382,   383,   384,   385,
17614      386,   387,   388,   389,   390,   391,    -1,   393,   394,   395,
17615      396,   397,   398,   399,    -1,   401,   402,   403,   404,   405,
17616      406,   407,    -1,   409,   410,   411,   412,   413,   414,    -1,
17617       -1,   417,    -1,    -1,   420,   421,   422,   423,   424,   425,
17618      426,   427,   428,   429,   430,   431,   432,   433,   434,   435,
17619      436,   437,   438,    -1,    -1,    -1,    -1,    -1,    -1,   445,
17620      446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,     3,
17621        4,     5,     6,     7,     8,     9,    10,    -1,    -1,    -1,
17622       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
17623       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
17624       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
17625       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
17626       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
17627       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
17628       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
17629       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
17630       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17631      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
17632      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
17633      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
17634      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
17635      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
17636       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
17637       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
17638      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
17639      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
17640      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
17641      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
17642      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
17643      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
17644      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17645      244,   245,    -1,   247,   248,   249,   250,   251,   252,   253,
17646      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
17647      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
17648      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
17649      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
17650      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
17651      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
17652      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
17653      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
17654      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
17655      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
17656      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
17657      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
17658       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
17659      384,   385,   386,   387,   388,   389,   390,   391,    -1,    -1,
17660      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
17661      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
17662      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
17663      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
17664      434,   435,   436,   437,    -1,    -1,    -1,    -1,    -1,    -1,
17665       -1,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17666      454,     3,     4,     5,     6,     7,     8,     9,    10,    -1,
17667       -1,    -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,
17668       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
17669       -1,    -1,    34,    -1,    -1,    37,    38,    -1,    40,    41,
17670       42,    43,    44,    45,    46,    47,    48,    49,    50,    -1,
17671       52,    53,    54,    55,    56,    57,    58,    59,    60,    61,
17672       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    71,
17673       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
17674       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
17675       92,    93,    94,    95,    96,    97,    98,    99,   100,   101,
17676      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
17677      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
17678       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
17679      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
17680      142,   143,   144,   145,   146,   147,   148,    -1,   150,   151,
17681      152,   153,    -1,   155,    -1,   157,   158,    -1,   160,   161,
17682      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
17683      172,   173,   174,   175,   176,   177,   178,   179,   180,    -1,
17684      182,   183,   184,   185,   186,   187,    -1,   189,   190,   191,
17685      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
17686       -1,    -1,   204,   205,   206,   207,   208,   209,   210,    -1,
17687       -1,   213,   214,   215,   216,   217,    -1,   219,   220,   221,
17688      222,   223,   224,   225,   226,   227,   228,   229,   230,   231,
17689      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
17690      242,   243,   244,   245,   246,   247,   248,    -1,   250,   251,
17691      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
17692      262,   263,   264,    -1,    -1,   267,   268,   269,   270,   271,
17693      272,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
17694       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
17695      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
17696      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
17697      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
17698      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
17699      332,    -1,   334,   335,   336,   337,   338,   339,   340,   341,
17700      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
17701      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
17702      362,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
17703      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,   381,
17704      382,   383,   384,   385,   386,   387,   388,   389,   390,   391,
17705       -1,   393,   394,   395,   396,   397,   398,   399,    -1,   401,
17706      402,   403,   404,   405,   406,   407,    -1,   409,   410,   411,
17707      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
17708      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
17709      432,   433,   434,   435,   436,   437,   438,    -1,    -1,    -1,
17710       -1,    -1,    -1,   445,   446,    -1,    -1,    -1,    -1,    -1,
17711       -1,    -1,   454,     3,     4,     5,     6,     7,     8,     9,
17712       10,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    18,    19,
17713       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
17714       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
17715       40,    41,    42,    43,    44,    45,    46,    47,    48,    49,
17716       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
17717       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
17718       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
17719       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
17720       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
17721      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
17722      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
17723      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
17724      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
17725      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
17726      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
17727      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
17728       -1,   171,   172,   173,   174,   175,   176,   177,   178,   179,
17729      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
17730      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17731       -1,   201,    -1,   203,   204,   205,   206,   207,   208,   209,
17732      210,    -1,    -1,   213,   214,   215,   216,   217,    -1,   219,
17733      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
17734      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17735      240,   241,   242,   243,   244,   245,    -1,   247,   248,   249,
17736      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
17737       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
17738      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
17739      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
17740      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
17741      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
17742      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
17743      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17744      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
17745      340,   341,   342,   343,   344,   345,   346,   347,   348,   349,
17746       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17747      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
17748      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
17749      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17750      390,   391,    -1,    -1,   394,   395,   396,   397,   398,   399,
17751       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
17752      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
17753      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17754      430,   431,   432,   433,   434,   435,   436,   437,    -1,    -1,
17755       -1,    -1,    -1,    -1,    -1,   445,   446,    -1,    -1,     3,
17756        4,     5,     6,     7,   454,     9,    10,    -1,    -1,    -1,
17757       -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
17758       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
17759       34,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
17760       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
17761       54,    55,    56,    57,    58,    59,    60,    61,    62,    63,
17762       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
17763       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
17764       84,    85,    86,    87,    -1,    89,    90,    91,    92,    93,
17765       94,    95,    96,    97,    98,    99,   100,   101,   102,   103,
17766      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
17767      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
17768      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
17769      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
17770      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
17771       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
17772       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
17773      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
17774      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
17775      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
17776      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
17777      214,   215,   216,   217,    -1,   219,   220,   221,   222,   223,
17778      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
17779      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
17780      244,   245,    -1,   247,   248,   249,   250,   251,   252,   253,
17781      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
17782      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
17783      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
17784      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
17785      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
17786      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
17787      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
17788      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
17789      334,   335,   336,   337,   338,   339,   340,   341,   342,   343,
17790      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
17791      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
17792      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
17793       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
17794      384,   385,   386,   387,   388,   389,   390,   391,    -1,    -1,
17795      394,   395,   396,   397,   398,   399,    -1,   401,   402,   403,
17796      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
17797      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
17798      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
17799      434,   435,   436,   437,    -1,    -1,     3,     4,     5,     6,
17800        7,    -1,     9,    10,    -1,    -1,    -1,    -1,    -1,    -1,
17801      454,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
17802       27,    28,    29,    -1,    -1,    -1,    -1,    34,    -1,    -1,
17803       37,    38,    -1,    40,    41,    42,    43,    44,    45,    46,
17804       47,    48,    49,    50,    -1,    52,    53,    54,    55,    56,
17805       57,    58,    59,    60,    61,    62,    63,    -1,    65,    66,
17806       67,    68,    69,    -1,    71,    -1,    73,    74,    75,    76,
17807       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
17808       87,    -1,    89,    90,    91,    92,    93,    94,    95,    96,
17809       97,    98,    99,   100,   101,   102,   103,   104,   105,   106,
17810      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
17811      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
17812      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
17813       -1,   138,   139,   140,   141,   142,   143,   144,   145,   146,
17814      147,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
17815      157,   158,    -1,   160,   161,   162,   163,    -1,   165,   166,
17816       -1,   168,   169,    -1,   171,   172,   173,   174,   175,   176,
17817      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
17818      187,    -1,   189,   190,   191,   192,   193,   194,   195,   196,
17819      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
17820      207,   208,   209,   210,    -1,    -1,   213,   214,   215,   216,
17821      217,    -1,   219,   220,   221,   222,   223,   224,   225,   226,
17822      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
17823      237,   238,   239,   240,   241,   242,   243,   244,   245,    -1,
17824      247,   248,   249,   250,   251,   252,   253,   254,   255,   256,
17825      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
17826      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
17827      277,   278,   279,   280,    -1,    -1,   283,   284,   285,   286,
17828      287,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
17829      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
17830      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
17831       -1,   318,   319,   320,   321,   322,   323,   324,   325,   326,
17832      327,   328,   329,   330,   331,   332,    -1,   334,   335,   336,
17833      337,   338,   339,   340,   341,   342,   343,   344,   345,   346,
17834      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
17835      357,   358,   359,   360,   361,   362,    -1,   364,   365,    -1,
17836      367,   368,   369,   370,   371,   372,   373,    -1,   375,   376,
17837       -1,    -1,   379,   380,   381,   382,   383,   384,   385,   386,
17838      387,   388,   389,   390,   391,    -1,    -1,   394,   395,   396,
17839      397,   398,   399,    -1,   401,   402,   403,   404,   405,   406,
17840      407,    -1,   409,   410,   411,   412,   413,   414,    -1,    -1,
17841      417,    -1,    -1,   420,   421,   422,   423,   424,   425,   426,
17842      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
17843      437,    -1,    -1,     3,     4,     5,     6,     7,     8,     9,
17844       10,    -1,    -1,    -1,    -1,    -1,    -1,   454,    18,    19,
17845       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
17846       -1,    -1,    -1,    -1,    34,    -1,    -1,    37,    38,    -1,
17847       40,    41,    42,    43,    44,    45,    -1,    47,    48,    49,
17848       50,    -1,    52,    53,    54,    55,    56,    57,    58,    59,
17849       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
17850       -1,    71,    -1,    73,    74,    75,    76,    77,    78,    79,
17851       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    89,
17852       90,    91,    92,    93,    94,    95,    96,    97,    98,    99,
17853      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
17854      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
17855      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
17856      130,   131,   132,    -1,   134,    -1,   136,    -1,   138,   139,
17857      140,   141,   142,   143,   144,   145,   146,   147,   148,    -1,
17858      150,   151,   152,   153,    -1,   155,    -1,   157,   158,    -1,
17859      160,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
17860       -1,   171,   172,   173,   174,   175,    -1,   177,   178,   179,
17861      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
17862      190,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
17863       -1,   201,    -1,    -1,   204,   205,   206,   207,   208,   209,
17864      210,    -1,    -1,   213,   214,   215,   216,    -1,    -1,   219,
17865      220,   221,   222,   223,   224,   225,   226,   227,   228,   229,
17866      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
17867      240,   241,   242,   243,   244,   245,   246,   247,   248,    -1,
17868      250,   251,   252,   253,   254,   255,   256,   257,    -1,   259,
17869       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,   269,
17870      270,   271,   272,   273,   274,   275,   276,   277,   278,   279,
17871      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
17872      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
17873      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
17874      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
17875      320,   321,   322,   323,   324,   325,   326,   327,   328,   329,
17876      330,   331,   332,    -1,   334,   335,   336,   337,   338,   339,
17877      340,   341,   342,   343,   344,    -1,   346,   347,   348,   349,
17878       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
17879      360,   361,   362,    -1,   364,   365,    -1,   367,   368,   369,
17880      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
17881      380,   381,   382,   383,   384,   385,   386,   387,   388,   389,
17882      390,   391,    -1,   393,   394,   395,   396,   397,   398,   399,
17883       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
17884      410,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
17885      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
17886      430,   431,   432,   433,   434,   435,   436,   437,    -1,    -1,
17887        3,    -1,    -1,    -1,    -1,   445,   446,    -1,    -1,    -1,
17888       -1,    -1,    -1,    -1,   454,    18,    19,    20,    21,    22,
17889       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
17890       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
17891       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
17892       53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
17893       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
17894       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
17895       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
17896       93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
17897      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
17898      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
17899       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
17900       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
17901      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
17902      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
17903      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
17904      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
17905      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
17906      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
17907      203,   204,   205,   206,   207,   208,   209,   210,   211,    -1,
17908      213,   214,   215,   216,   217,    -1,   219,   220,   221,   222,
17909      223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
17910      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
17911      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
17912      253,   254,   255,   256,   257,    -1,   259,    -1,   261,   262,
17913      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
17914      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
17915      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
17916      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
17917      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
17918      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
17919      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
17920      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
17921      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
17922      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
17923       -1,   364,   365,   366,   367,   368,   369,   370,   371,   372,
17924      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
17925      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
17926       -1,   394,   395,   396,   397,   398,   399,    -1,   401,   402,
17927      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
17928      413,   414,    -1,    -1,   417,    -1,   419,   420,   421,   422,
17929      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
17930      433,   434,   435,   436,   437,    -1,    -1,   440,     3,    -1,
17931       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
17932       -1,   454,    -1,    18,    19,    20,    21,    22,    23,    24,
17933       25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
17934       -1,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
17935       45,    46,    47,    48,    49,    50,    -1,    52,    53,    54,
17936       55,    56,    -1,    58,    59,    60,    61,    62,    63,    -1,
17937       65,    66,    67,    68,    69,    -1,    71,    -1,    73,    74,
17938       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
17939       85,    86,    87,    -1,    89,    90,    91,    92,    93,    94,
17940       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
17941      105,   106,   107,   108,    -1,   110,    -1,   112,   113,   114,
17942      115,   116,   117,    -1,   119,   120,   121,    -1,    -1,   124,
17943      125,   126,   127,   128,    -1,   130,   131,   132,    -1,   134,
17944      135,   136,    -1,   138,   139,   140,   141,   142,   143,   144,
17945      145,   146,    -1,   148,    -1,   150,   151,   152,   153,    -1,
17946      155,    -1,   157,   158,    -1,   160,   161,   162,   163,    -1,
17947      165,   166,    -1,   168,   169,    -1,   171,   172,   173,   174,
17948      175,   176,   177,   178,   179,   180,    -1,   182,   183,   184,
17949      185,   186,   187,    -1,   189,   190,   191,   192,   193,   194,
17950      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
17951      205,   206,   207,   208,   209,   210,   211,    -1,   213,   214,
17952      215,   216,   217,    -1,   219,   220,   221,   222,   223,   224,
17953      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
17954      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
17955      245,    -1,   247,   248,   249,   250,    -1,   252,   253,   254,
17956      255,   256,   257,    -1,   259,    -1,   261,   262,   263,   264,
17957       -1,    -1,   267,   268,   269,   270,   271,   272,   273,   274,
17958      275,   276,   277,   278,   279,   280,    -1,    -1,   283,   284,
17959      285,   286,   287,   288,   289,   290,    -1,   292,   293,   294,
17960      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
17961       -1,   306,   307,   308,   309,   310,   311,   312,   313,   314,
17962      315,   316,    -1,   318,   319,   320,   321,   322,   323,   324,
17963      325,   326,   327,   328,   329,   330,   331,   332,    -1,   334,
17964      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
17965      345,   346,   347,   348,   349,    -1,   351,   352,   353,   354,
17966      355,   356,   357,   358,   359,   360,   361,   362,    -1,   364,
17967      365,    -1,   367,   368,   369,   370,   371,   372,   373,    -1,
17968      375,   376,    -1,    -1,   379,   380,   381,   382,   383,    -1,
17969      385,   386,   387,   388,   389,   390,   391,    -1,    -1,   394,
17970      395,   396,   397,   398,   399,    -1,   401,   402,   403,   404,
17971      405,   406,   407,    -1,   409,   410,   411,   412,   413,   414,
17972       -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,   424,
17973      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
17974      435,   436,   437,    -1,    -1,     3,    -1,    -1,    -1,    -1,
17975       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,
17976       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
17977       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
17978       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
17979       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
17980       58,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
17981       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
17982       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
17983       -1,    89,    90,    91,    92,    93,    94,    95,    96,    97,
17984       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
17985      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
17986       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
17987      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
17988      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
17989      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
17990      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
17991      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
17992      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
17993       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
17994       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
17995      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
17996       -1,   219,   220,   221,   222,   223,   224,   225,   226,   227,
17997      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
17998      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
17999      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
18000       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
18001      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
18002      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
18003      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
18004      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
18005      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
18006      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
18007      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
18008      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
18009      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
18010      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
18011      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
18012       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
18013      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
18014      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
18015       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
18016       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
18017      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
18018       -1,    -1,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18019       -1,    -1,    -1,    -1,    -1,    -1,   454,    18,    19,    20,
18020       21,    22,    23,    24,    25,    -1,    27,    28,    29,    -1,
18021       -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,
18022       41,    42,    43,    44,    45,    46,    47,    48,    49,    50,
18023       -1,    52,    53,    54,    55,    56,    -1,    58,    59,    60,
18024       61,    62,    63,    -1,    65,    66,    67,    68,    69,    -1,
18025       71,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
18026       -1,    82,    83,    84,    85,    86,    87,    -1,    89,    90,
18027       91,    92,    93,    94,    95,    96,    97,    98,    99,   100,
18028      101,   102,   103,   104,   105,   106,   107,   108,    -1,   110,
18029       -1,   112,   113,   114,   115,   116,   117,    -1,   119,   120,
18030      121,    -1,    -1,   124,   125,   126,   127,   128,    -1,   130,
18031      131,   132,    -1,   134,   135,   136,    -1,   138,   139,   140,
18032      141,   142,   143,   144,   145,   146,    -1,   148,    -1,   150,
18033      151,   152,   153,    -1,   155,    -1,   157,   158,    -1,   160,
18034      161,   162,   163,    -1,   165,   166,    -1,   168,   169,    -1,
18035      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
18036       -1,   182,   183,   184,   185,   186,   187,    -1,   189,   190,
18037      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
18038      201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
18039       -1,    -1,   213,   214,   215,   216,   217,    -1,   219,   220,
18040      221,   222,   223,   224,   225,   226,   227,   228,   229,   230,
18041      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
18042      241,   242,   243,   244,   245,    -1,   247,   248,   249,   250,
18043       -1,   252,   253,   254,   255,   256,   257,    -1,   259,    -1,
18044       -1,   262,   263,   264,    -1,    -1,   267,   268,   269,   270,
18045      271,   272,   273,   274,   275,   276,   277,   278,   279,   280,
18046       -1,    -1,   283,   284,   285,   286,   287,   288,   289,   290,
18047       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
18048      301,   302,   303,   304,    -1,   306,   307,   308,   309,   310,
18049      311,   312,   313,   314,   315,   316,    -1,   318,   319,   320,
18050      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
18051      331,   332,    -1,   334,   335,   336,   337,   338,   339,   340,
18052      341,   342,   343,   344,   345,   346,   347,   348,   349,    -1,
18053      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
18054      361,   362,    -1,   364,   365,    -1,   367,   368,   369,   370,
18055      371,   372,   373,    -1,   375,   376,    -1,    -1,   379,   380,
18056      381,   382,   383,    -1,   385,   386,   387,   388,   389,   390,
18057      391,    -1,    -1,   394,   395,   396,   397,   398,   399,    -1,
18058      401,   402,   403,   404,   405,   406,   407,    -1,   409,   410,
18059      411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,
18060      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
18061      431,   432,   433,   434,   435,   436,   437,    -1,    -1,     3,
18062        4,     5,    -1,    -1,    -1,     9,    -1,    -1,    -1,    -1,
18063       -1,    -1,    -1,   454,    18,    19,    20,    21,    22,    23,
18064       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
18065       -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
18066       44,    45,    46,    47,    48,    49,    50,    -1,    52,    53,
18067       54,    55,    56,    -1,    -1,    59,    60,    61,    62,    63,
18068       -1,    65,    66,    67,    68,    69,    -1,    71,    -1,    73,
18069       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
18070       84,    85,    86,    87,    -1,    89,    90,    91,    92,    -1,
18071       -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,   103,
18072      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
18073      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
18074      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
18075      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
18076      144,   145,   146,   147,   148,    -1,   150,   151,   152,   153,
18077       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
18078       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
18079      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
18080      184,   185,   186,   187,    -1,   189,   190,   191,   192,   193,
18081      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
18082      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
18083      214,   215,   216,   217,    -1,   219,   220,   221,    -1,    -1,
18084      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
18085      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
18086      244,   245,    -1,   247,   248,   249,   250,    -1,   252,   253,
18087      254,   255,   256,   257,    -1,   259,   260,    -1,   262,   263,
18088      264,    -1,    -1,   267,   268,   269,   270,   271,   272,   273,
18089      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
18090      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
18091      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
18092      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
18093      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
18094      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
18095      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
18096      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
18097      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
18098      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
18099       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
18100      384,   385,   386,   387,   388,   389,   390,   391,    -1,    -1,
18101      394,   395,   396,   397,   398,    -1,    -1,   401,   402,   403,
18102      404,   405,   406,   407,    -1,   409,   410,   411,   412,   413,
18103      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
18104      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
18105      434,   435,   436,   437,    -1,    -1,     3,    -1,    -1,    -1,
18106       -1,   445,   446,   447,    -1,    -1,    -1,    -1,    -1,    -1,
18107      454,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
18108       27,    28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,
18109       37,    38,    -1,    40,    41,    42,    43,    44,    45,    46,
18110       47,    48,    49,    50,    -1,    52,    53,    54,    55,    56,
18111       -1,    -1,    59,    60,    61,    62,    63,    -1,    65,    66,
18112       67,    68,    69,    -1,    71,    -1,    73,    74,    75,    76,
18113       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
18114       87,    -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,
18115       -1,    -1,    -1,   100,   101,   102,   103,   104,   105,   106,
18116      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
18117      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
18118      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
18119       -1,   138,   139,   140,   141,   142,   143,   144,   145,   146,
18120       -1,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
18121      157,   158,    -1,   160,   161,   162,   163,    -1,   165,   166,
18122       -1,   168,   169,    -1,   171,   172,   173,   174,   175,   176,
18123      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
18124      187,    -1,   189,   190,   191,   192,   193,   194,   195,   196,
18125      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
18126      207,   208,   209,   210,    -1,    -1,   213,   214,   215,   216,
18127      217,    -1,   219,   220,   221,    -1,    -1,   224,   225,   226,
18128      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
18129      237,   238,   239,   240,   241,   242,   243,   244,   245,    -1,
18130      247,   248,   249,   250,    -1,   252,   253,   254,   255,   256,
18131      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
18132      267,   268,   269,   270,   271,   272,   273,   274,   275,   276,
18133      277,   278,   279,   280,    -1,    -1,   283,   284,   285,   286,
18134      287,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
18135      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
18136      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
18137       -1,   318,   319,   320,   321,   322,   323,   324,   325,   326,
18138      327,   328,   329,   330,   331,   332,   333,   334,   335,   336,
18139      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
18140      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
18141      357,   358,   359,   360,   361,   362,    -1,   364,   365,   366,
18142      367,   368,   369,   370,   371,   372,   373,    -1,   375,   376,
18143       -1,    -1,   379,   380,   381,   382,   383,    -1,   385,   386,
18144      387,   388,   389,   390,   391,    -1,    -1,   394,   395,   396,
18145      397,   398,    -1,    -1,   401,   402,   403,   404,   405,   406,
18146      407,    -1,   409,   410,   411,   412,   413,   414,    -1,    -1,
18147      417,    -1,   419,   420,   421,   422,   423,   424,   425,   426,
18148      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
18149      437,    -1,    -1,   440,     3,    -1,    -1,    -1,    -1,    -1,
18150       -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,    -1,    18,
18151       19,    20,    21,    22,    23,    24,    25,    -1,    27,    28,
18152       29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
18153       -1,    40,    41,    42,    43,    44,    45,    46,    47,    48,
18154       49,    50,    -1,    52,    53,    54,    55,    56,    -1,    -1,
18155       59,    60,    61,    62,    63,    -1,    65,    66,    67,    68,
18156       69,    -1,    71,    -1,    73,    74,    75,    76,    77,    78,
18157       79,    80,    -1,    82,    83,    84,    85,    86,    87,    -1,
18158       89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,    -1,
18159       -1,   100,   101,   102,   103,   104,   105,   106,   107,   108,
18160       -1,   110,    -1,   112,   113,   114,   115,   116,   117,    -1,
18161      119,   120,   121,    -1,    -1,   124,   125,   126,   127,   128,
18162       -1,   130,   131,   132,    -1,   134,   135,   136,    -1,   138,
18163      139,   140,   141,   142,   143,   144,   145,   146,    -1,   148,
18164       -1,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
18165       -1,   160,   161,   162,   163,    -1,   165,   166,    -1,   168,
18166      169,    -1,   171,   172,   173,   174,   175,   176,   177,   178,
18167      179,   180,    -1,   182,   183,   184,   185,   186,   187,    -1,
18168      189,   190,   191,   192,   193,   194,   195,   196,   197,    -1,
18169      199,    -1,   201,   202,   203,   204,   205,   206,   207,   208,
18170      209,   210,    -1,    -1,   213,   214,   215,   216,   217,    -1,
18171      219,   220,   221,    -1,    -1,   224,   225,   226,   227,   228,
18172      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
18173      239,   240,   241,   242,   243,   244,   245,    -1,   247,   248,
18174      249,   250,    -1,   252,   253,   254,   255,   256,   257,    -1,
18175      259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,
18176      269,   270,   271,   272,   273,   274,   275,   276,   277,   278,
18177      279,   280,    -1,    -1,   283,   284,   285,   286,   287,   288,
18178      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
18179      299,   300,   301,   302,   303,   304,    -1,   306,   307,   308,
18180      309,   310,   311,   312,   313,   314,   315,   316,    -1,   318,
18181      319,   320,   321,   322,   323,   324,   325,   326,   327,   328,
18182      329,   330,   331,   332,    -1,   334,   335,   336,   337,   338,
18183       -1,   340,   341,   342,   343,   344,   345,   346,   347,   348,
18184      349,    -1,   351,   352,   353,   354,   355,   356,   357,   358,
18185      359,   360,   361,   362,    -1,   364,   365,    -1,   367,   368,
18186      369,   370,   371,   372,   373,    -1,   375,   376,    -1,    -1,
18187      379,   380,   381,   382,   383,    -1,   385,   386,   387,   388,
18188      389,   390,   391,    -1,    -1,   394,   395,   396,   397,   398,
18189       -1,    -1,   401,   402,   403,   404,   405,   406,   407,    -1,
18190      409,   410,   411,   412,   413,   414,    -1,    -1,   417,    -1,
18191       -1,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18192      429,   430,   431,   432,   433,   434,   435,   436,   437,    -1,
18193       -1,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18194       -1,    -1,    -1,    -1,    -1,   454,    18,    19,    20,    21,
18195       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
18196       -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,
18197       -1,    43,    44,    45,    46,    47,    -1,    49,    50,    -1,
18198       52,    53,    54,    55,    56,    -1,    -1,    59,    60,    61,
18199       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    -1,
18200       -1,    73,    74,    75,    76,    -1,    78,    79,    80,    -1,
18201       82,    83,    84,    85,    86,    87,    -1,    -1,    90,    91,
18202       92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,
18203      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
18204      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
18205       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
18206      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
18207      142,   143,   144,   145,   146,    -1,   148,    -1,   150,   151,
18208      152,   153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,
18209      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
18210      172,   173,   174,   175,    -1,   177,   178,   179,   180,    -1,
18211      182,   183,   184,   185,   186,   187,    -1,   189,    -1,   191,
18212      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
18213       -1,    -1,   204,    -1,   206,   207,   208,   209,   210,    -1,
18214       -1,   213,   214,    -1,   216,    -1,    -1,   219,   220,   221,
18215       -1,    -1,   224,   225,   226,   227,   228,   229,   230,   231,
18216      232,   233,   234,   235,   236,   237,   238,   239,   240,    -1,
18217      242,   243,   244,   245,    -1,   247,   248,    -1,   250,    -1,
18218      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
18219      262,   263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,
18220      272,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
18221       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
18222      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
18223      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
18224      312,   313,   314,   315,   316,    -1,   318,   319,    -1,   321,
18225      322,   323,   324,   325,   326,   327,   328,   329,   330,   331,
18226      332,   333,   334,   335,   336,   337,   338,    -1,   340,   341,
18227      342,   343,   344,    -1,   346,   347,   348,   349,    -1,   351,
18228      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
18229      362,    -1,   364,   365,   366,   367,    -1,   369,   370,   371,
18230      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,   381,
18231      382,   383,    -1,   385,   386,   387,   388,   389,   390,   391,
18232       -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,   401,
18233      402,   403,   404,   405,   406,   407,    -1,   409,    -1,   411,
18234      412,   413,   414,    -1,    -1,   417,    -1,   419,   420,   421,
18235      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
18236      432,   433,   434,   435,   436,   437,    -1,    -1,   440,     3,
18237       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18238       -1,    -1,   454,    -1,    18,    19,    20,    21,    22,    23,
18239       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
18240       -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,    43,
18241       44,    45,    46,    47,    -1,    49,    50,    -1,    52,    53,
18242       54,    55,    56,    -1,    -1,    59,    60,    61,    62,    63,
18243       -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,    73,
18244       74,    75,    76,    -1,    78,    79,    80,    -1,    82,    83,
18245       84,    85,    86,    87,    -1,    -1,    90,    91,    92,    -1,
18246       -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,   103,
18247      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
18248      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
18249      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
18250      134,   135,   136,    -1,   138,   139,   140,   141,   142,   143,
18251      144,   145,   146,    -1,   148,    -1,   150,   151,   152,   153,
18252       -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,   163,
18253       -1,   165,   166,    -1,   168,   169,    -1,   171,   172,   173,
18254      174,   175,    -1,   177,   178,   179,   180,    -1,   182,   183,
18255      184,   185,   186,   187,    -1,   189,    -1,   191,   192,   193,
18256      194,   195,   196,   197,    -1,   199,    -1,   201,    -1,    -1,
18257      204,    -1,   206,   207,   208,   209,   210,    -1,    -1,   213,
18258      214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,    -1,
18259      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
18260      234,   235,   236,   237,   238,   239,   240,    -1,   242,   243,
18261      244,   245,    -1,   247,   248,    -1,   250,    -1,   252,   253,
18262      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
18263      264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,   273,
18264      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
18265      284,   285,   286,   287,   288,   289,   290,    -1,   292,   293,
18266      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
18267      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
18268      314,   315,   316,    -1,   318,   319,    -1,   321,   322,   323,
18269      324,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
18270      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
18271      344,    -1,   346,   347,   348,   349,    -1,   351,   352,   353,
18272      354,   355,   356,   357,   358,   359,   360,   361,   362,    -1,
18273      364,   365,    -1,   367,    -1,   369,   370,   371,   372,   373,
18274       -1,   375,   376,    -1,    -1,   379,   380,   381,   382,   383,
18275       -1,   385,   386,   387,   388,   389,   390,   391,    -1,    -1,
18276      394,   395,   396,   397,   398,    -1,    -1,   401,   402,   403,
18277      404,   405,   406,   407,    -1,   409,    -1,   411,   412,   413,
18278      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
18279      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
18280      434,   435,   436,   437,    -1,    -1,     3,    -1,    -1,    -1,
18281       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18282      454,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
18283       27,    28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18284       37,    38,    -1,    40,    41,    -1,    43,    44,    45,    46,
18285       47,    -1,    49,    50,    -1,    52,    53,    54,    55,    56,
18286       -1,    -1,    59,    60,    61,    62,    63,    -1,    65,    66,
18287       67,    68,    69,    -1,    -1,    -1,    73,    74,    75,    76,
18288       -1,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
18289       87,    -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,
18290       -1,    -1,    -1,   100,   101,   102,   103,   104,   105,   106,
18291      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
18292      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
18293      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
18294       -1,   138,   139,   140,   141,   142,   143,   144,   145,   146,
18295       -1,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
18296      157,    -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,
18297       -1,   168,   169,    -1,   171,   172,   173,   174,   175,    -1,
18298      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
18299      187,    -1,   189,    -1,   191,   192,   193,   194,   195,   196,
18300      197,    -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,
18301      207,   208,   209,   210,    -1,    -1,   213,   214,    -1,   216,
18302       -1,    -1,   219,   220,   221,    -1,    -1,   224,   225,   226,
18303      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
18304      237,   238,   239,   240,    -1,   242,   243,   244,   245,    -1,
18305      247,   248,    -1,   250,    -1,   252,   253,   254,   255,   256,
18306      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
18307      267,   268,    -1,   270,    -1,   272,   273,   274,   275,   276,
18308      277,   278,   279,   280,    -1,    -1,   283,   284,   285,   286,
18309      287,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
18310      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
18311      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
18312       -1,   318,   319,    -1,   321,   322,   323,   324,   325,   326,
18313      327,   328,   329,   330,   331,   332,    -1,   334,   335,   336,
18314      337,   338,    -1,   340,   341,   342,   343,   344,    -1,   346,
18315      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
18316      357,   358,   359,   360,   361,   362,    -1,   364,   365,    -1,
18317      367,    -1,   369,   370,   371,   372,   373,    -1,   375,   376,
18318       -1,    -1,   379,   380,   381,   382,   383,    -1,   385,   386,
18319      387,   388,   389,   390,   391,    -1,    -1,   394,   395,   396,
18320      397,   398,    -1,    -1,   401,   402,   403,   404,   405,   406,
18321      407,    -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,
18322      417,    -1,    -1,   420,   421,   422,   423,   424,   425,   426,
18323      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
18324      437,    -1,    -1,     3,    -1,    -1,    -1,    -1,    -1,    -1,
18325       -1,    -1,    -1,    -1,    -1,    -1,    -1,   454,    18,    19,
18326       20,    21,    22,    23,    24,    25,    -1,    27,    28,    29,
18327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,
18328       40,    41,    -1,    43,    44,    45,    46,    47,    -1,    49,
18329       50,    -1,    52,    53,    54,    55,    56,    -1,    -1,    59,
18330       60,    61,    62,    63,    -1,    65,    66,    67,    68,    69,
18331       -1,    -1,    -1,    73,    74,    75,    76,    -1,    78,    79,
18332       80,    -1,    82,    83,    84,    85,    86,    87,    -1,    -1,
18333       90,    91,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18334      100,   101,   102,   103,   104,   105,   106,   107,   108,    -1,
18335      110,    -1,   112,   113,   114,   115,   116,   117,    -1,   119,
18336      120,   121,    -1,    -1,   124,   125,   126,   127,   128,    -1,
18337      130,   131,   132,    -1,   134,   135,   136,    -1,   138,   139,
18338      140,   141,   142,   143,   144,   145,   146,    -1,   148,    -1,
18339      150,   151,   152,   153,    -1,   155,    -1,   157,    -1,    -1,
18340       -1,   161,   162,   163,    -1,   165,   166,    -1,   168,   169,
18341       -1,   171,   172,   173,   174,   175,    -1,   177,   178,   179,
18342      180,    -1,   182,   183,   184,   185,   186,   187,    -1,   189,
18343       -1,   191,   192,   193,   194,   195,   196,   197,    -1,   199,
18344       -1,   201,    -1,    -1,   204,    -1,   206,   207,   208,   209,
18345      210,    -1,    -1,   213,   214,    -1,   216,    -1,    -1,   219,
18346      220,   221,    -1,    -1,   224,   225,   226,   227,   228,   229,
18347      230,   231,   232,   233,   234,   235,   236,   237,   238,   239,
18348      240,    -1,   242,   243,   244,   245,    -1,   247,   248,    -1,
18349      250,    -1,   252,   253,   254,   255,   256,   257,    -1,   259,
18350       -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,    -1,
18351      270,    -1,   272,   273,   274,   275,   276,   277,   278,   279,
18352      280,    -1,    -1,   283,   284,   285,   286,   287,   288,   289,
18353      290,    -1,   292,   293,   294,   295,   296,   297,   298,   299,
18354      300,   301,   302,   303,   304,    -1,   306,   307,   308,   309,
18355      310,   311,   312,   313,   314,   315,   316,    -1,   318,   319,
18356       -1,   321,   322,   323,   324,   325,   326,   327,   328,   329,
18357      330,   331,   332,    -1,   334,   335,   336,   337,   338,    -1,
18358      340,   341,   342,   343,   344,    -1,   346,   347,   348,   349,
18359       -1,   351,   352,   353,   354,   355,   356,   357,   358,   359,
18360      360,   361,   362,    -1,   364,   365,    -1,   367,    -1,   369,
18361      370,   371,   372,   373,    -1,   375,   376,    -1,    -1,   379,
18362      380,   381,   382,   383,    -1,   385,   386,   387,   388,   389,
18363      390,   391,    -1,    -1,   394,   395,   396,   397,   398,    -1,
18364       -1,   401,   402,   403,   404,   405,   406,   407,    -1,   409,
18365       -1,   411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,
18366      420,   421,   422,   423,   424,   425,   426,   427,   428,   429,
18367      430,   431,   432,   433,   434,   435,   436,   437,    -1,    -1,
18368        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18369       -1,    -1,    -1,    -1,   454,    18,    19,    20,    21,    22,
18370       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
18371       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
18372       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
18373       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
18374       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
18375       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
18376       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
18377       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
18378      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
18379      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
18380       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
18381       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
18382      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
18383      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
18384      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
18385      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
18386      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
18387      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
18388       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
18389      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
18390       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
18391      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
18392      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
18393      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
18394      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
18395      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
18396      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
18397      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
18398      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
18399      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
18400      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18401       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
18402      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
18403      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18404       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
18405      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
18406      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
18407       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
18408      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
18409      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
18410      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18411      433,   434,   435,   436,   437,    -1,    -1,    -1,    -1,    -1,
18412        3,     4,     5,    -1,    -1,     8,     9,    -1,    -1,    -1,
18413       -1,   454,    15,    16,    17,    18,    19,    20,    21,    22,
18414       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
18415       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
18416       43,    44,    45,    -1,    47,    48,    49,    50,    51,    52,
18417       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
18418       63,    64,    65,    66,    67,    68,    -1,    70,    71,    72,
18419       73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
18420       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
18421       93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
18422      103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
18423      113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
18424      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
18425      133,   134,   135,   136,   137,   138,   139,   140,   141,    -1,
18426      143,   144,   145,    -1,   147,   148,   149,   150,   151,   152,
18427      153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
18428      163,   164,   165,    -1,   167,    -1,   169,   170,   171,   172,
18429      173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
18430      183,   184,   185,   186,   187,   188,   189,   190,    -1,   192,
18431      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
18432      203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
18433      213,    -1,   215,   216,   217,   218,   219,   220,   221,   222,
18434      223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
18435      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
18436      243,   244,   245,   246,   247,   248,   249,   250,   251,    -1,
18437      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
18438      263,   264,   265,   266,   267,    -1,   269,   270,   271,    -1,
18439      273,   274,   275,   276,   277,   278,   279,   280,    -1,   282,
18440      283,   284,    -1,   286,    -1,   288,   289,   290,   291,   292,
18441      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
18442      303,   304,   305,   306,   307,   308,   309,   310,   311,   312,
18443      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
18444      323,    -1,   325,   326,   327,   328,   329,   330,   331,   332,
18445      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
18446      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
18447      353,   354,   355,   356,   357,   358,   359,   360,   361,    -1,
18448      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
18449      373,   374,   375,   376,   377,   378,   379,   380,    -1,   382,
18450       -1,   384,   385,   386,   387,   388,   389,   390,   391,   392,
18451      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
18452      403,   404,   405,    -1,   407,   408,   409,   410,   411,   412,
18453      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
18454      423,   424,   425,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18455       -1,    -1,   435,   436,   437,    -1,    -1,    -1,   441,   442,
18456      443,    -1,   445,   446,   447,   448,   449,   450,     3,     4,
18457        5,    -1,    -1,     8,     9,    -1,    -1,    -1,    -1,    -1,
18458       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
18459       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
18460       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
18461       45,    -1,    47,    48,    49,    50,    51,    52,    53,    54,
18462       55,    56,    57,    58,    59,    60,    61,    62,    63,    64,
18463       65,    66,    67,    68,    -1,    70,    71,    72,    73,    74,
18464       75,    76,    77,    78,    79,    80,    81,    82,    83,    84,
18465       85,    86,    87,    88,    89,    90,    91,    92,    93,    94,
18466       95,    96,    97,    98,    99,   100,   101,   102,   103,   104,
18467      105,   106,   107,   108,   109,   110,   111,   112,   113,   114,
18468      115,   116,   117,   118,   119,   120,   121,   122,   123,   124,
18469      125,   126,   127,   128,   129,   130,   131,   132,   133,   134,
18470      135,   136,   137,   138,   139,   140,   141,    -1,   143,   144,
18471      145,    -1,   147,   148,   149,   150,   151,   152,   153,   154,
18472      155,   156,   157,   158,   159,   160,   161,   162,   163,   164,
18473      165,    -1,   167,    -1,   169,   170,   171,   172,   173,   174,
18474      175,   176,   177,   178,   179,   180,   181,   182,   183,   184,
18475      185,   186,   187,   188,   189,   190,    -1,   192,   193,   194,
18476      195,   196,   197,   198,   199,   200,   201,   202,   203,   204,
18477      205,   206,   207,   208,   209,   210,   211,   212,   213,    -1,
18478      215,   216,   217,   218,   219,   220,   221,   222,   223,   224,
18479      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
18480      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
18481       -1,   246,   247,   248,   249,   250,   251,    -1,   253,   254,
18482      255,   256,   257,   258,   259,   260,   261,   262,   263,   264,
18483      265,   266,   267,    -1,   269,   270,   271,    -1,   273,   274,
18484      275,   276,   277,   278,   279,   280,    -1,   282,   283,   284,
18485       -1,   286,    -1,   288,   289,   290,   291,   292,   293,   294,
18486      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
18487      305,   306,   307,   308,   309,   310,   311,   312,   313,   314,
18488      315,   316,   317,   318,   319,   320,   321,   322,   323,    -1,
18489      325,   326,   327,   328,   329,   330,   331,   332,   333,   334,
18490      335,   336,   337,   338,   339,   340,   341,   342,   343,   344,
18491      345,   346,   347,   348,   349,   350,   351,   352,   353,   354,
18492      355,   356,   357,   358,   359,   360,   361,    -1,   363,   364,
18493      365,   366,   367,   368,   369,   370,   371,   372,   373,   374,
18494      375,   376,   377,   378,   379,   380,    -1,   382,    -1,   384,
18495      385,   386,   387,   388,   389,   390,   391,   392,   393,   394,
18496      395,   396,   397,   398,   399,   400,   401,   402,   403,   404,
18497      405,    -1,   407,   408,   409,   410,   411,   412,   413,   414,
18498      415,   416,   417,   418,   419,   420,   421,   422,   423,   424,
18499      425,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18500      435,   436,   437,    -1,     3,    -1,   441,   442,   443,     8,
18501      445,   446,   447,   448,   449,   450,    15,    16,    17,    18,
18502       19,    20,    21,    22,    23,    24,    25,    -1,    27,    28,
18503       29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
18504       -1,    40,    41,    -1,    43,    44,    45,    46,    47,    -1,
18505       49,    50,    -1,    52,    53,    54,    55,    56,    -1,    -1,
18506       59,    60,    61,    62,    63,    -1,    65,    66,    67,    68,
18507       69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,    78,
18508       79,    80,    -1,    82,    83,    84,    85,    86,    87,    -1,
18509       -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,    -1,
18510       -1,   100,   101,   102,   103,   104,   105,   106,   107,   108,
18511       -1,   110,    -1,   112,   113,   114,   115,   116,   117,    -1,
18512      119,   120,   121,    -1,    -1,   124,   125,   126,   127,   128,
18513       -1,   130,   131,   132,    -1,   134,   135,   136,    -1,   138,
18514      139,   140,   141,   142,   143,   144,   145,   146,    -1,   148,
18515       -1,   150,   151,   152,   153,    -1,   155,    -1,   157,    -1,
18516       -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,   168,
18517      169,    -1,   171,   172,   173,   174,   175,    -1,   177,   178,
18518      179,   180,    -1,   182,   183,   184,   185,   186,   187,    -1,
18519      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
18520      199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,   208,
18521      209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,    -1,
18522      219,   220,   221,    -1,    -1,   224,   225,   226,   227,   228,
18523      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
18524      239,   240,    -1,   242,   243,   244,   245,    -1,   247,   248,
18525       -1,   250,    -1,   252,   253,   254,   255,   256,   257,    -1,
18526      259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,
18527       -1,   270,    -1,   272,   273,   274,   275,   276,   277,   278,
18528      279,   280,    -1,    -1,   283,   284,   285,   286,   287,   288,
18529      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
18530      299,   300,   301,   302,   303,   304,    -1,   306,   307,   308,
18531      309,   310,   311,   312,   313,   314,   315,   316,    -1,   318,
18532      319,    -1,   321,   322,   323,   324,   325,   326,   327,   328,
18533      329,   330,   331,   332,    -1,   334,   335,   336,   337,   338,
18534       -1,   340,   341,   342,   343,   344,    -1,   346,   347,   348,
18535      349,    -1,   351,   352,   353,   354,   355,   356,   357,   358,
18536      359,   360,   361,   362,    -1,   364,   365,    -1,   367,    -1,
18537      369,   370,   371,   372,   373,    -1,   375,   376,    -1,    -1,
18538      379,   380,   381,   382,   383,    -1,   385,   386,   387,   388,
18539      389,   390,   391,    -1,    -1,   394,   395,   396,   397,   398,
18540       -1,    -1,   401,   402,   403,   404,   405,   406,   407,    -1,
18541      409,    -1,   411,   412,   413,   414,    -1,    -1,   417,    -1,
18542       -1,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18543      429,   430,   431,   432,   433,   434,   435,   436,   437,    -1,
18544        3,    -1,   441,   442,   443,     8,   445,   446,   447,   448,
18545      449,   450,    15,    16,    17,    18,    19,    20,    21,    22,
18546       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
18547       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
18548       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
18549       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
18550       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
18551       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
18552       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
18553       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
18554      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
18555      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
18556       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
18557       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
18558      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
18559      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
18560      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
18561      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
18562      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
18563      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
18564       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
18565      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
18566       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
18567      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
18568      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
18569      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
18570      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
18571      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
18572      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
18573      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
18574      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
18575      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
18576      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18577       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
18578      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
18579      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18580       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
18581      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
18582      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
18583       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
18584      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
18585      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
18586      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18587      433,   434,   435,   436,   437,    -1,     3,    -1,   441,   442,
18588      443,     8,   445,   446,   447,   448,   449,   450,    15,    16,
18589       17,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
18590       27,    28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
18591       37,    38,    -1,    40,    41,    -1,    43,    44,    45,    46,
18592       47,    -1,    49,    50,    -1,    52,    53,    54,    55,    56,
18593       -1,    -1,    59,    60,    61,    62,    63,    -1,    65,    66,
18594       67,    68,    69,    -1,    -1,    -1,    73,    74,    75,    76,
18595       -1,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
18596       87,    -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,
18597       -1,    -1,    -1,   100,   101,   102,   103,   104,   105,   106,
18598      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
18599      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
18600      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
18601       -1,   138,   139,   140,   141,   142,   143,   144,   145,   146,
18602       -1,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
18603      157,    -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,
18604       -1,   168,   169,    -1,   171,   172,   173,   174,   175,    -1,
18605      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
18606      187,    -1,   189,    -1,   191,   192,   193,   194,   195,   196,
18607      197,    -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,
18608      207,   208,   209,   210,    -1,    -1,   213,   214,    -1,   216,
18609       -1,    -1,   219,   220,   221,    -1,    -1,   224,   225,   226,
18610      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
18611      237,   238,   239,   240,    -1,   242,   243,   244,   245,    -1,
18612      247,   248,    -1,   250,    -1,   252,   253,   254,   255,   256,
18613      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
18614      267,   268,    -1,   270,    -1,   272,   273,   274,   275,   276,
18615      277,   278,   279,   280,    -1,    -1,   283,   284,   285,   286,
18616      287,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
18617      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
18618      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
18619       -1,   318,   319,    -1,   321,   322,   323,   324,   325,   326,
18620      327,   328,   329,   330,   331,   332,    -1,   334,   335,   336,
18621      337,   338,    -1,   340,   341,   342,   343,   344,    -1,   346,
18622      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
18623      357,   358,   359,   360,   361,   362,    -1,   364,   365,    -1,
18624      367,    -1,   369,   370,   371,   372,   373,    -1,   375,   376,
18625       -1,    -1,   379,   380,   381,   382,   383,    -1,   385,   386,
18626      387,   388,   389,   390,   391,    -1,    -1,   394,   395,   396,
18627      397,   398,    -1,    -1,   401,   402,   403,   404,   405,   406,
18628      407,    -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,
18629      417,    -1,    -1,   420,   421,   422,   423,   424,   425,   426,
18630      427,   428,   429,   430,   431,   432,   433,   434,   435,   436,
18631      437,    -1,     3,    -1,   441,   442,   443,     8,   445,   446,
18632      447,   448,   449,   450,    15,    16,    17,    18,    19,    20,
18633       21,    22,    23,    24,    25,    -1,    27,    28,    29,    -1,
18634       -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,
18635       41,    -1,    43,    44,    45,    46,    47,    -1,    49,    50,
18636       -1,    52,    53,    54,    55,    56,    -1,    -1,    59,    60,
18637       61,    62,    63,    -1,    65,    66,    67,    68,    69,    -1,
18638       -1,    -1,    73,    74,    75,    76,    -1,    78,    79,    80,
18639       -1,    82,    83,    84,    85,    86,    87,    -1,    -1,    90,
18640       91,    92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,
18641      101,   102,   103,   104,   105,   106,   107,   108,    -1,   110,
18642       -1,   112,   113,   114,   115,   116,   117,    -1,   119,   120,
18643      121,    -1,    -1,   124,   125,   126,   127,   128,    -1,   130,
18644      131,   132,    -1,   134,   135,   136,    -1,   138,   139,   140,
18645      141,   142,   143,   144,   145,   146,    -1,   148,    -1,   150,
18646      151,   152,   153,    -1,   155,    -1,   157,    -1,    -1,    -1,
18647      161,   162,   163,    -1,   165,   166,    -1,   168,   169,    -1,
18648      171,   172,   173,   174,   175,    -1,   177,   178,   179,   180,
18649       -1,   182,   183,   184,   185,   186,   187,    -1,   189,    -1,
18650      191,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
18651      201,    -1,    -1,   204,    -1,   206,   207,   208,   209,   210,
18652       -1,    -1,   213,   214,    -1,   216,    -1,    -1,   219,   220,
18653      221,    -1,    -1,   224,   225,   226,   227,   228,   229,   230,
18654      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
18655       -1,   242,   243,   244,   245,    -1,   247,   248,    -1,   250,
18656       -1,   252,   253,   254,   255,   256,   257,    -1,   259,    -1,
18657       -1,   262,   263,   264,    -1,    -1,   267,   268,    -1,   270,
18658       -1,   272,   273,   274,   275,   276,   277,   278,   279,   280,
18659       -1,    -1,   283,   284,   285,   286,   287,   288,   289,   290,
18660       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
18661      301,   302,   303,   304,    -1,   306,   307,   308,   309,   310,
18662      311,   312,   313,   314,   315,   316,    -1,   318,   319,    -1,
18663      321,   322,   323,   324,   325,   326,   327,   328,   329,   330,
18664      331,   332,    -1,   334,   335,   336,   337,   338,    -1,   340,
18665      341,   342,   343,   344,    -1,   346,   347,   348,   349,    -1,
18666      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
18667      361,   362,    -1,   364,   365,    -1,   367,    -1,   369,   370,
18668      371,   372,   373,    -1,   375,   376,    -1,    -1,   379,   380,
18669      381,   382,   383,    -1,   385,   386,   387,   388,   389,   390,
18670      391,    -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,
18671      401,   402,   403,   404,   405,   406,   407,    -1,   409,    -1,
18672      411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,
18673      421,   422,   423,   424,   425,   426,   427,   428,   429,   430,
18674      431,   432,   433,   434,   435,   436,   437,    -1,     3,    -1,
18675      441,   442,   443,     8,   445,   446,   447,   448,   449,   450,
18676       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
18677       25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
18678       -1,    -1,    37,    38,    -1,    40,    41,    -1,    43,    44,
18679       45,    46,    47,    -1,    49,    50,    -1,    52,    53,    54,
18680       55,    56,    -1,    -1,    59,    60,    61,    62,    63,    -1,
18681       65,    66,    67,    68,    69,    -1,    -1,    -1,    73,    74,
18682       75,    76,    -1,    78,    79,    80,    -1,    82,    83,    84,
18683       85,    86,    87,    -1,    -1,    90,    91,    92,    -1,    -1,
18684       -1,    -1,    -1,    -1,    -1,   100,   101,   102,   103,   104,
18685      105,   106,   107,   108,    -1,   110,    -1,   112,   113,   114,
18686      115,   116,   117,    -1,   119,   120,   121,    -1,    -1,   124,
18687      125,   126,   127,   128,    -1,   130,   131,   132,    -1,   134,
18688      135,   136,    -1,   138,   139,   140,   141,   142,   143,   144,
18689      145,   146,    -1,   148,    -1,   150,   151,   152,   153,    -1,
18690      155,    -1,   157,    -1,    -1,    -1,   161,   162,   163,    -1,
18691      165,   166,    -1,   168,   169,    -1,   171,   172,   173,   174,
18692      175,    -1,   177,   178,   179,   180,    -1,   182,   183,   184,
18693      185,   186,   187,    -1,   189,    -1,   191,   192,   193,   194,
18694      195,   196,   197,    -1,   199,    -1,   201,    -1,    -1,   204,
18695       -1,   206,   207,   208,   209,   210,    -1,    -1,   213,   214,
18696       -1,   216,    -1,    -1,   219,   220,   221,    -1,    -1,   224,
18697      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
18698      235,   236,   237,   238,   239,   240,    -1,   242,   243,   244,
18699      245,    -1,   247,   248,    -1,   250,    -1,   252,   253,   254,
18700      255,   256,   257,    -1,   259,    -1,    -1,   262,   263,   264,
18701       -1,    -1,   267,   268,    -1,   270,    -1,   272,   273,   274,
18702      275,   276,   277,   278,   279,   280,    -1,    -1,   283,   284,
18703      285,   286,   287,   288,   289,   290,    -1,   292,   293,   294,
18704      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
18705       -1,   306,   307,   308,   309,   310,   311,   312,   313,   314,
18706      315,   316,    -1,   318,   319,    -1,   321,   322,   323,   324,
18707      325,   326,   327,   328,   329,   330,   331,   332,    -1,   334,
18708      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
18709       -1,   346,   347,   348,   349,    -1,   351,   352,   353,   354,
18710      355,   356,   357,   358,   359,   360,   361,   362,    -1,   364,
18711      365,    -1,   367,    -1,   369,   370,   371,   372,   373,    -1,
18712      375,   376,    -1,    -1,   379,   380,   381,   382,   383,    -1,
18713      385,   386,   387,   388,   389,   390,   391,    -1,    -1,   394,
18714      395,   396,   397,   398,    -1,    -1,   401,   402,   403,   404,
18715      405,   406,   407,    -1,   409,    -1,   411,   412,   413,   414,
18716       -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,   424,
18717      425,   426,   427,   428,   429,   430,   431,   432,   433,   434,
18718      435,   436,   437,    -1,     3,    -1,   441,   442,   443,     8,
18719      445,   446,   447,   448,   449,   450,    15,    16,    17,    18,
18720       19,    20,    21,    22,    23,    24,    25,    -1,    27,    28,
18721       29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
18722       -1,    40,    41,    -1,    43,    44,    45,    46,    47,    -1,
18723       49,    50,    -1,    52,    53,    54,    55,    56,    -1,    -1,
18724       59,    60,    61,    62,    63,    -1,    65,    66,    67,    68,
18725       69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,    78,
18726       79,    80,    -1,    82,    83,    84,    85,    86,    87,    -1,
18727       -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,    -1,
18728       -1,   100,   101,   102,   103,   104,   105,   106,   107,   108,
18729       -1,   110,    -1,   112,   113,   114,   115,   116,   117,    -1,
18730      119,   120,   121,    -1,    -1,   124,   125,   126,   127,   128,
18731       -1,   130,   131,   132,    -1,   134,   135,   136,    -1,   138,
18732      139,   140,   141,   142,   143,   144,   145,   146,    -1,   148,
18733       -1,   150,   151,   152,   153,    -1,   155,    -1,   157,    -1,
18734       -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,   168,
18735      169,    -1,   171,   172,   173,   174,   175,    -1,   177,   178,
18736      179,   180,    -1,   182,   183,   184,   185,   186,   187,    -1,
18737      189,    -1,   191,   192,   193,   194,   195,   196,   197,    -1,
18738      199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,   208,
18739      209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,    -1,
18740      219,   220,   221,    -1,    -1,   224,   225,   226,   227,   228,
18741      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
18742      239,   240,    -1,   242,   243,   244,   245,    -1,   247,   248,
18743       -1,   250,    -1,   252,   253,   254,   255,   256,   257,    -1,
18744      259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,   268,
18745       -1,   270,    -1,   272,   273,   274,   275,   276,   277,   278,
18746      279,   280,    -1,    -1,   283,   284,   285,   286,   287,   288,
18747      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
18748      299,   300,   301,   302,   303,   304,    -1,   306,   307,   308,
18749      309,   310,   311,   312,   313,   314,   315,   316,    -1,   318,
18750      319,    -1,   321,   322,   323,   324,   325,   326,   327,   328,
18751      329,   330,   331,   332,    -1,   334,   335,   336,   337,   338,
18752       -1,   340,   341,   342,   343,   344,    -1,   346,   347,   348,
18753      349,    -1,   351,   352,   353,   354,   355,   356,   357,   358,
18754      359,   360,   361,   362,    -1,   364,   365,    -1,   367,    -1,
18755      369,   370,   371,   372,   373,    -1,   375,   376,    -1,    -1,
18756      379,   380,   381,   382,   383,    -1,   385,   386,   387,   388,
18757      389,   390,   391,    -1,    -1,   394,   395,   396,   397,   398,
18758       -1,    -1,   401,   402,   403,   404,   405,   406,   407,    -1,
18759      409,    -1,   411,   412,   413,   414,    -1,    -1,   417,    -1,
18760       -1,   420,   421,   422,   423,   424,   425,   426,   427,   428,
18761      429,   430,   431,   432,   433,   434,   435,   436,   437,    -1,
18762        3,    -1,   441,   442,   443,     8,   445,   446,   447,   448,
18763      449,   450,    15,    16,    17,    18,    19,    20,    21,    22,
18764       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
18765       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
18766       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
18767       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
18768       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
18769       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
18770       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
18771       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
18772      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
18773      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
18774       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
18775       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
18776      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
18777      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
18778      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
18779      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
18780      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
18781      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
18782       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
18783      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
18784       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
18785      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
18786      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
18787      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
18788      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
18789      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
18790      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
18791      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
18792      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
18793      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
18794      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18795       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
18796      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
18797      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18798       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
18799      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
18800      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
18801       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
18802      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
18803      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
18804      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18805      433,   434,   435,   436,   437,     3,    -1,    -1,   441,   442,
18806      443,    -1,   445,   446,   447,   448,   449,   450,    -1,    -1,
18807       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
18808       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
18809       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
18810       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
18811       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
18812       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
18813       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
18814       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
18815       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
18816      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
18817      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
18818      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
18819      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
18820      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
18821      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
18822      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
18823      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
18824      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
18825      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
18826      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
18827      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
18828      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
18829      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
18830      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
18831      258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
18832      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
18833      278,   279,   280,    -1,   282,   283,   284,   285,   286,   287,
18834      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
18835      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
18836      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
18837      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
18838      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
18839      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
18840      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
18841      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
18842      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
18843      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
18844      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
18845      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
18846      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
18847      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
18848      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
18849        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   447,
18850       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
18851       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
18852       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
18853       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
18854       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
18855       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
18856       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
18857       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
18858       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
18859      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
18860      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
18861       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
18862       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
18863      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
18864      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
18865      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
18866      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
18867      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
18868      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
18869       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
18870      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
18871       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
18872      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
18873      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
18874      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
18875      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
18876      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
18877      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
18878      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
18879      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
18880      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
18881      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
18882       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
18883      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
18884      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
18885       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
18886      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
18887      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
18888       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
18889      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
18890      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
18891      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
18892      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
18893       -1,    -1,    -1,    -1,   447,    -1,    -1,    -1,    -1,    -1,
18894       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
18895       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
18896       38,    -1,    40,    41,    42,    43,    44,    45,    -1,    47,
18897       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
18898       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
18899       68,    -1,    -1,    71,    -1,    73,    74,    75,    76,    77,
18900       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
18901       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
18902       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
18903      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
18904       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
18905      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
18906      138,   139,   140,   141,    -1,   143,   144,   145,    -1,    -1,
18907      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
18908      158,    -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,
18909       -1,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
18910      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
18911       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
18912       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18913      208,   209,   210,    -1,    -1,   213,    -1,   215,   216,   217,
18914       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
18915      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
18916      238,   239,   240,   241,   242,   243,   244,    -1,    -1,   247,
18917      248,   249,   250,    -1,    -1,   253,   254,   255,   256,   257,
18918       -1,   259,    -1,    -1,   262,   263,   264,    -1,   266,   267,
18919      268,   269,   270,   271,    -1,   273,   274,   275,   276,   277,
18920      278,   279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,
18921      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
18922      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
18923      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
18924      318,   319,   320,   321,   322,   323,    -1,   325,   326,   327,
18925      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
18926      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
18927      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
18928      358,   359,   360,   361,    -1,    -1,   364,   365,    -1,   367,
18929      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
18930       -1,   379,   380,    -1,   382,    -1,    -1,   385,   386,   387,
18931      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
18932      398,    -1,    -1,   401,   402,   403,   404,   405,    -1,   407,
18933      408,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
18934       -1,    -1,   420,   421,   422,   423,   424,   425,    -1,    -1,
18935       -1,    -1,    -1,    -1,    -1,     3,    -1,   435,   436,   437,
18936       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   447,
18937       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
18938       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
18939       38,    -1,    40,    41,    42,    43,    44,    45,    -1,    47,
18940       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
18941       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
18942       68,    -1,    -1,    71,    -1,    73,    74,    75,    76,    77,
18943       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
18944       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
18945       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
18946      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
18947       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
18948      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
18949      138,   139,   140,   141,    -1,   143,   144,   145,    -1,    -1,
18950      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
18951      158,    -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,
18952       -1,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
18953      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
18954       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
18955       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
18956      208,   209,   210,    -1,    -1,   213,    -1,   215,   216,   217,
18957       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
18958      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
18959      238,   239,   240,   241,   242,   243,   244,    -1,    -1,   247,
18960      248,   249,   250,    -1,    -1,   253,   254,   255,   256,   257,
18961       -1,   259,    -1,    -1,   262,   263,   264,    -1,   266,   267,
18962      268,   269,   270,   271,    -1,   273,   274,   275,   276,   277,
18963      278,   279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,
18964      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
18965      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
18966      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
18967      318,   319,   320,   321,   322,   323,    -1,   325,   326,   327,
18968      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
18969      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
18970      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
18971      358,   359,   360,   361,    -1,    -1,   364,   365,    -1,   367,
18972      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
18973       -1,   379,   380,    -1,   382,    -1,    -1,   385,   386,   387,
18974      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
18975      398,    -1,    -1,   401,   402,   403,   404,   405,    -1,   407,
18976      408,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
18977       -1,    -1,   420,   421,   422,   423,   424,   425,    -1,    -1,
18978       -1,    -1,    -1,    -1,    -1,     3,    -1,   435,   436,   437,
18979       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   447,
18980       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
18981       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
18982       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
18983       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
18984       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
18985       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
18986       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
18987       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
18988       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
18989      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
18990       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
18991      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
18992      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
18993      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
18994       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
18995      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
18996      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
18997       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
18998       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
18999      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
19000       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19001      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19002      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
19003      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
19004       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19005      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
19006      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19007      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19008      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19009      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19010      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
19011      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19012      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
19013      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19014      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19015       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19016       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19017      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19018      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19019       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
19020       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19021      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19022        3,     4,     5,    -1,    -1,    -1,     9,    -1,    -1,   447,
19023       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19024       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19025       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19026       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19027       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19028       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19029       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19030       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19031       -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,
19032      103,   104,   105,   106,   107,   108,   109,   110,    -1,   112,
19033      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19034       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19035       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19036      143,   144,   145,   146,   147,   148,    -1,   150,   151,   152,
19037      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19038      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19039      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19040      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19041      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19042      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19043      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19044       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19045      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19046      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19047      253,   254,   255,   256,   257,    -1,   259,   260,    -1,   262,
19048      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19049      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19050      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19051      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19052      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19053      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19054      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19055       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
19056      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19057      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19058       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19059      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19060      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
19061       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19062      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19063      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19064      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19065      433,   434,   435,   436,   437,     3,     4,     5,    -1,    -1,
19066       -1,     9,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,
19067       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19068       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19069       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19070       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19071       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19072       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19073       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19074       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19075       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
19076      108,   109,   110,    -1,   112,   113,   114,   115,   116,   117,
19077       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19078      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19079      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
19080      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19081      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19082      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19083      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19084       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19085       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19086      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19087       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19088      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19089      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19090      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19091       -1,   259,   260,    -1,   262,   263,   264,    -1,    -1,   267,
19092      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19093      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19094      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19095      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19096      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19097      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19098      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19099      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
19100      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19101      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19102      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19103       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
19104      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19105      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19106       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19107       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19108      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19109        3,     4,     5,    -1,    -1,    -1,     9,   445,   446,    -1,
19110       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19111       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19112       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19113       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19114       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19115       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19116       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19117       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19118       -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,
19119      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19120      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19121       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19122       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19123      143,   144,   145,   146,   147,   148,    -1,   150,   151,   152,
19124      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19125      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19126      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19127      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19128      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19129      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19130      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19131       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19132      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19133      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19134      253,   254,   255,   256,   257,    -1,   259,   260,    -1,   262,
19135      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19136      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19137      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19138      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19139      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19140      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19141      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19142       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
19143      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19144      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19145       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19146      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19147      383,   384,   385,   386,   387,   388,   389,   390,   391,    -1,
19148       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19149      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19150      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19151      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19152      433,   434,   435,   436,   437,     3,    -1,     5,    -1,    -1,
19153       -1,     9,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,
19154       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19155       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19156       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19157       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19158       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19159       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19160       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19161       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19162       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
19163      108,   109,   110,    -1,   112,   113,   114,   115,   116,   117,
19164       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19165      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19166      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
19167      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19168      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19169      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19170      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19171       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19172       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19173      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19174       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19175      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19176      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19177      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19178       -1,   259,   260,    -1,   262,   263,   264,    -1,    -1,   267,
19179      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19180      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19181      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19182      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19183      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19184      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19185      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19186      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
19187      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19188      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19189      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19190       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
19191      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19192      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19193       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19194       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19195      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19196        3,    -1,    -1,    -1,    -1,    -1,     9,   445,   446,    -1,
19197       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19198       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
19199       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
19200       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
19201       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19202       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
19203       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
19204       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
19205       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
19206      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19207      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19208       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19209       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19210      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19211      153,    -1,   155,    -1,   157,    -1,   159,    -1,   161,   162,
19212      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19213      173,   174,   175,    -1,   177,   178,   179,   180,   181,   182,
19214      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
19215      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
19216       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
19217      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
19218       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19219      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
19220      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
19221      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19222      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
19223      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19224      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19225      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19226      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19227      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
19228      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19229       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
19230      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
19231      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19232       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
19233      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19234      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19235       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19236      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
19237      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19238      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19239      433,   434,   435,   436,   437,     3,     4,     5,    -1,    -1,
19240       -1,     9,   445,   446,    -1,    -1,    -1,    -1,    -1,    -1,
19241       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
19242       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
19243       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
19244       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
19245       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
19246       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
19247       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
19248       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
19249       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19250      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
19251      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
19252      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
19253      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
19254      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
19255      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
19256      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
19257      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
19258      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19259      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
19260      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
19261      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
19262      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19263      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
19264      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
19265      258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
19266      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19267      278,   279,   280,    -1,   282,   283,   284,   285,   286,   287,
19268      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
19269      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
19270      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
19271      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19272      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
19273      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19274      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
19275      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
19276      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
19277      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
19278      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
19279      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
19280      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
19281      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
19282      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19283        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19284       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19285       23,    24,    25,    26,    27,    28,    29,    30,    31,    32,
19286       33,    34,    35,    36,    37,    38,    39,    40,    41,    42,
19287       43,    44,    45,    46,    47,    48,    49,    50,    51,    52,
19288       53,    54,    55,    56,    57,    58,    59,    60,    61,    62,
19289       63,    64,    65,    66,    67,    68,    69,    70,    71,    72,
19290       73,    74,    75,    76,    77,    78,    79,    80,    81,    82,
19291       83,    84,    85,    86,    87,    88,    89,    90,    91,    92,
19292       93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
19293      103,   104,   105,   106,   107,   108,   109,   110,   111,   112,
19294      113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
19295      123,   124,   125,   126,   127,   128,   129,   130,   131,   132,
19296      133,   134,   135,   136,   137,   138,   139,   140,   141,   142,
19297      143,   144,   145,   146,   147,   148,   149,   150,   151,   152,
19298      153,   154,   155,   156,   157,   158,   159,   160,   161,   162,
19299      163,   164,   165,   166,   167,   168,   169,   170,   171,   172,
19300      173,   174,   175,   176,   177,   178,   179,   180,   181,   182,
19301      183,   184,   185,   186,   187,   188,   189,   190,   191,   192,
19302      193,   194,   195,   196,   197,   198,   199,   200,   201,   202,
19303      203,   204,   205,   206,   207,   208,   209,   210,   211,   212,
19304      213,   214,   215,   216,   217,   218,   219,   220,   221,   222,
19305      223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19306      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19307      243,   244,   245,   246,   247,   248,   249,   250,   251,   252,
19308      253,   254,   255,   256,   257,   258,   259,   260,   261,   262,
19309      263,   264,   265,   266,   267,   268,   269,   270,   271,   272,
19310      273,   274,   275,   276,   277,   278,   279,   280,    -1,   282,
19311      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
19312      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19313      303,   304,   305,   306,   307,   308,   309,   310,   311,   312,
19314      313,   314,   315,   316,   317,   318,   319,   320,   321,   322,
19315      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19316      333,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19317      343,   344,   345,   346,   347,   348,   349,   350,   351,   352,
19318      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19319      363,   364,   365,   366,   367,   368,   369,   370,   371,   372,
19320      373,   374,   375,   376,   377,   378,   379,   380,   381,   382,
19321      383,   384,   385,   386,   387,   388,   389,   390,   391,   392,
19322      393,   394,   395,   396,   397,   398,   399,   400,   401,   402,
19323      403,   404,   405,   406,   407,   408,   409,   410,   411,   412,
19324      413,   414,   415,   416,   417,   418,   419,   420,   421,   422,
19325      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19326      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
19327       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19328       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
19329       28,    29,    30,    31,    32,    33,    34,    35,    36,    37,
19330       38,    39,    40,    41,    42,    43,    44,    45,    46,    47,
19331       48,    49,    50,    51,    52,    53,    54,    55,    56,    57,
19332       58,    59,    60,    61,    62,    63,    64,    65,    66,    67,
19333       68,    69,    70,    71,    72,    73,    74,    75,    76,    77,
19334       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
19335       88,    89,    90,    91,    92,    93,    94,    95,    96,    97,
19336       98,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19337      108,   109,   110,   111,   112,   113,   114,   115,   116,   117,
19338      118,   119,   120,   121,   122,   123,   124,   125,   126,   127,
19339      128,   129,   130,   131,   132,   133,   134,   135,   136,   137,
19340      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
19341      148,   149,   150,   151,   152,   153,   154,   155,   156,   157,
19342      158,   159,   160,   161,   162,   163,   164,   165,   166,   167,
19343      168,   169,   170,   171,   172,   173,   174,   175,   176,   177,
19344      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
19345      188,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19346      198,   199,   200,   201,   202,   203,   204,   205,   206,   207,
19347      208,   209,   210,   211,   212,   213,   214,   215,   216,   217,
19348      218,   219,   220,   221,   222,   223,   224,   225,   226,   227,
19349      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19350      238,   239,   240,   241,   242,   243,   244,   245,   246,   247,
19351      248,   249,   250,   251,   252,   253,   254,   255,   256,   257,
19352      258,   259,   260,   261,   262,   263,   264,   265,   266,   267,
19353      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19354      278,   279,   280,    -1,   282,   283,   284,   285,   286,   287,
19355      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
19356      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
19357      308,   309,   310,   311,   312,   313,   314,   315,   316,   317,
19358      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19359      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
19360      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19361      348,   349,   350,   351,   352,   353,   354,   355,   356,   357,
19362      358,   359,   360,   361,   362,   363,   364,   365,   366,   367,
19363      368,   369,   370,   371,   372,   373,   374,   375,   376,   377,
19364      378,   379,   380,   381,   382,   383,   384,   385,   386,   387,
19365      388,   389,   390,   391,   392,   393,   394,   395,   396,   397,
19366      398,   399,   400,   401,   402,   403,   404,   405,   406,   407,
19367      408,   409,   410,   411,   412,   413,   414,   415,   416,   417,
19368      418,   419,   420,   421,   422,   423,   424,   425,   426,   427,
19369      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19370        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19371       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19372       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19373       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19374       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19375       53,    54,    55,    56,    -1,    58,    59,    60,    61,    62,
19376       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19377       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19378       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19379       93,    94,    95,    96,    97,    98,    99,   100,   101,   102,
19380      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19381      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19382       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19383       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19384      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19385      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19386      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19387      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19388      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19389      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19390      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19391      213,   214,   215,   216,   217,    -1,   219,   220,   221,   222,
19392      223,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19393      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19394      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19395      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19396      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19397      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19398      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19399      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19400      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19401      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19402      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19403       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19404      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19405      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19406       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19407      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19408      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19409       -1,   394,   395,   396,   397,   398,   399,    -1,   401,   402,
19410      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19411      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19412      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19413      433,   434,   435,   436,   437,     3,    -1,     5,    -1,    -1,
19414       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19415       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19416       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19417       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19418       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19419       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19420       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19421       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19422       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19423       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
19424      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19425       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19426      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19427      138,   139,   140,   141,   142,   143,   144,   145,   146,   147,
19428      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19429      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19430      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19431      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19432       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19433       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19434      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19435       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19436      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19437      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19438      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19439       -1,   259,   260,    -1,   262,   263,   264,    -1,    -1,   267,
19440      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19441      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19442      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19443      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19444      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19445      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19446      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19447      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
19448      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19449      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19450      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19451       -1,   379,   380,   381,   382,   383,   384,   385,   386,   387,
19452      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19453      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19454       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19455       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19456      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19457        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19458       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19459       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
19460       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19461       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19462       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19463       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19464       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19465       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19466       -1,    -1,    -1,    96,    -1,    -1,    99,   100,   101,   102,
19467      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19468      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19469       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19470       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19471      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19472      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19473      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19474      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19475      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19476      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19477      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19478      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19479       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19480      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19481      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19482      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19483      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19484      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19485      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19486      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19487      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19488      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19489      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19490       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19491      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19492      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19493       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19494      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19495      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19496       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19497      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19498      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19499      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19500      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
19501       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19502       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19503       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19504       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19505       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19506       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19507       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19508       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19509       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19510       -1,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19511      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19512       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19513      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19514      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19515      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19516      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19517      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19518      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19519       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19520       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19521      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19522       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19523      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19524      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19525      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19526       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19527      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19528      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19529      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19530      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19531      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19532      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19533      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19534      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19535      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19536      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19537      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19538       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19539      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19540      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
19541       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19542       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19543      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19544        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19545       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19546       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19547       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19548       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19549       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19550       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19551       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19552       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19553       -1,    -1,    -1,    96,    -1,    -1,    99,   100,   101,   102,
19554      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19555      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19556       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19557       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19558      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19559      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19560      163,    -1,   165,   166,   167,   168,   169,    -1,   171,   172,
19561      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19562      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19563      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19564      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19565      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19566       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19567      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19568      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19569      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19570      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19571      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19572      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19573      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19574      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19575      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19576      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19577       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19578      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19579      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19580       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19581      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19582      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19583       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19584      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19585      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19586      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19587      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
19588       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19589       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19590       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19591       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19592       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19593       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19594       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19595       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19596       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19597       -1,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19598      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19599       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19600      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19601      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19602      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19603      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19604      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19605      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19606       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19607       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19608      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19609       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19610      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19611      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19612      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19613       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19614      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19615      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19616      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19617      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19618      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19619      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19620      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19621      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19622      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19623      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19624      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19625       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19626      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19627      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19628       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19629       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19630      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19631        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19632       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19633       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19634       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19635       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19636       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19637       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19638       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19639       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19640       -1,    -1,    -1,    96,    -1,    -1,    99,   100,   101,   102,
19641      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19642      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19643       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19644       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19645      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19646      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19647      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19648      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19649      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19650      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19651      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19652      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19653       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19654      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19655      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19656      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19657      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19658      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19659      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19660      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19661      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19662      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19663      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19664       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19665      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19666      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19667       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19668      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19669      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19670       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19671      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19672      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19673      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19674      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
19675       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19676       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19677       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19678       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19679       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19680       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19681       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19682       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19683       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19684       -1,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19685      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19686       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19687      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19688      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19689      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19690      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19691      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19692      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19693       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19694       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19695      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19696       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19697      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19698      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19699      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19700       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19701      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19702      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19703      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19704      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19705      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19706      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19707      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19708      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19709      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19710      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19711      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19712       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19713      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19714      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19715       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19716       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19717      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19718        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19719       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19720       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19721       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19722       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19723       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19724       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19725       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19726       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19727       -1,    -1,    -1,    96,    -1,    -1,    99,   100,   101,   102,
19728      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19729      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19730       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19731       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19732      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19733      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19734      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19735      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19736      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19737      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19738      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19739      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19740       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19741      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19742      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19743      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19744      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19745      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19746      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19747      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19748      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19749      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19750      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19751       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19752      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19753      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19754       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19755      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19756      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19757       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19758      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19759      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19760      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19761      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
19762       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19763       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19764       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19765       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19766       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19767       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19768       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19769       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19770       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19771       -1,    99,   100,   101,   102,   103,   104,   105,   106,   107,
19772      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19773       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19774      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19775      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19776      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19777      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19778      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19779      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19780       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19781       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19782      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19783       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19784      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19785      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19786      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19787       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19788      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19789      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19790      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19791      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19792      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19793      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19794      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19795      338,   339,   340,   341,   342,   343,   344,   345,   346,   347,
19796      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19797      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19798      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19799       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19800      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19801      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19802       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19803       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19804      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19805        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19806       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19807       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19808       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19809       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19810       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19811       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19812       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19813       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19814       -1,    -1,    -1,    96,    -1,    -1,    99,   100,   101,   102,
19815      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19816      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19817       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19818       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19819      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19820      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19821      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19822      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19823      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19824      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19825      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19826      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19827       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19828      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19829      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19830      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19831      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19832      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19833      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19834      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19835      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19836      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19837      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19838       -1,   334,   335,   336,   337,   338,   339,   340,   341,   342,
19839      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19840      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19841       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19842      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19843      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19844       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19845      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19846      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19847      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19848      433,   434,   435,   436,   437,     3,    -1,     5,    -1,    -1,
19849       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19850       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19851       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19852       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19853       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19854       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19855       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19856       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19857       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19858       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
19859      108,   109,   110,    -1,   112,   113,   114,   115,   116,   117,
19860       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19861      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19862      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19863      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19864      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19865      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19866      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19867       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19868       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19869      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19870       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19871      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19872      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19873      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19874       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19875      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19876      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19877      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19878      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19879      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19880      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19881      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19882      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
19883      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19884      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19885      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19886       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19887      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19888      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19889       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19890       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19891      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19892        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19893       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19894       23,    24,    25,    -1,    27,    28,    29,    30,    31,    -1,
19895       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19896       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19897       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19898       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19899       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19900       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19901       -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,
19902      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19903      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19904       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19905       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19906      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19907      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19908      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19909      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19910      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19911      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19912      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
19913      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
19914       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
19915      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
19916      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
19917      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
19918      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
19919      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
19920      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
19921      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
19922      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
19923      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
19924      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
19925       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
19926      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
19927      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
19928       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
19929      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
19930      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
19931       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
19932      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
19933      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
19934      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
19935      433,   434,   435,   436,   437,     3,    -1,     5,    -1,    -1,
19936       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19937       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
19938       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
19939       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
19940       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
19941       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
19942       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
19943       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
19944       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
19945       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
19946      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
19947       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
19948      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
19949      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
19950      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
19951      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
19952      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
19953      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
19954       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
19955       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
19956      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
19957       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
19958      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
19959      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
19960      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
19961       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
19962      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
19963      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
19964      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
19965      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
19966      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
19967      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
19968      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
19969      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
19970      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
19971      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
19972      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
19973       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
19974      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
19975      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
19976       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
19977       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
19978      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
19979        3,    -1,     5,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
19980       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
19981       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
19982       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
19983       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
19984       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
19985       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
19986       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
19987       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
19988       -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,
19989      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
19990      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
19991       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
19992       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
19993      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
19994      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
19995      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
19996      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
19997      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
19998      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
19999      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
20000      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
20001       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20002      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20003      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
20004      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20005      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
20006      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20007      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20008      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20009      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20010      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
20011      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20012       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20013      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
20014      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20015       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
20016      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20017      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20018       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20019      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
20020      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20021      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20022      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20023       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20024       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
20025       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20026       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
20027       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20028       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20029       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
20030       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20031       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
20032       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20033      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20034       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20035      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20036      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20037      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20038      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
20039      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
20040      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20041       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
20042       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
20043      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
20044       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20045      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20046      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
20047      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
20048       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20049      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
20050      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20051      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20052      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20053      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20054      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
20055      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20056      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
20057      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20058      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20059      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20060       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20061      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20062      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20063       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
20064       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20065      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20066        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20067       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20068       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
20069       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
20070       43,    44,    45,    46,    47,    48,    49,    50,    -1,    52,
20071       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20072       63,    -1,    65,    66,    67,    68,    69,    -1,    71,    -1,
20073       73,    74,    75,    76,    77,    78,    79,    80,    -1,    82,
20074       83,    84,    85,    86,    87,    -1,    89,    90,    91,    92,
20075       -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,
20076      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20077      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20078       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20079       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20080      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20081      153,    -1,   155,    -1,   157,   158,    -1,   160,   161,   162,
20082      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20083      173,   174,   175,   176,   177,   178,   179,   180,    -1,   182,
20084      183,   184,   185,   186,   187,    -1,   189,   190,   191,   192,
20085      193,   194,   195,   196,   197,    -1,   199,    -1,   201,   202,
20086      203,   204,   205,   206,   207,   208,   209,   210,    -1,    -1,
20087      213,   214,   215,   216,   217,    -1,   219,   220,   221,    -1,
20088       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20089      233,   234,   235,   236,   237,   238,   239,   240,   241,   242,
20090      243,   244,   245,    -1,   247,   248,   249,   250,    -1,   252,
20091      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20092      263,   264,    -1,    -1,   267,   268,   269,   270,   271,   272,
20093      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20094      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20095      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20096      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20097      313,   314,   315,   316,    -1,   318,   319,   320,   321,   322,
20098      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20099       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20100      343,   344,   345,   346,   347,   348,   349,    -1,   351,   352,
20101      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20102       -1,   364,   365,    -1,   367,   368,   369,   370,   371,   372,
20103      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20104      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20105       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20106      403,   404,   405,   406,   407,    -1,   409,   410,   411,   412,
20107      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20108      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20109      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20110       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20111       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
20112       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20113       38,    -1,    40,    41,    42,    43,    44,    45,    46,    47,
20114       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20115       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20116       68,    69,    -1,    71,    -1,    73,    74,    75,    76,    77,
20117       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20118       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
20119       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20120      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20121       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20122      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20123      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20124      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20125      158,    -1,   160,   161,   162,   163,    -1,   165,   166,    -1,
20126      168,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
20127      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20128       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
20129       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
20130      208,   209,   210,    -1,    -1,   213,   214,   215,   216,   217,
20131       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20132      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20133      238,   239,   240,   241,   242,   243,   244,   245,    -1,   247,
20134      248,   249,   250,    -1,   252,   253,   254,   255,   256,   257,
20135       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20136      268,   269,   270,   271,   272,   273,   274,   275,   276,   277,
20137      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20138      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20139      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20140      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20141      318,   319,   320,   321,   322,   323,   324,   325,   326,   327,
20142      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20143      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
20144      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20145      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20146      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20147       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20148      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20149      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20150       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
20151       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20152      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20153        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20154       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20155       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
20156       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20157       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20158       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20159       63,    64,    65,    66,    67,    68,    69,    -1,    -1,    72,
20160       73,    74,    75,    76,    -1,    78,    79,    80,    81,    82,
20161       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20162       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20163      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20164      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20165       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20166       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20167      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20168      153,    -1,   155,   156,   157,    -1,    -1,    -1,   161,   162,
20169      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20170      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20171      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20172      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20173       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20174      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20175       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20176      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20177      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20178      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20179      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20180      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20181      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
20182      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20183      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20184      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20185      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20186       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20187      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20188      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20189       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20190      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20191      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20192      393,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20193      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20194      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20195      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20196      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20197       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20198       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
20199       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20200       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20201       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20202       -1,    59,    60,    61,    62,    63,    64,    65,    66,    67,
20203       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20204       78,    79,    80,    81,    82,    83,    84,    85,    86,    87,
20205       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20206       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20207      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20208       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20209      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20210      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20211      148,    -1,   150,   151,   152,   153,    -1,   155,   156,   157,
20212       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20213      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20214      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20215       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20216       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20217      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,   217,
20218       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20219      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20220      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20221      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20222       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20223      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20224      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20225      288,   289,   290,   291,   292,   293,   294,   295,   296,   297,
20226      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20227      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20228      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20229      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20230      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20231      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20232      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20233       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20234       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20235      388,   389,   390,   391,    -1,   393,   394,   395,   396,   397,
20236      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20237       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20238       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20239      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20240        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20241       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20242       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20243       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20244       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20245       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20246       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20247       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20248       83,    84,    85,    86,    87,    88,    -1,    90,    91,    92,
20249       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20250      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20251      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20252       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20253       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20254      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20255      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20256      163,   164,   165,   166,    -1,   168,   169,    -1,   171,   172,
20257      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20258      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20259      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20260       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20261      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20262       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20263      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20264      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20265      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20266      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20267      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20268      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20269      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20270      303,   304,   305,   306,   307,   308,   309,   310,   311,   312,
20271      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20272      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20273      333,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20274      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20275      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20276       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20277      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20278      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20279       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20280      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20281      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20282      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20283      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20284       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20285       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20286       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20287       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20288       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20289       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20290       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20291       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20292       88,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20293       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20294      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20295       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20296      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20297      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20298      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20299       -1,    -1,    -1,   161,   162,   163,   164,   165,   166,    -1,
20300      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20301      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20302       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20303       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20304      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20305       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20306      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20307      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20308      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20309       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20310      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20311      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20312      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20313      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
20314      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20315      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20316      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
20317      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20318      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20319      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20320       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20321       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20322      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20323      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20324       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20325       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20326      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20327        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20328       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20329       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
20330       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20331       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20332       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20333       63,    64,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20334       73,    74,    75,    76,    -1,    78,    79,    80,    81,    82,
20335       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20336       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20337      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20338      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20339       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20340       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20341      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20342      153,    -1,   155,   156,   157,    -1,    -1,    -1,   161,   162,
20343      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20344      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20345      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20346      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20347       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20348      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20349       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20350      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20351      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20352      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20353      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20354      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20355      283,   284,   285,   286,   287,   288,   289,   290,   291,   292,
20356      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20357      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20358      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20359      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20360       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20361      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20362      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20363       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20364      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20365      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20366      393,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20367      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20368      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20369      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20370      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20371       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20372       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20373       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20374       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20375       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20376       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20377       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20378       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20379       88,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20380       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20381      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20382       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20383      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20384      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20385      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20386       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20387      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20388      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20389       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20390       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20391      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20392       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20393      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20394      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20395      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20396       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20397      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20398      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20399      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20400      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
20401      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20402      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20403      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
20404      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20405      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20406      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20407       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20408       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20409      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20410      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20411       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20412       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20413      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20414        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20415       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20416       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20417       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20418       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20419       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20420       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20421       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20422       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20423       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20424      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20425      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20426       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20427       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20428      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20429      153,    -1,   155,   156,   157,    -1,    -1,    -1,   161,   162,
20430      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20431      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20432      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20433      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20434       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20435      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20436       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20437      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20438      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20439      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20440      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20441      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20442      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20443      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20444      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20445      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20446      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20447       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20448      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20449      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20450       -1,   364,   365,   366,   367,    -1,   369,   370,   371,   372,
20451      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20452      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20453       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20454      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20455      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20456      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20457      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20458       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20459       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
20460       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20461       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20462       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20463       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20464       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20465       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20466       88,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20467       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20468      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20469       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20470      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20471      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20472      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20473       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20474      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20475      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20476       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20477       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20478      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20479       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20480      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20481      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20482      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20483       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20484      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20485      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20486      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20487      298,   299,   300,   301,   302,   303,   304,   305,   306,   307,
20488      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20489      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20490      328,   329,   330,   331,   332,   333,   334,   335,   336,   337,
20491      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20492      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20493      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20494       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20495       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20496      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20497      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20498       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20499       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20500      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20501        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20502       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20503       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20504       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20505       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20506       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20507       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20508       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20509       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20510       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20511      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20512      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20513       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20514       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20515      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20516      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20517      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20518      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20519      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20520      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20521       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20522      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20523       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20524      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20525      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20526      253,   254,   255,   256,   257,    -1,   259,    -1,   261,   262,
20527      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20528      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20529      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20530      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20531      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20532      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20533      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20534       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20535      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20536      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20537       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20538      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20539      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20540       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20541      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20542      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20543      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20544      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20545       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20546       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
20547       28,    29,    30,    31,    -1,    -1,    -1,    -1,    -1,    37,
20548       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20549       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20550       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20551       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20552       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20553       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20554       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20555      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20556       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20557      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20558      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20559      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20560       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20561      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20562      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20563       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20564       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20565      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20566       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20567      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20568      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20569      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20570       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20571      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20572      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20573      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20574      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20575      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20576      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20577      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20578      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20579      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20580      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20581       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20582       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20583      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20584      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20585       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20586       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20587      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20588        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20589       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20590       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20591       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20592       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20593       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20594       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20595       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20596       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20597       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20598      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20599      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20600       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20601       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20602      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20603      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20604      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20605      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20606      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20607      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20608       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20609      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20610       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20611      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20612      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20613      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20614      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20615      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20616      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20617      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20618      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20619      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20620      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20621       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20622      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20623      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20624       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20625      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20626      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20627       -1,   394,   395,   396,   397,   398,   399,    -1,   401,   402,
20628      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20629      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20630      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20631      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20632       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20633       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20634       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20635       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20636       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20637       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20638       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20639       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20640       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20641       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20642      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20643       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20644      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20645      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20646      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20647       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20648      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20649      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20650       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20651       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20652      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20653       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20654      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20655      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20656      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20657       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20658      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20659      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20660      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20661      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20662      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20663      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20664      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20665      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20666      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20667      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20668       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20669       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20670      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20671      398,   399,    -1,   401,   402,   403,   404,   405,   406,   407,
20672       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20673       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20674      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20675        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20676       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20677       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20678       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20679       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20680       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20681       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20682       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20683       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20684       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20685      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20686      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20687       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20688       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20689      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20690      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20691      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20692      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20693      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20694      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20695       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20696      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20697       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20698      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20699      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20700      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20701      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20702      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20703      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20704      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20705      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20706      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20707      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20708       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20709      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20710      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20711       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20712      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20713      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20714       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20715      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20716      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20717      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20718      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20719       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20720       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20721       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20722       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20723       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20724       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20725       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20726       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20727       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20728       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20729      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20730       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20731      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20732      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20733      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20734       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20735      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20736      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20737       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20738       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20739      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20740       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20741      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20742      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20743      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20744       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20745      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20746      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20747      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20748      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20749      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20750      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20751      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20752      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20753      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20754      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20755       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20756       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20757      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20758      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20759       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20760       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20761      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20762        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20763       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20764       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20765       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20766       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20767       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20768       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20769       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20770       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20771       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20772      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20773      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20774       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20775       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20776      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20777      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20778      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20779      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20780      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20781      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20782       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20783      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20784       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20785      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20786      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20787      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20788      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20789      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20790      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20791      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20792      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20793      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20794      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20795       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20796      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20797      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20798       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20799      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20800      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20801       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20802      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20803      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20804      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20805      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20806       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20807       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20808       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20809       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20810       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20811       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20812       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20813       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20814       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20815       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20816      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20817       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20818      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20819      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20820      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20821       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20822      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20823      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20824       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20825       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20826      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20827       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20828      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20829      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20830      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20831       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20832      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20833      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20834      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20835      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20836      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20837      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20838      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20839      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20840      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20841      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20842       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20843       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20844      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20845      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20846       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20847       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20848      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20849        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20850       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20851       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
20852       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20853       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20854       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20855       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20856       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20857       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20858       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20859      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20860      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20861       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20862       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20863      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20864      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20865      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20866      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20867      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20868      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20869       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20870      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20871       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20872      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20873      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20874      253,   254,   255,   256,   257,    -1,   259,    -1,   261,   262,
20875      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20876      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20877      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20878      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20879      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20880      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20881      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20882       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20883      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20884      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20885       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20886      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20887      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20888       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20889      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20890      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20891      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20892      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20893       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20894       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20895       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20896       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20897       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20898       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20899       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20900       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20901       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20902       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20903      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20904       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20905      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20906      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20907      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20908       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20909      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20910      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20911       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20912       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
20913      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
20914       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
20915      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
20916      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
20917      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
20918       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
20919      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
20920      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
20921      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
20922      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
20923      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
20924      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
20925      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
20926      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
20927      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
20928      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
20929       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
20930       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
20931      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
20932      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
20933       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
20934       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
20935      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
20936        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20937       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
20938       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
20939       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
20940       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
20941       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
20942       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
20943       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
20944       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
20945       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
20946      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
20947      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
20948       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
20949       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
20950      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
20951      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
20952      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
20953      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
20954      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
20955      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
20956       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
20957      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
20958       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
20959      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
20960      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
20961      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
20962      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
20963      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
20964      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
20965      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
20966      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
20967      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
20968      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
20969       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
20970      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
20971      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
20972       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
20973      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
20974      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
20975       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
20976      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
20977      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
20978      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
20979      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
20980       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
20981       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
20982       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
20983       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
20984       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
20985       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
20986       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
20987       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
20988       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
20989       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
20990      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
20991       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
20992      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
20993      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
20994      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
20995       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
20996      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
20997      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
20998       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
20999       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21000      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21001       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21002      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21003      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21004      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21005       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21006      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21007      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21008      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21009      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21010      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21011      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21012      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21013      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21014      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21015      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21016       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21017       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21018      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21019      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21020       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21021       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21022      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21023        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21024       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21025       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
21026       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21027       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21028       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21029       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21030       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21031       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21032       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21033      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21034      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21035       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21036       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21037      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21038      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21039      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21040      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21041      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21042      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21043       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21044      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21045       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21046      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21047      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21048      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21049      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21050      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21051      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21052      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21053      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21054      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21055      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21056       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21057      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21058      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21059       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21060      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21061      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21062       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21063      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21064      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21065      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21066      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21067       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21068       18,    19,    20,    21,    22,    23,    24,    25,    26,    27,
21069       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21070       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21071       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21072       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21073       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21074       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21075       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21076       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21077      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21078       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21079      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21080      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21081      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21082       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21083      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21084      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21085       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21086       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21087      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21088       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21089      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21090      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21091      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21092       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21093      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21094      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21095      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21096      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21097      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21098      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21099      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21100      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21101      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21102      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21103       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21104       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21105      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21106      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21107       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21108       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21109      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21110        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21111       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21112       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21113       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,
21114       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21115       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21116       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21117       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21118       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21119       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21120      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21121      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21122       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21123       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21124      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21125      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21126      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21127      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21128      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21129      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21130       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21131      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21132       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21133      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21134      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21135      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21136      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21137      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21138      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21139      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21140      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21141      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21142      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21143       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21144      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21145      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21146       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21147      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21148      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21149       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21150      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21151      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21152      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21153      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21154       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21155       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21156       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21157       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21158       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21159       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21160       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21161       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21162       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21163       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21164      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21165       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21166      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21167      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21168      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21169       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21170      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21171      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21172       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21173       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21174      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21175       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21176      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21177      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21178      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21179       -1,   259,    -1,   261,   262,   263,   264,    -1,    -1,   267,
21180      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21181      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21182      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21183      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21184      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21185      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21186      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21187      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21188      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21189      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21190       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21191       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21192      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21193      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21194       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21195       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21196      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21197        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21198       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21199       23,    24,    25,    26,    27,    28,    29,    -1,    -1,    -1,
21200       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21201       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21202       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21203       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21204       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21205       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21206       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21207      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21208      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21209       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21210       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21211      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21212      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21213      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21214      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21215      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21216      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21217       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21218      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21219       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21220      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21221      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21222      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21223      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21224      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21225      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21226      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21227      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21228      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21229      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21230       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21231      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21232      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21233       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21234      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21235      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21236       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21237      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21238      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21239      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21240      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21241       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21242       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21243       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21244       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21245       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21246       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21247       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21248       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21249       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21250       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21251      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21252       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21253      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21254      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21255      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21256       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21257      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21258      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21259       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21260       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21261      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21262       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21263      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21264      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21265      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21266       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21267      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21268      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21269      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21270      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21271      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21272      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21273      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21274      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21275      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21276      358,   359,   360,   361,   362,    -1,   364,   365,   366,   367,
21277       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21278       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21279      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21280      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21281       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21282       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21283      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21284        3,    -1,     5,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21285       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21286       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21287       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21288       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21289       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21290       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21291       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21292       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21293       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21294      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21295      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21296       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21297       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21298      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21299      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21300      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21301      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21302      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21303      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21304       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21305      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21306       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21307      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21308      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21309      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21310      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21311      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21312      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21313      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21314      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21315      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21316      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21317       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21318      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21319      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21320       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21321      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21322      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21323       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21324      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21325      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21326      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21327      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21328       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21329       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21330       28,    29,    -1,    -1,    -1,    -1,    -1,    35,    -1,    37,
21331       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21332       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21333       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21334       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21335       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21336       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21337       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21338      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21339       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21340      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21341      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21342      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21343       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21344      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21345      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21346       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21347       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21348      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21349       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21350      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21351      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21352      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21353       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21354      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21355      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21356      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21357      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21358      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21359      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21360      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21361      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21362      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21363      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21364       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21365       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21366      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21367      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21368       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21369       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21370      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21371        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21372       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21373       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21374       -1,    -1,    35,    -1,    37,    38,    -1,    40,    41,    -1,
21375       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21376       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21377       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21378       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21379       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21380       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21381      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21382      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21383       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21384       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21385      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21386      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21387      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21388      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21389      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21390      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21391       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21392      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21393       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21394      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21395      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21396      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21397      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21398      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21399      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21400      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21401      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21402      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21403      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21404       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21405      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21406      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21407       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21408      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21409      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21410       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21411      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21412      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21413      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21414      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21415       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21416       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21417       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21418       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21419       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21420       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21421       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21422       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21423       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21424       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21425      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21426       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21427      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21428      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21429      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21430       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21431      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21432      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21433       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21434       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21435      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21436       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21437      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21438      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21439      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21440       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21441      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21442      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21443      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21444      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21445      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21446      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21447      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21448      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21449      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21450      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21451       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21452       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21453      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21454      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21455       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21456       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21457      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21458        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21459       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21460       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21461       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21462       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21463       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21464       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21465       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21466       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21467       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21468      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21469      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21470       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21471       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21472      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21473      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21474      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21475      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21476      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21477      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21478       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21479      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21480       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21481      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21482      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21483      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21484      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21485      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21486      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21487      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21488      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21489      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21490      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21491       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21492      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21493      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21494       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21495      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21496      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21497       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21498      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21499      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21500      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21501      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21502       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21503       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21504       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21505       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21506       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21507       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21508       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21509       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21510       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21511       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21512      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21513       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21514      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21515      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21516      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21517       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21518      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21519      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21520       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21521       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21522      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21523       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21524      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21525      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21526      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21527       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21528      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21529      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21530      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21531      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21532      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21533      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21534      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21535      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21536      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21537      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21538       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21539       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21540      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21541      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21542       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21543       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21544      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21545        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21546       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21547       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21548       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21549       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21550       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21551       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21552       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21553       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21554       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21555      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21556      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21557       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21558       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21559      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21560      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21561      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21562      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21563      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21564      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21565       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21566      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21567       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21568      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21569      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21570      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21571      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21572      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21573      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21574      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21575      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21576      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21577      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21578       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21579      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21580      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21581       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21582      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21583      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21584       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21585      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21586      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21587      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21588      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21589       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21590       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21591       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21592       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21593       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21594       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21595       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21596       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21597       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21598       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21599      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21600       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21601      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21602      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21603      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21604       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21605      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21606      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21607       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21608       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21609      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21610       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21611      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21612      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21613      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21614       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21615      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21616      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21617      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21618      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21619      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21620      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21621      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21622      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21623      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21624      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21625       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21626       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21627      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21628      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21629       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21630       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21631      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21632        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21633       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21634       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21635       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21636       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21637       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21638       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21639       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21640       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21641       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21642      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21643      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21644       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21645       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21646      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21647      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21648      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21649      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21650      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21651      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21652       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21653      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21654       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21655      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21656      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21657      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21658      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21659      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21660      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21661      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21662      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21663      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21664      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21665       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21666      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21667      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21668       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21669      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21670      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21671       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21672      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21673      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21674      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21675      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21676       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21677       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21678       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21679       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21680       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21681       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21682       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21683       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21684       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21685       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21686      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21687       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21688      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21689      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21690      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21691       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21692      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21693      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21694       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21695       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21696      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21697       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21698      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21699      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21700      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21701       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21702      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21703      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21704      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21705      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21706      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21707      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21708      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21709      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21710      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21711      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21712       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21713       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21714      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21715      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21716       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21717       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21718      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21719        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21720       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21721       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21722       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21723       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21724       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21725       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21726       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21727       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21728       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21729      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21730      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21731       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21732       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21733      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21734      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21735      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21736      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21737      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21738      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21739       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21740      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21741       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21742      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21743      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21744      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21745      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21746      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21747      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21748      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21749      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21750      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21751      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21752       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21753      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21754      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21755       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21756      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21757      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21758       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21759      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21760      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21761      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21762      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21763       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21764       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21765       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21766       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21767       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21768       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21769       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21770       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21771       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21772       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21773      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21774       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21775      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21776      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21777      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21778       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21779      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21780      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21781       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21782       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21783      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21784       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21785      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21786      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21787      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21788       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21789      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21790      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21791      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21792      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21793      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21794      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21795      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21796      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21797      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21798      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21799       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21800       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21801      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21802      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21803       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21804       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21805      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21806        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21807       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21808       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21809       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21810       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21811       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21812       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21813       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21814       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21815       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21816      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21817      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21818       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21819       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21820      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21821      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21822      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21823      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21824      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21825      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21826       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21827      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21828       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21829      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21830      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21831      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21832      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21833      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21834      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21835      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21836      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21837      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21838      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21839       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21840      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21841      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21842       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21843      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21844      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21845       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21846      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21847      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21848      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21849      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21850       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21851       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21852       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21853       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21854       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21855       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21856       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21857       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21858       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21859       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21860      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21861       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21862      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21863      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21864      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21865       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21866      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21867      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21868       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21869       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21870      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21871       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21872      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21873      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21874      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21875       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21876      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21877      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21878      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21879      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21880      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21881      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21882      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21883      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21884      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21885      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21886       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21887       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21888      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21889      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21890       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21891       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21892      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21893        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21894       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21895       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21896       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21897       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21898       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21899       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21900       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21901       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21902       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21903      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21904      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21905       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21906       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21907      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21908      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21909      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21910      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21911      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21912      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
21913       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
21914      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
21915       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
21916      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
21917      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
21918      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
21919      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
21920      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
21921      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
21922      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
21923      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
21924      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
21925      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
21926       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
21927      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
21928      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
21929       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
21930      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
21931      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
21932       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
21933      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
21934      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
21935      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
21936      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
21937       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21938       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
21939       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
21940       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
21941       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
21942       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
21943       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
21944       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
21945       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
21946       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
21947      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
21948       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
21949      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
21950      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
21951      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
21952       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
21953      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
21954      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
21955       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
21956       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
21957      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
21958       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
21959      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
21960      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
21961      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
21962       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
21963      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
21964      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
21965      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
21966      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
21967      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
21968      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
21969      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
21970      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
21971      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
21972      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
21973       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
21974       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
21975      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
21976      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
21977       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
21978       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
21979      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
21980        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
21981       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
21982       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
21983       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
21984       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
21985       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
21986       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
21987       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
21988       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
21989       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
21990      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
21991      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
21992       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
21993       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
21994      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
21995      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
21996      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
21997      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
21998      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
21999      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22000       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22001      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22002       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22003      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22004      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22005      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22006      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22007      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22008      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22009      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22010      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22011      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22012      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22013       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22014      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22015      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22016       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22017      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22018      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22019       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22020      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22021      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22022      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22023      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22024       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22025       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22026       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22027       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22028       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22029       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22030       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22031       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22032       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22033       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22034      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22035       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22036      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22037      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22038      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22039       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22040      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22041      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22042       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22043       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22044      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22045       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22046      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22047      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22048      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22049       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22050      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22051      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22052      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22053      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22054      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22055      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22056      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22057      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22058      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22059      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22060       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22061       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22062      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22063      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22064       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22065       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22066      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22067        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22068       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22069       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22070       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22071       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22072       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22073       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22074       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22075       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22076       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22077      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22078      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22079       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22080       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22081      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22082      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22083      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22084      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22085      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22086      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22087       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22088      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22089       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22090      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22091      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22092      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22093      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22094      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22095      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22096      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22097      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22098      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22099      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22100       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22101      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22102      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22103       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22104      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22105      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22106       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22107      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22108      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22109      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22110      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22111       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22112       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22113       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22114       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22115       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22116       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22117       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22118       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22119       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22120       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22121      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22122       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22123      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22124      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22125      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22126       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22127      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22128      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22129       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22130       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22131      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22132       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22133      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22134      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22135      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22136       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22137      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22138      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22139      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22140      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22141      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22142      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22143      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22144      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22145      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22146      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22147       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22148       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22149      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22150      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22151       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22152       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22153      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22154        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22155       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22156       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22157       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22158       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22159       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22160       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22161       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22162       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22163       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22164      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22165      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22166       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22167       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22168      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22169      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22170      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22171      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22172      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22173      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22174       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22175      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22176       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22177      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22178      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22179      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22180      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22181      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22182      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22183      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22184      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22185      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22186      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22187       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22188      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22189      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22190       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22191      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22192      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22193       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22194      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22195      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22196      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22197      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22198       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22199       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22200       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22201       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22202       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22203       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22204       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22205       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22206       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22207       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22208      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22209       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22210      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22211      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22212      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22213       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22214      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22215      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22216       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22217       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22218      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22219       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22220      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22221      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22222      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22223       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22224      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22225      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22226      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22227      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22228      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22229      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22230      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22231      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22232      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22233      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22234       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22235       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22236      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22237      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22238       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22239       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22240      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22241        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22242       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22243       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22244       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22245       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22246       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22247       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22248       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22249       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22250       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22251      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22252      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22253       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22254       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22255      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22256      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22257      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22258      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22259      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22260      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22261       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22262      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22263       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22264      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22265      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22266      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22267      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22268      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22269      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22270      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22271      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22272      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22273      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22274       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22275      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22276      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22277       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22278      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22279      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22280       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22281      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22282      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22283      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22284      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22285       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22286       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22287       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22288       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22289       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22290       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22291       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22292       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22293       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22294       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22295      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22296       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22297      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22298      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22299      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22300       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22301      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22302      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22303       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22304       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22305      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22306       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22307      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22308      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22309      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22310       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22311      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22312      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22313      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22314      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22315      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22316      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22317      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22318      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22319      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22320      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22321       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22322       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22323      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22324      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22325       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22326       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22327      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22328        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22329       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22330       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22331       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22332       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22333       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22334       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22335       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22336       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22337       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22338      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22339      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22340       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22341       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22342      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22343      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22344      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22345      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22346      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22347      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22348       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22349      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22350       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22351      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22352      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22353      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22354      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22355      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22356      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22357      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22358      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22359      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22360      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22361       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22362      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22363      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22364       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22365      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22366      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22367       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22368      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22369      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22370      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22371      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22372       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22373       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22374       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22375       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22376       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22377       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22378       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22379       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22380       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22381       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22382      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22383       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22384      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22385      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22386      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22387       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22388      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22389      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22390       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22391       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22392      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22393       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22394      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22395      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22396      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22397       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22398      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22399      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22400      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22401      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22402      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22403      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22404      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22405      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22406      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22407      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22408       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22409       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22410      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22411      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22412       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22413       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22414      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22415        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22416       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22417       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22418       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22419       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22420       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22421       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22422       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22423       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22424       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22425      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22426      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22427       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22428       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22429      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22430      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22431      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22432      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22433      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22434      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22435       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22436      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22437       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22438      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22439      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22440      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22441      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22442      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22443      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22444      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22445      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22446      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22447      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22448       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22449      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22450      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22451       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22452      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22453      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22454       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22455      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22456      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22457      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22458      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22459       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22460       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22461       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22462       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22463       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22464       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22465       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22466       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22467       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22468       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22469      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22470       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22471      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22472      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22473      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22474       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22475      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22476      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22477       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22478       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22479      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22480       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22481      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22482      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22483      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22484       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22485      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22486      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22487      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22488      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22489      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22490      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22491      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22492      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22493      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22494      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22495       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22496       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22497      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22498      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22499       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22500       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22501      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22502        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22503       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22504       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22505       -1,    -1,    35,    -1,    37,    38,    -1,    40,    41,    -1,
22506       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22507       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22508       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22509       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22510       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22511       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22512      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22513      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22514       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22515       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22516      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22517      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22518      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22519      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22520      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22521      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22522       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22523      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22524       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22525      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22526      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22527      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22528      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22529      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22530      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22531      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22532      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22533      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22534      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22535       -1,   334,   335,   336,   337,   338,    -1,    -1,   341,   342,
22536      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22537      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22538       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22539      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22540      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22541       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22542      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22543      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22544      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22545      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22546       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22547       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22548       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22549       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22550       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22551       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22552       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22553       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22554       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22555       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22556      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22557       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22558      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22559      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22560      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22561       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22562      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22563      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22564       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22565       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22566      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22567       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22568      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22569      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22570      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22571       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22572      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22573      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22574      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22575      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22576      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22577      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22578      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22579      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22580      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22581      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22582       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22583       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22584      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22585      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22586       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22587       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22588      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22589        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22590       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22591       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22592       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22593       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22594       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22595       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22596       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22597       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22598       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22599      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22600      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22601       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22602       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22603      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22604      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22605      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22606      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22607      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22608      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22609       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22610      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22611       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22612      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22613      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22614      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22615      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22616      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22617      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22618      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22619      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22620      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22621      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22622       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22623      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22624      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22625       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22626      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22627      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22628       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22629      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22630      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22631      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22632      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22633       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22634       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22635       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22636       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22637       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22638       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22639       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22640       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22641       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22642       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22643      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22644       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22645      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22646      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22647      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22648       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22649      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22650      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22651       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22652       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22653      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22654       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22655      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22656      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22657      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22658       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22659      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22660      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22661      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22662      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22663      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22664      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22665      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22666      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22667      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22668      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22669       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22670       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22671      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22672      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22673       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22674       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22675      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22676        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22677       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22678       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22679       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22680       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22681       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22682       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22683       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22684       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22685       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22686      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22687      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22688       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22689       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22690      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22691      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22692      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22693      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22694      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22695      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22696       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22697      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22698       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22699      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22700      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22701      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22702      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22703      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22704      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22705      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22706      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22707      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22708      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22709       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22710      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22711      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22712       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22713      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22714      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22715       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22716      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22717      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22718      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22719      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22720       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22721       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22722       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22723       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22724       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22725       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22726       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22727       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22728       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22729       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22730      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22731       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22732      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22733      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22734      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22735       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22736      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22737      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22738       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22739       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22740      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22741       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22742      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22743      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22744      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22745       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22746      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22747      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22748      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22749      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22750      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22751      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22752      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22753      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22754      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22755      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22756       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22757       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22758      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22759      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22760       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22761       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22762      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22763        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22764       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22765       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22766       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22767       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22768       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22769       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22770       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22771       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22772       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22773      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22774      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22775       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22776       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22777      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22778      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22779      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22780      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22781      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22782      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22783       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22784      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22785       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22786      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22787      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22788      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22789      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22790      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22791      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22792      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22793      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22794      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22795      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22796       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22797      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22798      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22799       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22800      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22801      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22802       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22803      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22804      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22805      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22806      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22807       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22808       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22809       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22810       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22811       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22812       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22813       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22814       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22815       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22816       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22817      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22818       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22819      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22820      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22821      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22822       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22823      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22824      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22825       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22826       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22827      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22828       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22829      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22830      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22831      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22832       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22833      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22834      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22835      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22836      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22837      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22838      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22839      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22840      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22841      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22842      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22843       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22844       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22845      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22846      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22847       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22848       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22849      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22850        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22851       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22852       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22853       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22854       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22855       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22856       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22857       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22858       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22859       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22860      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22861      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22862       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22863       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22864      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22865      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22866      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22867      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22868      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22869      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22870       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22871      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22872       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22873      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22874      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22875      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22876      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22877      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22878      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22879      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22880      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22881      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22882      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22883       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22884      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22885      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22886       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22887      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22888      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22889       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22890      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22891      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22892      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22893      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22894       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22895       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22896       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22897       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22898       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22899       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22900       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22901       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22902       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22903       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22904      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22905       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22906      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22907      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22908      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22909       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22910      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22911      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22912       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
22913       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
22914      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
22915       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
22916      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
22917      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
22918      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
22919       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
22920      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
22921      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
22922      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
22923      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
22924      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
22925      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
22926      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
22927      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
22928      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
22929      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
22930       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
22931       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
22932      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
22933      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
22934       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
22935       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
22936      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
22937        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22938       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
22939       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
22940       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
22941       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
22942       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
22943       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
22944       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
22945       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
22946       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
22947      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
22948      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
22949       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
22950       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
22951      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
22952      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
22953      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
22954      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
22955      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
22956      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
22957       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
22958      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
22959       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
22960      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
22961      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
22962      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
22963      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
22964      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
22965      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
22966      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
22967      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
22968      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
22969      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
22970       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
22971      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
22972      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
22973       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
22974      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
22975      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
22976       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
22977      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
22978      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
22979      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
22980      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
22981       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
22982       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
22983       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
22984       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
22985       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
22986       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
22987       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
22988       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
22989       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
22990       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
22991      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
22992       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
22993      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
22994      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
22995      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
22996       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
22997      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
22998      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
22999       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
23000       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
23001      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
23002       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
23003      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
23004      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
23005      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
23006       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
23007      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
23008      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
23009      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
23010      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
23011      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
23012      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
23013      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
23014      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
23015      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
23016      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
23017       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
23018       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
23019      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
23020      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
23021       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
23022       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
23023      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
23024        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23025       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
23026       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
23027       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
23028       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
23029       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
23030       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
23031       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
23032       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
23033       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
23034      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
23035      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
23036       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
23037       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
23038      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
23039      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
23040      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
23041      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
23042      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
23043      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
23044       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
23045      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
23046       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
23047      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
23048      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
23049      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
23050      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
23051      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
23052      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
23053      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
23054      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
23055      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
23056      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23057       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
23058      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
23059      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
23060       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
23061      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
23062      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
23063       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
23064      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
23065      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
23066      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
23067      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
23068       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23069       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
23070       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
23071       38,    -1,    40,    41,    -1,    43,    44,    45,    46,    47,
23072       -1,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
23073       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
23074       68,    69,    -1,    -1,    -1,    73,    74,    75,    76,    -1,
23075       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
23076       -1,    -1,    90,    91,    92,    -1,    -1,    -1,    -1,    -1,
23077       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
23078      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
23079       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
23080      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
23081      138,   139,   140,   141,   142,   143,   144,   145,   146,    -1,
23082      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
23083       -1,    -1,    -1,   161,   162,   163,    -1,   165,   166,    -1,
23084      168,   169,    -1,   171,   172,   173,   174,   175,    -1,   177,
23085      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
23086       -1,   189,    -1,   191,   192,   193,   194,   195,   196,   197,
23087       -1,   199,    -1,   201,    -1,    -1,   204,    -1,   206,   207,
23088      208,   209,   210,    -1,    -1,   213,   214,    -1,   216,    -1,
23089       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
23090      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
23091      238,   239,   240,    -1,   242,   243,   244,   245,    -1,   247,
23092      248,    -1,   250,    -1,   252,   253,   254,   255,   256,   257,
23093       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
23094      268,    -1,   270,    -1,   272,   273,   274,   275,   276,   277,
23095      278,   279,   280,    -1,    -1,   283,   284,   285,   286,   287,
23096      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
23097      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
23098      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
23099      318,   319,    -1,   321,   322,   323,   324,   325,   326,   327,
23100      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
23101      338,    -1,   340,   341,   342,   343,   344,    -1,   346,   347,
23102      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
23103      358,   359,   360,   361,   362,    -1,   364,   365,    -1,   367,
23104       -1,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
23105       -1,   379,   380,   381,   382,   383,    -1,   385,   386,   387,
23106      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
23107      398,    -1,    -1,   401,   402,   403,   404,   405,   406,   407,
23108       -1,   409,    -1,   411,   412,   413,   414,    -1,    -1,   417,
23109       -1,    -1,   420,   421,   422,   423,   424,   425,   426,   427,
23110      428,   429,   430,   431,   432,   433,   434,   435,   436,   437,
23111        3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23112       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    21,    22,
23113       23,    24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,
23114       -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,    -1,
23115       43,    44,    45,    46,    47,    -1,    49,    50,    -1,    52,
23116       53,    54,    55,    56,    -1,    -1,    59,    60,    61,    62,
23117       63,    -1,    65,    66,    67,    68,    69,    -1,    -1,    -1,
23118       73,    74,    75,    76,    -1,    78,    79,    80,    -1,    82,
23119       83,    84,    85,    86,    87,    -1,    -1,    90,    91,    92,
23120       -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,   102,
23121      103,   104,   105,   106,   107,   108,    -1,   110,    -1,   112,
23122      113,   114,   115,   116,   117,    -1,   119,   120,   121,    -1,
23123       -1,   124,   125,   126,   127,   128,    -1,   130,   131,   132,
23124       -1,   134,   135,   136,    -1,   138,   139,   140,   141,   142,
23125      143,   144,   145,   146,    -1,   148,    -1,   150,   151,   152,
23126      153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,   162,
23127      163,    -1,   165,   166,    -1,   168,   169,    -1,   171,   172,
23128      173,   174,   175,    -1,   177,   178,   179,   180,    -1,   182,
23129      183,   184,   185,   186,   187,    -1,   189,    -1,   191,   192,
23130      193,   194,   195,   196,   197,    -1,   199,    -1,   201,    -1,
23131       -1,   204,    -1,   206,   207,   208,   209,   210,    -1,    -1,
23132      213,   214,    -1,   216,    -1,    -1,   219,   220,   221,    -1,
23133       -1,   224,   225,   226,   227,   228,   229,   230,   231,   232,
23134      233,   234,   235,   236,   237,   238,   239,   240,    -1,   242,
23135      243,   244,   245,    -1,   247,   248,    -1,   250,    -1,   252,
23136      253,   254,   255,   256,   257,    -1,   259,    -1,    -1,   262,
23137      263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,   272,
23138      273,   274,   275,   276,   277,   278,   279,   280,    -1,    -1,
23139      283,   284,   285,   286,   287,   288,   289,   290,    -1,   292,
23140      293,   294,   295,   296,   297,   298,   299,   300,   301,   302,
23141      303,   304,    -1,   306,   307,   308,   309,   310,   311,   312,
23142      313,   314,   315,   316,    -1,   318,   319,    -1,   321,   322,
23143      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23144       -1,   334,   335,   336,   337,   338,    -1,   340,   341,   342,
23145      343,   344,    -1,   346,   347,   348,   349,    -1,   351,   352,
23146      353,   354,   355,   356,   357,   358,   359,   360,   361,   362,
23147       -1,   364,   365,    -1,   367,    -1,   369,   370,   371,   372,
23148      373,    -1,   375,   376,    -1,    -1,   379,   380,   381,   382,
23149      383,    -1,   385,   386,   387,   388,   389,   390,   391,    -1,
23150       -1,   394,   395,   396,   397,   398,    -1,    -1,   401,   402,
23151      403,   404,   405,   406,   407,    -1,   409,    -1,   411,   412,
23152      413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,
23153      423,   424,   425,   426,   427,   428,   429,   430,   431,   432,
23154      433,   434,   435,   436,   437,     3,    -1,    -1,    -1,    -1,
23155       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23156       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
23157       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
23158       38,    -1,    40,    41,    42,    43,    44,    45,    -1,    47,
23159       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
23160       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
23161       68,    -1,    -1,    71,    -1,    73,    74,    75,    76,    77,
23162       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
23163       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
23164       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
23165      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
23166       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
23167      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
23168      138,   139,   140,   141,    -1,   143,   144,   145,    -1,    -1,
23169      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
23170      158,    -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,
23171       -1,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
23172      178,   179,   180,   181,   182,   183,   184,   185,   186,   187,
23173       -1,   189,   190,   191,   192,   193,   194,   195,   196,   197,
23174       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
23175      208,   209,   210,    -1,    -1,   213,    -1,   215,   216,   217,
23176       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
23177      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
23178      238,   239,   240,   241,   242,   243,   244,    -1,    -1,   247,
23179      248,   249,   250,    -1,    -1,   253,   254,   255,   256,   257,
23180       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
23181      268,   269,   270,   271,    -1,   273,   274,   275,   276,   277,
23182      278,   279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,
23183      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
23184      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
23185      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
23186      318,   319,   320,   321,   322,   323,    -1,   325,   326,   327,
23187      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
23188      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
23189      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
23190      358,   359,   360,   361,    -1,    -1,   364,   365,    -1,   367,
23191      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
23192       -1,   379,   380,    -1,   382,    -1,    -1,   385,   386,   387,
23193      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
23194      398,    -1,    -1,   401,   402,   403,   404,   405,    -1,   407,
23195      408,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
23196       -1,    -1,   420,   421,   422,   423,   424,   425,     3,    -1,
23197       -1,    -1,    -1,    -1,    -1,    -1,    -1,   435,   436,   437,
23198       -1,    -1,    -1,    18,    19,    20,    21,    22,    23,    24,
23199       25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
23200       -1,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
23201       45,    -1,    47,    48,    49,    50,    -1,    52,    53,    54,
23202       55,    56,    -1,    -1,    59,    60,    61,    62,    63,    -1,
23203       65,    66,    67,    68,    -1,    -1,    71,    -1,    73,    74,
23204       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
23205       85,    86,    87,    -1,    89,    90,    91,    92,    -1,    -1,
23206       -1,    96,    -1,    -1,    -1,   100,   101,   102,   103,   104,
23207      105,   106,   107,   108,    -1,   110,    -1,   112,   113,   114,
23208      115,   116,   117,    -1,   119,   120,   121,    -1,    -1,   124,
23209      125,   126,   127,   128,    -1,   130,   131,   132,    -1,   134,
23210      135,   136,    -1,   138,   139,   140,   141,    -1,   143,   144,
23211      145,    -1,    -1,   148,    -1,   150,   151,   152,   153,    -1,
23212      155,    -1,   157,   158,    -1,   160,   161,   162,   163,    -1,
23213      165,    -1,    -1,    -1,   169,    -1,   171,   172,   173,   174,
23214      175,   176,   177,   178,   179,   180,    -1,   182,   183,   184,
23215      185,   186,   187,    -1,   189,   190,    -1,   192,   193,   194,
23216      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23217      205,   206,   207,   208,   209,   210,    -1,    -1,   213,    -1,
23218      215,   216,   217,    -1,   219,   220,   221,    -1,    -1,   224,
23219      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
23220      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23221       -1,    -1,   247,   248,   249,   250,   251,    -1,   253,   254,
23222      255,   256,   257,    -1,   259,    -1,    -1,   262,   263,   264,
23223       -1,    -1,   267,    -1,   269,   270,   271,    -1,   273,   274,
23224      275,   276,   277,   278,   279,   280,    -1,    -1,   283,   284,
23225       -1,   286,    -1,   288,   289,   290,    -1,   292,   293,   294,
23226      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
23227       -1,   306,   307,   308,   309,   310,   311,   312,   313,   314,
23228      315,   316,    -1,   318,   319,   320,   321,   322,   323,    -1,
23229      325,   326,   327,   328,   329,   330,   331,   332,    -1,   334,
23230      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
23231      345,   346,   347,   348,   349,    -1,   351,   352,   353,   354,
23232      355,   356,   357,   358,   359,   360,   361,    -1,    -1,   364,
23233      365,   366,   367,   368,   369,   370,   371,   372,   373,    -1,
23234      375,   376,    -1,    -1,   379,   380,    -1,   382,    -1,    -1,
23235      385,   386,   387,   388,   389,   390,   391,    -1,    -1,   394,
23236      395,   396,   397,   398,    -1,    -1,   401,   402,   403,   404,
23237      405,    -1,   407,    -1,   409,   410,   411,   412,   413,   414,
23238       -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,   424,
23239      425,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23240      435,   436,   437,    -1,    -1,    -1,    18,    19,    20,    21,
23241       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
23242       -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,
23243       -1,    43,    44,    45,    46,    47,    -1,    49,    50,    -1,
23244       52,    53,    54,    55,    56,    -1,    -1,    59,    60,    61,
23245       62,    63,    -1,    65,    66,    67,    68,    69,    -1,    -1,
23246       -1,    73,    74,    75,    76,    -1,    78,    79,    80,    -1,
23247       82,    83,    84,    85,    86,    87,    -1,    -1,    90,    91,
23248       92,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   100,   101,
23249      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
23250      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
23251       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
23252      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
23253      142,   143,   144,   145,   146,    -1,   148,    -1,   150,   151,
23254      152,   153,    -1,   155,    -1,   157,    -1,    -1,    -1,   161,
23255      162,   163,    -1,   165,   166,    -1,   168,   169,    -1,   171,
23256      172,   173,   174,   175,    -1,   177,   178,   179,   180,    -1,
23257      182,   183,   184,   185,   186,   187,    -1,   189,    -1,   191,
23258      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
23259       -1,    -1,   204,    -1,   206,   207,   208,   209,   210,    -1,
23260       -1,   213,   214,    -1,   216,    -1,    -1,   219,   220,   221,
23261       -1,    -1,   224,   225,   226,   227,   228,   229,   230,   231,
23262      232,   233,   234,   235,   236,   237,   238,   239,   240,    -1,
23263      242,   243,   244,   245,    -1,   247,   248,    -1,   250,    -1,
23264      252,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
23265      262,   263,   264,    -1,    -1,   267,   268,    -1,   270,    -1,
23266      272,   273,   274,   275,   276,   277,    -1,   279,   280,    -1,
23267       -1,   283,   284,   285,   286,   287,   288,   289,   290,    -1,
23268      292,   293,   294,   295,   296,   297,    -1,   299,   300,   301,
23269      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
23270      312,   313,   314,   315,   316,    -1,   318,   319,    -1,   321,
23271      322,   323,   324,    -1,   326,   327,   328,   329,   330,   331,
23272      332,    -1,   334,   335,   336,   337,   338,    -1,   340,   341,
23273      342,   343,   344,    -1,   346,   347,   348,   349,    -1,   351,
23274      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
23275      362,    -1,   364,   365,    -1,   367,    -1,   369,   370,   371,
23276      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,   381,
23277      382,   383,    -1,   385,   386,   387,   388,   389,   390,   391,
23278       -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,   401,
23279      402,   403,   404,   405,   406,   407,    -1,   409,    -1,   411,
23280      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
23281      422,   423,   424,   425,   426,   427,   428,   429,   430,   431,
23282      432,   433,   434,   435,   436,   437,     3,    -1,    -1,    -1,
23283       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23284       -1,    18,    19,    20,    21,    22,    23,    24,    25,    -1,
23285       27,    28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23286       37,    38,    -1,    40,    41,    42,    43,    44,    45,    -1,
23287       47,    48,    49,    50,    -1,    52,    53,    54,    55,    56,
23288       -1,    -1,    59,    60,    61,    62,    63,    -1,    65,    66,
23289       67,    68,    -1,    -1,    71,    -1,    73,    74,    75,    76,
23290       77,    78,    79,    80,    -1,    82,    83,    84,    85,    86,
23291       87,    -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,
23292       -1,    -1,    -1,   100,   101,   102,   103,   104,   105,   106,
23293      107,   108,    -1,   110,    -1,   112,   113,   114,   115,   116,
23294      117,    -1,   119,   120,   121,    -1,    -1,   124,   125,   126,
23295      127,   128,    -1,   130,   131,   132,    -1,   134,   135,   136,
23296       -1,   138,   139,   140,   141,    -1,   143,   144,   145,    -1,
23297       -1,   148,    -1,   150,   151,   152,   153,    -1,   155,    -1,
23298      157,   158,    -1,   160,   161,   162,   163,    -1,   165,    -1,
23299       -1,    -1,   169,    -1,   171,   172,   173,   174,   175,   176,
23300      177,   178,   179,   180,    -1,   182,   183,   184,   185,   186,
23301      187,    -1,   189,   190,    -1,   192,   193,   194,   195,   196,
23302      197,    -1,   199,    -1,   201,   202,   203,   204,   205,   206,
23303      207,   208,   209,   210,    -1,    -1,   213,    -1,   215,   216,
23304      217,    -1,   219,   220,   221,    -1,    -1,   224,   225,   226,
23305      227,   228,   229,   230,   231,   232,   233,   234,   235,   236,
23306      237,   238,   239,   240,   241,   242,   243,   244,   245,    -1,
23307      247,   248,   249,   250,    -1,    -1,   253,   254,   255,   256,
23308      257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,
23309      267,    -1,   269,   270,   271,    -1,   273,   274,   275,   276,
23310      277,   278,   279,   280,    -1,    -1,   283,   284,    -1,   286,
23311       -1,   288,   289,   290,    -1,   292,   293,   294,   295,   296,
23312      297,   298,   299,   300,   301,   302,   303,   304,    -1,   306,
23313      307,   308,   309,   310,   311,   312,   313,   314,   315,   316,
23314       -1,   318,   319,   320,   321,   322,   323,    -1,   325,   326,
23315      327,   328,   329,   330,   331,   332,    -1,   334,   335,   336,
23316      337,   338,    -1,   340,   341,   342,   343,   344,   345,   346,
23317      347,   348,   349,    -1,   351,   352,   353,   354,   355,   356,
23318      357,   358,   359,   360,   361,    -1,    -1,   364,   365,    -1,
23319      367,   368,   369,   370,   371,   372,   373,    -1,   375,   376,
23320       -1,    -1,   379,   380,    -1,   382,    -1,    -1,   385,   386,
23321      387,   388,   389,   390,   391,    -1,    -1,   394,   395,   396,
23322      397,   398,    -1,    -1,   401,   402,   403,   404,   405,    -1,
23323      407,    -1,   409,   410,   411,   412,   413,   414,    -1,    -1,
23324      417,    -1,    -1,   420,   421,   422,   423,   424,   425,     3,
23325       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   435,   436,
23326      437,    -1,    -1,    -1,    18,    19,    20,    21,    22,    23,
23327       24,    25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,
23328       -1,    -1,    -1,    37,    38,    -1,    40,    41,    42,    43,
23329       44,    45,    -1,    47,    48,    49,    50,    -1,    52,    53,
23330       54,    55,    56,    -1,    -1,    59,    60,    61,    62,    63,
23331       -1,    65,    66,    67,    68,    -1,    -1,    71,    -1,    73,
23332       74,    75,    76,    77,    78,    79,    80,    -1,    82,    83,
23333       84,    85,    86,    87,    -1,    89,    90,    91,    92,    -1,
23334       -1,    -1,    96,    -1,    -1,    -1,   100,   101,   102,   103,
23335      104,   105,   106,   107,   108,    -1,   110,    -1,   112,   113,
23336      114,   115,   116,   117,    -1,   119,   120,   121,    -1,    -1,
23337      124,   125,   126,   127,   128,    -1,   130,   131,   132,    -1,
23338      134,   135,   136,    -1,   138,   139,   140,   141,    -1,   143,
23339      144,   145,    -1,    -1,   148,    -1,   150,   151,   152,   153,
23340       -1,   155,    -1,   157,   158,    -1,   160,   161,   162,   163,
23341       -1,   165,    -1,    -1,    -1,   169,    -1,   171,   172,   173,
23342      174,   175,   176,   177,   178,   179,   180,    -1,   182,   183,
23343      184,   185,   186,   187,    -1,   189,   190,    -1,   192,   193,
23344      194,   195,   196,   197,    -1,   199,    -1,   201,   202,   203,
23345      204,   205,   206,   207,   208,   209,   210,    -1,    -1,   213,
23346       -1,   215,   216,   217,    -1,   219,   220,   221,    -1,    -1,
23347      224,   225,   226,   227,   228,   229,   230,   231,   232,   233,
23348      234,   235,   236,   237,   238,   239,   240,   241,   242,   243,
23349      244,   245,    -1,   247,   248,   249,   250,    -1,    -1,   253,
23350      254,   255,   256,   257,    -1,   259,    -1,    -1,   262,   263,
23351      264,    -1,    -1,   267,    -1,   269,   270,   271,    -1,   273,
23352      274,   275,   276,   277,   278,   279,   280,    -1,    -1,   283,
23353      284,    -1,   286,    -1,   288,   289,   290,    -1,   292,   293,
23354      294,   295,   296,   297,   298,   299,   300,   301,   302,   303,
23355      304,    -1,   306,   307,   308,   309,   310,   311,   312,   313,
23356      314,   315,   316,    -1,   318,   319,   320,   321,   322,   323,
23357       -1,   325,   326,   327,   328,   329,   330,   331,   332,    -1,
23358      334,   335,   336,   337,   338,    -1,   340,   341,   342,   343,
23359      344,   345,   346,   347,   348,   349,    -1,   351,   352,   353,
23360      354,   355,   356,   357,   358,   359,   360,   361,    -1,    -1,
23361      364,   365,    -1,   367,   368,   369,   370,   371,   372,   373,
23362       -1,   375,   376,    -1,    -1,   379,   380,    -1,   382,    -1,
23363       -1,   385,   386,   387,   388,   389,   390,   391,    -1,    -1,
23364      394,   395,   396,   397,   398,    -1,    -1,   401,   402,   403,
23365      404,   405,    -1,   407,    -1,   409,   410,   411,   412,   413,
23366      414,    -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,
23367      424,   425,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23368       -1,   435,   436,   437,    -1,    -1,    -1,    18,    19,    20,
23369       21,    22,    23,    24,    25,    -1,    27,    28,    29,    -1,
23370       -1,    -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,
23371       41,    42,    43,    44,    45,    -1,    47,    48,    49,    50,
23372       -1,    52,    53,    54,    55,    56,    -1,    -1,    59,    60,
23373       61,    62,    63,    -1,    65,    66,    67,    68,    -1,    -1,
23374       71,    -1,    73,    74,    75,    76,    77,    78,    79,    80,
23375       -1,    82,    83,    84,    85,    86,    87,    -1,    89,    90,
23376       91,    92,    -1,    -1,    -1,    96,    -1,    -1,    -1,   100,
23377      101,   102,   103,   104,   105,   106,   107,   108,    -1,   110,
23378       -1,   112,   113,   114,   115,   116,   117,    -1,   119,   120,
23379      121,    -1,    -1,   124,   125,   126,   127,   128,    -1,   130,
23380      131,   132,    -1,   134,   135,   136,    -1,   138,   139,   140,
23381      141,    -1,   143,   144,   145,    -1,    -1,   148,    -1,   150,
23382      151,   152,   153,    -1,   155,    -1,   157,   158,    -1,   160,
23383      161,   162,   163,    -1,   165,    -1,    -1,    -1,   169,    -1,
23384      171,   172,   173,   174,   175,   176,   177,   178,   179,   180,
23385       -1,   182,   183,   184,   185,   186,   187,    -1,   189,   190,
23386       -1,   192,   193,   194,   195,   196,   197,    -1,   199,    -1,
23387      201,   202,   203,   204,   205,   206,   207,   208,   209,   210,
23388       -1,    -1,   213,    -1,   215,   216,   217,    -1,   219,   220,
23389      221,    -1,    -1,   224,   225,   226,   227,   228,   229,   230,
23390      231,   232,   233,   234,   235,   236,   237,   238,   239,   240,
23391      241,   242,   243,   244,    -1,    -1,   247,   248,   249,   250,
23392       -1,    -1,   253,   254,   255,   256,   257,    -1,   259,    -1,
23393       -1,   262,   263,   264,    -1,    -1,   267,    -1,   269,   270,
23394      271,    -1,   273,   274,   275,   276,   277,   278,   279,   280,
23395       -1,    -1,   283,   284,    -1,   286,    -1,   288,   289,   290,
23396       -1,   292,   293,   294,   295,   296,   297,   298,   299,   300,
23397      301,   302,   303,   304,    -1,   306,   307,   308,   309,   310,
23398      311,   312,   313,   314,   315,   316,    -1,   318,   319,   320,
23399      321,   322,   323,    -1,   325,   326,   327,   328,   329,   330,
23400      331,   332,    -1,   334,   335,   336,   337,   338,    -1,   340,
23401      341,   342,   343,   344,   345,   346,   347,   348,   349,    -1,
23402      351,   352,   353,   354,   355,   356,   357,   358,   359,   360,
23403      361,    -1,    -1,   364,   365,    -1,   367,   368,   369,   370,
23404      371,   372,   373,    -1,   375,   376,    -1,    -1,   379,   380,
23405       -1,   382,    -1,    -1,   385,   386,   387,   388,   389,   390,
23406      391,    -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,
23407      401,   402,   403,   404,   405,    -1,   407,    -1,   409,   410,
23408      411,   412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,
23409      421,   422,   423,   424,   425,     3,    -1,    -1,    -1,    -1,
23410       -1,    -1,    -1,    -1,   435,   436,   437,    -1,    -1,    -1,
23411       18,    19,    20,    21,    22,    23,    24,    25,    -1,    27,
23412       28,    29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,
23413       38,    -1,    40,    41,    42,    43,    44,    45,    -1,    47,
23414       48,    49,    50,    -1,    52,    53,    54,    55,    56,    -1,
23415       -1,    59,    60,    61,    62,    63,    -1,    65,    66,    67,
23416       68,    -1,    -1,    71,    -1,    73,    74,    75,    76,    77,
23417       78,    79,    80,    -1,    82,    83,    84,    85,    86,    87,
23418       -1,    89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,
23419       -1,    -1,   100,   101,   102,   103,   104,   105,   106,   107,
23420      108,    -1,   110,    -1,   112,   113,   114,   115,   116,   117,
23421       -1,   119,   120,   121,    -1,    -1,   124,   125,   126,   127,
23422      128,    -1,   130,   131,   132,    -1,   134,   135,   136,    -1,
23423      138,   139,   140,   141,    -1,   143,   144,   145,    -1,    -1,
23424      148,    -1,   150,   151,   152,   153,    -1,   155,    -1,   157,
23425      158,    -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,
23426       -1,   169,    -1,   171,   172,   173,   174,   175,   176,   177,
23427      178,   179,   180,    -1,   182,   183,   184,   185,   186,   187,
23428       -1,   189,   190,    -1,   192,   193,   194,   195,   196,   197,
23429       -1,   199,    -1,   201,   202,   203,   204,   205,   206,   207,
23430      208,   209,   210,    -1,    -1,   213,    -1,   215,   216,   217,
23431       -1,   219,   220,   221,    -1,    -1,   224,   225,   226,   227,
23432      228,   229,   230,   231,   232,   233,   234,   235,   236,   237,
23433      238,   239,   240,   241,   242,   243,   244,    -1,    -1,   247,
23434      248,   249,   250,    -1,    -1,   253,   254,   255,   256,   257,
23435       -1,   259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,
23436       -1,   269,   270,   271,    -1,   273,   274,   275,   276,   277,
23437      278,   279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,
23438      288,   289,   290,    -1,   292,   293,   294,   295,   296,   297,
23439      298,   299,   300,   301,   302,   303,   304,    -1,   306,   307,
23440      308,   309,   310,   311,   312,   313,   314,   315,   316,    -1,
23441      318,   319,   320,   321,   322,   323,    -1,   325,   326,   327,
23442      328,   329,   330,   331,   332,    -1,   334,   335,   336,   337,
23443      338,    -1,   340,   341,   342,   343,   344,   345,   346,   347,
23444      348,   349,    -1,   351,   352,   353,   354,   355,   356,   357,
23445      358,   359,   360,   361,    -1,    -1,   364,   365,    -1,   367,
23446      368,   369,   370,   371,   372,   373,    -1,   375,   376,    -1,
23447       -1,   379,   380,    -1,   382,    -1,    -1,   385,   386,   387,
23448      388,   389,   390,   391,    -1,    -1,   394,   395,   396,   397,
23449      398,    -1,    -1,   401,   402,   403,   404,   405,    -1,   407,
23450       -1,   409,   410,   411,   412,   413,   414,    -1,    -1,   417,
23451       -1,    -1,   420,   421,   422,   423,   424,   425,     3,    -1,
23452       -1,    -1,    -1,    -1,    -1,    -1,    -1,   435,   436,   437,
23453       -1,    -1,    -1,    18,    19,    20,    21,    22,    23,    24,
23454       25,    -1,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,
23455       -1,    -1,    37,    38,    -1,    40,    41,    42,    43,    44,
23456       45,    -1,    47,    48,    49,    50,    -1,    52,    53,    54,
23457       55,    56,    -1,    -1,    59,    60,    61,    62,    63,    -1,
23458       65,    66,    67,    68,    -1,    -1,    71,    -1,    73,    74,
23459       75,    76,    77,    78,    79,    80,    -1,    82,    83,    84,
23460       85,    86,    87,    -1,    89,    90,    91,    92,    -1,    -1,
23461       -1,    96,    -1,    -1,    -1,   100,   101,   102,   103,   104,
23462      105,   106,   107,   108,    -1,   110,    -1,   112,   113,   114,
23463      115,   116,   117,    -1,   119,   120,   121,    -1,    -1,   124,
23464      125,   126,   127,   128,    -1,   130,   131,   132,    -1,   134,
23465      135,   136,    -1,   138,   139,   140,   141,    -1,   143,   144,
23466      145,    -1,    -1,   148,    -1,   150,   151,   152,   153,    -1,
23467      155,    -1,   157,   158,    -1,   160,   161,   162,   163,    -1,
23468      165,    -1,    -1,    -1,   169,    -1,   171,   172,   173,   174,
23469      175,   176,   177,   178,   179,   180,    -1,   182,   183,   184,
23470      185,   186,   187,    -1,   189,   190,    -1,   192,   193,   194,
23471      195,   196,   197,    -1,   199,    -1,   201,   202,   203,   204,
23472      205,   206,   207,   208,   209,   210,    -1,    -1,   213,    -1,
23473      215,   216,   217,    -1,   219,   220,   221,    -1,    -1,   224,
23474      225,   226,   227,   228,   229,   230,   231,   232,   233,   234,
23475      235,   236,   237,   238,   239,   240,   241,   242,   243,   244,
23476       -1,    -1,   247,   248,   249,   250,    -1,    -1,   253,   254,
23477      255,   256,   257,    -1,   259,    -1,    -1,   262,   263,   264,
23478       -1,    -1,   267,    -1,   269,   270,   271,    -1,   273,   274,
23479      275,   276,   277,   278,   279,   280,    -1,    -1,   283,   284,
23480       -1,   286,    -1,   288,   289,   290,    -1,   292,   293,   294,
23481      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
23482       -1,   306,   307,   308,   309,   310,   311,   312,   313,   314,
23483      315,   316,    -1,   318,   319,   320,   321,   322,   323,    -1,
23484      325,   326,   327,   328,   329,   330,   331,   332,    -1,   334,
23485      335,   336,   337,   338,    -1,   340,   341,   342,   343,   344,
23486      345,   346,   347,   348,   349,    -1,   351,   352,   353,   354,
23487      355,   356,   357,   358,   359,   360,   361,    -1,    -1,   364,
23488      365,    -1,   367,   368,   369,   370,   371,   372,   373,    -1,
23489      375,   376,    -1,    -1,   379,   380,    -1,   382,    -1,    -1,
23490      385,   386,   387,   388,   389,   390,   391,    -1,    -1,   394,
23491      395,   396,   397,   398,    -1,    -1,   401,   402,   403,   404,
23492      405,    -1,   407,    -1,   409,   410,   411,   412,   413,   414,
23493       -1,    -1,   417,    -1,    -1,   420,   421,   422,   423,   424,
23494      425,     3,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
23495      435,   436,   437,    -1,    -1,    -1,    18,    19,    20,    21,
23496       22,    23,    24,    25,    -1,    27,    28,    29,    -1,    -1,
23497       -1,    -1,    -1,    -1,    -1,    37,    38,    -1,    40,    41,
23498       42,    43,    44,    45,    -1,    47,    48,    49,    50,    -1,
23499       52,    53,    54,    55,    56,    -1,    -1,    59,    60,    61,
23500       62,    63,    -1,    65,    66,    67,    68,    -1,    -1,    71,
23501       -1,    73,    74,    75,    76,    77,    78,    79,    80,    -1,
23502       82,    83,    84,    85,    86,    87,    -1,    89,    90,    91,
23503       92,    -1,    -1,    -1,    96,    -1,    -1,    -1,   100,   101,
23504      102,   103,   104,   105,   106,   107,   108,    -1,   110,    -1,
23505      112,   113,   114,   115,   116,   117,    -1,   119,   120,   121,
23506       -1,    -1,   124,   125,   126,   127,   128,    -1,   130,   131,
23507      132,    -1,   134,   135,   136,    -1,   138,   139,   140,   141,
23508       -1,   143,   144,   145,    -1,    -1,   148,    -1,   150,   151,
23509      152,   153,    -1,   155,    -1,   157,   158,    -1,   160,   161,
23510      162,   163,    -1,   165,    -1,    -1,    -1,   169,    -1,   171,
23511      172,   173,   174,   175,   176,   177,   178,   179,   180,    -1,
23512      182,   183,   184,   185,   186,   187,    -1,   189,   190,    -1,
23513      192,   193,   194,   195,   196,   197,    -1,   199,    -1,   201,
23514      202,   203,   204,   205,   206,   207,   208,   209,   210,    -1,
23515       -1,   213,    -1,   215,   216,   217,    -1,   219,   220,   221,
23516       -1,    -1,   224,   225,   226,   227,   228,   229,   230,   231,
23517      232,   233,   234,   235,   236,   237,   238,   239,   240,   241,
23518      242,   243,   244,    -1,    -1,   247,   248,   249,   250,    -1,
23519       -1,   253,   254,   255,   256,   257,    -1,   259,    -1,    -1,
23520      262,   263,   264,    -1,    -1,   267,    -1,   269,   270,   271,
23521       -1,   273,   274,   275,   276,   277,   278,   279,   280,    -1,
23522       -1,   283,   284,    -1,   286,    -1,   288,   289,   290,    -1,
23523      292,   293,   294,   295,   296,   297,   298,   299,   300,   301,
23524      302,   303,   304,    -1,   306,   307,   308,   309,   310,   311,
23525      312,   313,   314,   315,   316,    -1,   318,   319,   320,   321,
23526      322,   323,    -1,   325,   326,   327,   328,   329,   330,   331,
23527      332,    -1,   334,   335,   336,   337,   338,    -1,   340,   341,
23528      342,   343,   344,   345,   346,   347,   348,   349,    -1,   351,
23529      352,   353,   354,   355,   356,   357,   358,   359,   360,   361,
23530       -1,    -1,   364,   365,    -1,   367,   368,   369,   370,   371,
23531      372,   373,    -1,   375,   376,    -1,    -1,   379,   380,    -1,
23532      382,    -1,    -1,   385,   386,   387,   388,   389,   390,   391,
23533       -1,    -1,   394,   395,   396,   397,   398,    -1,    -1,   401,
23534      402,   403,   404,   405,    -1,   407,    -1,   409,   410,   411,
23535      412,   413,   414,    -1,    -1,   417,    -1,    -1,   420,   421,
23536      422,   423,   424,   425,     3,    -1,    -1,    -1,    -1,    -1,
23537       -1,    -1,    -1,   435,   436,   437,    -1,    -1,    -1,    18,
23538       19,    20,    21,    22,    23,    24,    25,    -1,    27,    28,
23539       29,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    37,    38,
23540       -1,    40,    41,    42,    43,    44,    45,    -1,    47,    48,
23541       49,    50,    -1,    52,    53,    54,    55,    56,    -1,    -1,
23542       59,    60,    61,    62,    63,    -1,    65,    66,    67,    68,
23543       -1,    -1,    71,    -1,    73,    74,    75,    76,    77,    78,
23544       79,    80,    -1,    82,    83,    84,    85,    86,    87,    -1,
23545       89,    90,    91,    92,    -1,    -1,    -1,    96,    -1,    -1,
23546       -1,   100,   101,   102,   103,   104,   105,   106,   107,   108,
23547       -1,   110,    -1,   112,   113,   114,   115,   116,   117,    -1,
23548      119,   120,   121,    -1,    -1,   124,   125,   126,   127,   128,
23549       -1,   130,   131,   132,    -1,   134,   135,   136,    -1,   138,
23550      139,   140,   141,    -1,   143,   144,   145,    -1,    -1,   148,
23551       -1,   150,   151,   152,   153,    -1,   155,    -1,   157,   158,
23552       -1,   160,   161,   162,   163,    -1,   165,    -1,    -1,    -1,
23553      169,    -1,   171,   172,   173,   174,   175,   176,   177,   178,
23554      179,   180,    -1,   182,   183,   184,   185,   186,   187,    -1,
23555      189,   190,    -1,   192,   193,   194,   195,   196,   197,    -1,
23556      199,    -1,   201,   202,   203,   204,   205,   206,   207,   208,
23557      209,   210,    -1,    -1,   213,    -1,   215,   216,   217,    -1,
23558      219,   220,   221,    -1,    -1,   224,   225,   226,   227,   228,
23559      229,   230,   231,   232,   233,   234,   235,   236,   237,   238,
23560      239,   240,   241,   242,   243,   244,    -1,    -1,   247,   248,
23561      249,   250,    -1,    -1,   253,   254,   255,   256,   257,    -1,
23562      259,    -1,    -1,   262,   263,   264,    -1,    -1,   267,    -1,
23563      269,   270,   271,    -1,   273,   274,   275,   276,   277,   278,
23564      279,   280,    -1,    -1,   283,   284,    -1,   286,    -1,   288,
23565      289,   290,    -1,   292,   293,   294,   295,   296,   297,   298,
23566      299,   300,   301,   302,   303,   304,    -1,   306,   307,   308,
23567      309,   310,   311,   312,   313,   314,   315,   316,    -1,   318,
23568      319,   320,   321,   322,   323,    -1,   325,   326,   327,   328,
23569      329,   330,   331,   332,    -1,   334,   335,   336,   337,   338,
23570       -1,   340,   341,    -1,   343,   344,   345,   346,   347,   348,
23571      349,    -1,   351,   352,   353,   354,   355,   356,   357,   358,
23572      359,   360,   361,    -1,    -1,   364,   365,    -1,   367,   368,
23573      369,   370,   371,   372,   373,    -1,   375,   376,    -1,    -1,
23574      379,   380,    -1,   382,    -1,    -1,   385,   386,   387,   388,
23575      389,   390,   391,    -1,    -1,   394,   395,   396,   397,   398,
23576       -1,    -1,   401,   402,   403,   404,   405,    -1,   407,    -1,
23577      409,   410,   411,   412,   413,   414,    -1,    -1,   417,    -1,
23578       -1,   420,   421,   422,   423,   424,   425,     3,    -1,    -1,
23579       -1,    -1,    -1,    -1,    -1,    -1,   435,   436,   437,    -1,
23580       -1,    -1,    18,    19,    20,    21,    22,    23,    24,    25,
23581       -1,    27,    28,    29,    -1,    -1,    -1,    -1,    -1,    -1,
23582       -1,    37,    38,    -1,    40,    41,    42,    43,    44,    45,
23583       -1,    -1,    48,    -1,    -1,    -1,    52,    53,    54,    55,
23584       56,    -1,    -1,    59,    60,    -1,    -1,    63,    -1,    65,
23585       66,    67,    68,    -1,    -1,    71,    -1,    73,    74,    75,
23586       76,    77,    78,    79,    80,    -1,    82,    83,    84,    85,
23587       86,    87,    -1,    89,    90,    91,    92,    -1,    -1,    -1,
23588       96,    -1,    -1,    -1,   100,   101,   102,   103,   104,   105,
23589       -1,    -1,   108,    -1,   110,    -1,   112,   113,   114,   115,
23590      116,   117,    -1,   119,   120,   121,    -1,    -1,   124,   125,
23591      126,   127,   128,    -1,   130,   131,   132,    -1,   134,   135,
23592      136,    -1,   138,   139,   140,   141,    -1,   143,   144,   145,
23593       -1,    -1,   148,    -1,   150,   151,    -1,   153,    -1,   155,
23594       -1,   157,   158,    -1,   160,   161,   162,   163,    -1,   165,
23595       -1,    -1,    -1,   169,    -1,   171,   172,   173,   174,   175,
23596      176,   177,   178,   179,   180,    -1,   182,   183,   184,   185,
23597      186,   187,    -1,   189,   190,    -1,   192,   193,   194,   195,
23598       -1,    -1,    -1,    -1,    -1,   201,   202,   203,   204,   205,
23599      206,   207,   208,   209,   210,    -1,    -1,   213,    -1,   215,
23600      216,   217,    -1,   219,   220,   221,    -1,    -1,   224,   225,
23601      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
23602      236,   237,   238,   239,    -1,   241,    -1,   243,   244,    -1,
23603       -1,   247,   248,   249,   250,    -1,    -1,   253,    -1,   255,
23604      256,   257,    -1,   259,    -1,    -1,   262,   263,   264,    -1,
23605       -1,   267,    -1,   269,   270,   271,    -1,   273,   274,   275,
23606      276,   277,   278,   279,   280,    -1,    -1,   283,   284,    -1,
23607      286,    -1,   288,   289,   290,    -1,   292,   293,   294,   295,
23608      296,   297,   298,   299,    -1,   301,   302,   303,   304,    -1,
23609      306,   307,   308,   309,   310,   311,   312,   313,   314,   315,
23610      316,    -1,   318,   319,   320,   321,   322,   323,    -1,   325,
23611      326,   327,   328,   329,   330,   331,   332,    -1,   334,   335,
23612      336,   337,   338,    -1,   340,   341,    -1,   343,   344,   345,
23613      346,   347,    -1,   349,    -1,   351,   352,   353,   354,   355,
23614      356,   357,   358,   359,   360,   361,    -1,    -1,   364,   365,
23615       -1,   367,   368,   369,   370,   371,   372,   373,    -1,    -1,
23616       -1,    -1,    -1,   379,   380,    -1,   382,    -1,    -1,   385,
23617      386,   387,   388,   389,   390,   391,    -1,    -1,   394,   395,
23618      396,   397,   398,    -1,    -1,   401,   402,   403,   404,   405,
23619       -1,    -1,    -1,   409,   410,   411,   412,   413,   414,    -1,
23620       -1,   417,    -1,    -1,   420,   421,   422,   423,   424,   425,
23621       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,   435,
23622      436,   437
23623 };
23624 
23625 /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
23626    symbol of state STATE-NUM.  */
23627 static const yytype_uint16 yystos[] =
23628 {
23629        0,    18,    28,    30,    31,    45,    65,    67,    68,    73,
23630       75,    86,    88,   105,   108,   121,   123,   127,   133,   141,
23631      143,   149,   164,   180,   219,   220,   225,   237,   248,   281,
23632      289,   301,   306,   307,   309,   314,   319,   322,   327,   332,
23633      333,   340,   344,   354,   366,   385,   395,   401,   406,   419,
23634      440,   454,   461,   462,   463,   464,   470,   471,   473,   474,
23635      475,   476,   477,   478,   479,   481,   482,   486,   498,   503,
23636      504,   507,   508,   509,   521,   524,   525,   541,   578,   581,
23637      584,   585,   586,   593,   599,   601,   603,   604,   607,   610,
23638      611,   615,   616,   625,   629,   630,   631,   632,   633,   636,
23639      638,   639,   640,   641,   642,   649,   650,   663,   664,   668,
23640      670,   671,   672,   682,   684,   691,   692,   695,   696,   697,
23641      698,   699,   705,   707,   710,   714,   718,   719,   729,   730,
23642      733,   738,   749,   772,   775,   776,   777,   780,   783,   785,
23643      787,   789,   790,   795,   796,   799,   800,   801,   804,   805,
23644      812,   813,   815,   816,   817,   822,   824,   825,   831,   832,
23645      833,   834,   835,   836,   838,   839,   841,   842,   844,   847,
23646      848,   853,   859,   862,   864,   865,   873,   875,   880,   887,
23647      891,   892,   893,   894,   895,   896,   899,   934,   379,   422,
23648      818,    25,    71,    85,   103,   109,   125,   136,   144,   156,
23649      161,   167,   184,   209,   230,   262,   284,   294,   321,   326,
23650      328,   334,   337,   365,   366,   369,   373,   382,   387,   399,
23651      412,   600,   818,     3,    18,    19,    20,    21,    22,    23,
23652       24,    25,    26,    27,    28,    29,    37,    38,    40,    41,
23653       43,    44,    45,    46,    47,    49,    50,    52,    53,    54,
23654       55,    56,    59,    60,    61,    62,    63,    65,    66,    67,
23655       68,    69,    73,    74,    75,    76,    78,    79,    80,    82,
23656       83,    84,    85,    86,    87,    90,    91,    92,   100,   101,
23657      102,   103,   104,   105,   106,   107,   108,   110,   112,   113,
23658      114,   115,   116,   117,   119,   120,   121,   124,   125,   126,
23659      127,   128,   130,   131,   132,   134,   135,   136,   138,   139,
23660      140,   141,   142,   143,   144,   145,   146,   148,   150,   151,
23661      152,   153,   155,   157,   161,   162,   163,   165,   166,   168,
23662      169,   171,   172,   173,   174,   175,   177,   178,   179,   180,
23663      182,   183,   184,   185,   186,   187,   189,   191,   192,   193,
23664      194,   195,   196,   197,   199,   201,   204,   206,   207,   208,
23665      209,   210,   213,   214,   216,   219,   220,   221,   224,   225,
23666      226,   227,   228,   229,   230,   231,   232,   233,   234,   235,
23667      236,   237,   238,   239,   240,   242,   243,   244,   245,   247,
23668      248,   250,   252,   253,   254,   255,   256,   257,   259,   262,
23669      263,   264,   267,   268,   270,   272,   273,   274,   275,   276,
23670      277,   278,   279,   280,   283,   284,   285,   286,   287,   288,
23671      289,   290,   292,   293,   294,   295,   296,   297,   298,   299,
23672      300,   301,   302,   303,   304,   306,   307,   308,   309,   310,
23673      311,   312,   313,   314,   315,   316,   318,   319,   321,   322,
23674      323,   324,   325,   326,   327,   328,   329,   330,   331,   332,
23675      334,   335,   336,   337,   338,   340,   341,   342,   343,   344,
23676      346,   347,   348,   349,   351,   352,   353,   354,   355,   356,
23677      357,   358,   359,   360,   361,   362,   364,   365,   367,   369,
23678      370,   371,   372,   373,   375,   376,   379,   380,   381,   382,
23679      383,   385,   386,   387,   388,   389,   390,   391,   394,   395,
23680      396,   397,   398,   401,   402,   403,   404,   405,   406,   407,
23681      409,   411,   412,   413,   414,   417,   420,   421,   422,   423,
23682      424,   425,   426,   427,   428,   429,   430,   431,   432,   433,
23683      434,   435,   436,   437,   888,  1056,  1070,  1074,  1075,   410,
23684      849,   260,   290,   818,    48,   454,   532,    20,    25,    37,
23685       58,    71,    81,   103,   109,   125,   136,   144,   156,   163,
23686      167,   221,   262,   265,   284,   321,   328,   337,   369,   370,
23687      372,   373,   382,   387,   393,   396,   399,   542,   583,   687,
23688      739,   750,    26,   289,  1056,   888,    26,   283,   335,   370,
23689      372,     5,   208,   781,   782,  1065,    20,    25,    37,    58,
23690       71,    85,   103,   125,   136,   144,   156,   161,   167,   184,
23691      230,   262,   273,   284,   321,   326,   328,   334,   337,   366,
23692      369,   373,   380,   382,   387,   399,   412,   600,   700,   818,
23693     1056,    88,   410,   454,   578,   581,   584,   848,   854,   862,
23694      865,   873,   880,   887,   891,     9,    19,    26,    43,   151,
23695      157,   159,   181,   210,   243,   292,   308,   445,   446,   715,
23696      716,   888,  1064,  1066,    26,    88,   305,   333,   720,   721,
23697      722,  1070,   156,  1070,  1061,  1065,   366,   902,   715,  1070,
23698      314,   340,   344,   379,  1056,   273,   230,   103,   184,   328,
23699      365,   366,   454,   791,   792,   327,  1070,    26,   338,   375,
23700      379,   490,   499,   500,  1070,    23,   164,   720,   721,   290,
23701      818,  1070,   207,    26,   122,   904,   905,    59,    82,   221,
23702      239,   321,   328,   338,   375,   379,   425,   487,   488,   489,
23703      490,    26,   338,   375,   379,   490,   379,   261,   945,  1054,
23704     1070,   902,   447,  1070,   160,   454,   850,   454,  1049,   303,
23705      897,   898,  1056,   897,   892,   893,   896,     0,   457,   849,
23706      137,   198,   266,   392,   906,   907,   892,   894,   895,   114,
23707      194,   398,   458,     3,    42,    48,    71,    77,    89,    96,
23708      158,   160,   176,   190,   202,   203,   205,   215,   217,   241,
23709      249,   269,   271,   320,   345,   368,   410,  1062,  1070,  1071,
23710     1074,  1076,   702,  1070,   702,  1057,  1070,   293,   702,   382,
23711      702,  1056,  1070,   102,   366,   728,  1062,     3,    99,   339,
23712     1067,  1068,  1072,  1074,  1075,  1076,    26,   175,  1054,   255,
23713      412,     8,    15,    16,    17,    66,   148,   441,   442,   443,
23714      445,   446,   447,   448,   449,   450,   779,  1015,  1016,  1070,
23715      175,  1056,    26,  1067,  1068,  1056,  1056,   175,  1054,  1056,
23716      314,   340,    26,   175,   945,  1056,   330,  1056,   702,   228,
23717     1067,  1068,   175,  1054,   208,   111,   204,   246,   299,   819,
23718      820,   821,  1054,  1060,  1070,    20,    25,    58,    71,    72,
23719       81,    85,   103,   125,   136,   144,   156,   161,   184,   209,
23720      230,   262,   284,   321,   326,   328,   334,   337,   366,   369,
23721      373,   380,   382,   387,   412,   600,   708,  1065,   861,   865,
23722      873,   880,   891,  1054,   232,  1062,  1056,   454,   702,   382,
23723     1057,   702,   382,   175,  1056,   102,   366,   370,   372,  1067,
23724     1068,   370,   372,    66,   148,   779,   312,  1056,  1067,   175,
23725      483,  1070,  1056,  1056,   330,  1056,   702,   228,  1067,   303,
23726      334,   366,   412,   230,    85,   184,   161,   326,   380,   386,
23727      594,    26,  1056,   889,   497,  1065,  1072,   782,   232,   175,
23728     1062,  1056,   175,   786,   175,  1057,     3,    47,    49,    50,
23729       61,    62,   106,   107,   126,   152,   175,   196,   197,   199,
23730      240,   242,   254,   300,   342,   348,   375,   376,   407,   704,
23731      960,   962,   964,   966,   968,   970,   971,   972,   974,   975,
23732      976,   979,   980,  1071,  1074,   382,   102,   366,   175,  1062,
23733      175,  1068,  1069,    77,   412,    66,   148,   175,   779,    52,
23734      175,  1056,   175,  1069,   175,  1056,   175,  1056,   175,  1056,
23735      330,   786,   175,  1056,   175,   704,   175,   228,  1069,   208,
23736      175,   701,   702,   454,   863,   542,   854,   406,   848,   855,
23737      856,   857,  1072,   849,  1066,   716,   717,    26,   717,  1066,
23738      717,    26,   717,  1066,   717,   717,   717,  1066,  1064,  1064,
23739      888,   717,   293,   454,   454,   561,   561,   561,   260,   377,
23740      458,   561,   328,   945,   946,   458,   814,   500,   488,   490,
23741       26,   490,  1065,   454,   860,    52,   412,   410,   793,   794,
23742     1054,  1056,  1070,    42,   437,   204,   456,   263,   263,   260,
23743      159,  1065,   377,   154,   711,   260,     4,     6,     7,     8,
23744       10,    34,    47,    49,    50,    57,    58,    61,    62,    69,
23745       71,    93,    94,    95,    96,    97,    98,    99,   106,   107,
23746      142,   146,   147,   152,   166,   168,   196,   197,   199,   214,
23747      222,   223,   240,   242,   246,   251,   252,   254,   262,   272,
23748      285,   300,   324,   339,   348,   362,   375,   376,   381,   383,
23749      384,   393,   399,   407,   427,   428,   429,   430,   431,   432,
23750      433,   434,   438,   445,   446,   447,   454,   892,   963,   966,
23751      969,   970,   971,   973,   974,   975,   979,   980,   984,   986,
23752      987,   988,   990,  1011,  1012,  1013,  1017,  1036,  1041,  1051,
23753     1052,  1062,  1063,  1064,  1065,  1070,  1050,  1051,  1065,    26,
23754      505,  1053,  1054,   338,   487,   109,   496,  1065,   497,  1065,
23755       42,    63,   487,   437,   349,   820,   263,   159,   377,   443,
23756       42,   437,   204,   821,   454,  1054,   447,   452,   456,  1042,
23757     1044,   946,     3,   158,   160,   410,   845,   846,   848,   158,
23758      851,   109,   984,  1047,  1048,   897,   458,   454,   852,   455,
23759      455,   463,  1054,    26,   122,   903,   903,    52,   903,   149,
23760      154,   218,   258,   910,   912,   913,   928,   930,   931,   932,
23761      906,   907,   159,   200,   945,   947,  1049,   454,   762,  1044,
23762      274,   310,   340,   456,   703,   274,   310,   340,     3,    80,
23763      131,   224,   274,   281,   310,   340,   369,   371,   419,   498,
23764      501,   826,   827,   828,   829,   734,    22,   127,   274,   310,
23765      340,   403,   512,  1056,   340,    22,   127,   398,   480,   423,
23766      175,   945,    54,    87,   117,   145,   178,   213,   246,   274,
23767      275,   310,   318,   325,   332,   340,   352,   360,   414,   498,
23768      502,   765,   773,   454,   751,   310,   480,   181,   142,    22,
23769       28,    68,   117,   120,   127,   130,   155,   186,   244,   246,
23770      256,   264,   274,   310,   313,   314,   340,   403,   510,   511,
23771      619,     4,   446,   591,  1066,    26,   175,  1054,   702,   702,
23772      454,   778,   456,   142,   260,   181,   472,   310,   419,   440,
23773      465,   472,   260,   274,   310,   142,    53,   101,   183,   231,
23774      234,   244,   273,   310,   315,   340,   354,   510,   588,   589,
23775      274,   310,   411,   619,   627,   500,   488,   181,   142,   310,
23776      340,   510,   274,   310,   314,   340,    78,   119,   276,   371,
23777      260,    22,    28,   127,   274,   310,   340,   522,   523,   154,
23778      310,   340,   465,   501,   142,   310,   340,   510,  1056,   216,
23779      111,   261,   424,   458,   819,   400,   843,   260,   232,  1062,
23780      454,  1056,   960,   382,   102,   366,  1062,   255,   412,    66,
23781      148,   779,  1056,  1056,   330,   154,  1056,   960,   208,   702,
23782      455,   561,  1056,   454,   677,   762,    64,   960,   159,   454,
23783      673,  1056,   465,    35,   837,  1056,   246,   465,   423,   175,
23784     1054,   465,   702,   702,   673,   396,   542,   260,   465,   246,
23785       42,   484,   387,   626,   274,   602,    78,   119,   276,   371,
23786       24,    44,   195,   651,    35,   673,   154,   465,   412,   175,
23787     1054,   175,   579,  1054,  1054,   412,   702,    77,   740,  1062,
23788     1056,   154,   600,    48,   100,   193,   244,   329,   142,   762,
23789       55,   316,   513,   142,   454,   142,   409,   977,   977,   977,
23790      454,   965,   965,   287,   454,   967,   142,    61,    62,   977,
23791      965,   962,   421,   440,   454,   981,   454,   981,   458,   513,
23792       34,   961,    62,   454,   978,   104,   173,   233,   236,   331,
23793      435,   454,   982,   983,   703,   965,   423,   142,   751,   142,
23794      458,   175,   701,   175,   702,   175,   702,   142,   778,  1069,
23795      142,   260,   142,   142,   260,   142,   513,   142,    78,   119,
23796      276,   371,   154,   142,   260,   142,   513,   142,   154,   175,
23797      175,   497,   142,   458,   513,   984,  1020,   366,   455,   458,
23798      147,   260,   384,   494,   497,   591,   858,   854,   717,   888,
23799      717,   888,   717,   888,   717,   888,   717,   888,   888,   888,
23800      717,   888,   454,   562,   563,  1070,   562,    26,   103,   125,
23801      156,   161,   208,   209,   328,   334,   366,   369,   387,   723,
23802     1053,  1069,   722,  1056,   181,   458,   876,  1065,   960,  1023,
23803       35,  1069,   740,   455,   458,   216,  1070,   154,   154,   723,
23804     1069,   327,  1070,   497,   260,   454,  1045,   452,   892,  1024,
23805      984,  1040,   454,   454,   154,   454,   454,   892,   454,   454,
23806      454,   454,   454,   454,   984,   454,   454,   454,   454,   454,
23807      454,   454,   454,   892,   454,   454,   454,   454,   454,   454,
23808      454,   454,   984,   984,   984,   892,   984,  1020,  1044,  1065,
23809      454,  1065,     3,     8,    11,    15,    16,    17,    32,    35,
23810       40,    46,    70,   176,   181,   202,   203,   217,   249,   262,
23811      265,   345,   438,   441,   442,   443,   445,   446,   447,   448,
23812      449,   450,  1015,  1017,  1019,   420,   999,   271,   984,   200,
23813      458,   900,   454,  1065,  1044,   900,   112,   177,   506,   458,
23814       63,   109,   497,    35,     3,   109,   221,   495,   591,   980,
23815     1065,  1065,    83,   124,   996,    92,   109,   491,   492,   494,
23816      591,   109,   491,   216,  1054,   984,  1043,     3,    26,    30,
23817       31,    32,    33,    34,    35,    36,    39,    51,    57,    58,
23818       64,    70,    72,    81,    88,    93,    94,    95,    97,    98,
23819       99,   109,   111,   118,   122,   123,   129,   133,   137,   147,
23820      149,   154,   156,   159,   164,   167,   170,   181,   188,   198,
23821      200,   211,   212,   218,   222,   223,   246,   251,   258,   260,
23822      261,   265,   266,   282,   291,   305,   317,   333,   339,   350,
23823      363,   366,   374,   377,   378,   384,   392,   393,   399,   400,
23824      408,   415,   416,   418,   419,   447,  1059,  1073,  1074,  1075,
23825     1076,  1077,  1042,    84,   315,   706,   455,   458,   849,   455,
23826      458,   898,  1055,  1056,    35,   852,   894,   894,   908,   909,
23827      984,   894,   151,   243,   919,   206,   244,   299,   343,   398,
23828       26,   914,   984,   915,   917,   984,   986,   928,   929,   913,
23829      912,   910,   911,   154,   931,   256,   933,   910,   928,   947,
23830      866,  1054,    35,  1070,   340,   181,   191,   266,   268,   342,
23831      408,   447,   755,   756,   757,   759,   761,   763,   960,  1071,
23832      274,   310,   340,   377,   377,   328,  1059,   456,   377,   377,
23833      328,   218,   377,   377,   369,   487,   274,   826,   828,   443,
23834      830,   154,   164,   181,   319,   735,   736,    64,    81,   138,
23835      156,   291,   393,   558,   559,    81,   109,   246,   377,    81,
23836      377,   109,   246,   328,    81,   120,   130,   274,   310,   669,
23837      328,   608,    25,    58,    71,    85,   125,   136,   156,   161,
23838      230,   262,   328,   334,   337,   366,   373,   380,   387,   412,
23839      600,  1056,   142,   310,   340,   510,   260,   591,   260,   332,
23840      213,   377,  1070,   377,   251,   591,   113,   201,   328,   338,
23841      379,   489,   316,   340,   765,   774,   455,   752,   755,   377,
23842      399,   369,  1054,    72,   138,   175,   549,   558,  1070,    72,
23843       81,   797,   260,   260,   324,   326,   382,    81,   797,    29,
23844      313,   324,   326,   382,   324,  1054,   155,   186,   256,   702,
23845      454,   377,   377,   174,   454,   517,   227,   369,   396,   419,
23846      421,   517,    81,   458,     4,   274,   181,   142,   117,   310,
23847      340,   510,   400,   400,   245,   960,   274,   340,   779,  1056,
23848     1054,   103,   501,   377,   467,   501,  1054,   377,   377,  1054,
23849      591,    52,   590,   591,   591,   101,   231,   234,    52,   377,
23850      465,   328,   465,   244,   589,   377,   377,   251,  1065,   619,
23851      369,   945,    81,   377,   797,   328,   377,   377,   517,   517,
23852      702,   702,   702,   702,  1054,    41,   405,    41,    41,   377,
23853       41,   377,   328,   458,   399,   637,  1068,   377,   467,  1054,
23854      377,   328,   274,   310,   299,   311,   336,   493,   819,  1060,
23855     1070,  1054,   762,   960,   260,   202,   423,   751,   591,   702,
23856      702,   778,   260,   202,   260,    78,   119,   276,   371,   960,
23857      260,   202,   702,   202,   377,   419,   533,   387,     3,   678,
23858      679,   673,   454,    35,   702,   674,   675,  1073,    24,   826,
23859      960,   260,   142,   605,  1056,   246,   454,   466,   687,   400,
23860      303,   412,  1054,   466,   142,  1068,    88,   164,   485,   541,
23861      585,   650,   718,   738,   822,  1065,   627,   628,  1068,   224,
23862      702,   702,   702,   702,   256,   114,   194,   385,   398,   652,
23863      653,   134,   298,   454,   637,   466,  1054,   246,   587,   588,
23864      246,    35,   256,   454,   561,   561,   175,   582,  1054,   154,
23865      175,   741,  1060,   454,   753,    35,   960,   208,   419,   421,
23866      890,   329,  1062,   513,   960,  1057,   454,  1020,  1064,   704,
23867      977,   977,    34,   961,   375,   375,  1064,  1064,   960,   452,
23868      452,   340,  1064,   377,   377,   377,   454,   377,  1064,   965,
23869      175,  1056,  1062,   513,  1069,  1068,   142,   513,   142,   400,
23870      142,   400,   779,   513,   513,  1056,   702,  1069,  1056,   702,
23871     1056,  1056,   960,  1056,   702,   704,  1069,   637,   142,   142,
23872      513,   701,   702,   455,   458,   175,  1054,   854,   856,   888,
23873      888,   888,   888,   888,   888,   562,   455,   458,   455,   162,
23874      335,   367,  1055,   701,   102,   337,   727,   728,  1055,   255,
23875     1055,  1053,  1053,  1055,   701,   377,   419,   731,   137,   218,
23876      634,   635,    20,   140,   324,   343,   877,   945,   250,   878,
23877      455,   458,   861,   377,  1054,   791,   792,   794,   721,   720,
23878      721,   159,   165,   732,  1070,    25,    72,   103,   125,   136,
23879      156,   161,   209,   230,   321,   328,   334,   366,   369,   387,
23880      412,   600,   712,  1020,  1042,   453,  1020,  1024,  1025,   415,
23881     1037,  1038,   984,  1020,   454,  1064,  1064,     3,   104,   173,
23882      233,   236,   331,   435,  1026,  1027,  1065,  1020,  1020,  1020,
23883     1064,  1064,   984,   779,   984,  1028,   324,   445,   446,   454,
23884      985,   986,  1017,  1030,   455,  1020,   984,  1020,  1031,   984,
23885       51,   159,   212,   378,   984,  1020,  1034,  1020,   238,   986,
23886      984,   994,   995,   996,   238,   984,   996,   455,   458,  1064,
23887      982,   960,   984,   984,   984,   984,  1073,   375,    39,   363,
23888     1046,   702,   984,   454,   892,  1035,   122,   124,   147,   246,
23889      251,   256,   384,   394,   984,   454,   984,   377,    46,   176,
23890      181,   217,   345,   984,   984,   984,   984,   984,   984,   984,
23891      984,   984,   984,    26,    33,   350,  1014,   167,   150,  1000,
23892      324,   454,  1011,   163,   221,   366,   370,   372,   396,   901,
23893     1054,  1052,   159,   935,    26,   122,   408,   447,   455,   757,
23894      984,  1021,  1022,  1071,   935,  1054,   379,   454,  1065,   458,
23895      455,   453,   459,   174,   174,   513,  1054,   846,   847,  1054,
23896     1047,   455,   458,   454,   458,    36,   118,   400,   747,   454,
23897      916,  1066,   343,   206,   261,   458,   324,   325,   918,  1053,
23898      250,   347,   879,   929,   911,   400,   874,   109,   454,   867,
23899      891,    35,  1070,   454,   881,   882,   883,   884,   885,  1070,
23900      268,    52,  1071,   455,   757,   759,   756,   759,  1071,   266,
23901      455,   458,   703,   377,   377,   328,  1068,  1056,  1056,  1059,
23902     1068,  1056,  1056,  1068,  1057,  1056,   109,   494,  1066,   321,
23903      399,   720,   328,   164,   720,   454,  1056,   400,   742,   206,
23904      206,   400,   454,   577,   175,  1056,   251,  1068,  1056,  1056,
23905      984,   251,  1056,  1056,    29,   313,   377,   377,  1056,   377,
23906      609,  1062,   454,   702,   702,   960,   382,   102,   366,   728,
23907      412,    66,   148,   779,  1056,   702,  1056,   702,   330,   154,
23908      960,   702,   208,   169,   244,   274,   310,   404,   612,   613,
23909      614,   945,   377,   797,   328,   251,   144,   113,   201,  1068,
23910     1056,   260,  1056,   455,   458,  1067,  1069,  1056,   310,   510,
23911      175,   549,   246,   960,  1056,  1070,  1056,   144,   216,  1056,
23912       26,   399,  1056,   175,  1056,   175,  1070,   326,   382,   326,
23913      382,   216,  1056,    26,   399,  1056,   216,   324,  1054,    22,
23914      127,   340,   620,   621,   622,   623,  1073,  1068,  1056,   109,
23915      160,   247,   400,   516,   519,   520,  1073,  1056,   259,    68,
23916      259,  1056,   511,   377,   369,  1054,   260,   377,   797,   328,
23917     1058,  1070,  1058,   458,   455,   458,   377,   328,   454,   260,
23918      310,   377,   646,  1057,  1067,     3,    80,   132,   186,   280,
23919      391,   399,   402,   468,   310,  1068,  1056,   310,   340,   510,
23920      588,   591,   702,  1056,   591,  1056,   591,  1068,  1056,  1056,
23921      310,   340,   510,  1056,  1056,  1056,  1056,  1068,  1056,    22,
23922       28,   127,   274,   310,   340,   274,   310,   340,   673,   310,
23923      340,   310,   340,   117,   310,   959,  1070,   175,   683,  1070,
23924      175,  1070,  1068,  1056,  1056,  1056,    22,   523,   337,  1067,
23925      310,   340,   510,  1056,  1056,   377,   377,    76,   390,   299,
23926      202,    35,   125,   702,   251,   709,  1065,   202,   202,   400,
23927      400,   202,   702,   709,   702,   208,   702,   709,   202,   709,
23928      296,   527,   259,   159,   377,   526,   184,   443,   455,   458,
23929      984,   960,   455,   458,   443,   652,   551,  1073,  1056,    55,
23930      159,   328,   411,   606,   613,   614,   142,   217,   543,   545,
23931      547,   549,   555,   558,    23,   181,   321,   364,   468,   469,
23932      154,  1058,   412,  1054,   154,   647,   483,  1070,   484,   265,
23933      542,   156,  1065,   673,   673,   673,   673,   256,   260,   265,
23934      454,   673,   957,   958,   959,   337,   454,   142,   142,   141,
23935      891,   702,   543,  1070,   419,   421,   573,   419,   518,   246,
23936       35,   561,  1065,   246,   260,   455,   754,   755,   760,    35,
23937      208,   318,   380,   418,   764,   765,   766,   260,   208,   497,
23938      172,   172,   154,   762,    35,  1020,   455,   455,   513,   452,
23939      437,   437,   455,   455,  1064,   453,  1064,  1070,   455,   173,
23940      233,   983,   233,   983,   983,  1064,   236,   455,   142,   513,
23941      751,   701,   702,  1058,   702,  1058,   778,   260,   513,   260,
23942      513,   513,   208,   260,   513,   513,   337,   154,   497,   513,
23943      984,   246,   455,   563,   181,   181,   181,   423,  1055,   458,
23944      591,   592,   167,   724,   725,  1068,    23,   732,   377,   454,
23945      159,   140,   343,   140,   343,   324,   398,   235,   960,  1068,
23946      419,   580,  1054,  1056,   159,   260,   724,    52,   513,  1062,
23947      960,   382,   366,  1062,   255,   412,   960,   208,   702,   455,
23948      453,   453,   458,   984,   129,  1038,  1039,    35,   455,   984,
23949      455,   455,   455,   159,   455,   455,   455,   455,   455,   458,
23950      455,   282,  1029,   455,   454,   985,   985,  1020,    11,    15,
23951       16,    17,   181,   202,   262,   441,   442,   443,   445,   446,
23952      447,   448,   449,   450,  1017,   985,   455,   455,   154,   159,
23953     1032,  1033,   455,    35,  1034,  1020,  1034,  1034,   159,   455,
23954      455,  1073,   279,   998,    35,   455,   458,   984,  1073,   458,
23955      984,  1045,   984,   455,   437,   985,   985,   135,  1020,   159,
23956      122,   124,   147,   251,   256,   384,   394,   454,   135,   779,
23957      984,   363,  1046,   984,  1035,   984,   377,   454,   892,   454,
23958      454,   270,  1004,   454,  1020,   370,   372,   370,   372,  1054,
23959      902,   902,   902,   211,   325,   454,   892,   936,   937,   938,
23960      945,   950,   987,   989,   990,  1062,  1070,   416,   955,  1021,
23961     1021,  1022,   455,    13,    14,   458,   906,   907,   955,   820,
23962     1064,   982,   492,   984,  1043,   852,  1056,   861,   909,   262,
23963     1015,  1018,   439,   748,   984,   918,   398,   915,   226,   936,
23964      416,   956,   406,   868,   869,  1070,   260,   870,  1070,   885,
23965      886,   458,   935,   443,  1045,   763,   703,   759,   759,    52,
23966      761,   449,  1068,  1056,  1056,  1069,  1069,   260,  1055,   263,
23967      260,   984,   559,  1058,   454,   454,   454,   577,   184,   562,
23968      661,   142,   513,   377,  1068,  1056,   497,   762,   960,  1056,
23969      423,   702,   702,   702,   702,   778,    78,   119,   276,   371,
23970      960,  1056,   595,  1056,   169,   404,   377,   377,   595,   612,
23971      619,   310,   340,   510,  1056,  1056,  1056,   192,  1056,   251,
23972      755,   273,   340,   377,   246,   142,   264,   617,   661,   127,
23973      314,   340,   512,   619,   798,  1056,   332,   142,   513,   142,
23974      513,  1056,  1056,  1056,  1056,   332,   332,   216,   622,   623,
23975      622,   455,   458,   624,  1065,   184,   455,   458,   443,   456,
23976     1068,  1056,   310,   340,   510,   144,  1056,  1056,  1056,   274,
23977      310,   340,    22,   127,   274,   310,   340,   960,   245,   960,
23978     1068,  1056,   802,   803,  1073,  1054,   377,  1069,   400,   643,
23979      218,   280,   251,  1065,   280,  1069,   397,   377,   377,   328,
23980      273,   340,    81,   377,   797,   328,   377,   377,   228,   228,
23981      228,   377,   377,   328,   377,   377,   328,   377,   328,   377,
23982      328,   260,   377,   513,   960,   246,  1065,   340,   798,   142,
23983      513,   377,  1056,   377,   328,  1068,  1056,   709,   960,   702,
23984      202,   709,   709,  1058,  1058,   709,   202,   202,  1056,   202,
23985      709,   357,   358,   528,  1065,   527,   169,   262,   445,   446,
23986      591,   676,   759,  1018,  1065,  1077,     3,   679,   455,   455,
23987      675,   676,   260,    64,    70,    81,   109,   111,   188,   246,
23988      251,   291,   305,   393,   552,   553,   554,   141,   415,   465,
23989      497,  1056,   497,   617,  1054,  1054,   455,   458,  1069,   167,
23990      321,  1069,  1064,   387,  1054,   561,    26,   114,   194,   333,
23991      398,   648,   377,   645,    42,   484,   312,   366,   102,   518,
23992      562,  1054,   653,   680,   681,  1065,   455,   458,  1056,   562,
23993     1054,   579,  1054,  1056,   580,   454,   544,   455,   259,   517,
23994      259,   260,   574,   517,    35,   142,   891,   518,   377,   142,
23995     1054,   455,   458,   109,   443,   767,  1065,   497,   366,   758,
23996      759,   154,   768,   419,   766,   769,   114,   194,   333,   398,
23997      810,  1056,   169,   891,   513,   960,   455,  1064,   981,   981,
23998      453,   453,   978,   455,  1056,   513,   513,   400,   513,   400,
23999      513,   513,   702,   702,  1056,   702,  1056,   637,   513,   142,
24000      328,   328,   328,  1055,   728,   458,  1068,   419,   458,   726,
24001      263,   946,   337,   140,   140,   102,   244,  1069,   723,   513,
24002     1068,   762,   202,   751,   591,   202,   702,   202,  1024,   374,
24003      984,   133,   960,   455,   984,   984,   984,  1032,   455,  1020,
24004      458,   960,   985,   985,   985,   985,   122,   124,   246,   256,
24005      985,   985,   985,   985,   985,   985,   985,   985,   985,   985,
24006      984,   984,  1033,  1032,   960,   455,   455,   455,  1020,   455,
24007      458,    52,   986,   455,  1073,   995,   288,   361,   997,   455,
24008      458,   411,   991,    35,   455,  1065,   984,    32,    32,   984,
24009      455,   984,   159,   454,  1023,   984,   455,   135,   985,   985,
24010      135,   135,   984,   984,   907,   416,   454,  1005,  1070,   455,
24011     1020,   458,   902,   902,   902,   902,  1054,  1054,  1054,   892,
24012      950,   159,   892,   937,   938,    35,   939,   940,  1070,   458,
24013       89,   160,   190,   205,   215,   241,   320,   942,   940,    35,
24014      939,   941,  1070,   440,   954,   454,  1044,   984,   167,   920,
24015      458,   906,   906,   906,   984,   984,   408,  1022,   455,   920,
24016      455,   453,   455,   454,   748,   151,   210,   455,   261,    92,
24017      984,   317,   872,   455,   458,  1045,    79,   872,   455,   458,
24018      882,   956,  1047,   455,   449,   763,   387,   162,   335,   367,
24019      388,   737,   154,   737,   455,   454,   565,   566,   744,   989,
24020     1070,   562,   562,   661,  1060,   455,   111,   188,   244,   246,
24021      662,  1056,  1056,    35,  1056,   400,   400,   702,   702,   702,
24022      702,   208,   703,  1068,  1056,   377,   797,   328,   377,   192,
24023       52,   369,  1056,   142,   549,   454,   551,   246,   517,   102,
24024      246,   356,   359,   517,   387,  1056,  1070,   332,   621,  1056,
24025      520,   676,  1073,   273,   340,   377,   797,   328,  1056,   377,
24026      377,   377,   328,   161,   262,   359,   685,   686,   161,   262,
24027      693,   694,   377,   377,   328,   455,   455,   455,   455,   458,
24028      443,   310,  1056,   454,   419,   644,  1066,  1065,  1065,  1065,
24029     1056,  1056,  1056,    52,   369,  1056,  1056,  1056,  1056,  1056,
24030     1056,   154,   154,   312,   154,   175,  1068,  1056,  1056,  1068,
24031     1056,  1056,  1056,  1056,  1056,  1056,   144,  1056,    70,   514,
24032      142,    24,    44,   387,  1070,  1056,   619,  1056,  1056,   455,
24033      202,   709,   202,   202,   709,   709,   202,   709,   465,   528,
24034      595,   661,   419,   421,  1054,   454,   702,  1056,   985,   112,
24035      177,   111,   251,   206,  1054,   769,   295,   665,   666,  1070,
24036      605,   454,   556,   187,   572,   547,  1069,  1069,   960,   454,
24037      518,  1069,   643,  1068,   175,  1054,   423,   154,   654,   455,
24038      458,   959,   617,   455,   587,    35,   256,   454,   863,   546,
24039      548,   550,   558,  1070,   573,   572,    75,   369,   575,   891,
24040      582,   580,   575,  1065,  1060,   742,   760,   984,   984,   458,
24041      454,   764,   387,   458,   673,   377,   454,   595,   455,   453,
24042      513,  1058,  1058,   513,   513,   513,   513,   337,  1055,  1055,
24043     1055,   591,   164,   725,   455,  1056,   102,   732,   159,   202,
24044      251,   713,  1065,   202,   202,   713,   202,   713,   984,   455,
24045      455,  1033,   455,   984,   159,   122,   124,   256,   454,   455,
24046      426,   993,  1020,   304,    52,   417,   417,   455,   984,   244,
24047      984,   458,   992,   962,   984,   984,   984,  1023,   455,   984,
24048       32,    32,   984,   984,   135,   455,   455,   984,  1006,  1070,
24049      455,   984,  1054,  1054,  1054,  1054,   940,   941,   454,   455,
24050     1070,   454,   937,   205,   269,   943,   937,   943,   205,   942,
24051      943,   205,   368,   948,   454,  1070,   454,   267,  1021,    52,
24052      170,   927,   455,   455,   455,  1022,  1065,   927,  1065,   779,
24053      256,  1051,   891,   869,   260,   454,   871,   443,   885,   872,
24054      387,   455,   377,   720,   159,   661,   984,   455,   458,   419,
24055       70,   745,   745,   455,   455,   769,   112,   177,   186,   111,
24056      402,   513,   960,  1058,  1058,  1056,  1056,  1056,  1056,  1056,
24057     1069,  1056,   549,   618,   622,   251,   251,  1066,  1070,   960,
24058      513,   513,   443,    52,   369,  1056,  1056,  1056,  1056,  1068,
24059     1056,  1056,  1064,  1064,   960,   458,  1064,  1064,   458,  1068,
24060     1056,  1056,   803,   245,   676,   377,   984,    64,  1069,  1056,
24061      377,   377,  1055,  1055,   702,  1055,   142,  1056,   702,  1065,
24062     1065,   960,   513,   513,   202,   709,   709,   709,   709,   454,
24063      529,   530,   400,   534,   535,   161,   191,   161,   159,   660,
24064      984,   246,   553,   769,   561,   400,   576,  1062,    32,   141,
24065      181,   543,   139,   182,   454,   337,   400,   562,    35,   644,
24066      484,   246,   454,  1056,   128,   655,   415,   657,  1065,   518,
24067      891,   702,   543,   580,   455,   458,   419,   574,   573,   114,
24068      127,   288,  1056,   419,   823,    35,   159,   260,   454,  1065,
24069      757,   770,   771,  1071,   769,   960,   154,  1054,   159,   377,
24070      788,   189,   596,   513,   513,   513,  1056,   263,   200,   513,
24071      724,   713,   713,   713,   713,   455,   985,   159,   454,  1023,
24072      454,   455,   458,   455,   986,   304,   455,   405,   353,   455,
24073      455,   455,   984,   984,   984,   455,   278,  1007,   455,   951,
24074      952,   989,   939,   454,  1055,   937,   260,   400,   944,   937,
24075      205,   937,  1062,   958,   454,   958,  1070,   906,    91,   168,
24076      323,   454,   921,   922,   923,   924,   925,   926,   984,   984,
24077      418,  1001,   906,  1001,   455,   888,    81,   743,   744,   123,
24078      454,   892,  1049,   724,   260,   724,   455,   769,   566,   262,
24079      779,   702,   702,   746,   746,   305,   769,   576,   455,   377,
24080      340,   878,   455,   458,   514,   676,  1069,  1056,   377,   454,
24081     1062,   779,   686,   454,   454,   694,  1056,   455,   454,   340,
24082      878,  1056,  1056,   419,   440,   840,   312,   840,   840,   154,
24083      514,   709,   536,   537,  1073,    48,    90,   115,   131,   135,
24084      155,   158,   171,   251,   259,   297,   531,   465,   116,   728,
24085       35,   784,   784,  1054,   661,   455,   576,   229,   564,   184,
24086      454,   666,   295,   454,   455,    26,    74,    82,   110,   185,
24087      359,   557,   557,  1053,  1056,  1058,   455,   891,   142,   617,
24088      324,   355,   656,   454,   141,    35,   580,   544,   455,   548,
24089      264,   575,   574,   325,   325,    56,    64,   221,   891,   702,
24090     1054,   743,   759,   455,   458,   387,   955,   351,   351,   455,
24091      595,   244,   404,   597,   598,  1056,   513,   985,  1023,   455,
24092      994,  1020,    52,   244,   436,    52,   906,   455,   458,    35,
24093      953,  1055,   455,   984,   454,   937,   944,   454,   455,   958,
24094      455,   455,   454,   341,   454,   455,   458,  1002,  1003,  1070,
24095      455,  1056,   455,   458,   247,   398,   726,   737,   513,   745,
24096      576,   454,   747,   747,  1054,   576,   661,  1056,   369,   622,
24097      400,   515,   340,   878,  1056,  1023,   751,   154,   689,   778,
24098     1023,  1023,   984,   369,   701,   702,   701,   702,  1055,   513,
24099      455,   458,   447,   454,   494,   538,   591,   837,  1065,   837,
24100      246,   251,   297,   837,   837,   529,  1065,   784,    38,   179,
24101      154,   244,   560,   160,   277,   346,   260,   568,   569,   570,
24102      369,   455,  1062,     5,   667,   572,   455,   617,   148,   688,
24103      518,   823,  1054,   984,   295,   891,   573,   572,   551,   575,
24104       64,   263,    64,   580,   742,   455,   764,   770,   960,   123,
24105      419,   419,   404,   595,   617,   455,   455,   455,   304,   405,
24106     1020,   298,   325,  1008,   954,   951,   454,   455,  1055,  1020,
24107      455,  1020,   454,  1020,   922,   458,    35,   955,   744,   340,
24108      159,   746,   416,   567,   779,   748,   748,   561,   661,  1056,
24109      984,   369,   455,   266,   330,   302,   690,   689,   455,   455,
24110      455,  1056,   840,   537,   494,   539,   540,  1065,  1065,   251,
24111      562,   447,   562,  1065,  1065,   128,   186,   114,   398,   260,
24112      570,   260,   569,  1056,   454,   455,   458,   337,   702,    35,
24113       35,   454,   455,  1062,   823,   574,   573,   263,   263,   454,
24114      518,   769,    27,   195,   811,   161,   161,    46,    92,   389,
24115      984,  1009,  1010,  1009,   455,   958,   455,   455,   455,   921,
24116      455,  1003,  1005,   881,   724,   747,   454,   661,   455,   564,
24117      878,  1056,  1062,    52,   690,   878,   702,   455,   458,   562,
24118      324,    55,   244,   316,   340,   571,   571,   455,     5,  1056,
24119      685,   891,   454,   575,   574,   743,   575,   247,   454,   806,
24120      808,   813,   865,   873,   880,   891,   728,   728,  1010,   324,
24121      153,   286,   153,   286,   455,   311,   949,   455,   955,   513,
24122      748,   984,   568,   878,   751,   702,   540,   657,    21,   109,
24123      251,   617,   823,     4,   658,   659,  1064,  1065,  1073,   575,
24124      455,   955,   807,   808,   809,   892,   893,   458,   458,    32,
24125      454,   455,   661,   141,   455,   458,   518,   455,   457,   377,
24126      159,  1010,   984,   295,   659,   575,   809,   351,   351,   455,
24127     1062,   955,   419,   419,   454,   161,   161,   658,   728,   728,
24128      455
24129 };
24130 
24131 #define yyerrok		(yyerrstatus = 0)
24132 #define yyclearin	(yychar = YYEMPTY)
24133 #define YYEMPTY		(-2)
24134 #define YYEOF		0
24135 
24136 #define YYACCEPT	goto yyacceptlab
24137 #define YYABORT		goto yyabortlab
24138 #define YYERROR		goto yyerrorlab
24139 
24140 
24141 /* Like YYERROR except do call yyerror.  This remains here temporarily
24142    to ease the transition to the new meaning of YYERROR, for GCC.
24143    Once GCC version 2 has supplanted version 1, this can go.  However,
24144    YYFAIL appears to be in use.  Nevertheless, it is formally deprecated
24145    in Bison 2.4.2's NEWS entry, where a plan to phase it out is
24146    discussed.  */
24147 
24148 #define YYFAIL		goto yyerrlab
24149 #if defined YYFAIL
24150   /* This is here to suppress warnings from the GCC cpp's
24151      -Wunused-macros.  Normally we don't worry about that warning, but
24152      some users do, and we want to make it easy for users to remove
24153      YYFAIL uses, which will produce warnings from Bison 2.5.  */
24154 #endif
24155 
24156 #define YYRECOVERING()  (!!yyerrstatus)
24157 
24158 #define YYBACKUP(Token, Value)                                  \
24159 do                                                              \
24160   if (yychar == YYEMPTY)                                        \
24161     {                                                           \
24162       yychar = (Token);                                         \
24163       yylval = (Value);                                         \
24164       YYPOPSTACK (yylen);                                       \
24165       yystate = *yyssp;                                         \
24166       goto yybackup;                                            \
24167     }                                                           \
24168   else                                                          \
24169     {                                                           \
24170       yyerror (&yylloc, yyscanner, YY_("syntax error: cannot back up")); \
24171       YYERROR;							\
24172     }								\
24173 while (YYID (0))
24174 
24175 /* Error token number */
24176 #define YYTERROR	1
24177 #define YYERRCODE	256
24178 
24179 
24180 /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
24181    If N is 0, then set CURRENT to the empty location which ends
24182    the previous symbol: RHS[0] (always defined).  */
24183 
24184 #ifndef YYLLOC_DEFAULT
24185 # define YYLLOC_DEFAULT(Current, Rhs, N)                                \
24186     do                                                                  \
24187       if (YYID (N))                                                     \
24188         {                                                               \
24189           (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
24190           (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
24191           (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
24192           (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
24193         }                                                               \
24194       else                                                              \
24195         {                                                               \
24196           (Current).first_line   = (Current).last_line   =              \
24197             YYRHSLOC (Rhs, 0).last_line;                                \
24198           (Current).first_column = (Current).last_column =              \
24199             YYRHSLOC (Rhs, 0).last_column;                              \
24200         }                                                               \
24201     while (YYID (0))
24202 #endif
24203 
24204 #define YYRHSLOC(Rhs, K) ((Rhs)[K])
24205 
24206 
24207 /* YY_LOCATION_PRINT -- Print the location on the stream.
24208    This macro was not mandated originally: define only if we know
24209    we won't break user code: when these are the locations we know.  */
24210 
24211 #ifndef YY_LOCATION_PRINT
24212 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
24213 
24214 /* Print *YYLOCP on YYO.  Private, do not rely on its existence. */
24215 
24216 __attribute__((__unused__))
24217 #if (defined __STDC__ || defined __C99__FUNC__ \
24218      || defined __cplusplus || defined _MSC_VER)
24219 static unsigned
yy_location_print_(FILE * yyo,YYLTYPE const * const yylocp)24220 yy_location_print_ (FILE *yyo, YYLTYPE const * const yylocp)
24221 #else
24222 static unsigned
24223 yy_location_print_ (yyo, yylocp)
24224     FILE *yyo;
24225     YYLTYPE const * const yylocp;
24226 #endif
24227 {
24228   unsigned res = 0;
24229   int end_col = 0 != yylocp->last_column ? yylocp->last_column - 1 : 0;
24230   if (0 <= yylocp->first_line)
24231     {
24232       res += fprintf (yyo, "%d", yylocp->first_line);
24233       if (0 <= yylocp->first_column)
24234         res += fprintf (yyo, ".%d", yylocp->first_column);
24235     }
24236   if (0 <= yylocp->last_line)
24237     {
24238       if (yylocp->first_line < yylocp->last_line)
24239         {
24240           res += fprintf (yyo, "-%d", yylocp->last_line);
24241           if (0 <= end_col)
24242             res += fprintf (yyo, ".%d", end_col);
24243         }
24244       else if (0 <= end_col && yylocp->first_column < end_col)
24245         res += fprintf (yyo, "-%d", end_col);
24246     }
24247   return res;
24248  }
24249 
24250 #  define YY_LOCATION_PRINT(File, Loc)          \
24251   yy_location_print_ (File, &(Loc))
24252 
24253 # else
24254 #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
24255 # endif
24256 #endif
24257 
24258 
24259 /* YYLEX -- calling `yylex' with the right arguments.  */
24260 #ifdef YYLEX_PARAM
24261 # define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
24262 #else
24263 # define YYLEX yylex (&yylval, &yylloc, yyscanner)
24264 #endif
24265 
24266 /* Enable debugging if requested.  */
24267 #if YYDEBUG
24268 
24269 # ifndef YYFPRINTF
24270 #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
24271 #  define YYFPRINTF fprintf
24272 # endif
24273 
24274 # define YYDPRINTF(Args)			\
24275 do {						\
24276   if (yydebug)					\
24277     YYFPRINTF Args;				\
24278 } while (YYID (0))
24279 
24280 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)			  \
24281 do {									  \
24282   if (yydebug)								  \
24283     {									  \
24284       YYFPRINTF (stderr, "%s ", Title);					  \
24285       yy_symbol_print (stderr,						  \
24286 		  Type, Value, Location, yyscanner); \
24287       YYFPRINTF (stderr, "\n");						  \
24288     }									  \
24289 } while (YYID (0))
24290 
24291 
24292 /*--------------------------------.
24293 | Print this symbol on YYOUTPUT.  |
24294 `--------------------------------*/
24295 
24296 /*ARGSUSED*/
24297 #if (defined __STDC__ || defined __C99__FUNC__ \
24298      || defined __cplusplus || defined _MSC_VER)
24299 static void
yy_symbol_value_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,YYLTYPE const * const yylocationp,core_yyscan_t yyscanner)24300 yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, core_yyscan_t yyscanner)
24301 #else
24302 static void
24303 yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, yyscanner)
24304     FILE *yyoutput;
24305     int yytype;
24306     YYSTYPE const * const yyvaluep;
24307     YYLTYPE const * const yylocationp;
24308     core_yyscan_t yyscanner;
24309 #endif
24310 {
24311   FILE *yyo = yyoutput;
24312   YYUSE (yyo);
24313   if (!yyvaluep)
24314     return;
24315   YYUSE (yylocationp);
24316   YYUSE (yyscanner);
24317 # ifdef YYPRINT
24318   if (yytype < YYNTOKENS)
24319     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
24320 # else
24321   YYUSE (yyoutput);
24322 # endif
24323   switch (yytype)
24324     {
24325       default:
24326         break;
24327     }
24328 }
24329 
24330 
24331 /*--------------------------------.
24332 | Print this symbol on YYOUTPUT.  |
24333 `--------------------------------*/
24334 
24335 #if (defined __STDC__ || defined __C99__FUNC__ \
24336      || defined __cplusplus || defined _MSC_VER)
24337 static void
yy_symbol_print(FILE * yyoutput,int yytype,YYSTYPE const * const yyvaluep,YYLTYPE const * const yylocationp,core_yyscan_t yyscanner)24338 yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, core_yyscan_t yyscanner)
24339 #else
24340 static void
24341 yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, yyscanner)
24342     FILE *yyoutput;
24343     int yytype;
24344     YYSTYPE const * const yyvaluep;
24345     YYLTYPE const * const yylocationp;
24346     core_yyscan_t yyscanner;
24347 #endif
24348 {
24349   if (yytype < YYNTOKENS)
24350     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
24351   else
24352     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
24353 
24354   YY_LOCATION_PRINT (yyoutput, *yylocationp);
24355   YYFPRINTF (yyoutput, ": ");
24356   yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, yyscanner);
24357   YYFPRINTF (yyoutput, ")");
24358 }
24359 
24360 /*------------------------------------------------------------------.
24361 | yy_stack_print -- Print the state stack from its BOTTOM up to its |
24362 | TOP (included).                                                   |
24363 `------------------------------------------------------------------*/
24364 
24365 #if (defined __STDC__ || defined __C99__FUNC__ \
24366      || defined __cplusplus || defined _MSC_VER)
24367 static void
yy_stack_print(yytype_int16 * yybottom,yytype_int16 * yytop)24368 yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
24369 #else
24370 static void
24371 yy_stack_print (yybottom, yytop)
24372     yytype_int16 *yybottom;
24373     yytype_int16 *yytop;
24374 #endif
24375 {
24376   YYFPRINTF (stderr, "Stack now");
24377   for (; yybottom <= yytop; yybottom++)
24378     {
24379       int yybot = *yybottom;
24380       YYFPRINTF (stderr, " %d", yybot);
24381     }
24382   YYFPRINTF (stderr, "\n");
24383 }
24384 
24385 # define YY_STACK_PRINT(Bottom, Top)				\
24386 do {								\
24387   if (yydebug)							\
24388     yy_stack_print ((Bottom), (Top));				\
24389 } while (YYID (0))
24390 
24391 
24392 /*------------------------------------------------.
24393 | Report that the YYRULE is going to be reduced.  |
24394 `------------------------------------------------*/
24395 
24396 #if (defined __STDC__ || defined __C99__FUNC__ \
24397      || defined __cplusplus || defined _MSC_VER)
24398 static void
yy_reduce_print(YYSTYPE * yyvsp,YYLTYPE * yylsp,int yyrule,core_yyscan_t yyscanner)24399 yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule, core_yyscan_t yyscanner)
24400 #else
24401 static void
24402 yy_reduce_print (yyvsp, yylsp, yyrule, yyscanner)
24403     YYSTYPE *yyvsp;
24404     YYLTYPE *yylsp;
24405     int yyrule;
24406     core_yyscan_t yyscanner;
24407 #endif
24408 {
24409   int yynrhs = yyr2[yyrule];
24410   int yyi;
24411   unsigned long int yylno = yyrline[yyrule];
24412   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
24413 	     yyrule - 1, yylno);
24414   /* The symbols being reduced.  */
24415   for (yyi = 0; yyi < yynrhs; yyi++)
24416     {
24417       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
24418       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
24419 		       &(yyvsp[(yyi + 1) - (yynrhs)])
24420 		       , &(yylsp[(yyi + 1) - (yynrhs)])		       , yyscanner);
24421       YYFPRINTF (stderr, "\n");
24422     }
24423 }
24424 
24425 # define YY_REDUCE_PRINT(Rule)		\
24426 do {					\
24427   if (yydebug)				\
24428     yy_reduce_print (yyvsp, yylsp, Rule, yyscanner); \
24429 } while (YYID (0))
24430 
24431 /* Nonzero means print parse trace.  It is left uninitialized so that
24432    multiple parsers can coexist.  */
24433 int yydebug;
24434 #else /* !YYDEBUG */
24435 # define YYDPRINTF(Args)
24436 # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
24437 # define YY_STACK_PRINT(Bottom, Top)
24438 # define YY_REDUCE_PRINT(Rule)
24439 #endif /* !YYDEBUG */
24440 
24441 
24442 /* YYINITDEPTH -- initial size of the parser's stacks.  */
24443 #ifndef	YYINITDEPTH
24444 # define YYINITDEPTH 200
24445 #endif
24446 
24447 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
24448    if the built-in stack extension method is used).
24449 
24450    Do not make this value too large; the results are undefined if
24451    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
24452    evaluated with infinite-precision integer arithmetic.  */
24453 
24454 #ifndef YYMAXDEPTH
24455 # define YYMAXDEPTH 10000
24456 #endif
24457 
24458 
24459 #if YYERROR_VERBOSE
24460 
24461 # ifndef yystrlen
24462 #  if defined __GLIBC__ && defined _STRING_H
24463 #   define yystrlen strlen
24464 #  else
24465 /* Return the length of YYSTR.  */
24466 #if (defined __STDC__ || defined __C99__FUNC__ \
24467      || defined __cplusplus || defined _MSC_VER)
24468 static YYSIZE_T
yystrlen(const char * yystr)24469 yystrlen (const char *yystr)
24470 #else
24471 static YYSIZE_T
24472 yystrlen (yystr)
24473     const char *yystr;
24474 #endif
24475 {
24476   YYSIZE_T yylen;
24477   for (yylen = 0; yystr[yylen]; yylen++)
24478     continue;
24479   return yylen;
24480 }
24481 #  endif
24482 # endif
24483 
24484 # ifndef yystpcpy
24485 #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
24486 #   define yystpcpy stpcpy
24487 #  else
24488 /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
24489    YYDEST.  */
24490 #if (defined __STDC__ || defined __C99__FUNC__ \
24491      || defined __cplusplus || defined _MSC_VER)
24492 static char *
yystpcpy(char * yydest,const char * yysrc)24493 yystpcpy (char *yydest, const char *yysrc)
24494 #else
24495 static char *
24496 yystpcpy (yydest, yysrc)
24497     char *yydest;
24498     const char *yysrc;
24499 #endif
24500 {
24501   char *yyd = yydest;
24502   const char *yys = yysrc;
24503 
24504   while ((*yyd++ = *yys++) != '\0')
24505     continue;
24506 
24507   return yyd - 1;
24508 }
24509 #  endif
24510 # endif
24511 
24512 # ifndef yytnamerr
24513 /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
24514    quotes and backslashes, so that it's suitable for yyerror.  The
24515    heuristic is that double-quoting is unnecessary unless the string
24516    contains an apostrophe, a comma, or backslash (other than
24517    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
24518    null, do not copy; instead, return the length of what the result
24519    would have been.  */
24520 static YYSIZE_T
yytnamerr(char * yyres,const char * yystr)24521 yytnamerr (char *yyres, const char *yystr)
24522 {
24523   if (*yystr == '"')
24524     {
24525       YYSIZE_T yyn = 0;
24526       char const *yyp = yystr;
24527 
24528       for (;;)
24529 	switch (*++yyp)
24530 	  {
24531 	  case '\'':
24532 	  case ',':
24533 	    goto do_not_strip_quotes;
24534 
24535 	  case '\\':
24536 	    if (*++yyp != '\\')
24537 	      goto do_not_strip_quotes;
24538 	    /* Fall through.  */
24539 	  default:
24540 	    if (yyres)
24541 	      yyres[yyn] = *yyp;
24542 	    yyn++;
24543 	    break;
24544 
24545 	  case '"':
24546 	    if (yyres)
24547 	      yyres[yyn] = '\0';
24548 	    return yyn;
24549 	  }
24550     do_not_strip_quotes: ;
24551     }
24552 
24553   if (! yyres)
24554     return yystrlen (yystr);
24555 
24556   return yystpcpy (yyres, yystr) - yyres;
24557 }
24558 # endif
24559 
24560 /* Copy into *YYMSG, which is of size *YYMSG_ALLOC, an error message
24561    about the unexpected token YYTOKEN for the state stack whose top is
24562    YYSSP.
24563 
24564    Return 0 if *YYMSG was successfully written.  Return 1 if *YYMSG is
24565    not large enough to hold the message.  In that case, also set
24566    *YYMSG_ALLOC to the required number of bytes.  Return 2 if the
24567    required number of bytes is too large to store.  */
24568 static int
yysyntax_error(YYSIZE_T * yymsg_alloc,char ** yymsg,yytype_int16 * yyssp,int yytoken)24569 yysyntax_error (YYSIZE_T *yymsg_alloc, char **yymsg,
24570                 yytype_int16 *yyssp, int yytoken)
24571 {
24572   YYSIZE_T yysize0 = yytnamerr (YY_NULL, yytname[yytoken]);
24573   YYSIZE_T yysize = yysize0;
24574   enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
24575   /* Internationalized format string. */
24576   const char *yyformat = YY_NULL;
24577   /* Arguments of yyformat. */
24578   char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
24579   /* Number of reported tokens (one for the "unexpected", one per
24580      "expected"). */
24581   int yycount = 0;
24582 
24583   /* There are many possibilities here to consider:
24584      - Assume YYFAIL is not used.  It's too flawed to consider.  See
24585        <http://lists.gnu.org/archive/html/bison-patches/2009-12/msg00024.html>
24586        for details.  YYERROR is fine as it does not invoke this
24587        function.
24588      - If this state is a consistent state with a default action, then
24589        the only way this function was invoked is if the default action
24590        is an error action.  In that case, don't check for expected
24591        tokens because there are none.
24592      - The only way there can be no lookahead present (in yychar) is if
24593        this state is a consistent state with a default action.  Thus,
24594        detecting the absence of a lookahead is sufficient to determine
24595        that there is no unexpected or expected token to report.  In that
24596        case, just report a simple "syntax error".
24597      - Don't assume there isn't a lookahead just because this state is a
24598        consistent state with a default action.  There might have been a
24599        previous inconsistent state, consistent state with a non-default
24600        action, or user semantic action that manipulated yychar.
24601      - Of course, the expected token list depends on states to have
24602        correct lookahead information, and it depends on the parser not
24603        to perform extra reductions after fetching a lookahead from the
24604        scanner and before detecting a syntax error.  Thus, state merging
24605        (from LALR or IELR) and default reductions corrupt the expected
24606        token list.  However, the list is correct for canonical LR with
24607        one exception: it will still contain any token that will not be
24608        accepted due to an error action in a later state.
24609   */
24610   if (yytoken != YYEMPTY)
24611     {
24612       int yyn = yypact[*yyssp];
24613       yyarg[yycount++] = yytname[yytoken];
24614       if (!yypact_value_is_default (yyn))
24615         {
24616           /* Start YYX at -YYN if negative to avoid negative indexes in
24617              YYCHECK.  In other words, skip the first -YYN actions for
24618              this state because they are default actions.  */
24619           int yyxbegin = yyn < 0 ? -yyn : 0;
24620           /* Stay within bounds of both yycheck and yytname.  */
24621           int yychecklim = YYLAST - yyn + 1;
24622           int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
24623           int yyx;
24624 
24625           for (yyx = yyxbegin; yyx < yyxend; ++yyx)
24626             if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR
24627                 && !yytable_value_is_error (yytable[yyx + yyn]))
24628               {
24629                 if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
24630                   {
24631                     yycount = 1;
24632                     yysize = yysize0;
24633                     break;
24634                   }
24635                 yyarg[yycount++] = yytname[yyx];
24636                 {
24637                   YYSIZE_T yysize1 = yysize + yytnamerr (YY_NULL, yytname[yyx]);
24638                   if (! (yysize <= yysize1
24639                          && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
24640                     return 2;
24641                   yysize = yysize1;
24642                 }
24643               }
24644         }
24645     }
24646 
24647   switch (yycount)
24648     {
24649 # define YYCASE_(N, S)                      \
24650       case N:                               \
24651         yyformat = S;                       \
24652       break
24653       YYCASE_(0, YY_("syntax error"));
24654       YYCASE_(1, YY_("syntax error, unexpected %s"));
24655       YYCASE_(2, YY_("syntax error, unexpected %s, expecting %s"));
24656       YYCASE_(3, YY_("syntax error, unexpected %s, expecting %s or %s"));
24657       YYCASE_(4, YY_("syntax error, unexpected %s, expecting %s or %s or %s"));
24658       YYCASE_(5, YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"));
24659 # undef YYCASE_
24660     }
24661 
24662   {
24663     YYSIZE_T yysize1 = yysize + yystrlen (yyformat);
24664     if (! (yysize <= yysize1 && yysize1 <= YYSTACK_ALLOC_MAXIMUM))
24665       return 2;
24666     yysize = yysize1;
24667   }
24668 
24669   if (*yymsg_alloc < yysize)
24670     {
24671       *yymsg_alloc = 2 * yysize;
24672       if (! (yysize <= *yymsg_alloc
24673              && *yymsg_alloc <= YYSTACK_ALLOC_MAXIMUM))
24674         *yymsg_alloc = YYSTACK_ALLOC_MAXIMUM;
24675       return 1;
24676     }
24677 
24678   /* Avoid sprintf, as that infringes on the user's name space.
24679      Don't have undefined behavior even if the translation
24680      produced a string with the wrong number of "%s"s.  */
24681   {
24682     char *yyp = *yymsg;
24683     int yyi = 0;
24684     while ((*yyp = *yyformat) != '\0')
24685       if (*yyp == '%' && yyformat[1] == 's' && yyi < yycount)
24686         {
24687           yyp += yytnamerr (yyp, yyarg[yyi++]);
24688           yyformat += 2;
24689         }
24690       else
24691         {
24692           yyp++;
24693           yyformat++;
24694         }
24695   }
24696   return 0;
24697 }
24698 #endif /* YYERROR_VERBOSE */
24699 
24700 /*-----------------------------------------------.
24701 | Release the memory associated to this symbol.  |
24702 `-----------------------------------------------*/
24703 
24704 /*ARGSUSED*/
24705 #if (defined __STDC__ || defined __C99__FUNC__ \
24706      || defined __cplusplus || defined _MSC_VER)
24707 static void
yydestruct(const char * yymsg,int yytype,YYSTYPE * yyvaluep,YYLTYPE * yylocationp,core_yyscan_t yyscanner)24708 yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp, core_yyscan_t yyscanner)
24709 #else
24710 static void
24711 yydestruct (yymsg, yytype, yyvaluep, yylocationp, yyscanner)
24712     const char *yymsg;
24713     int yytype;
24714     YYSTYPE *yyvaluep;
24715     YYLTYPE *yylocationp;
24716     core_yyscan_t yyscanner;
24717 #endif
24718 {
24719   YYUSE (yyvaluep);
24720   YYUSE (yylocationp);
24721   YYUSE (yyscanner);
24722 
24723   if (!yymsg)
24724     yymsg = "Deleting";
24725   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
24726 
24727   switch (yytype)
24728     {
24729 
24730       default:
24731         break;
24732     }
24733 }
24734 
24735 
24736 
24737 
24738 /*----------.
24739 | yyparse.  |
24740 `----------*/
24741 
24742 #ifdef YYPARSE_PARAM
24743 #if (defined __STDC__ || defined __C99__FUNC__ \
24744      || defined __cplusplus || defined _MSC_VER)
24745 int
yyparse(void * YYPARSE_PARAM)24746 yyparse (void *YYPARSE_PARAM)
24747 #else
24748 int
24749 yyparse (YYPARSE_PARAM)
24750     void *YYPARSE_PARAM;
24751 #endif
24752 #else /* ! YYPARSE_PARAM */
24753 #if (defined __STDC__ || defined __C99__FUNC__ \
24754      || defined __cplusplus || defined _MSC_VER)
24755 int
24756 yyparse (core_yyscan_t yyscanner)
24757 #else
24758 int
24759 yyparse (yyscanner)
24760     core_yyscan_t yyscanner;
24761 #endif
24762 #endif
24763 {
24764 /* The lookahead symbol.  */
24765 int yychar;
24766 
24767 
24768 #if defined __GNUC__ && 407 <= __GNUC__ * 100 + __GNUC_MINOR__
24769 /* Suppress an incorrect diagnostic about yylval being uninitialized.  */
24770 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
24771     _Pragma ("GCC diagnostic push") \
24772     _Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")\
24773     _Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
24774 # define YY_IGNORE_MAYBE_UNINITIALIZED_END \
24775     _Pragma ("GCC diagnostic pop")
24776 #else
24777 /* Default value used for initialization, for pacifying older GCCs
24778    or non-GCC compilers.  */
24779 static YYSTYPE yyval_default;
24780 # define YY_INITIAL_VALUE(Value) = Value
24781 #endif
24782 static YYLTYPE yyloc_default
24783 # if defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL
24784   = { 1, 1, 1, 1 }
24785 # endif
24786 ;
24787 #ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
24788 # define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
24789 # define YY_IGNORE_MAYBE_UNINITIALIZED_END
24790 #endif
24791 #ifndef YY_INITIAL_VALUE
24792 # define YY_INITIAL_VALUE(Value) /* Nothing. */
24793 #endif
24794 
24795 /* The semantic value of the lookahead symbol.  */
24796 YYSTYPE yylval YY_INITIAL_VALUE(yyval_default);
24797 
24798 /* Location data for the lookahead symbol.  */
24799 YYLTYPE yylloc = yyloc_default;
24800 
24801 
24802     /* Number of syntax errors so far.  */
24803     int yynerrs;
24804 
24805     int yystate;
24806     /* Number of tokens to shift before error messages enabled.  */
24807     int yyerrstatus;
24808 
24809     /* The stacks and their tools:
24810        `yyss': related to states.
24811        `yyvs': related to semantic values.
24812        `yyls': related to locations.
24813 
24814        Refer to the stacks through separate pointers, to allow yyoverflow
24815        to reallocate them elsewhere.  */
24816 
24817     /* The state stack.  */
24818     yytype_int16 yyssa[YYINITDEPTH];
24819     yytype_int16 *yyss;
24820     yytype_int16 *yyssp;
24821 
24822     /* The semantic value stack.  */
24823     YYSTYPE yyvsa[YYINITDEPTH];
24824     YYSTYPE *yyvs;
24825     YYSTYPE *yyvsp;
24826 
24827     /* The location stack.  */
24828     YYLTYPE yylsa[YYINITDEPTH];
24829     YYLTYPE *yyls;
24830     YYLTYPE *yylsp;
24831 
24832     /* The locations where the error started and ended.  */
24833     YYLTYPE yyerror_range[3];
24834 
24835     YYSIZE_T yystacksize;
24836 
24837   int yyn;
24838   int yyresult;
24839   /* Lookahead token as an internal (translated) token number.  */
24840   int yytoken = 0;
24841   /* The variables used to return semantic value and location from the
24842      action routines.  */
24843   YYSTYPE yyval;
24844   YYLTYPE yyloc;
24845 
24846 #if YYERROR_VERBOSE
24847   /* Buffer for error messages, and its allocated size.  */
24848   char yymsgbuf[128];
24849   char *yymsg = yymsgbuf;
24850   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
24851 #endif
24852 
24853 #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N), yylsp -= (N))
24854 
24855   /* The number of symbols on the RHS of the reduced rule.
24856      Keep to zero when no symbol should be popped.  */
24857   int yylen = 0;
24858 
24859   yyssp = yyss = yyssa;
24860   yyvsp = yyvs = yyvsa;
24861   yylsp = yyls = yylsa;
24862   yystacksize = YYINITDEPTH;
24863 
24864   YYDPRINTF ((stderr, "Starting parse\n"));
24865 
24866   yystate = 0;
24867   yyerrstatus = 0;
24868   yynerrs = 0;
24869   yychar = YYEMPTY; /* Cause a token to be read.  */
24870   yylsp[0] = yylloc;
24871   goto yysetstate;
24872 
24873 /*------------------------------------------------------------.
24874 | yynewstate -- Push a new state, which is found in yystate.  |
24875 `------------------------------------------------------------*/
24876  yynewstate:
24877   /* In all cases, when you get here, the value and location stacks
24878      have just been pushed.  So pushing a state here evens the stacks.  */
24879   yyssp++;
24880 
24881  yysetstate:
24882   *yyssp = yystate;
24883 
24884   if (yyss + yystacksize - 1 <= yyssp)
24885     {
24886       /* Get the current used size of the three stacks, in elements.  */
24887       YYSIZE_T yysize = yyssp - yyss + 1;
24888 
24889 #ifdef yyoverflow
24890       {
24891 	/* Give user a chance to reallocate the stack.  Use copies of
24892 	   these so that the &'s don't force the real ones into
24893 	   memory.  */
24894 	YYSTYPE *yyvs1 = yyvs;
24895 	yytype_int16 *yyss1 = yyss;
24896 	YYLTYPE *yyls1 = yyls;
24897 
24898 	/* Each stack pointer address is followed by the size of the
24899 	   data in use in that stack, in bytes.  This used to be a
24900 	   conditional around just the two extra args, but that might
24901 	   be undefined if yyoverflow is a macro.  */
24902 	yyoverflow (YY_("memory exhausted"),
24903 		    &yyss1, yysize * sizeof (*yyssp),
24904 		    &yyvs1, yysize * sizeof (*yyvsp),
24905 		    &yyls1, yysize * sizeof (*yylsp),
24906 		    &yystacksize);
24907 
24908 	yyls = yyls1;
24909 	yyss = yyss1;
24910 	yyvs = yyvs1;
24911       }
24912 #else /* no yyoverflow */
24913 # ifndef YYSTACK_RELOCATE
24914       goto yyexhaustedlab;
24915 # else
24916       /* Extend the stack our own way.  */
24917       if (YYMAXDEPTH <= yystacksize)
24918 	goto yyexhaustedlab;
24919       yystacksize *= 2;
24920       if (YYMAXDEPTH < yystacksize)
24921 	yystacksize = YYMAXDEPTH;
24922 
24923       {
24924 	yytype_int16 *yyss1 = yyss;
24925 	union yyalloc *yyptr =
24926 	  (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
24927 	if (! yyptr)
24928 	  goto yyexhaustedlab;
24929 	YYSTACK_RELOCATE (yyss_alloc, yyss);
24930 	YYSTACK_RELOCATE (yyvs_alloc, yyvs);
24931 	YYSTACK_RELOCATE (yyls_alloc, yyls);
24932 #  undef YYSTACK_RELOCATE
24933 	if (yyss1 != yyssa)
24934 	  YYSTACK_FREE (yyss1);
24935       }
24936 # endif
24937 #endif /* no yyoverflow */
24938 
24939       yyssp = yyss + yysize - 1;
24940       yyvsp = yyvs + yysize - 1;
24941       yylsp = yyls + yysize - 1;
24942 
24943       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
24944 		  (unsigned long int) yystacksize));
24945 
24946       if (yyss + yystacksize - 1 <= yyssp)
24947 	YYABORT;
24948     }
24949 
24950   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
24951 
24952   if (yystate == YYFINAL)
24953     YYACCEPT;
24954 
24955   goto yybackup;
24956 
24957 /*-----------.
24958 | yybackup.  |
24959 `-----------*/
24960 yybackup:
24961 
24962   /* Do appropriate processing given the current state.  Read a
24963      lookahead token if we need one and don't already have one.  */
24964 
24965   /* First try to decide what to do without reference to lookahead token.  */
24966   yyn = yypact[yystate];
24967   if (yypact_value_is_default (yyn))
24968     goto yydefault;
24969 
24970   /* Not known => get a lookahead token if don't already have one.  */
24971 
24972   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
24973   if (yychar == YYEMPTY)
24974     {
24975       YYDPRINTF ((stderr, "Reading a token: "));
24976       yychar = YYLEX;
24977     }
24978 
24979   if (yychar <= YYEOF)
24980     {
24981       yychar = yytoken = YYEOF;
24982       YYDPRINTF ((stderr, "Now at end of input.\n"));
24983     }
24984   else
24985     {
24986       yytoken = YYTRANSLATE (yychar);
24987       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
24988     }
24989 
24990   /* If the proper action on seeing token YYTOKEN is to reduce or to
24991      detect an error, take that action.  */
24992   yyn += yytoken;
24993   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
24994     goto yydefault;
24995   yyn = yytable[yyn];
24996   if (yyn <= 0)
24997     {
24998       if (yytable_value_is_error (yyn))
24999         goto yyerrlab;
25000       yyn = -yyn;
25001       goto yyreduce;
25002     }
25003 
25004   /* Count tokens shifted since error; after three, turn off error
25005      status.  */
25006   if (yyerrstatus)
25007     yyerrstatus--;
25008 
25009   /* Shift the lookahead token.  */
25010   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
25011 
25012   /* Discard the shifted token.  */
25013   yychar = YYEMPTY;
25014 
25015   yystate = yyn;
25016   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
25017   *++yyvsp = yylval;
25018   YY_IGNORE_MAYBE_UNINITIALIZED_END
25019   *++yylsp = yylloc;
25020   goto yynewstate;
25021 
25022 
25023 /*-----------------------------------------------------------.
25024 | yydefault -- do the default action for the current state.  |
25025 `-----------------------------------------------------------*/
25026 yydefault:
25027   yyn = yydefact[yystate];
25028   if (yyn == 0)
25029     goto yyerrlab;
25030   goto yyreduce;
25031 
25032 
25033 /*-----------------------------.
25034 | yyreduce -- Do a reduction.  |
25035 `-----------------------------*/
25036 yyreduce:
25037   /* yyn is the number of a rule to reduce with.  */
25038   yylen = yyr2[yyn];
25039 
25040   /* If YYLEN is nonzero, implement the default value of the action:
25041      `$$ = $1'.
25042 
25043      Otherwise, the following line sets YYVAL to garbage.
25044      This behavior is undocumented and Bison
25045      users should not rely upon it.  Assigning to YYVAL
25046      unconditionally makes the parser a bit smaller, and it avoids a
25047      GCC warning that YYVAL may be used uninitialized.  */
25048   yyval = yyvsp[1-yylen];
25049 
25050   /* Default location.  */
25051   YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen);
25052   YY_REDUCE_PRINT (yyn);
25053   switch (yyn)
25054     {
25055         case 2:
25056 /* Line 1792 of yacc.c  */
25057 #line 770 "gram.y"
25058     {
25059 				pg_yyget_extra(yyscanner)->parsetree = (yyvsp[(1) - (1)].list);
25060 			}
25061     break;
25062 
25063   case 3:
25064 /* Line 1792 of yacc.c  */
25065 #line 777 "gram.y"
25066     {
25067 					if ((yyvsp[(3) - (3)].node) != NULL)
25068 						(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
25069 					else
25070 						(yyval.list) = (yyvsp[(1) - (3)].list);
25071 				}
25072     break;
25073 
25074   case 4:
25075 /* Line 1792 of yacc.c  */
25076 #line 784 "gram.y"
25077     {
25078 					if ((yyvsp[(1) - (1)].node) != NULL)
25079 						(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
25080 					else
25081 						(yyval.list) = NIL;
25082 				}
25083     break;
25084 
25085   case 130:
25086 /* Line 1792 of yacc.c  */
25087 #line 919 "gram.y"
25088     { (yyval.node) = NULL; }
25089     break;
25090 
25091   case 131:
25092 /* Line 1792 of yacc.c  */
25093 #line 930 "gram.y"
25094     {
25095 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
25096 					n->stmt_type = ROLESTMT_ROLE;
25097 					n->role = (yyvsp[(3) - (5)].str);
25098 					n->options = (yyvsp[(5) - (5)].list);
25099 					(yyval.node) = (Node *)n;
25100 				}
25101     break;
25102 
25103   case 132:
25104 /* Line 1792 of yacc.c  */
25105 #line 940 "gram.y"
25106     {}
25107     break;
25108 
25109   case 133:
25110 /* Line 1792 of yacc.c  */
25111 #line 941 "gram.y"
25112     {}
25113     break;
25114 
25115   case 134:
25116 /* Line 1792 of yacc.c  */
25117 #line 942 "gram.y"
25118     {}
25119     break;
25120 
25121   case 135:
25122 /* Line 1792 of yacc.c  */
25123 #line 951 "gram.y"
25124     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
25125     break;
25126 
25127   case 136:
25128 /* Line 1792 of yacc.c  */
25129 #line 952 "gram.y"
25130     { (yyval.list) = NIL; }
25131     break;
25132 
25133   case 137:
25134 /* Line 1792 of yacc.c  */
25135 #line 956 "gram.y"
25136     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
25137     break;
25138 
25139   case 138:
25140 /* Line 1792 of yacc.c  */
25141 #line 957 "gram.y"
25142     { (yyval.list) = NIL; }
25143     break;
25144 
25145   case 139:
25146 /* Line 1792 of yacc.c  */
25147 #line 962 "gram.y"
25148     {
25149 					(yyval.defelt) = makeDefElem("password",
25150 									 (Node *)makeString((yyvsp[(2) - (2)].str)));
25151 				}
25152     break;
25153 
25154   case 140:
25155 /* Line 1792 of yacc.c  */
25156 #line 967 "gram.y"
25157     {
25158 					(yyval.defelt) = makeDefElem("password", NULL);
25159 				}
25160     break;
25161 
25162   case 141:
25163 /* Line 1792 of yacc.c  */
25164 #line 971 "gram.y"
25165     {
25166 					(yyval.defelt) = makeDefElem("encryptedPassword",
25167 									 (Node *)makeString((yyvsp[(3) - (3)].str)));
25168 				}
25169     break;
25170 
25171   case 142:
25172 /* Line 1792 of yacc.c  */
25173 #line 976 "gram.y"
25174     {
25175 					(yyval.defelt) = makeDefElem("unencryptedPassword",
25176 									 (Node *)makeString((yyvsp[(3) - (3)].str)));
25177 				}
25178     break;
25179 
25180   case 143:
25181 /* Line 1792 of yacc.c  */
25182 #line 981 "gram.y"
25183     {
25184 					(yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(TRUE));
25185 				}
25186     break;
25187 
25188   case 144:
25189 /* Line 1792 of yacc.c  */
25190 #line 985 "gram.y"
25191     {
25192 					(yyval.defelt) = makeDefElem("connectionlimit", (Node *)makeInteger((yyvsp[(3) - (3)].ival)));
25193 				}
25194     break;
25195 
25196   case 145:
25197 /* Line 1792 of yacc.c  */
25198 #line 989 "gram.y"
25199     {
25200 					(yyval.defelt) = makeDefElem("validUntil", (Node *)makeString((yyvsp[(3) - (3)].str)));
25201 				}
25202     break;
25203 
25204   case 146:
25205 /* Line 1792 of yacc.c  */
25206 #line 994 "gram.y"
25207     {
25208 					(yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[(2) - (2)].list));
25209 				}
25210     break;
25211 
25212   case 147:
25213 /* Line 1792 of yacc.c  */
25214 #line 998 "gram.y"
25215     {
25216 					/*
25217 					 * We handle identifiers that aren't parser keywords with
25218 					 * the following special-case codes, to avoid bloating the
25219 					 * size of the main parser.
25220 					 */
25221 					if (strcmp((yyvsp[(1) - (1)].str), "superuser") == 0)
25222 						(yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(TRUE));
25223 					else if (strcmp((yyvsp[(1) - (1)].str), "nosuperuser") == 0)
25224 						(yyval.defelt) = makeDefElem("superuser", (Node *)makeInteger(FALSE));
25225 					else if (strcmp((yyvsp[(1) - (1)].str), "createrole") == 0)
25226 						(yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(TRUE));
25227 					else if (strcmp((yyvsp[(1) - (1)].str), "nocreaterole") == 0)
25228 						(yyval.defelt) = makeDefElem("createrole", (Node *)makeInteger(FALSE));
25229 					else if (strcmp((yyvsp[(1) - (1)].str), "replication") == 0)
25230 						(yyval.defelt) = makeDefElem("isreplication", (Node *)makeInteger(TRUE));
25231 					else if (strcmp((yyvsp[(1) - (1)].str), "noreplication") == 0)
25232 						(yyval.defelt) = makeDefElem("isreplication", (Node *)makeInteger(FALSE));
25233 					else if (strcmp((yyvsp[(1) - (1)].str), "createdb") == 0)
25234 						(yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(TRUE));
25235 					else if (strcmp((yyvsp[(1) - (1)].str), "nocreatedb") == 0)
25236 						(yyval.defelt) = makeDefElem("createdb", (Node *)makeInteger(FALSE));
25237 					else if (strcmp((yyvsp[(1) - (1)].str), "login") == 0)
25238 						(yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(TRUE));
25239 					else if (strcmp((yyvsp[(1) - (1)].str), "nologin") == 0)
25240 						(yyval.defelt) = makeDefElem("canlogin", (Node *)makeInteger(FALSE));
25241 					else if (strcmp((yyvsp[(1) - (1)].str), "bypassrls") == 0)
25242 						(yyval.defelt) = makeDefElem("bypassrls", (Node *)makeInteger(TRUE));
25243 					else if (strcmp((yyvsp[(1) - (1)].str), "nobypassrls") == 0)
25244 						(yyval.defelt) = makeDefElem("bypassrls", (Node *)makeInteger(FALSE));
25245 					else if (strcmp((yyvsp[(1) - (1)].str), "noinherit") == 0)
25246 					{
25247 						/*
25248 						 * Note that INHERIT is a keyword, so it's handled by main parser, but
25249 						 * NOINHERIT is handled here.
25250 						 */
25251 						(yyval.defelt) = makeDefElem("inherit", (Node *)makeInteger(FALSE));
25252 					}
25253 					else
25254 						ereport(ERROR,
25255 								(errcode(ERRCODE_SYNTAX_ERROR),
25256 								 errmsg("unrecognized role option \"%s\"", (yyvsp[(1) - (1)].str)),
25257 									 parser_errposition((yylsp[(1) - (1)]))));
25258 				}
25259     break;
25260 
25261   case 148:
25262 /* Line 1792 of yacc.c  */
25263 #line 1045 "gram.y"
25264     { (yyval.defelt) = (yyvsp[(1) - (1)].defelt); }
25265     break;
25266 
25267   case 149:
25268 /* Line 1792 of yacc.c  */
25269 #line 1048 "gram.y"
25270     {
25271 					(yyval.defelt) = makeDefElem("sysid", (Node *)makeInteger((yyvsp[(2) - (2)].ival)));
25272 				}
25273     break;
25274 
25275   case 150:
25276 /* Line 1792 of yacc.c  */
25277 #line 1052 "gram.y"
25278     {
25279 					(yyval.defelt) = makeDefElem("adminmembers", (Node *)(yyvsp[(2) - (2)].list));
25280 				}
25281     break;
25282 
25283   case 151:
25284 /* Line 1792 of yacc.c  */
25285 #line 1056 "gram.y"
25286     {
25287 					(yyval.defelt) = makeDefElem("rolemembers", (Node *)(yyvsp[(2) - (2)].list));
25288 				}
25289     break;
25290 
25291   case 152:
25292 /* Line 1792 of yacc.c  */
25293 #line 1060 "gram.y"
25294     {
25295 					(yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[(3) - (3)].list));
25296 				}
25297     break;
25298 
25299   case 153:
25300 /* Line 1792 of yacc.c  */
25301 #line 1064 "gram.y"
25302     {
25303 					(yyval.defelt) = makeDefElem("addroleto", (Node *)(yyvsp[(3) - (3)].list));
25304 				}
25305     break;
25306 
25307   case 154:
25308 /* Line 1792 of yacc.c  */
25309 #line 1078 "gram.y"
25310     {
25311 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
25312 					n->stmt_type = ROLESTMT_USER;
25313 					n->role = (yyvsp[(3) - (5)].str);
25314 					n->options = (yyvsp[(5) - (5)].list);
25315 					(yyval.node) = (Node *)n;
25316 				}
25317     break;
25318 
25319   case 155:
25320 /* Line 1792 of yacc.c  */
25321 #line 1096 "gram.y"
25322     {
25323 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
25324 					n->role = (yyvsp[(3) - (5)].node);
25325 					n->action = +1;	/* add, if there are members */
25326 					n->options = (yyvsp[(5) - (5)].list);
25327 					(yyval.node) = (Node *)n;
25328 				 }
25329     break;
25330 
25331   case 156:
25332 /* Line 1792 of yacc.c  */
25333 #line 1106 "gram.y"
25334     { (yyval.str) = NULL; }
25335     break;
25336 
25337   case 157:
25338 /* Line 1792 of yacc.c  */
25339 #line 1107 "gram.y"
25340     { (yyval.str) = (yyvsp[(3) - (3)].str); }
25341     break;
25342 
25343   case 158:
25344 /* Line 1792 of yacc.c  */
25345 #line 1112 "gram.y"
25346     {
25347 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
25348 					n->role = (yyvsp[(3) - (5)].node);
25349 					n->database = (yyvsp[(4) - (5)].str);
25350 					n->setstmt = (yyvsp[(5) - (5)].vsetstmt);
25351 					(yyval.node) = (Node *)n;
25352 				}
25353     break;
25354 
25355   case 159:
25356 /* Line 1792 of yacc.c  */
25357 #line 1120 "gram.y"
25358     {
25359 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
25360 					n->role = NULL;
25361 					n->database = (yyvsp[(4) - (5)].str);
25362 					n->setstmt = (yyvsp[(5) - (5)].vsetstmt);
25363 					(yyval.node) = (Node *)n;
25364 				}
25365     break;
25366 
25367   case 160:
25368 /* Line 1792 of yacc.c  */
25369 #line 1138 "gram.y"
25370     {
25371 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
25372 					n->role = (yyvsp[(3) - (5)].node);
25373 					n->action = +1;	/* add, if there are members */
25374 					n->options = (yyvsp[(5) - (5)].list);
25375 					(yyval.node) = (Node *)n;
25376 				 }
25377     break;
25378 
25379   case 161:
25380 /* Line 1792 of yacc.c  */
25381 #line 1150 "gram.y"
25382     {
25383 					AlterRoleSetStmt *n = makeNode(AlterRoleSetStmt);
25384 					n->role = (yyvsp[(3) - (4)].node);
25385 					n->database = NULL;
25386 					n->setstmt = (yyvsp[(4) - (4)].vsetstmt);
25387 					(yyval.node) = (Node *)n;
25388 				}
25389     break;
25390 
25391   case 162:
25392 /* Line 1792 of yacc.c  */
25393 #line 1171 "gram.y"
25394     {
25395 					DropRoleStmt *n = makeNode(DropRoleStmt);
25396 					n->missing_ok = FALSE;
25397 					n->roles = (yyvsp[(3) - (3)].list);
25398 					(yyval.node) = (Node *)n;
25399 				}
25400     break;
25401 
25402   case 163:
25403 /* Line 1792 of yacc.c  */
25404 #line 1178 "gram.y"
25405     {
25406 					DropRoleStmt *n = makeNode(DropRoleStmt);
25407 					n->missing_ok = TRUE;
25408 					n->roles = (yyvsp[(5) - (5)].list);
25409 					(yyval.node) = (Node *)n;
25410 				}
25411     break;
25412 
25413   case 164:
25414 /* Line 1792 of yacc.c  */
25415 #line 1197 "gram.y"
25416     {
25417 					DropRoleStmt *n = makeNode(DropRoleStmt);
25418 					n->missing_ok = FALSE;
25419 					n->roles = (yyvsp[(3) - (3)].list);
25420 					(yyval.node) = (Node *)n;
25421 				}
25422     break;
25423 
25424   case 165:
25425 /* Line 1792 of yacc.c  */
25426 #line 1204 "gram.y"
25427     {
25428 					DropRoleStmt *n = makeNode(DropRoleStmt);
25429 					n->roles = (yyvsp[(5) - (5)].list);
25430 					n->missing_ok = TRUE;
25431 					(yyval.node) = (Node *)n;
25432 				}
25433     break;
25434 
25435   case 166:
25436 /* Line 1792 of yacc.c  */
25437 #line 1221 "gram.y"
25438     {
25439 					CreateRoleStmt *n = makeNode(CreateRoleStmt);
25440 					n->stmt_type = ROLESTMT_GROUP;
25441 					n->role = (yyvsp[(3) - (5)].str);
25442 					n->options = (yyvsp[(5) - (5)].list);
25443 					(yyval.node) = (Node *)n;
25444 				}
25445     break;
25446 
25447   case 167:
25448 /* Line 1792 of yacc.c  */
25449 #line 1239 "gram.y"
25450     {
25451 					AlterRoleStmt *n = makeNode(AlterRoleStmt);
25452 					n->role = (yyvsp[(3) - (6)].node);
25453 					n->action = (yyvsp[(4) - (6)].ival);
25454 					n->options = list_make1(makeDefElem("rolemembers",
25455 														(Node *)(yyvsp[(6) - (6)].list)));
25456 					(yyval.node) = (Node *)n;
25457 				}
25458     break;
25459 
25460   case 168:
25461 /* Line 1792 of yacc.c  */
25462 #line 1249 "gram.y"
25463     { (yyval.ival) = +1; }
25464     break;
25465 
25466   case 169:
25467 /* Line 1792 of yacc.c  */
25468 #line 1250 "gram.y"
25469     { (yyval.ival) = -1; }
25470     break;
25471 
25472   case 170:
25473 /* Line 1792 of yacc.c  */
25474 #line 1263 "gram.y"
25475     {
25476 					DropRoleStmt *n = makeNode(DropRoleStmt);
25477 					n->missing_ok = FALSE;
25478 					n->roles = (yyvsp[(3) - (3)].list);
25479 					(yyval.node) = (Node *)n;
25480 				}
25481     break;
25482 
25483   case 171:
25484 /* Line 1792 of yacc.c  */
25485 #line 1270 "gram.y"
25486     {
25487 					DropRoleStmt *n = makeNode(DropRoleStmt);
25488 					n->missing_ok = TRUE;
25489 					n->roles = (yyvsp[(5) - (5)].list);
25490 					(yyval.node) = (Node *)n;
25491 				}
25492     break;
25493 
25494   case 172:
25495 /* Line 1792 of yacc.c  */
25496 #line 1287 "gram.y"
25497     {
25498 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
25499 					/* One can omit the schema name or the authorization id. */
25500 					n->schemaname = (yyvsp[(3) - (6)].str);
25501 					n->authrole = (yyvsp[(5) - (6)].node);
25502 					n->schemaElts = (yyvsp[(6) - (6)].list);
25503 					n->if_not_exists = false;
25504 					(yyval.node) = (Node *)n;
25505 				}
25506     break;
25507 
25508   case 173:
25509 /* Line 1792 of yacc.c  */
25510 #line 1297 "gram.y"
25511     {
25512 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
25513 					/* ...but not both */
25514 					n->schemaname = (yyvsp[(3) - (4)].str);
25515 					n->authrole = NULL;
25516 					n->schemaElts = (yyvsp[(4) - (4)].list);
25517 					n->if_not_exists = false;
25518 					(yyval.node) = (Node *)n;
25519 				}
25520     break;
25521 
25522   case 174:
25523 /* Line 1792 of yacc.c  */
25524 #line 1307 "gram.y"
25525     {
25526 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
25527 					/* schema name can be omitted here, too */
25528 					n->schemaname = (yyvsp[(6) - (9)].str);
25529 					n->authrole = (yyvsp[(8) - (9)].node);
25530 					if ((yyvsp[(9) - (9)].list) != NIL)
25531 						ereport(ERROR,
25532 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
25533 								 errmsg("CREATE SCHEMA IF NOT EXISTS cannot include schema elements"),
25534 								 parser_errposition((yylsp[(9) - (9)]))));
25535 					n->schemaElts = (yyvsp[(9) - (9)].list);
25536 					n->if_not_exists = true;
25537 					(yyval.node) = (Node *)n;
25538 				}
25539     break;
25540 
25541   case 175:
25542 /* Line 1792 of yacc.c  */
25543 #line 1322 "gram.y"
25544     {
25545 					CreateSchemaStmt *n = makeNode(CreateSchemaStmt);
25546 					/* ...but not here */
25547 					n->schemaname = (yyvsp[(6) - (7)].str);
25548 					n->authrole = NULL;
25549 					if ((yyvsp[(7) - (7)].list) != NIL)
25550 						ereport(ERROR,
25551 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
25552 								 errmsg("CREATE SCHEMA IF NOT EXISTS cannot include schema elements"),
25553 								 parser_errposition((yylsp[(7) - (7)]))));
25554 					n->schemaElts = (yyvsp[(7) - (7)].list);
25555 					n->if_not_exists = true;
25556 					(yyval.node) = (Node *)n;
25557 				}
25558     break;
25559 
25560   case 176:
25561 /* Line 1792 of yacc.c  */
25562 #line 1339 "gram.y"
25563     { (yyval.str) = (yyvsp[(1) - (1)].str); }
25564     break;
25565 
25566   case 177:
25567 /* Line 1792 of yacc.c  */
25568 #line 1340 "gram.y"
25569     { (yyval.str) = NULL; }
25570     break;
25571 
25572   case 178:
25573 /* Line 1792 of yacc.c  */
25574 #line 1345 "gram.y"
25575     {
25576 					if ((yyloc) < 0)			/* see comments for YYLLOC_DEFAULT */
25577 						(yyloc) = (yylsp[(2) - (2)]);
25578 					(yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node));
25579 				}
25580     break;
25581 
25582   case 179:
25583 /* Line 1792 of yacc.c  */
25584 #line 1351 "gram.y"
25585     { (yyval.list) = NIL; }
25586     break;
25587 
25588   case 186:
25589 /* Line 1792 of yacc.c  */
25590 #line 1379 "gram.y"
25591     {
25592 					VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt);
25593 					n->type = T_PgpoolVariableSetStmt; /* Hack to keep changes minumum */
25594 					n->is_local = false;
25595 					(yyval.node) = (Node *) n;
25596 				}
25597     break;
25598 
25599   case 187:
25600 /* Line 1792 of yacc.c  */
25601 #line 1386 "gram.y"
25602     {
25603 					VariableSetStmt *n = (yyvsp[(2) - (2)].vsetstmt);
25604 					n->is_local = false;
25605 					(yyval.node) = (Node *) n;
25606 				}
25607     break;
25608 
25609   case 188:
25610 /* Line 1792 of yacc.c  */
25611 #line 1392 "gram.y"
25612     {
25613 					VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt);
25614 					n->is_local = true;
25615 					(yyval.node) = (Node *) n;
25616 				}
25617     break;
25618 
25619   case 189:
25620 /* Line 1792 of yacc.c  */
25621 #line 1398 "gram.y"
25622     {
25623 					VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt);
25624 					n->is_local = false;
25625 					(yyval.node) = (Node *) n;
25626 				}
25627     break;
25628 
25629   case 190:
25630 /* Line 1792 of yacc.c  */
25631 #line 1407 "gram.y"
25632     {
25633 					VariableSetStmt *n = makeNode(VariableSetStmt);
25634 					n->kind = VAR_SET_MULTI;
25635 					n->name = "TRANSACTION";
25636 					n->args = (yyvsp[(2) - (2)].list);
25637 					(yyval.vsetstmt) = n;
25638 				}
25639     break;
25640 
25641   case 191:
25642 /* Line 1792 of yacc.c  */
25643 #line 1415 "gram.y"
25644     {
25645 					VariableSetStmt *n = makeNode(VariableSetStmt);
25646 					n->kind = VAR_SET_MULTI;
25647 					n->name = "SESSION CHARACTERISTICS";
25648 					n->args = (yyvsp[(5) - (5)].list);
25649 					(yyval.vsetstmt) = n;
25650 				}
25651     break;
25652 
25653   case 193:
25654 /* Line 1792 of yacc.c  */
25655 #line 1427 "gram.y"
25656     {
25657 					VariableSetStmt *n = makeNode(VariableSetStmt);
25658 					n->kind = VAR_SET_VALUE;
25659 					n->name = (yyvsp[(1) - (3)].str);
25660 					n->args = (yyvsp[(3) - (3)].list);
25661 					(yyval.vsetstmt) = n;
25662 				}
25663     break;
25664 
25665   case 194:
25666 /* Line 1792 of yacc.c  */
25667 #line 1435 "gram.y"
25668     {
25669 					VariableSetStmt *n = makeNode(VariableSetStmt);
25670 					n->kind = VAR_SET_VALUE;
25671 					n->name = (yyvsp[(1) - (3)].str);
25672 					n->args = (yyvsp[(3) - (3)].list);
25673 					(yyval.vsetstmt) = n;
25674 				}
25675     break;
25676 
25677   case 195:
25678 /* Line 1792 of yacc.c  */
25679 #line 1443 "gram.y"
25680     {
25681 					VariableSetStmt *n = makeNode(VariableSetStmt);
25682 					n->kind = VAR_SET_DEFAULT;
25683 					n->name = (yyvsp[(1) - (3)].str);
25684 					(yyval.vsetstmt) = n;
25685 				}
25686     break;
25687 
25688   case 196:
25689 /* Line 1792 of yacc.c  */
25690 #line 1450 "gram.y"
25691     {
25692 					VariableSetStmt *n = makeNode(VariableSetStmt);
25693 					n->kind = VAR_SET_DEFAULT;
25694 					n->name = (yyvsp[(1) - (3)].str);
25695 					(yyval.vsetstmt) = n;
25696 				}
25697     break;
25698 
25699   case 197:
25700 /* Line 1792 of yacc.c  */
25701 #line 1458 "gram.y"
25702     {(yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt);}
25703     break;
25704 
25705   case 198:
25706 /* Line 1792 of yacc.c  */
25707 #line 1460 "gram.y"
25708     {
25709 					VariableSetStmt *n = makeNode(VariableSetStmt);
25710 					n->kind = VAR_SET_CURRENT;
25711 					n->name = (yyvsp[(1) - (3)].str);
25712 					(yyval.vsetstmt) = n;
25713 				}
25714     break;
25715 
25716   case 199:
25717 /* Line 1792 of yacc.c  */
25718 #line 1468 "gram.y"
25719     {
25720 					VariableSetStmt *n = makeNode(VariableSetStmt);
25721 					n->kind = VAR_SET_VALUE;
25722 					n->name = "timezone";
25723 					if ((yyvsp[(3) - (3)].node) != NULL)
25724 						n->args = list_make1((yyvsp[(3) - (3)].node));
25725 					else
25726 						n->kind = VAR_SET_DEFAULT;
25727 					(yyval.vsetstmt) = n;
25728 				}
25729     break;
25730 
25731   case 200:
25732 /* Line 1792 of yacc.c  */
25733 #line 1479 "gram.y"
25734     {
25735 					ereport(ERROR,
25736 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
25737 							 errmsg("current database cannot be changed"),
25738 							 parser_errposition((yylsp[(2) - (2)]))));
25739 					(yyval.vsetstmt) = NULL; /*not reached*/
25740 				}
25741     break;
25742 
25743   case 201:
25744 /* Line 1792 of yacc.c  */
25745 #line 1487 "gram.y"
25746     {
25747 					VariableSetStmt *n = makeNode(VariableSetStmt);
25748 					n->kind = VAR_SET_VALUE;
25749 					n->name = "search_path";
25750 					n->args = list_make1(makeStringConst((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)])));
25751 					(yyval.vsetstmt) = n;
25752 				}
25753     break;
25754 
25755   case 202:
25756 /* Line 1792 of yacc.c  */
25757 #line 1495 "gram.y"
25758     {
25759 					VariableSetStmt *n = makeNode(VariableSetStmt);
25760 					n->kind = VAR_SET_VALUE;
25761 					n->name = "client_encoding";
25762 					if ((yyvsp[(2) - (2)].str) != NULL)
25763 						n->args = list_make1(makeStringConst((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)])));
25764 					else
25765 						n->kind = VAR_SET_DEFAULT;
25766 					(yyval.vsetstmt) = n;
25767 				}
25768     break;
25769 
25770   case 203:
25771 /* Line 1792 of yacc.c  */
25772 #line 1506 "gram.y"
25773     {
25774 					VariableSetStmt *n = makeNode(VariableSetStmt);
25775 					n->kind = VAR_SET_VALUE;
25776 					n->name = "role";
25777 					n->args = list_make1(makeStringConst((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)])));
25778 					(yyval.vsetstmt) = n;
25779 				}
25780     break;
25781 
25782   case 204:
25783 /* Line 1792 of yacc.c  */
25784 #line 1514 "gram.y"
25785     {
25786 					VariableSetStmt *n = makeNode(VariableSetStmt);
25787 					n->kind = VAR_SET_VALUE;
25788 					n->name = "session_authorization";
25789 					n->args = list_make1(makeStringConst((yyvsp[(3) - (3)].str), (yylsp[(3) - (3)])));
25790 					(yyval.vsetstmt) = n;
25791 				}
25792     break;
25793 
25794   case 205:
25795 /* Line 1792 of yacc.c  */
25796 #line 1522 "gram.y"
25797     {
25798 					VariableSetStmt *n = makeNode(VariableSetStmt);
25799 					n->kind = VAR_SET_DEFAULT;
25800 					n->name = "session_authorization";
25801 					(yyval.vsetstmt) = n;
25802 				}
25803     break;
25804 
25805   case 206:
25806 /* Line 1792 of yacc.c  */
25807 #line 1529 "gram.y"
25808     {
25809 					VariableSetStmt *n = makeNode(VariableSetStmt);
25810 					n->kind = VAR_SET_VALUE;
25811 					n->name = "xmloption";
25812 					n->args = list_make1(makeStringConst((yyvsp[(3) - (3)].ival) == XMLOPTION_DOCUMENT ? "DOCUMENT" : "CONTENT", (yylsp[(3) - (3)])));
25813 					(yyval.vsetstmt) = n;
25814 				}
25815     break;
25816 
25817   case 207:
25818 /* Line 1792 of yacc.c  */
25819 #line 1538 "gram.y"
25820     {
25821 					VariableSetStmt *n = makeNode(VariableSetStmt);
25822 					n->kind = VAR_SET_MULTI;
25823 					n->name = "TRANSACTION SNAPSHOT";
25824 					n->args = list_make1(makeStringConst((yyvsp[(3) - (3)].str), (yylsp[(3) - (3)])));
25825 					(yyval.vsetstmt) = n;
25826 				}
25827     break;
25828 
25829   case 208:
25830 /* Line 1792 of yacc.c  */
25831 #line 1547 "gram.y"
25832     { (yyval.str) = (yyvsp[(1) - (1)].str); }
25833     break;
25834 
25835   case 209:
25836 /* Line 1792 of yacc.c  */
25837 #line 1549 "gram.y"
25838     { (yyval.str) = psprintf("%s.%s", (yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str)); }
25839     break;
25840 
25841   case 210:
25842 /* Line 1792 of yacc.c  */
25843 #line 1552 "gram.y"
25844     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
25845     break;
25846 
25847   case 211:
25848 /* Line 1792 of yacc.c  */
25849 #line 1553 "gram.y"
25850     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
25851     break;
25852 
25853   case 212:
25854 /* Line 1792 of yacc.c  */
25855 #line 1557 "gram.y"
25856     { (yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)])); }
25857     break;
25858 
25859   case 213:
25860 /* Line 1792 of yacc.c  */
25861 #line 1559 "gram.y"
25862     { (yyval.node) = makeAConst((yyvsp[(1) - (1)].value), (yylsp[(1) - (1)])); }
25863     break;
25864 
25865   case 214:
25866 /* Line 1792 of yacc.c  */
25867 #line 1562 "gram.y"
25868     { (yyval.str) = "read uncommitted"; }
25869     break;
25870 
25871   case 215:
25872 /* Line 1792 of yacc.c  */
25873 #line 1563 "gram.y"
25874     { (yyval.str) = "read committed"; }
25875     break;
25876 
25877   case 216:
25878 /* Line 1792 of yacc.c  */
25879 #line 1564 "gram.y"
25880     { (yyval.str) = "repeatable read"; }
25881     break;
25882 
25883   case 217:
25884 /* Line 1792 of yacc.c  */
25885 #line 1565 "gram.y"
25886     { (yyval.str) = "serializable"; }
25887     break;
25888 
25889   case 218:
25890 /* Line 1792 of yacc.c  */
25891 #line 1569 "gram.y"
25892     { (yyval.str) = "true"; }
25893     break;
25894 
25895   case 219:
25896 /* Line 1792 of yacc.c  */
25897 #line 1570 "gram.y"
25898     { (yyval.str) = "false"; }
25899     break;
25900 
25901   case 220:
25902 /* Line 1792 of yacc.c  */
25903 #line 1571 "gram.y"
25904     { (yyval.str) = "on"; }
25905     break;
25906 
25907   case 221:
25908 /* Line 1792 of yacc.c  */
25909 #line 1577 "gram.y"
25910     { (yyval.str) = (yyvsp[(1) - (1)].str); }
25911     break;
25912 
25913   case 222:
25914 /* Line 1792 of yacc.c  */
25915 #line 1590 "gram.y"
25916     {
25917 					(yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
25918 				}
25919     break;
25920 
25921   case 223:
25922 /* Line 1792 of yacc.c  */
25923 #line 1594 "gram.y"
25924     {
25925 					(yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
25926 				}
25927     break;
25928 
25929   case 224:
25930 /* Line 1792 of yacc.c  */
25931 #line 1598 "gram.y"
25932     {
25933 					TypeName *t = (yyvsp[(1) - (3)].typnam);
25934 					if ((yyvsp[(3) - (3)].list) != NIL)
25935 					{
25936 						A_Const *n = (A_Const *) linitial((yyvsp[(3) - (3)].list));
25937 						if ((n->val.val.ival & ~(INTERVAL_MASK(HOUR) | INTERVAL_MASK(MINUTE))) != 0)
25938 							ereport(ERROR,
25939 									(errcode(ERRCODE_SYNTAX_ERROR),
25940 									 errmsg("time zone interval must be HOUR or HOUR TO MINUTE"),
25941 									 parser_errposition((yylsp[(3) - (3)]))));
25942 					}
25943 					t->typmods = (yyvsp[(3) - (3)].list);
25944 					(yyval.node) = makeStringConstCast((yyvsp[(2) - (3)].str), (yylsp[(2) - (3)]), t);
25945 				}
25946     break;
25947 
25948   case 225:
25949 /* Line 1792 of yacc.c  */
25950 #line 1613 "gram.y"
25951     {
25952 					TypeName *t = (yyvsp[(1) - (5)].typnam);
25953 					t->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
25954 											makeIntConst((yyvsp[(3) - (5)].ival), (yylsp[(3) - (5)])));
25955 					(yyval.node) = makeStringConstCast((yyvsp[(5) - (5)].str), (yylsp[(5) - (5)]), t);
25956 				}
25957     break;
25958 
25959   case 226:
25960 /* Line 1792 of yacc.c  */
25961 #line 1619 "gram.y"
25962     { (yyval.node) = makeAConst((yyvsp[(1) - (1)].value), (yylsp[(1) - (1)])); }
25963     break;
25964 
25965   case 227:
25966 /* Line 1792 of yacc.c  */
25967 #line 1620 "gram.y"
25968     { (yyval.node) = NULL; }
25969     break;
25970 
25971   case 228:
25972 /* Line 1792 of yacc.c  */
25973 #line 1621 "gram.y"
25974     { (yyval.node) = NULL; }
25975     break;
25976 
25977   case 229:
25978 /* Line 1792 of yacc.c  */
25979 #line 1625 "gram.y"
25980     { (yyval.str) = (yyvsp[(1) - (1)].str); }
25981     break;
25982 
25983   case 230:
25984 /* Line 1792 of yacc.c  */
25985 #line 1626 "gram.y"
25986     { (yyval.str) = NULL; }
25987     break;
25988 
25989   case 231:
25990 /* Line 1792 of yacc.c  */
25991 #line 1627 "gram.y"
25992     { (yyval.str) = NULL; }
25993     break;
25994 
25995   case 232:
25996 /* Line 1792 of yacc.c  */
25997 #line 1631 "gram.y"
25998     { (yyval.str) = (yyvsp[(1) - (1)].str); }
25999     break;
26000 
26001   case 233:
26002 /* Line 1792 of yacc.c  */
26003 #line 1632 "gram.y"
26004     { (yyval.str) = (yyvsp[(1) - (1)].str); }
26005     break;
26006 
26007   case 234:
26008 /* Line 1792 of yacc.c  */
26009 #line 1636 "gram.y"
26010     { (yyval.node) = (Node *) (yyvsp[(2) - (2)].vsetstmt); }
26011     break;
26012 
26013   case 235:
26014 /* Line 1792 of yacc.c  */
26015 #line 1638 "gram.y"
26016     {
26017 					VariableSetStmt *n = (yyvsp[(3) - (3)].vsetstmt);
26018 					n->type = T_PgpoolVariableSetStmt; /* Hack to keep the changes minumum */
26019 					(yyval.node) = (Node *) n;
26020 				}
26021     break;
26022 
26023   case 236:
26024 /* Line 1792 of yacc.c  */
26025 #line 1646 "gram.y"
26026     { (yyval.vsetstmt) = (yyvsp[(1) - (1)].vsetstmt); }
26027     break;
26028 
26029   case 237:
26030 /* Line 1792 of yacc.c  */
26031 #line 1648 "gram.y"
26032     {
26033 					VariableSetStmt *n = makeNode(VariableSetStmt);
26034 					n->kind = VAR_RESET;
26035 					n->name = "timezone";
26036 					(yyval.vsetstmt) = n;
26037 				}
26038     break;
26039 
26040   case 238:
26041 /* Line 1792 of yacc.c  */
26042 #line 1655 "gram.y"
26043     {
26044 					VariableSetStmt *n = makeNode(VariableSetStmt);
26045 					n->kind = VAR_RESET;
26046 					n->name = "transaction_isolation";
26047 					(yyval.vsetstmt) = n;
26048 				}
26049     break;
26050 
26051   case 239:
26052 /* Line 1792 of yacc.c  */
26053 #line 1662 "gram.y"
26054     {
26055 					VariableSetStmt *n = makeNode(VariableSetStmt);
26056 					n->kind = VAR_RESET;
26057 					n->name = "session_authorization";
26058 					(yyval.vsetstmt) = n;
26059 				}
26060     break;
26061 
26062   case 240:
26063 /* Line 1792 of yacc.c  */
26064 #line 1672 "gram.y"
26065     {
26066 					VariableSetStmt *n = makeNode(VariableSetStmt);
26067 					n->kind = VAR_RESET;
26068 					n->name = (yyvsp[(1) - (1)].str);
26069 					(yyval.vsetstmt) = n;
26070 				}
26071     break;
26072 
26073   case 241:
26074 /* Line 1792 of yacc.c  */
26075 #line 1679 "gram.y"
26076     {
26077 					VariableSetStmt *n = makeNode(VariableSetStmt);
26078 					n->kind = VAR_RESET_ALL;
26079 					(yyval.vsetstmt) = n;
26080 				}
26081     break;
26082 
26083   case 242:
26084 /* Line 1792 of yacc.c  */
26085 #line 1688 "gram.y"
26086     { (yyval.vsetstmt) = (yyvsp[(2) - (2)].vsetstmt); }
26087     break;
26088 
26089   case 243:
26090 /* Line 1792 of yacc.c  */
26091 #line 1689 "gram.y"
26092     { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[(1) - (1)].node); }
26093     break;
26094 
26095   case 244:
26096 /* Line 1792 of yacc.c  */
26097 #line 1694 "gram.y"
26098     { (yyval.vsetstmt) = (yyvsp[(2) - (2)].vsetstmt); }
26099     break;
26100 
26101   case 245:
26102 /* Line 1792 of yacc.c  */
26103 #line 1695 "gram.y"
26104     { (yyval.vsetstmt) = (VariableSetStmt *) (yyvsp[(1) - (1)].node); }
26105     break;
26106 
26107   case 246:
26108 /* Line 1792 of yacc.c  */
26109 #line 1702 "gram.y"
26110     {
26111 				VariableShowStmt *n = (VariableShowStmt *)newNode(sizeof(VariableShowStmt),T_PgpoolVariableShowStmt);
26112 				n->name = (yyvsp[(3) - (3)].str);
26113 				(yyval.node) = (Node *) n;
26114 			}
26115     break;
26116 
26117   case 247:
26118 /* Line 1792 of yacc.c  */
26119 #line 1708 "gram.y"
26120     {
26121 				VariableShowStmt *n = (VariableShowStmt *)newNode(sizeof(VariableShowStmt),T_PgpoolVariableShowStmt);
26122 				n->name = "all";
26123 				(yyval.node) = (Node *) n;
26124 			}
26125     break;
26126 
26127   case 248:
26128 /* Line 1792 of yacc.c  */
26129 #line 1714 "gram.y"
26130     {
26131 					VariableShowStmt *n = makeNode(VariableShowStmt);
26132 					n->name = (yyvsp[(2) - (2)].str);
26133 					(yyval.node) = (Node *) n;
26134 				}
26135     break;
26136 
26137   case 249:
26138 /* Line 1792 of yacc.c  */
26139 #line 1720 "gram.y"
26140     {
26141 					VariableShowStmt *n = makeNode(VariableShowStmt);
26142 					n->name = "timezone";
26143 					(yyval.node) = (Node *) n;
26144 				}
26145     break;
26146 
26147   case 250:
26148 /* Line 1792 of yacc.c  */
26149 #line 1726 "gram.y"
26150     {
26151 					VariableShowStmt *n = makeNode(VariableShowStmt);
26152 					n->name = "transaction_isolation";
26153 					(yyval.node) = (Node *) n;
26154 				}
26155     break;
26156 
26157   case 251:
26158 /* Line 1792 of yacc.c  */
26159 #line 1732 "gram.y"
26160     {
26161 					VariableShowStmt *n = makeNode(VariableShowStmt);
26162 					n->name = "session_authorization";
26163 					(yyval.node) = (Node *) n;
26164 				}
26165     break;
26166 
26167   case 252:
26168 /* Line 1792 of yacc.c  */
26169 #line 1738 "gram.y"
26170     {
26171 					VariableShowStmt *n = makeNode(VariableShowStmt);
26172 					n->name = "all";
26173 					(yyval.node) = (Node *) n;
26174 				}
26175     break;
26176 
26177   case 253:
26178 /* Line 1792 of yacc.c  */
26179 #line 1748 "gram.y"
26180     {
26181 					ConstraintsSetStmt *n = makeNode(ConstraintsSetStmt);
26182 					n->constraints = (yyvsp[(3) - (4)].list);
26183 					n->deferred = (yyvsp[(4) - (4)].boolean);
26184 					(yyval.node) = (Node *) n;
26185 				}
26186     break;
26187 
26188   case 254:
26189 /* Line 1792 of yacc.c  */
26190 #line 1757 "gram.y"
26191     { (yyval.list) = NIL; }
26192     break;
26193 
26194   case 255:
26195 /* Line 1792 of yacc.c  */
26196 #line 1758 "gram.y"
26197     { (yyval.list) = (yyvsp[(1) - (1)].list); }
26198     break;
26199 
26200   case 256:
26201 /* Line 1792 of yacc.c  */
26202 #line 1762 "gram.y"
26203     { (yyval.boolean) = TRUE; }
26204     break;
26205 
26206   case 257:
26207 /* Line 1792 of yacc.c  */
26208 #line 1763 "gram.y"
26209     { (yyval.boolean) = FALSE; }
26210     break;
26211 
26212   case 258:
26213 /* Line 1792 of yacc.c  */
26214 #line 1772 "gram.y"
26215     {
26216 					CheckPointStmt *n = makeNode(CheckPointStmt);
26217 					(yyval.node) = (Node *)n;
26218 				}
26219     break;
26220 
26221   case 259:
26222 /* Line 1792 of yacc.c  */
26223 #line 1787 "gram.y"
26224     {
26225 					DiscardStmt *n = makeNode(DiscardStmt);
26226 					n->target = DISCARD_ALL;
26227 					(yyval.node) = (Node *) n;
26228 				}
26229     break;
26230 
26231   case 260:
26232 /* Line 1792 of yacc.c  */
26233 #line 1793 "gram.y"
26234     {
26235 					DiscardStmt *n = makeNode(DiscardStmt);
26236 					n->target = DISCARD_TEMP;
26237 					(yyval.node) = (Node *) n;
26238 				}
26239     break;
26240 
26241   case 261:
26242 /* Line 1792 of yacc.c  */
26243 #line 1799 "gram.y"
26244     {
26245 					DiscardStmt *n = makeNode(DiscardStmt);
26246 					n->target = DISCARD_TEMP;
26247 					(yyval.node) = (Node *) n;
26248 				}
26249     break;
26250 
26251   case 262:
26252 /* Line 1792 of yacc.c  */
26253 #line 1805 "gram.y"
26254     {
26255 					DiscardStmt *n = makeNode(DiscardStmt);
26256 					n->target = DISCARD_PLANS;
26257 					(yyval.node) = (Node *) n;
26258 				}
26259     break;
26260 
26261   case 263:
26262 /* Line 1792 of yacc.c  */
26263 #line 1811 "gram.y"
26264     {
26265 					DiscardStmt *n = makeNode(DiscardStmt);
26266 					n->target = DISCARD_SEQUENCES;
26267 					(yyval.node) = (Node *) n;
26268 				}
26269     break;
26270 
26271   case 264:
26272 /* Line 1792 of yacc.c  */
26273 #line 1830 "gram.y"
26274     {
26275 					AlterTableStmt *n = makeNode(AlterTableStmt);
26276 					n->relation = (yyvsp[(3) - (4)].range);
26277 					n->cmds = (yyvsp[(4) - (4)].list);
26278 					n->relkind = OBJECT_TABLE;
26279 					n->missing_ok = false;
26280 					(yyval.node) = (Node *)n;
26281 				}
26282     break;
26283 
26284   case 265:
26285 /* Line 1792 of yacc.c  */
26286 #line 1839 "gram.y"
26287     {
26288 					AlterTableStmt *n = makeNode(AlterTableStmt);
26289 					n->relation = (yyvsp[(5) - (6)].range);
26290 					n->cmds = (yyvsp[(6) - (6)].list);
26291 					n->relkind = OBJECT_TABLE;
26292 					n->missing_ok = true;
26293 					(yyval.node) = (Node *)n;
26294 				}
26295     break;
26296 
26297   case 266:
26298 /* Line 1792 of yacc.c  */
26299 #line 1848 "gram.y"
26300     {
26301 					AlterTableMoveAllStmt *n =
26302 						makeNode(AlterTableMoveAllStmt);
26303 					n->orig_tablespacename = (yyvsp[(6) - (10)].str);
26304 					n->objtype = OBJECT_TABLE;
26305 					n->roles = NIL;
26306 					n->new_tablespacename = (yyvsp[(9) - (10)].str);
26307 					n->nowait = (yyvsp[(10) - (10)].boolean);
26308 					(yyval.node) = (Node *)n;
26309 				}
26310     break;
26311 
26312   case 267:
26313 /* Line 1792 of yacc.c  */
26314 #line 1859 "gram.y"
26315     {
26316 					AlterTableMoveAllStmt *n =
26317 						makeNode(AlterTableMoveAllStmt);
26318 					n->orig_tablespacename = (yyvsp[(6) - (13)].str);
26319 					n->objtype = OBJECT_TABLE;
26320 					n->roles = (yyvsp[(9) - (13)].list);
26321 					n->new_tablespacename = (yyvsp[(12) - (13)].str);
26322 					n->nowait = (yyvsp[(13) - (13)].boolean);
26323 					(yyval.node) = (Node *)n;
26324 				}
26325     break;
26326 
26327   case 268:
26328 /* Line 1792 of yacc.c  */
26329 #line 1870 "gram.y"
26330     {
26331 					AlterTableStmt *n = makeNode(AlterTableStmt);
26332 					n->relation = (yyvsp[(3) - (4)].range);
26333 					n->cmds = (yyvsp[(4) - (4)].list);
26334 					n->relkind = OBJECT_INDEX;
26335 					n->missing_ok = false;
26336 					(yyval.node) = (Node *)n;
26337 				}
26338     break;
26339 
26340   case 269:
26341 /* Line 1792 of yacc.c  */
26342 #line 1879 "gram.y"
26343     {
26344 					AlterTableStmt *n = makeNode(AlterTableStmt);
26345 					n->relation = (yyvsp[(5) - (6)].range);
26346 					n->cmds = (yyvsp[(6) - (6)].list);
26347 					n->relkind = OBJECT_INDEX;
26348 					n->missing_ok = true;
26349 					(yyval.node) = (Node *)n;
26350 				}
26351     break;
26352 
26353   case 270:
26354 /* Line 1792 of yacc.c  */
26355 #line 1888 "gram.y"
26356     {
26357 					AlterTableMoveAllStmt *n =
26358 						makeNode(AlterTableMoveAllStmt);
26359 					n->orig_tablespacename = (yyvsp[(6) - (10)].str);
26360 					n->objtype = OBJECT_INDEX;
26361 					n->roles = NIL;
26362 					n->new_tablespacename = (yyvsp[(9) - (10)].str);
26363 					n->nowait = (yyvsp[(10) - (10)].boolean);
26364 					(yyval.node) = (Node *)n;
26365 				}
26366     break;
26367 
26368   case 271:
26369 /* Line 1792 of yacc.c  */
26370 #line 1899 "gram.y"
26371     {
26372 					AlterTableMoveAllStmt *n =
26373 						makeNode(AlterTableMoveAllStmt);
26374 					n->orig_tablespacename = (yyvsp[(6) - (13)].str);
26375 					n->objtype = OBJECT_INDEX;
26376 					n->roles = (yyvsp[(9) - (13)].list);
26377 					n->new_tablespacename = (yyvsp[(12) - (13)].str);
26378 					n->nowait = (yyvsp[(13) - (13)].boolean);
26379 					(yyval.node) = (Node *)n;
26380 				}
26381     break;
26382 
26383   case 272:
26384 /* Line 1792 of yacc.c  */
26385 #line 1910 "gram.y"
26386     {
26387 					AlterTableStmt *n = makeNode(AlterTableStmt);
26388 					n->relation = (yyvsp[(3) - (4)].range);
26389 					n->cmds = (yyvsp[(4) - (4)].list);
26390 					n->relkind = OBJECT_SEQUENCE;
26391 					n->missing_ok = false;
26392 					(yyval.node) = (Node *)n;
26393 				}
26394     break;
26395 
26396   case 273:
26397 /* Line 1792 of yacc.c  */
26398 #line 1919 "gram.y"
26399     {
26400 					AlterTableStmt *n = makeNode(AlterTableStmt);
26401 					n->relation = (yyvsp[(5) - (6)].range);
26402 					n->cmds = (yyvsp[(6) - (6)].list);
26403 					n->relkind = OBJECT_SEQUENCE;
26404 					n->missing_ok = true;
26405 					(yyval.node) = (Node *)n;
26406 				}
26407     break;
26408 
26409   case 274:
26410 /* Line 1792 of yacc.c  */
26411 #line 1928 "gram.y"
26412     {
26413 					AlterTableStmt *n = makeNode(AlterTableStmt);
26414 					n->relation = (yyvsp[(3) - (4)].range);
26415 					n->cmds = (yyvsp[(4) - (4)].list);
26416 					n->relkind = OBJECT_VIEW;
26417 					n->missing_ok = false;
26418 					(yyval.node) = (Node *)n;
26419 				}
26420     break;
26421 
26422   case 275:
26423 /* Line 1792 of yacc.c  */
26424 #line 1937 "gram.y"
26425     {
26426 					AlterTableStmt *n = makeNode(AlterTableStmt);
26427 					n->relation = (yyvsp[(5) - (6)].range);
26428 					n->cmds = (yyvsp[(6) - (6)].list);
26429 					n->relkind = OBJECT_VIEW;
26430 					n->missing_ok = true;
26431 					(yyval.node) = (Node *)n;
26432 				}
26433     break;
26434 
26435   case 276:
26436 /* Line 1792 of yacc.c  */
26437 #line 1946 "gram.y"
26438     {
26439 					AlterTableStmt *n = makeNode(AlterTableStmt);
26440 					n->relation = (yyvsp[(4) - (5)].range);
26441 					n->cmds = (yyvsp[(5) - (5)].list);
26442 					n->relkind = OBJECT_MATVIEW;
26443 					n->missing_ok = false;
26444 					(yyval.node) = (Node *)n;
26445 				}
26446     break;
26447 
26448   case 277:
26449 /* Line 1792 of yacc.c  */
26450 #line 1955 "gram.y"
26451     {
26452 					AlterTableStmt *n = makeNode(AlterTableStmt);
26453 					n->relation = (yyvsp[(6) - (7)].range);
26454 					n->cmds = (yyvsp[(7) - (7)].list);
26455 					n->relkind = OBJECT_MATVIEW;
26456 					n->missing_ok = true;
26457 					(yyval.node) = (Node *)n;
26458 				}
26459     break;
26460 
26461   case 278:
26462 /* Line 1792 of yacc.c  */
26463 #line 1964 "gram.y"
26464     {
26465 					AlterTableMoveAllStmt *n =
26466 						makeNode(AlterTableMoveAllStmt);
26467 					n->orig_tablespacename = (yyvsp[(7) - (11)].str);
26468 					n->objtype = OBJECT_MATVIEW;
26469 					n->roles = NIL;
26470 					n->new_tablespacename = (yyvsp[(10) - (11)].str);
26471 					n->nowait = (yyvsp[(11) - (11)].boolean);
26472 					(yyval.node) = (Node *)n;
26473 				}
26474     break;
26475 
26476   case 279:
26477 /* Line 1792 of yacc.c  */
26478 #line 1975 "gram.y"
26479     {
26480 					AlterTableMoveAllStmt *n =
26481 						makeNode(AlterTableMoveAllStmt);
26482 					n->orig_tablespacename = (yyvsp[(7) - (14)].str);
26483 					n->objtype = OBJECT_MATVIEW;
26484 					n->roles = (yyvsp[(10) - (14)].list);
26485 					n->new_tablespacename = (yyvsp[(13) - (14)].str);
26486 					n->nowait = (yyvsp[(14) - (14)].boolean);
26487 					(yyval.node) = (Node *)n;
26488 				}
26489     break;
26490 
26491   case 280:
26492 /* Line 1792 of yacc.c  */
26493 #line 1988 "gram.y"
26494     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
26495     break;
26496 
26497   case 281:
26498 /* Line 1792 of yacc.c  */
26499 #line 1989 "gram.y"
26500     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
26501     break;
26502 
26503   case 282:
26504 /* Line 1792 of yacc.c  */
26505 #line 1995 "gram.y"
26506     {
26507 					AlterTableCmd *n = makeNode(AlterTableCmd);
26508 					n->subtype = AT_AddColumn;
26509 					n->def = (yyvsp[(2) - (2)].node);
26510 					n->missing_ok = false;
26511 					(yyval.node) = (Node *)n;
26512 				}
26513     break;
26514 
26515   case 283:
26516 /* Line 1792 of yacc.c  */
26517 #line 2004 "gram.y"
26518     {
26519 					AlterTableCmd *n = makeNode(AlterTableCmd);
26520 					n->subtype = AT_AddColumn;
26521 					n->def = (yyvsp[(5) - (5)].node);
26522 					n->missing_ok = true;
26523 					(yyval.node) = (Node *)n;
26524 				}
26525     break;
26526 
26527   case 284:
26528 /* Line 1792 of yacc.c  */
26529 #line 2013 "gram.y"
26530     {
26531 					AlterTableCmd *n = makeNode(AlterTableCmd);
26532 					n->subtype = AT_AddColumn;
26533 					n->def = (yyvsp[(3) - (3)].node);
26534 					n->missing_ok = false;
26535 					(yyval.node) = (Node *)n;
26536 				}
26537     break;
26538 
26539   case 285:
26540 /* Line 1792 of yacc.c  */
26541 #line 2022 "gram.y"
26542     {
26543 					AlterTableCmd *n = makeNode(AlterTableCmd);
26544 					n->subtype = AT_AddColumn;
26545 					n->def = (yyvsp[(6) - (6)].node);
26546 					n->missing_ok = true;
26547 					(yyval.node) = (Node *)n;
26548 				}
26549     break;
26550 
26551   case 286:
26552 /* Line 1792 of yacc.c  */
26553 #line 2031 "gram.y"
26554     {
26555 					AlterTableCmd *n = makeNode(AlterTableCmd);
26556 					n->subtype = AT_ColumnDefault;
26557 					n->name = (yyvsp[(3) - (4)].str);
26558 					n->def = (yyvsp[(4) - (4)].node);
26559 					(yyval.node) = (Node *)n;
26560 				}
26561     break;
26562 
26563   case 287:
26564 /* Line 1792 of yacc.c  */
26565 #line 2040 "gram.y"
26566     {
26567 					AlterTableCmd *n = makeNode(AlterTableCmd);
26568 					n->subtype = AT_DropNotNull;
26569 					n->name = (yyvsp[(3) - (6)].str);
26570 					(yyval.node) = (Node *)n;
26571 				}
26572     break;
26573 
26574   case 288:
26575 /* Line 1792 of yacc.c  */
26576 #line 2048 "gram.y"
26577     {
26578 					AlterTableCmd *n = makeNode(AlterTableCmd);
26579 					n->subtype = AT_SetNotNull;
26580 					n->name = (yyvsp[(3) - (6)].str);
26581 					(yyval.node) = (Node *)n;
26582 				}
26583     break;
26584 
26585   case 289:
26586 /* Line 1792 of yacc.c  */
26587 #line 2056 "gram.y"
26588     {
26589 					AlterTableCmd *n = makeNode(AlterTableCmd);
26590 					n->subtype = AT_SetStatistics;
26591 					n->name = (yyvsp[(3) - (6)].str);
26592 					n->def = (Node *) makeInteger((yyvsp[(6) - (6)].ival));
26593 					(yyval.node) = (Node *)n;
26594 				}
26595     break;
26596 
26597   case 290:
26598 /* Line 1792 of yacc.c  */
26599 #line 2065 "gram.y"
26600     {
26601 					AlterTableCmd *n = makeNode(AlterTableCmd);
26602 					n->subtype = AT_SetOptions;
26603 					n->name = (yyvsp[(3) - (5)].str);
26604 					n->def = (Node *) (yyvsp[(5) - (5)].list);
26605 					(yyval.node) = (Node *)n;
26606 				}
26607     break;
26608 
26609   case 291:
26610 /* Line 1792 of yacc.c  */
26611 #line 2074 "gram.y"
26612     {
26613 					AlterTableCmd *n = makeNode(AlterTableCmd);
26614 					n->subtype = AT_ResetOptions;
26615 					n->name = (yyvsp[(3) - (5)].str);
26616 					n->def = (Node *) (yyvsp[(5) - (5)].list);
26617 					(yyval.node) = (Node *)n;
26618 				}
26619     break;
26620 
26621   case 292:
26622 /* Line 1792 of yacc.c  */
26623 #line 2083 "gram.y"
26624     {
26625 					AlterTableCmd *n = makeNode(AlterTableCmd);
26626 					n->subtype = AT_SetStorage;
26627 					n->name = (yyvsp[(3) - (6)].str);
26628 					n->def = (Node *) makeString((yyvsp[(6) - (6)].str));
26629 					(yyval.node) = (Node *)n;
26630 				}
26631     break;
26632 
26633   case 293:
26634 /* Line 1792 of yacc.c  */
26635 #line 2092 "gram.y"
26636     {
26637 					AlterTableCmd *n = makeNode(AlterTableCmd);
26638 					n->subtype = AT_DropColumn;
26639 					n->name = (yyvsp[(5) - (6)].str);
26640 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
26641 					n->missing_ok = TRUE;
26642 					(yyval.node) = (Node *)n;
26643 				}
26644     break;
26645 
26646   case 294:
26647 /* Line 1792 of yacc.c  */
26648 #line 2102 "gram.y"
26649     {
26650 					AlterTableCmd *n = makeNode(AlterTableCmd);
26651 					n->subtype = AT_DropColumn;
26652 					n->name = (yyvsp[(3) - (4)].str);
26653 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
26654 					n->missing_ok = FALSE;
26655 					(yyval.node) = (Node *)n;
26656 				}
26657     break;
26658 
26659   case 295:
26660 /* Line 1792 of yacc.c  */
26661 #line 2115 "gram.y"
26662     {
26663 					AlterTableCmd *n = makeNode(AlterTableCmd);
26664 					ColumnDef *def = makeNode(ColumnDef);
26665 					n->subtype = AT_AlterColumnType;
26666 					n->name = (yyvsp[(3) - (8)].str);
26667 					n->def = (Node *) def;
26668 					/* We only use these fields of the ColumnDef node */
26669 					def->typeName = (yyvsp[(6) - (8)].typnam);
26670 					def->collClause = (CollateClause *) (yyvsp[(7) - (8)].node);
26671 					def->raw_default = (yyvsp[(8) - (8)].node);
26672 					def->location = (yylsp[(3) - (8)]);
26673 					(yyval.node) = (Node *)n;
26674 				}
26675     break;
26676 
26677   case 296:
26678 /* Line 1792 of yacc.c  */
26679 #line 2130 "gram.y"
26680     {
26681 					AlterTableCmd *n = makeNode(AlterTableCmd);
26682 					n->subtype = AT_AlterColumnGenericOptions;
26683 					n->name = (yyvsp[(3) - (4)].str);
26684 					n->def = (Node *) (yyvsp[(4) - (4)].list);
26685 					(yyval.node) = (Node *)n;
26686 				}
26687     break;
26688 
26689   case 297:
26690 /* Line 1792 of yacc.c  */
26691 #line 2139 "gram.y"
26692     {
26693 					AlterTableCmd *n = makeNode(AlterTableCmd);
26694 					n->subtype = AT_AddConstraint;
26695 					n->def = (yyvsp[(2) - (2)].node);
26696 					n->missing_ok = false;
26697 					(yyval.node) = (Node *)n;
26698 				}
26699     break;
26700 
26701   case 298:
26702 /* Line 1792 of yacc.c  */
26703 #line 2148 "gram.y"
26704     {
26705 					AlterTableCmd *n = makeNode(AlterTableCmd);
26706 					Constraint *c = makeNode(Constraint);
26707 					n->subtype = AT_AlterConstraint;
26708 					n->def = (Node *) c;
26709 					c->contype = CONSTR_FOREIGN; /* others not supported, yet */
26710 					c->conname = (yyvsp[(3) - (4)].str);
26711 					processCASbits((yyvsp[(4) - (4)].ival), (yylsp[(4) - (4)]), "ALTER CONSTRAINT statement",
26712 									&c->deferrable,
26713 									&c->initdeferred,
26714 									NULL, NULL, yyscanner);
26715 					(yyval.node) = (Node *)n;
26716 				}
26717     break;
26718 
26719   case 299:
26720 /* Line 1792 of yacc.c  */
26721 #line 2163 "gram.y"
26722     {
26723 					AlterTableCmd *n = makeNode(AlterTableCmd);
26724 					n->subtype = AT_ValidateConstraint;
26725 					n->name = (yyvsp[(3) - (3)].str);
26726 					(yyval.node) = (Node *)n;
26727 				}
26728     break;
26729 
26730   case 300:
26731 /* Line 1792 of yacc.c  */
26732 #line 2171 "gram.y"
26733     {
26734 					AlterTableCmd *n = makeNode(AlterTableCmd);
26735 					n->subtype = AT_DropConstraint;
26736 					n->name = (yyvsp[(5) - (6)].str);
26737 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
26738 					n->missing_ok = TRUE;
26739 					(yyval.node) = (Node *)n;
26740 				}
26741     break;
26742 
26743   case 301:
26744 /* Line 1792 of yacc.c  */
26745 #line 2181 "gram.y"
26746     {
26747 					AlterTableCmd *n = makeNode(AlterTableCmd);
26748 					n->subtype = AT_DropConstraint;
26749 					n->name = (yyvsp[(3) - (4)].str);
26750 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
26751 					n->missing_ok = FALSE;
26752 					(yyval.node) = (Node *)n;
26753 				}
26754     break;
26755 
26756   case 302:
26757 /* Line 1792 of yacc.c  */
26758 #line 2191 "gram.y"
26759     {
26760 					AlterTableCmd *n = makeNode(AlterTableCmd);
26761 					n->subtype = AT_AddOids;
26762 					(yyval.node) = (Node *)n;
26763 				}
26764     break;
26765 
26766   case 303:
26767 /* Line 1792 of yacc.c  */
26768 #line 2198 "gram.y"
26769     {
26770 					AlterTableCmd *n = makeNode(AlterTableCmd);
26771 					n->subtype = AT_DropOids;
26772 					(yyval.node) = (Node *)n;
26773 				}
26774     break;
26775 
26776   case 304:
26777 /* Line 1792 of yacc.c  */
26778 #line 2205 "gram.y"
26779     {
26780 					AlterTableCmd *n = makeNode(AlterTableCmd);
26781 					n->subtype = AT_ClusterOn;
26782 					n->name = (yyvsp[(3) - (3)].str);
26783 					(yyval.node) = (Node *)n;
26784 				}
26785     break;
26786 
26787   case 305:
26788 /* Line 1792 of yacc.c  */
26789 #line 2213 "gram.y"
26790     {
26791 					AlterTableCmd *n = makeNode(AlterTableCmd);
26792 					n->subtype = AT_DropCluster;
26793 					n->name = NULL;
26794 					(yyval.node) = (Node *)n;
26795 				}
26796     break;
26797 
26798   case 306:
26799 /* Line 1792 of yacc.c  */
26800 #line 2221 "gram.y"
26801     {
26802 					AlterTableCmd *n = makeNode(AlterTableCmd);
26803 					n->subtype = AT_SetLogged;
26804 					(yyval.node) = (Node *)n;
26805 				}
26806     break;
26807 
26808   case 307:
26809 /* Line 1792 of yacc.c  */
26810 #line 2228 "gram.y"
26811     {
26812 					AlterTableCmd *n = makeNode(AlterTableCmd);
26813 					n->subtype = AT_SetUnLogged;
26814 					(yyval.node) = (Node *)n;
26815 				}
26816     break;
26817 
26818   case 308:
26819 /* Line 1792 of yacc.c  */
26820 #line 2235 "gram.y"
26821     {
26822 					AlterTableCmd *n = makeNode(AlterTableCmd);
26823 					n->subtype = AT_EnableTrig;
26824 					n->name = (yyvsp[(3) - (3)].str);
26825 					(yyval.node) = (Node *)n;
26826 				}
26827     break;
26828 
26829   case 309:
26830 /* Line 1792 of yacc.c  */
26831 #line 2243 "gram.y"
26832     {
26833 					AlterTableCmd *n = makeNode(AlterTableCmd);
26834 					n->subtype = AT_EnableAlwaysTrig;
26835 					n->name = (yyvsp[(4) - (4)].str);
26836 					(yyval.node) = (Node *)n;
26837 				}
26838     break;
26839 
26840   case 310:
26841 /* Line 1792 of yacc.c  */
26842 #line 2251 "gram.y"
26843     {
26844 					AlterTableCmd *n = makeNode(AlterTableCmd);
26845 					n->subtype = AT_EnableReplicaTrig;
26846 					n->name = (yyvsp[(4) - (4)].str);
26847 					(yyval.node) = (Node *)n;
26848 				}
26849     break;
26850 
26851   case 311:
26852 /* Line 1792 of yacc.c  */
26853 #line 2259 "gram.y"
26854     {
26855 					AlterTableCmd *n = makeNode(AlterTableCmd);
26856 					n->subtype = AT_EnableTrigAll;
26857 					(yyval.node) = (Node *)n;
26858 				}
26859     break;
26860 
26861   case 312:
26862 /* Line 1792 of yacc.c  */
26863 #line 2266 "gram.y"
26864     {
26865 					AlterTableCmd *n = makeNode(AlterTableCmd);
26866 					n->subtype = AT_EnableTrigUser;
26867 					(yyval.node) = (Node *)n;
26868 				}
26869     break;
26870 
26871   case 313:
26872 /* Line 1792 of yacc.c  */
26873 #line 2273 "gram.y"
26874     {
26875 					AlterTableCmd *n = makeNode(AlterTableCmd);
26876 					n->subtype = AT_DisableTrig;
26877 					n->name = (yyvsp[(3) - (3)].str);
26878 					(yyval.node) = (Node *)n;
26879 				}
26880     break;
26881 
26882   case 314:
26883 /* Line 1792 of yacc.c  */
26884 #line 2281 "gram.y"
26885     {
26886 					AlterTableCmd *n = makeNode(AlterTableCmd);
26887 					n->subtype = AT_DisableTrigAll;
26888 					(yyval.node) = (Node *)n;
26889 				}
26890     break;
26891 
26892   case 315:
26893 /* Line 1792 of yacc.c  */
26894 #line 2288 "gram.y"
26895     {
26896 					AlterTableCmd *n = makeNode(AlterTableCmd);
26897 					n->subtype = AT_DisableTrigUser;
26898 					(yyval.node) = (Node *)n;
26899 				}
26900     break;
26901 
26902   case 316:
26903 /* Line 1792 of yacc.c  */
26904 #line 2295 "gram.y"
26905     {
26906 					AlterTableCmd *n = makeNode(AlterTableCmd);
26907 					n->subtype = AT_EnableRule;
26908 					n->name = (yyvsp[(3) - (3)].str);
26909 					(yyval.node) = (Node *)n;
26910 				}
26911     break;
26912 
26913   case 317:
26914 /* Line 1792 of yacc.c  */
26915 #line 2303 "gram.y"
26916     {
26917 					AlterTableCmd *n = makeNode(AlterTableCmd);
26918 					n->subtype = AT_EnableAlwaysRule;
26919 					n->name = (yyvsp[(4) - (4)].str);
26920 					(yyval.node) = (Node *)n;
26921 				}
26922     break;
26923 
26924   case 318:
26925 /* Line 1792 of yacc.c  */
26926 #line 2311 "gram.y"
26927     {
26928 					AlterTableCmd *n = makeNode(AlterTableCmd);
26929 					n->subtype = AT_EnableReplicaRule;
26930 					n->name = (yyvsp[(4) - (4)].str);
26931 					(yyval.node) = (Node *)n;
26932 				}
26933     break;
26934 
26935   case 319:
26936 /* Line 1792 of yacc.c  */
26937 #line 2319 "gram.y"
26938     {
26939 					AlterTableCmd *n = makeNode(AlterTableCmd);
26940 					n->subtype = AT_DisableRule;
26941 					n->name = (yyvsp[(3) - (3)].str);
26942 					(yyval.node) = (Node *)n;
26943 				}
26944     break;
26945 
26946   case 320:
26947 /* Line 1792 of yacc.c  */
26948 #line 2327 "gram.y"
26949     {
26950 					AlterTableCmd *n = makeNode(AlterTableCmd);
26951 					n->subtype = AT_AddInherit;
26952 					n->def = (Node *) (yyvsp[(2) - (2)].range);
26953 					(yyval.node) = (Node *)n;
26954 				}
26955     break;
26956 
26957   case 321:
26958 /* Line 1792 of yacc.c  */
26959 #line 2335 "gram.y"
26960     {
26961 					AlterTableCmd *n = makeNode(AlterTableCmd);
26962 					n->subtype = AT_DropInherit;
26963 					n->def = (Node *) (yyvsp[(3) - (3)].range);
26964 					(yyval.node) = (Node *)n;
26965 				}
26966     break;
26967 
26968   case 322:
26969 /* Line 1792 of yacc.c  */
26970 #line 2343 "gram.y"
26971     {
26972 					AlterTableCmd *n = makeNode(AlterTableCmd);
26973 					TypeName *def = makeTypeNameFromNameList((yyvsp[(2) - (2)].list));
26974 					def->location = (yylsp[(2) - (2)]);
26975 					n->subtype = AT_AddOf;
26976 					n->def = (Node *) def;
26977 					(yyval.node) = (Node *)n;
26978 				}
26979     break;
26980 
26981   case 323:
26982 /* Line 1792 of yacc.c  */
26983 #line 2353 "gram.y"
26984     {
26985 					AlterTableCmd *n = makeNode(AlterTableCmd);
26986 					n->subtype = AT_DropOf;
26987 					(yyval.node) = (Node *)n;
26988 				}
26989     break;
26990 
26991   case 324:
26992 /* Line 1792 of yacc.c  */
26993 #line 2360 "gram.y"
26994     {
26995 					AlterTableCmd *n = makeNode(AlterTableCmd);
26996 					n->subtype = AT_ChangeOwner;
26997 					n->newowner = (yyvsp[(3) - (3)].node);
26998 					(yyval.node) = (Node *)n;
26999 				}
27000     break;
27001 
27002   case 325:
27003 /* Line 1792 of yacc.c  */
27004 #line 2368 "gram.y"
27005     {
27006 					AlterTableCmd *n = makeNode(AlterTableCmd);
27007 					n->subtype = AT_SetTableSpace;
27008 					n->name = (yyvsp[(3) - (3)].str);
27009 					(yyval.node) = (Node *)n;
27010 				}
27011     break;
27012 
27013   case 326:
27014 /* Line 1792 of yacc.c  */
27015 #line 2376 "gram.y"
27016     {
27017 					AlterTableCmd *n = makeNode(AlterTableCmd);
27018 					n->subtype = AT_SetRelOptions;
27019 					n->def = (Node *)(yyvsp[(2) - (2)].list);
27020 					(yyval.node) = (Node *)n;
27021 				}
27022     break;
27023 
27024   case 327:
27025 /* Line 1792 of yacc.c  */
27026 #line 2384 "gram.y"
27027     {
27028 					AlterTableCmd *n = makeNode(AlterTableCmd);
27029 					n->subtype = AT_ResetRelOptions;
27030 					n->def = (Node *)(yyvsp[(2) - (2)].list);
27031 					(yyval.node) = (Node *)n;
27032 				}
27033     break;
27034 
27035   case 328:
27036 /* Line 1792 of yacc.c  */
27037 #line 2392 "gram.y"
27038     {
27039 					AlterTableCmd *n = makeNode(AlterTableCmd);
27040 					n->subtype = AT_ReplicaIdentity;
27041 					n->def = (yyvsp[(3) - (3)].node);
27042 					(yyval.node) = (Node *)n;
27043 				}
27044     break;
27045 
27046   case 329:
27047 /* Line 1792 of yacc.c  */
27048 #line 2400 "gram.y"
27049     {
27050 					AlterTableCmd *n = makeNode(AlterTableCmd);
27051 					n->subtype = AT_EnableRowSecurity;
27052 					(yyval.node) = (Node *)n;
27053 				}
27054     break;
27055 
27056   case 330:
27057 /* Line 1792 of yacc.c  */
27058 #line 2407 "gram.y"
27059     {
27060 					AlterTableCmd *n = makeNode(AlterTableCmd);
27061 					n->subtype = AT_DisableRowSecurity;
27062 					(yyval.node) = (Node *)n;
27063 				}
27064     break;
27065 
27066   case 331:
27067 /* Line 1792 of yacc.c  */
27068 #line 2414 "gram.y"
27069     {
27070 					AlterTableCmd *n = makeNode(AlterTableCmd);
27071 					n->subtype = AT_ForceRowSecurity;
27072 					(yyval.node) = (Node *)n;
27073 				}
27074     break;
27075 
27076   case 332:
27077 /* Line 1792 of yacc.c  */
27078 #line 2421 "gram.y"
27079     {
27080 					AlterTableCmd *n = makeNode(AlterTableCmd);
27081 					n->subtype = AT_NoForceRowSecurity;
27082 					(yyval.node) = (Node *)n;
27083 				}
27084     break;
27085 
27086   case 333:
27087 /* Line 1792 of yacc.c  */
27088 #line 2427 "gram.y"
27089     {
27090 					AlterTableCmd *n = makeNode(AlterTableCmd);
27091 					n->subtype = AT_GenericOptions;
27092 					n->def = (Node *)(yyvsp[(1) - (1)].list);
27093 					(yyval.node) = (Node *) n;
27094 				}
27095     break;
27096 
27097   case 334:
27098 /* Line 1792 of yacc.c  */
27099 #line 2436 "gram.y"
27100     { (yyval.node) = (yyvsp[(3) - (3)].node); }
27101     break;
27102 
27103   case 335:
27104 /* Line 1792 of yacc.c  */
27105 #line 2437 "gram.y"
27106     { (yyval.node) = NULL; }
27107     break;
27108 
27109   case 336:
27110 /* Line 1792 of yacc.c  */
27111 #line 2441 "gram.y"
27112     { (yyval.dbehavior) = DROP_CASCADE; }
27113     break;
27114 
27115   case 337:
27116 /* Line 1792 of yacc.c  */
27117 #line 2442 "gram.y"
27118     { (yyval.dbehavior) = DROP_RESTRICT; }
27119     break;
27120 
27121   case 338:
27122 /* Line 1792 of yacc.c  */
27123 #line 2443 "gram.y"
27124     { (yyval.dbehavior) = DROP_RESTRICT; /* default */ }
27125     break;
27126 
27127   case 339:
27128 /* Line 1792 of yacc.c  */
27129 #line 2448 "gram.y"
27130     {
27131 					CollateClause *n = makeNode(CollateClause);
27132 					n->arg = NULL;
27133 					n->collname = (yyvsp[(2) - (2)].list);
27134 					n->location = (yylsp[(1) - (2)]);
27135 					(yyval.node) = (Node *) n;
27136 				}
27137     break;
27138 
27139   case 340:
27140 /* Line 1792 of yacc.c  */
27141 #line 2455 "gram.y"
27142     { (yyval.node) = NULL; }
27143     break;
27144 
27145   case 341:
27146 /* Line 1792 of yacc.c  */
27147 #line 2459 "gram.y"
27148     { (yyval.node) = (yyvsp[(2) - (2)].node); }
27149     break;
27150 
27151   case 342:
27152 /* Line 1792 of yacc.c  */
27153 #line 2460 "gram.y"
27154     { (yyval.node) = NULL; }
27155     break;
27156 
27157   case 343:
27158 /* Line 1792 of yacc.c  */
27159 #line 2465 "gram.y"
27160     {
27161 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
27162 					n->identity_type = REPLICA_IDENTITY_NOTHING;
27163 					n->name = NULL;
27164 					(yyval.node) = (Node *) n;
27165 				}
27166     break;
27167 
27168   case 344:
27169 /* Line 1792 of yacc.c  */
27170 #line 2472 "gram.y"
27171     {
27172 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
27173 					n->identity_type = REPLICA_IDENTITY_FULL;
27174 					n->name = NULL;
27175 					(yyval.node) = (Node *) n;
27176 				}
27177     break;
27178 
27179   case 345:
27180 /* Line 1792 of yacc.c  */
27181 #line 2479 "gram.y"
27182     {
27183 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
27184 					n->identity_type = REPLICA_IDENTITY_DEFAULT;
27185 					n->name = NULL;
27186 					(yyval.node) = (Node *) n;
27187 				}
27188     break;
27189 
27190   case 346:
27191 /* Line 1792 of yacc.c  */
27192 #line 2486 "gram.y"
27193     {
27194 					ReplicaIdentityStmt *n = makeNode(ReplicaIdentityStmt);
27195 					n->identity_type = REPLICA_IDENTITY_INDEX;
27196 					n->name = (yyvsp[(3) - (3)].str);
27197 					(yyval.node) = (Node *) n;
27198 				}
27199     break;
27200 
27201   case 347:
27202 /* Line 1792 of yacc.c  */
27203 #line 2495 "gram.y"
27204     { (yyval.list) = (yyvsp[(2) - (3)].list); }
27205     break;
27206 
27207   case 348:
27208 /* Line 1792 of yacc.c  */
27209 #line 2498 "gram.y"
27210     { (yyval.list) = (yyvsp[(2) - (2)].list); }
27211     break;
27212 
27213   case 349:
27214 /* Line 1792 of yacc.c  */
27215 #line 2499 "gram.y"
27216     { (yyval.list) = NIL; }
27217     break;
27218 
27219   case 350:
27220 /* Line 1792 of yacc.c  */
27221 #line 2503 "gram.y"
27222     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
27223     break;
27224 
27225   case 351:
27226 /* Line 1792 of yacc.c  */
27227 #line 2504 "gram.y"
27228     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
27229     break;
27230 
27231   case 352:
27232 /* Line 1792 of yacc.c  */
27233 #line 2510 "gram.y"
27234     {
27235 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node));
27236 				}
27237     break;
27238 
27239   case 353:
27240 /* Line 1792 of yacc.c  */
27241 #line 2514 "gram.y"
27242     {
27243 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (1)].str), NULL);
27244 				}
27245     break;
27246 
27247   case 354:
27248 /* Line 1792 of yacc.c  */
27249 #line 2518 "gram.y"
27250     {
27251 					(yyval.defelt) = makeDefElemExtended((yyvsp[(1) - (5)].str), (yyvsp[(3) - (5)].str), (Node *) (yyvsp[(5) - (5)].node),
27252 											 DEFELEM_UNSPEC);
27253 				}
27254     break;
27255 
27256   case 355:
27257 /* Line 1792 of yacc.c  */
27258 #line 2523 "gram.y"
27259     {
27260 					(yyval.defelt) = makeDefElemExtended((yyvsp[(1) - (3)].str), (yyvsp[(3) - (3)].str), NULL, DEFELEM_UNSPEC);
27261 				}
27262     break;
27263 
27264   case 356:
27265 /* Line 1792 of yacc.c  */
27266 #line 2538 "gram.y"
27267     {
27268 					AlterTableStmt *n = makeNode(AlterTableStmt);
27269 
27270 					/* can't use qualified_name, sigh */
27271 					n->relation = makeRangeVarFromAnyName((yyvsp[(3) - (4)].list), (yylsp[(3) - (4)]), yyscanner);
27272 					n->cmds = (yyvsp[(4) - (4)].list);
27273 					n->relkind = OBJECT_TYPE;
27274 					(yyval.node) = (Node *)n;
27275 				}
27276     break;
27277 
27278   case 357:
27279 /* Line 1792 of yacc.c  */
27280 #line 2550 "gram.y"
27281     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
27282     break;
27283 
27284   case 358:
27285 /* Line 1792 of yacc.c  */
27286 #line 2551 "gram.y"
27287     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
27288     break;
27289 
27290   case 359:
27291 /* Line 1792 of yacc.c  */
27292 #line 2557 "gram.y"
27293     {
27294 					AlterTableCmd *n = makeNode(AlterTableCmd);
27295 					n->subtype = AT_AddColumn;
27296 					n->def = (yyvsp[(3) - (4)].node);
27297 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
27298 					(yyval.node) = (Node *)n;
27299 				}
27300     break;
27301 
27302   case 360:
27303 /* Line 1792 of yacc.c  */
27304 #line 2566 "gram.y"
27305     {
27306 					AlterTableCmd *n = makeNode(AlterTableCmd);
27307 					n->subtype = AT_DropColumn;
27308 					n->name = (yyvsp[(5) - (6)].str);
27309 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
27310 					n->missing_ok = TRUE;
27311 					(yyval.node) = (Node *)n;
27312 				}
27313     break;
27314 
27315   case 361:
27316 /* Line 1792 of yacc.c  */
27317 #line 2576 "gram.y"
27318     {
27319 					AlterTableCmd *n = makeNode(AlterTableCmd);
27320 					n->subtype = AT_DropColumn;
27321 					n->name = (yyvsp[(3) - (4)].str);
27322 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
27323 					n->missing_ok = FALSE;
27324 					(yyval.node) = (Node *)n;
27325 				}
27326     break;
27327 
27328   case 362:
27329 /* Line 1792 of yacc.c  */
27330 #line 2586 "gram.y"
27331     {
27332 					AlterTableCmd *n = makeNode(AlterTableCmd);
27333 					ColumnDef *def = makeNode(ColumnDef);
27334 					n->subtype = AT_AlterColumnType;
27335 					n->name = (yyvsp[(3) - (8)].str);
27336 					n->def = (Node *) def;
27337 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
27338 					/* We only use these fields of the ColumnDef node */
27339 					def->typeName = (yyvsp[(6) - (8)].typnam);
27340 					def->collClause = (CollateClause *) (yyvsp[(7) - (8)].node);
27341 					def->raw_default = NULL;
27342 					def->location = (yylsp[(3) - (8)]);
27343 					(yyval.node) = (Node *)n;
27344 				}
27345     break;
27346 
27347   case 363:
27348 /* Line 1792 of yacc.c  */
27349 #line 2612 "gram.y"
27350     {
27351 					ClosePortalStmt *n = makeNode(ClosePortalStmt);
27352 					n->portalname = (yyvsp[(2) - (2)].str);
27353 					(yyval.node) = (Node *)n;
27354 				}
27355     break;
27356 
27357   case 364:
27358 /* Line 1792 of yacc.c  */
27359 #line 2618 "gram.y"
27360     {
27361 					ClosePortalStmt *n = makeNode(ClosePortalStmt);
27362 					n->portalname = NULL;
27363 					(yyval.node) = (Node *)n;
27364 				}
27365     break;
27366 
27367   case 365:
27368 /* Line 1792 of yacc.c  */
27369 #line 2652 "gram.y"
27370     {
27371 					CopyStmt *n = makeNode(CopyStmt);
27372 					n->relation = (yyvsp[(3) - (11)].range);
27373 					n->query = NULL;
27374 					n->attlist = (yyvsp[(4) - (11)].list);
27375 					n->is_from = (yyvsp[(6) - (11)].boolean);
27376 					n->is_program = (yyvsp[(7) - (11)].boolean);
27377 					n->filename = (yyvsp[(8) - (11)].str);
27378 
27379 					if (n->is_program && n->filename == NULL)
27380 						ereport(ERROR,
27381 								(errcode(ERRCODE_SYNTAX_ERROR),
27382 								 errmsg("STDIN/STDOUT not allowed with PROGRAM"),
27383 								 parser_errposition((yylsp[(8) - (11)]))));
27384 
27385 					n->options = NIL;
27386 					/* Concatenate user-supplied flags */
27387 					if ((yyvsp[(2) - (11)].defelt))
27388 						n->options = lappend(n->options, (yyvsp[(2) - (11)].defelt));
27389 					if ((yyvsp[(5) - (11)].defelt))
27390 						n->options = lappend(n->options, (yyvsp[(5) - (11)].defelt));
27391 					if ((yyvsp[(9) - (11)].defelt))
27392 						n->options = lappend(n->options, (yyvsp[(9) - (11)].defelt));
27393 					if ((yyvsp[(11) - (11)].list))
27394 						n->options = list_concat(n->options, (yyvsp[(11) - (11)].list));
27395 					(yyval.node) = (Node *)n;
27396 				}
27397     break;
27398 
27399   case 366:
27400 /* Line 1792 of yacc.c  */
27401 #line 2680 "gram.y"
27402     {
27403 					CopyStmt *n = makeNode(CopyStmt);
27404 					n->relation = NULL;
27405 					n->query = (yyvsp[(3) - (9)].node);
27406 					n->attlist = NIL;
27407 					n->is_from = false;
27408 					n->is_program = (yyvsp[(6) - (9)].boolean);
27409 					n->filename = (yyvsp[(7) - (9)].str);
27410 					n->options = (yyvsp[(9) - (9)].list);
27411 
27412 					if (n->is_program && n->filename == NULL)
27413 						ereport(ERROR,
27414 								(errcode(ERRCODE_SYNTAX_ERROR),
27415 								 errmsg("STDIN/STDOUT not allowed with PROGRAM"),
27416 								 parser_errposition((yylsp[(5) - (9)]))));
27417 
27418 					(yyval.node) = (Node *)n;
27419 				}
27420     break;
27421 
27422   case 367:
27423 /* Line 1792 of yacc.c  */
27424 #line 2701 "gram.y"
27425     { (yyval.boolean) = TRUE; }
27426     break;
27427 
27428   case 368:
27429 /* Line 1792 of yacc.c  */
27430 #line 2702 "gram.y"
27431     { (yyval.boolean) = FALSE; }
27432     break;
27433 
27434   case 369:
27435 /* Line 1792 of yacc.c  */
27436 #line 2706 "gram.y"
27437     { (yyval.boolean) = TRUE; }
27438     break;
27439 
27440   case 370:
27441 /* Line 1792 of yacc.c  */
27442 #line 2707 "gram.y"
27443     { (yyval.boolean) = FALSE; }
27444     break;
27445 
27446   case 371:
27447 /* Line 1792 of yacc.c  */
27448 #line 2716 "gram.y"
27449     { (yyval.str) = (yyvsp[(1) - (1)].str); }
27450     break;
27451 
27452   case 372:
27453 /* Line 1792 of yacc.c  */
27454 #line 2717 "gram.y"
27455     { (yyval.str) = NULL; }
27456     break;
27457 
27458   case 373:
27459 /* Line 1792 of yacc.c  */
27460 #line 2718 "gram.y"
27461     { (yyval.str) = NULL; }
27462     break;
27463 
27464   case 374:
27465 /* Line 1792 of yacc.c  */
27466 #line 2721 "gram.y"
27467     { (yyval.list) = (yyvsp[(1) - (1)].list); }
27468     break;
27469 
27470   case 375:
27471 /* Line 1792 of yacc.c  */
27472 #line 2722 "gram.y"
27473     { (yyval.list) = (yyvsp[(2) - (3)].list); }
27474     break;
27475 
27476   case 376:
27477 /* Line 1792 of yacc.c  */
27478 #line 2727 "gram.y"
27479     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
27480     break;
27481 
27482   case 377:
27483 /* Line 1792 of yacc.c  */
27484 #line 2728 "gram.y"
27485     { (yyval.list) = NIL; }
27486     break;
27487 
27488   case 378:
27489 /* Line 1792 of yacc.c  */
27490 #line 2733 "gram.y"
27491     {
27492 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("binary"));
27493 				}
27494     break;
27495 
27496   case 379:
27497 /* Line 1792 of yacc.c  */
27498 #line 2737 "gram.y"
27499     {
27500 					(yyval.defelt) = makeDefElem("oids", (Node *)makeInteger(TRUE));
27501 				}
27502     break;
27503 
27504   case 380:
27505 /* Line 1792 of yacc.c  */
27506 #line 2741 "gram.y"
27507     {
27508 					(yyval.defelt) = makeDefElem("freeze", (Node *)makeInteger(TRUE));
27509 				}
27510     break;
27511 
27512   case 381:
27513 /* Line 1792 of yacc.c  */
27514 #line 2745 "gram.y"
27515     {
27516 					(yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[(3) - (3)].str)));
27517 				}
27518     break;
27519 
27520   case 382:
27521 /* Line 1792 of yacc.c  */
27522 #line 2749 "gram.y"
27523     {
27524 					(yyval.defelt) = makeDefElem("null", (Node *)makeString((yyvsp[(3) - (3)].str)));
27525 				}
27526     break;
27527 
27528   case 383:
27529 /* Line 1792 of yacc.c  */
27530 #line 2753 "gram.y"
27531     {
27532 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("csv"));
27533 				}
27534     break;
27535 
27536   case 384:
27537 /* Line 1792 of yacc.c  */
27538 #line 2757 "gram.y"
27539     {
27540 					(yyval.defelt) = makeDefElem("header", (Node *)makeInteger(TRUE));
27541 				}
27542     break;
27543 
27544   case 385:
27545 /* Line 1792 of yacc.c  */
27546 #line 2761 "gram.y"
27547     {
27548 					(yyval.defelt) = makeDefElem("quote", (Node *)makeString((yyvsp[(3) - (3)].str)));
27549 				}
27550     break;
27551 
27552   case 386:
27553 /* Line 1792 of yacc.c  */
27554 #line 2765 "gram.y"
27555     {
27556 					(yyval.defelt) = makeDefElem("escape", (Node *)makeString((yyvsp[(3) - (3)].str)));
27557 				}
27558     break;
27559 
27560   case 387:
27561 /* Line 1792 of yacc.c  */
27562 #line 2769 "gram.y"
27563     {
27564 					(yyval.defelt) = makeDefElem("force_quote", (Node *)(yyvsp[(3) - (3)].list));
27565 				}
27566     break;
27567 
27568   case 388:
27569 /* Line 1792 of yacc.c  */
27570 #line 2773 "gram.y"
27571     {
27572 					(yyval.defelt) = makeDefElem("force_quote", (Node *)makeNode(A_Star));
27573 				}
27574     break;
27575 
27576   case 389:
27577 /* Line 1792 of yacc.c  */
27578 #line 2777 "gram.y"
27579     {
27580 					(yyval.defelt) = makeDefElem("force_not_null", (Node *)(yyvsp[(4) - (4)].list));
27581 				}
27582     break;
27583 
27584   case 390:
27585 /* Line 1792 of yacc.c  */
27586 #line 2781 "gram.y"
27587     {
27588 					(yyval.defelt) = makeDefElem("force_null", (Node *)(yyvsp[(3) - (3)].list));
27589 				}
27590     break;
27591 
27592   case 391:
27593 /* Line 1792 of yacc.c  */
27594 #line 2785 "gram.y"
27595     {
27596 					(yyval.defelt) = makeDefElem("encoding", (Node *)makeString((yyvsp[(2) - (2)].str)));
27597 				}
27598     break;
27599 
27600   case 392:
27601 /* Line 1792 of yacc.c  */
27602 #line 2794 "gram.y"
27603     {
27604 					(yyval.defelt) = makeDefElem("format", (Node *)makeString("binary"));
27605 				}
27606     break;
27607 
27608   case 393:
27609 /* Line 1792 of yacc.c  */
27610 #line 2797 "gram.y"
27611     { (yyval.defelt) = NULL; }
27612     break;
27613 
27614   case 394:
27615 /* Line 1792 of yacc.c  */
27616 #line 2802 "gram.y"
27617     {
27618 					(yyval.defelt) = makeDefElem("oids", (Node *)makeInteger(TRUE));
27619 				}
27620     break;
27621 
27622   case 395:
27623 /* Line 1792 of yacc.c  */
27624 #line 2805 "gram.y"
27625     { (yyval.defelt) = NULL; }
27626     break;
27627 
27628   case 396:
27629 /* Line 1792 of yacc.c  */
27630 #line 2810 "gram.y"
27631     {
27632 					(yyval.defelt) = makeDefElem("delimiter", (Node *)makeString((yyvsp[(3) - (3)].str)));
27633 				}
27634     break;
27635 
27636   case 397:
27637 /* Line 1792 of yacc.c  */
27638 #line 2813 "gram.y"
27639     { (yyval.defelt) = NULL; }
27640     break;
27641 
27642   case 398:
27643 /* Line 1792 of yacc.c  */
27644 #line 2817 "gram.y"
27645     {}
27646     break;
27647 
27648   case 399:
27649 /* Line 1792 of yacc.c  */
27650 #line 2818 "gram.y"
27651     {}
27652     break;
27653 
27654   case 400:
27655 /* Line 1792 of yacc.c  */
27656 #line 2824 "gram.y"
27657     {
27658 					(yyval.list) = list_make1((yyvsp[(1) - (1)].defelt));
27659 				}
27660     break;
27661 
27662   case 401:
27663 /* Line 1792 of yacc.c  */
27664 #line 2828 "gram.y"
27665     {
27666 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt));
27667 				}
27668     break;
27669 
27670   case 402:
27671 /* Line 1792 of yacc.c  */
27672 #line 2835 "gram.y"
27673     {
27674 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node));
27675 				}
27676     break;
27677 
27678   case 403:
27679 /* Line 1792 of yacc.c  */
27680 #line 2841 "gram.y"
27681     { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); }
27682     break;
27683 
27684   case 404:
27685 /* Line 1792 of yacc.c  */
27686 #line 2842 "gram.y"
27687     { (yyval.node) = (Node *) (yyvsp[(1) - (1)].value); }
27688     break;
27689 
27690   case 405:
27691 /* Line 1792 of yacc.c  */
27692 #line 2843 "gram.y"
27693     { (yyval.node) = (Node *) makeNode(A_Star); }
27694     break;
27695 
27696   case 406:
27697 /* Line 1792 of yacc.c  */
27698 #line 2844 "gram.y"
27699     { (yyval.node) = (Node *) (yyvsp[(2) - (3)].list); }
27700     break;
27701 
27702   case 407:
27703 /* Line 1792 of yacc.c  */
27704 #line 2845 "gram.y"
27705     { (yyval.node) = NULL; }
27706     break;
27707 
27708   case 408:
27709 /* Line 1792 of yacc.c  */
27710 #line 2850 "gram.y"
27711     {
27712 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
27713 				}
27714     break;
27715 
27716   case 409:
27717 /* Line 1792 of yacc.c  */
27718 #line 2854 "gram.y"
27719     {
27720 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
27721 				}
27722     break;
27723 
27724   case 410:
27725 /* Line 1792 of yacc.c  */
27726 #line 2861 "gram.y"
27727     { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); }
27728     break;
27729 
27730   case 411:
27731 /* Line 1792 of yacc.c  */
27732 #line 2874 "gram.y"
27733     {
27734 					CreateStmt *n = makeNode(CreateStmt);
27735 					(yyvsp[(4) - (11)].range)->relpersistence = (yyvsp[(2) - (11)].ival);
27736 					n->relation = (yyvsp[(4) - (11)].range);
27737 					n->tableElts = (yyvsp[(6) - (11)].list);
27738 					n->inhRelations = (yyvsp[(8) - (11)].list);
27739 					n->ofTypename = NULL;
27740 					n->constraints = NIL;
27741 					n->options = (yyvsp[(9) - (11)].list);
27742 					n->oncommit = (yyvsp[(10) - (11)].oncommit);
27743 					n->tablespacename = (yyvsp[(11) - (11)].str);
27744 					n->if_not_exists = false;
27745 					(yyval.node) = (Node *)n;
27746 				}
27747     break;
27748 
27749   case 412:
27750 /* Line 1792 of yacc.c  */
27751 #line 2891 "gram.y"
27752     {
27753 					CreateStmt *n = makeNode(CreateStmt);
27754 					(yyvsp[(7) - (14)].range)->relpersistence = (yyvsp[(2) - (14)].ival);
27755 					n->relation = (yyvsp[(7) - (14)].range);
27756 					n->tableElts = (yyvsp[(9) - (14)].list);
27757 					n->inhRelations = (yyvsp[(11) - (14)].list);
27758 					n->ofTypename = NULL;
27759 					n->constraints = NIL;
27760 					n->options = (yyvsp[(12) - (14)].list);
27761 					n->oncommit = (yyvsp[(13) - (14)].oncommit);
27762 					n->tablespacename = (yyvsp[(14) - (14)].str);
27763 					n->if_not_exists = true;
27764 					(yyval.node) = (Node *)n;
27765 				}
27766     break;
27767 
27768   case 413:
27769 /* Line 1792 of yacc.c  */
27770 #line 2907 "gram.y"
27771     {
27772 					CreateStmt *n = makeNode(CreateStmt);
27773 					(yyvsp[(4) - (10)].range)->relpersistence = (yyvsp[(2) - (10)].ival);
27774 					n->relation = (yyvsp[(4) - (10)].range);
27775 					n->tableElts = (yyvsp[(7) - (10)].list);
27776 					n->inhRelations = NIL;
27777 					n->ofTypename = makeTypeNameFromNameList((yyvsp[(6) - (10)].list));
27778 					n->ofTypename->location = (yylsp[(6) - (10)]);
27779 					n->constraints = NIL;
27780 					n->options = (yyvsp[(8) - (10)].list);
27781 					n->oncommit = (yyvsp[(9) - (10)].oncommit);
27782 					n->tablespacename = (yyvsp[(10) - (10)].str);
27783 					n->if_not_exists = false;
27784 					(yyval.node) = (Node *)n;
27785 				}
27786     break;
27787 
27788   case 414:
27789 /* Line 1792 of yacc.c  */
27790 #line 2924 "gram.y"
27791     {
27792 					CreateStmt *n = makeNode(CreateStmt);
27793 					(yyvsp[(7) - (13)].range)->relpersistence = (yyvsp[(2) - (13)].ival);
27794 					n->relation = (yyvsp[(7) - (13)].range);
27795 					n->tableElts = (yyvsp[(10) - (13)].list);
27796 					n->inhRelations = NIL;
27797 					n->ofTypename = makeTypeNameFromNameList((yyvsp[(9) - (13)].list));
27798 					n->ofTypename->location = (yylsp[(9) - (13)]);
27799 					n->constraints = NIL;
27800 					n->options = (yyvsp[(11) - (13)].list);
27801 					n->oncommit = (yyvsp[(12) - (13)].oncommit);
27802 					n->tablespacename = (yyvsp[(13) - (13)].str);
27803 					n->if_not_exists = true;
27804 					(yyval.node) = (Node *)n;
27805 				}
27806     break;
27807 
27808   case 415:
27809 /* Line 1792 of yacc.c  */
27810 #line 2952 "gram.y"
27811     { (yyval.ival) = RELPERSISTENCE_TEMP; }
27812     break;
27813 
27814   case 416:
27815 /* Line 1792 of yacc.c  */
27816 #line 2953 "gram.y"
27817     { (yyval.ival) = RELPERSISTENCE_TEMP; }
27818     break;
27819 
27820   case 417:
27821 /* Line 1792 of yacc.c  */
27822 #line 2954 "gram.y"
27823     { (yyval.ival) = RELPERSISTENCE_TEMP; }
27824     break;
27825 
27826   case 418:
27827 /* Line 1792 of yacc.c  */
27828 #line 2955 "gram.y"
27829     { (yyval.ival) = RELPERSISTENCE_TEMP; }
27830     break;
27831 
27832   case 419:
27833 /* Line 1792 of yacc.c  */
27834 #line 2957 "gram.y"
27835     {
27836 					ereport(WARNING,
27837 							(errmsg("GLOBAL is deprecated in temporary table creation"),
27838 							 parser_errposition((yylsp[(1) - (2)]))));
27839 					(yyval.ival) = RELPERSISTENCE_TEMP;
27840 				}
27841     break;
27842 
27843   case 420:
27844 /* Line 1792 of yacc.c  */
27845 #line 2964 "gram.y"
27846     {
27847 					ereport(WARNING,
27848 							(errmsg("GLOBAL is deprecated in temporary table creation"),
27849 							 parser_errposition((yylsp[(1) - (2)]))));
27850 					(yyval.ival) = RELPERSISTENCE_TEMP;
27851 				}
27852     break;
27853 
27854   case 421:
27855 /* Line 1792 of yacc.c  */
27856 #line 2970 "gram.y"
27857     { (yyval.ival) = RELPERSISTENCE_UNLOGGED; }
27858     break;
27859 
27860   case 422:
27861 /* Line 1792 of yacc.c  */
27862 #line 2971 "gram.y"
27863     { (yyval.ival) = RELPERSISTENCE_PERMANENT; }
27864     break;
27865 
27866   case 423:
27867 /* Line 1792 of yacc.c  */
27868 #line 2975 "gram.y"
27869     { (yyval.list) = (yyvsp[(1) - (1)].list); }
27870     break;
27871 
27872   case 424:
27873 /* Line 1792 of yacc.c  */
27874 #line 2976 "gram.y"
27875     { (yyval.list) = NIL; }
27876     break;
27877 
27878   case 425:
27879 /* Line 1792 of yacc.c  */
27880 #line 2980 "gram.y"
27881     { (yyval.list) = (yyvsp[(2) - (3)].list); }
27882     break;
27883 
27884   case 426:
27885 /* Line 1792 of yacc.c  */
27886 #line 2981 "gram.y"
27887     { (yyval.list) = NIL; }
27888     break;
27889 
27890   case 427:
27891 /* Line 1792 of yacc.c  */
27892 #line 2986 "gram.y"
27893     {
27894 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
27895 				}
27896     break;
27897 
27898   case 428:
27899 /* Line 1792 of yacc.c  */
27900 #line 2990 "gram.y"
27901     {
27902 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
27903 				}
27904     break;
27905 
27906   case 429:
27907 /* Line 1792 of yacc.c  */
27908 #line 2997 "gram.y"
27909     {
27910 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
27911 				}
27912     break;
27913 
27914   case 430:
27915 /* Line 1792 of yacc.c  */
27916 #line 3001 "gram.y"
27917     {
27918 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
27919 				}
27920     break;
27921 
27922   case 431:
27923 /* Line 1792 of yacc.c  */
27924 #line 3007 "gram.y"
27925     { (yyval.node) = (yyvsp[(1) - (1)].node); }
27926     break;
27927 
27928   case 432:
27929 /* Line 1792 of yacc.c  */
27930 #line 3008 "gram.y"
27931     { (yyval.node) = (yyvsp[(1) - (1)].node); }
27932     break;
27933 
27934   case 433:
27935 /* Line 1792 of yacc.c  */
27936 #line 3009 "gram.y"
27937     { (yyval.node) = (yyvsp[(1) - (1)].node); }
27938     break;
27939 
27940   case 434:
27941 /* Line 1792 of yacc.c  */
27942 #line 3013 "gram.y"
27943     { (yyval.node) = (yyvsp[(1) - (1)].node); }
27944     break;
27945 
27946   case 435:
27947 /* Line 1792 of yacc.c  */
27948 #line 3014 "gram.y"
27949     { (yyval.node) = (yyvsp[(1) - (1)].node); }
27950     break;
27951 
27952   case 436:
27953 /* Line 1792 of yacc.c  */
27954 #line 3018 "gram.y"
27955     {
27956 					ColumnDef *n = makeNode(ColumnDef);
27957 					n->colname = (yyvsp[(1) - (4)].str);
27958 					n->typeName = (yyvsp[(2) - (4)].typnam);
27959 					n->inhcount = 0;
27960 					n->is_local = true;
27961 					n->is_not_null = false;
27962 					n->is_from_type = false;
27963 					n->storage = 0;
27964 					n->raw_default = NULL;
27965 					n->cooked_default = NULL;
27966 					n->collOid = InvalidOid;
27967 					n->fdwoptions = (yyvsp[(3) - (4)].list);
27968 					SplitColQualList((yyvsp[(4) - (4)].list), &n->constraints, &n->collClause,
27969 									 yyscanner);
27970 					n->location = (yylsp[(1) - (4)]);
27971 					(yyval.node) = (Node *)n;
27972 				}
27973     break;
27974 
27975   case 437:
27976 /* Line 1792 of yacc.c  */
27977 #line 3039 "gram.y"
27978     {
27979 					ColumnDef *n = makeNode(ColumnDef);
27980 					n->colname = (yyvsp[(1) - (4)].str);
27981 					n->typeName = NULL;
27982 					n->inhcount = 0;
27983 					n->is_local = true;
27984 					n->is_not_null = false;
27985 					n->is_from_type = false;
27986 					n->storage = 0;
27987 					n->raw_default = NULL;
27988 					n->cooked_default = NULL;
27989 					n->collOid = InvalidOid;
27990 					SplitColQualList((yyvsp[(4) - (4)].list), &n->constraints, &n->collClause,
27991 									 yyscanner);
27992 					n->location = (yylsp[(1) - (4)]);
27993 					(yyval.node) = (Node *)n;
27994 				}
27995     break;
27996 
27997   case 438:
27998 /* Line 1792 of yacc.c  */
27999 #line 3059 "gram.y"
28000     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); }
28001     break;
28002 
28003   case 439:
28004 /* Line 1792 of yacc.c  */
28005 #line 3060 "gram.y"
28006     { (yyval.list) = NIL; }
28007     break;
28008 
28009   case 440:
28010 /* Line 1792 of yacc.c  */
28011 #line 3065 "gram.y"
28012     {
28013 					Constraint *n = (Constraint *) (yyvsp[(3) - (3)].node);
28014 					Assert(IsA(n, Constraint));
28015 					n->conname = (yyvsp[(2) - (3)].str);
28016 					n->location = (yylsp[(1) - (3)]);
28017 					(yyval.node) = (Node *) n;
28018 				}
28019     break;
28020 
28021   case 441:
28022 /* Line 1792 of yacc.c  */
28023 #line 3072 "gram.y"
28024     { (yyval.node) = (yyvsp[(1) - (1)].node); }
28025     break;
28026 
28027   case 442:
28028 /* Line 1792 of yacc.c  */
28029 #line 3073 "gram.y"
28030     { (yyval.node) = (yyvsp[(1) - (1)].node); }
28031     break;
28032 
28033   case 443:
28034 /* Line 1792 of yacc.c  */
28035 #line 3075 "gram.y"
28036     {
28037 					/*
28038 					 * Note: the CollateClause is momentarily included in
28039 					 * the list built by ColQualList, but we split it out
28040 					 * again in SplitColQualList.
28041 					 */
28042 					CollateClause *n = makeNode(CollateClause);
28043 					n->arg = NULL;
28044 					n->collname = (yyvsp[(2) - (2)].list);
28045 					n->location = (yylsp[(1) - (2)]);
28046 					(yyval.node) = (Node *) n;
28047 				}
28048     break;
28049 
28050   case 444:
28051 /* Line 1792 of yacc.c  */
28052 #line 3106 "gram.y"
28053     {
28054 					Constraint *n = makeNode(Constraint);
28055 					n->contype = CONSTR_NOTNULL;
28056 					n->location = (yylsp[(1) - (2)]);
28057 					(yyval.node) = (Node *)n;
28058 				}
28059     break;
28060 
28061   case 445:
28062 /* Line 1792 of yacc.c  */
28063 #line 3113 "gram.y"
28064     {
28065 					Constraint *n = makeNode(Constraint);
28066 					n->contype = CONSTR_NULL;
28067 					n->location = (yylsp[(1) - (1)]);
28068 					(yyval.node) = (Node *)n;
28069 				}
28070     break;
28071 
28072   case 446:
28073 /* Line 1792 of yacc.c  */
28074 #line 3120 "gram.y"
28075     {
28076 					Constraint *n = makeNode(Constraint);
28077 					n->contype = CONSTR_UNIQUE;
28078 					n->location = (yylsp[(1) - (3)]);
28079 					n->keys = NULL;
28080 					n->options = (yyvsp[(2) - (3)].list);
28081 					n->indexname = NULL;
28082 					n->indexspace = (yyvsp[(3) - (3)].str);
28083 					(yyval.node) = (Node *)n;
28084 				}
28085     break;
28086 
28087   case 447:
28088 /* Line 1792 of yacc.c  */
28089 #line 3131 "gram.y"
28090     {
28091 					Constraint *n = makeNode(Constraint);
28092 					n->contype = CONSTR_PRIMARY;
28093 					n->location = (yylsp[(1) - (4)]);
28094 					n->keys = NULL;
28095 					n->options = (yyvsp[(3) - (4)].list);
28096 					n->indexname = NULL;
28097 					n->indexspace = (yyvsp[(4) - (4)].str);
28098 					(yyval.node) = (Node *)n;
28099 				}
28100     break;
28101 
28102   case 448:
28103 /* Line 1792 of yacc.c  */
28104 #line 3142 "gram.y"
28105     {
28106 					Constraint *n = makeNode(Constraint);
28107 					n->contype = CONSTR_CHECK;
28108 					n->location = (yylsp[(1) - (5)]);
28109 					n->is_no_inherit = (yyvsp[(5) - (5)].boolean);
28110 					n->raw_expr = (yyvsp[(3) - (5)].node);
28111 					n->cooked_expr = NULL;
28112 					n->skip_validation = false;
28113 					n->initially_valid = true;
28114 					(yyval.node) = (Node *)n;
28115 				}
28116     break;
28117 
28118   case 449:
28119 /* Line 1792 of yacc.c  */
28120 #line 3154 "gram.y"
28121     {
28122 					Constraint *n = makeNode(Constraint);
28123 					n->contype = CONSTR_DEFAULT;
28124 					n->location = (yylsp[(1) - (2)]);
28125 					n->raw_expr = (yyvsp[(2) - (2)].node);
28126 					n->cooked_expr = NULL;
28127 					n->skip_validation = false;
28128 					n->initially_valid = true;
28129 					(yyval.node) = (Node *)n;
28130 				}
28131     break;
28132 
28133   case 450:
28134 /* Line 1792 of yacc.c  */
28135 #line 3165 "gram.y"
28136     {
28137 					Constraint *n = makeNode(Constraint);
28138 					n->contype = CONSTR_FOREIGN;
28139 					n->location = (yylsp[(1) - (5)]);
28140 					n->pktable			= (yyvsp[(2) - (5)].range);
28141 					n->fk_attrs			= NIL;
28142 					n->pk_attrs			= (yyvsp[(3) - (5)].list);
28143 					n->fk_matchtype		= (yyvsp[(4) - (5)].ival);
28144 					n->fk_upd_action	= (char) ((yyvsp[(5) - (5)].ival) >> 8);
28145 					n->fk_del_action	= (char) ((yyvsp[(5) - (5)].ival) & 0xFF);
28146 					n->skip_validation  = false;
28147 					n->initially_valid  = true;
28148 					(yyval.node) = (Node *)n;
28149 				}
28150     break;
28151 
28152   case 451:
28153 /* Line 1792 of yacc.c  */
28154 #line 3198 "gram.y"
28155     {
28156 					Constraint *n = makeNode(Constraint);
28157 					n->contype = CONSTR_ATTR_DEFERRABLE;
28158 					n->location = (yylsp[(1) - (1)]);
28159 					(yyval.node) = (Node *)n;
28160 				}
28161     break;
28162 
28163   case 452:
28164 /* Line 1792 of yacc.c  */
28165 #line 3205 "gram.y"
28166     {
28167 					Constraint *n = makeNode(Constraint);
28168 					n->contype = CONSTR_ATTR_NOT_DEFERRABLE;
28169 					n->location = (yylsp[(1) - (2)]);
28170 					(yyval.node) = (Node *)n;
28171 				}
28172     break;
28173 
28174   case 453:
28175 /* Line 1792 of yacc.c  */
28176 #line 3212 "gram.y"
28177     {
28178 					Constraint *n = makeNode(Constraint);
28179 					n->contype = CONSTR_ATTR_DEFERRED;
28180 					n->location = (yylsp[(1) - (2)]);
28181 					(yyval.node) = (Node *)n;
28182 				}
28183     break;
28184 
28185   case 454:
28186 /* Line 1792 of yacc.c  */
28187 #line 3219 "gram.y"
28188     {
28189 					Constraint *n = makeNode(Constraint);
28190 					n->contype = CONSTR_ATTR_IMMEDIATE;
28191 					n->location = (yylsp[(1) - (2)]);
28192 					(yyval.node) = (Node *)n;
28193 				}
28194     break;
28195 
28196   case 455:
28197 /* Line 1792 of yacc.c  */
28198 #line 3230 "gram.y"
28199     {
28200 					TableLikeClause *n = makeNode(TableLikeClause);
28201 					n->relation = (yyvsp[(2) - (3)].range);
28202 					n->options = (yyvsp[(3) - (3)].ival);
28203 					(yyval.node) = (Node *)n;
28204 				}
28205     break;
28206 
28207   case 456:
28208 /* Line 1792 of yacc.c  */
28209 #line 3239 "gram.y"
28210     { (yyval.ival) = (yyvsp[(1) - (3)].ival) | (yyvsp[(3) - (3)].ival); }
28211     break;
28212 
28213   case 457:
28214 /* Line 1792 of yacc.c  */
28215 #line 3240 "gram.y"
28216     { (yyval.ival) = (yyvsp[(1) - (3)].ival) & ~(yyvsp[(3) - (3)].ival); }
28217     break;
28218 
28219   case 458:
28220 /* Line 1792 of yacc.c  */
28221 #line 3241 "gram.y"
28222     { (yyval.ival) = 0; }
28223     break;
28224 
28225   case 459:
28226 /* Line 1792 of yacc.c  */
28227 #line 3245 "gram.y"
28228     { (yyval.ival) = CREATE_TABLE_LIKE_DEFAULTS; }
28229     break;
28230 
28231   case 460:
28232 /* Line 1792 of yacc.c  */
28233 #line 3246 "gram.y"
28234     { (yyval.ival) = CREATE_TABLE_LIKE_CONSTRAINTS; }
28235     break;
28236 
28237   case 461:
28238 /* Line 1792 of yacc.c  */
28239 #line 3247 "gram.y"
28240     { (yyval.ival) = CREATE_TABLE_LIKE_INDEXES; }
28241     break;
28242 
28243   case 462:
28244 /* Line 1792 of yacc.c  */
28245 #line 3248 "gram.y"
28246     { (yyval.ival) = CREATE_TABLE_LIKE_STORAGE; }
28247     break;
28248 
28249   case 463:
28250 /* Line 1792 of yacc.c  */
28251 #line 3249 "gram.y"
28252     { (yyval.ival) = CREATE_TABLE_LIKE_COMMENTS; }
28253     break;
28254 
28255   case 464:
28256 /* Line 1792 of yacc.c  */
28257 #line 3250 "gram.y"
28258     { (yyval.ival) = CREATE_TABLE_LIKE_ALL; }
28259     break;
28260 
28261   case 465:
28262 /* Line 1792 of yacc.c  */
28263 #line 3260 "gram.y"
28264     {
28265 					Constraint *n = (Constraint *) (yyvsp[(3) - (3)].node);
28266 					Assert(IsA(n, Constraint));
28267 					n->conname = (yyvsp[(2) - (3)].str);
28268 					n->location = (yylsp[(1) - (3)]);
28269 					(yyval.node) = (Node *) n;
28270 				}
28271     break;
28272 
28273   case 466:
28274 /* Line 1792 of yacc.c  */
28275 #line 3267 "gram.y"
28276     { (yyval.node) = (yyvsp[(1) - (1)].node); }
28277     break;
28278 
28279   case 467:
28280 /* Line 1792 of yacc.c  */
28281 #line 3272 "gram.y"
28282     {
28283 					Constraint *n = makeNode(Constraint);
28284 					n->contype = CONSTR_CHECK;
28285 					n->location = (yylsp[(1) - (5)]);
28286 					n->raw_expr = (yyvsp[(3) - (5)].node);
28287 					n->cooked_expr = NULL;
28288 					processCASbits((yyvsp[(5) - (5)].ival), (yylsp[(5) - (5)]), "CHECK",
28289 								   NULL, NULL, &n->skip_validation,
28290 								   &n->is_no_inherit, yyscanner);
28291 					n->initially_valid = !n->skip_validation;
28292 					(yyval.node) = (Node *)n;
28293 				}
28294     break;
28295 
28296   case 468:
28297 /* Line 1792 of yacc.c  */
28298 #line 3286 "gram.y"
28299     {
28300 					Constraint *n = makeNode(Constraint);
28301 					n->contype = CONSTR_UNIQUE;
28302 					n->location = (yylsp[(1) - (7)]);
28303 					n->keys = (yyvsp[(3) - (7)].list);
28304 					n->options = (yyvsp[(5) - (7)].list);
28305 					n->indexname = NULL;
28306 					n->indexspace = (yyvsp[(6) - (7)].str);
28307 					processCASbits((yyvsp[(7) - (7)].ival), (yylsp[(7) - (7)]), "UNIQUE",
28308 								   &n->deferrable, &n->initdeferred, NULL,
28309 								   NULL, yyscanner);
28310 					(yyval.node) = (Node *)n;
28311 				}
28312     break;
28313 
28314   case 469:
28315 /* Line 1792 of yacc.c  */
28316 #line 3300 "gram.y"
28317     {
28318 					Constraint *n = makeNode(Constraint);
28319 					n->contype = CONSTR_UNIQUE;
28320 					n->location = (yylsp[(1) - (3)]);
28321 					n->keys = NIL;
28322 					n->options = NIL;
28323 					n->indexname = (yyvsp[(2) - (3)].str);
28324 					n->indexspace = NULL;
28325 					processCASbits((yyvsp[(3) - (3)].ival), (yylsp[(3) - (3)]), "UNIQUE",
28326 								   &n->deferrable, &n->initdeferred, NULL,
28327 								   NULL, yyscanner);
28328 					(yyval.node) = (Node *)n;
28329 				}
28330     break;
28331 
28332   case 470:
28333 /* Line 1792 of yacc.c  */
28334 #line 3315 "gram.y"
28335     {
28336 					Constraint *n = makeNode(Constraint);
28337 					n->contype = CONSTR_PRIMARY;
28338 					n->location = (yylsp[(1) - (8)]);
28339 					n->keys = (yyvsp[(4) - (8)].list);
28340 					n->options = (yyvsp[(6) - (8)].list);
28341 					n->indexname = NULL;
28342 					n->indexspace = (yyvsp[(7) - (8)].str);
28343 					processCASbits((yyvsp[(8) - (8)].ival), (yylsp[(8) - (8)]), "PRIMARY KEY",
28344 								   &n->deferrable, &n->initdeferred, NULL,
28345 								   NULL, yyscanner);
28346 					(yyval.node) = (Node *)n;
28347 				}
28348     break;
28349 
28350   case 471:
28351 /* Line 1792 of yacc.c  */
28352 #line 3329 "gram.y"
28353     {
28354 					Constraint *n = makeNode(Constraint);
28355 					n->contype = CONSTR_PRIMARY;
28356 					n->location = (yylsp[(1) - (4)]);
28357 					n->keys = NIL;
28358 					n->options = NIL;
28359 					n->indexname = (yyvsp[(3) - (4)].str);
28360 					n->indexspace = NULL;
28361 					processCASbits((yyvsp[(4) - (4)].ival), (yylsp[(4) - (4)]), "PRIMARY KEY",
28362 								   &n->deferrable, &n->initdeferred, NULL,
28363 								   NULL, yyscanner);
28364 					(yyval.node) = (Node *)n;
28365 				}
28366     break;
28367 
28368   case 472:
28369 /* Line 1792 of yacc.c  */
28370 #line 3345 "gram.y"
28371     {
28372 					Constraint *n = makeNode(Constraint);
28373 					n->contype = CONSTR_EXCLUSION;
28374 					n->location = (yylsp[(1) - (9)]);
28375 					n->access_method	= (yyvsp[(2) - (9)].str);
28376 					n->exclusions		= (yyvsp[(4) - (9)].list);
28377 					n->options			= (yyvsp[(6) - (9)].list);
28378 					n->indexname		= NULL;
28379 					n->indexspace		= (yyvsp[(7) - (9)].str);
28380 					n->where_clause		= (yyvsp[(8) - (9)].node);
28381 					processCASbits((yyvsp[(9) - (9)].ival), (yylsp[(9) - (9)]), "EXCLUDE",
28382 								   &n->deferrable, &n->initdeferred, NULL,
28383 								   NULL, yyscanner);
28384 					(yyval.node) = (Node *)n;
28385 				}
28386     break;
28387 
28388   case 473:
28389 /* Line 1792 of yacc.c  */
28390 #line 3362 "gram.y"
28391     {
28392 					Constraint *n = makeNode(Constraint);
28393 					n->contype = CONSTR_FOREIGN;
28394 					n->location = (yylsp[(1) - (11)]);
28395 					n->pktable			= (yyvsp[(7) - (11)].range);
28396 					n->fk_attrs			= (yyvsp[(4) - (11)].list);
28397 					n->pk_attrs			= (yyvsp[(8) - (11)].list);
28398 					n->fk_matchtype		= (yyvsp[(9) - (11)].ival);
28399 					n->fk_upd_action	= (char) ((yyvsp[(10) - (11)].ival) >> 8);
28400 					n->fk_del_action	= (char) ((yyvsp[(10) - (11)].ival) & 0xFF);
28401 					processCASbits((yyvsp[(11) - (11)].ival), (yylsp[(11) - (11)]), "FOREIGN KEY",
28402 								   &n->deferrable, &n->initdeferred,
28403 								   &n->skip_validation, NULL,
28404 								   yyscanner);
28405 					n->initially_valid = !n->skip_validation;
28406 					(yyval.node) = (Node *)n;
28407 				}
28408     break;
28409 
28410   case 474:
28411 /* Line 1792 of yacc.c  */
28412 #line 3381 "gram.y"
28413     {  (yyval.boolean) = TRUE; }
28414     break;
28415 
28416   case 475:
28417 /* Line 1792 of yacc.c  */
28418 #line 3382 "gram.y"
28419     {  (yyval.boolean) = FALSE; }
28420     break;
28421 
28422   case 476:
28423 /* Line 1792 of yacc.c  */
28424 #line 3386 "gram.y"
28425     { (yyval.list) = (yyvsp[(2) - (3)].list); }
28426     break;
28427 
28428   case 477:
28429 /* Line 1792 of yacc.c  */
28430 #line 3387 "gram.y"
28431     { (yyval.list) = NIL; }
28432     break;
28433 
28434   case 478:
28435 /* Line 1792 of yacc.c  */
28436 #line 3391 "gram.y"
28437     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
28438     break;
28439 
28440   case 479:
28441 /* Line 1792 of yacc.c  */
28442 #line 3392 "gram.y"
28443     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
28444     break;
28445 
28446   case 480:
28447 /* Line 1792 of yacc.c  */
28448 #line 3396 "gram.y"
28449     {
28450 					(yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str));
28451 				}
28452     break;
28453 
28454   case 481:
28455 /* Line 1792 of yacc.c  */
28456 #line 3402 "gram.y"
28457     {
28458 				(yyval.ival) = FKCONSTR_MATCH_FULL;
28459 			}
28460     break;
28461 
28462   case 482:
28463 /* Line 1792 of yacc.c  */
28464 #line 3406 "gram.y"
28465     {
28466 				ereport(ERROR,
28467 						(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
28468 						 errmsg("MATCH PARTIAL not yet implemented"),
28469 						 parser_errposition((yylsp[(1) - (2)]))));
28470 				(yyval.ival) = FKCONSTR_MATCH_PARTIAL;
28471 			}
28472     break;
28473 
28474   case 483:
28475 /* Line 1792 of yacc.c  */
28476 #line 3414 "gram.y"
28477     {
28478 				(yyval.ival) = FKCONSTR_MATCH_SIMPLE;
28479 			}
28480     break;
28481 
28482   case 484:
28483 /* Line 1792 of yacc.c  */
28484 #line 3418 "gram.y"
28485     {
28486 				(yyval.ival) = FKCONSTR_MATCH_SIMPLE;
28487 			}
28488     break;
28489 
28490   case 485:
28491 /* Line 1792 of yacc.c  */
28492 #line 3424 "gram.y"
28493     { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); }
28494     break;
28495 
28496   case 486:
28497 /* Line 1792 of yacc.c  */
28498 #line 3426 "gram.y"
28499     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); }
28500     break;
28501 
28502   case 487:
28503 /* Line 1792 of yacc.c  */
28504 #line 3430 "gram.y"
28505     {
28506 				(yyval.list) = list_make2((yyvsp[(1) - (3)].ielem), (yyvsp[(3) - (3)].list));
28507 			}
28508     break;
28509 
28510   case 488:
28511 /* Line 1792 of yacc.c  */
28512 #line 3435 "gram.y"
28513     {
28514 				(yyval.list) = list_make2((yyvsp[(1) - (6)].ielem), (yyvsp[(5) - (6)].list));
28515 			}
28516     break;
28517 
28518   case 489:
28519 /* Line 1792 of yacc.c  */
28520 #line 3441 "gram.y"
28521     { (yyval.node) = (yyvsp[(3) - (4)].node); }
28522     break;
28523 
28524   case 490:
28525 /* Line 1792 of yacc.c  */
28526 #line 3442 "gram.y"
28527     { (yyval.node) = NULL; }
28528     break;
28529 
28530   case 491:
28531 /* Line 1792 of yacc.c  */
28532 #line 3453 "gram.y"
28533     { (yyval.ival) = ((yyvsp[(1) - (1)].ival) << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); }
28534     break;
28535 
28536   case 492:
28537 /* Line 1792 of yacc.c  */
28538 #line 3455 "gram.y"
28539     { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | ((yyvsp[(1) - (1)].ival) & 0xFF); }
28540     break;
28541 
28542   case 493:
28543 /* Line 1792 of yacc.c  */
28544 #line 3457 "gram.y"
28545     { (yyval.ival) = ((yyvsp[(1) - (2)].ival) << 8) | ((yyvsp[(2) - (2)].ival) & 0xFF); }
28546     break;
28547 
28548   case 494:
28549 /* Line 1792 of yacc.c  */
28550 #line 3459 "gram.y"
28551     { (yyval.ival) = ((yyvsp[(2) - (2)].ival) << 8) | ((yyvsp[(1) - (2)].ival) & 0xFF); }
28552     break;
28553 
28554   case 495:
28555 /* Line 1792 of yacc.c  */
28556 #line 3461 "gram.y"
28557     { (yyval.ival) = (FKCONSTR_ACTION_NOACTION << 8) | (FKCONSTR_ACTION_NOACTION & 0xFF); }
28558     break;
28559 
28560   case 496:
28561 /* Line 1792 of yacc.c  */
28562 #line 3464 "gram.y"
28563     { (yyval.ival) = (yyvsp[(3) - (3)].ival); }
28564     break;
28565 
28566   case 497:
28567 /* Line 1792 of yacc.c  */
28568 #line 3467 "gram.y"
28569     { (yyval.ival) = (yyvsp[(3) - (3)].ival); }
28570     break;
28571 
28572   case 498:
28573 /* Line 1792 of yacc.c  */
28574 #line 3471 "gram.y"
28575     { (yyval.ival) = FKCONSTR_ACTION_NOACTION; }
28576     break;
28577 
28578   case 499:
28579 /* Line 1792 of yacc.c  */
28580 #line 3472 "gram.y"
28581     { (yyval.ival) = FKCONSTR_ACTION_RESTRICT; }
28582     break;
28583 
28584   case 500:
28585 /* Line 1792 of yacc.c  */
28586 #line 3473 "gram.y"
28587     { (yyval.ival) = FKCONSTR_ACTION_CASCADE; }
28588     break;
28589 
28590   case 501:
28591 /* Line 1792 of yacc.c  */
28592 #line 3474 "gram.y"
28593     { (yyval.ival) = FKCONSTR_ACTION_SETNULL; }
28594     break;
28595 
28596   case 502:
28597 /* Line 1792 of yacc.c  */
28598 #line 3475 "gram.y"
28599     { (yyval.ival) = FKCONSTR_ACTION_SETDEFAULT; }
28600     break;
28601 
28602   case 503:
28603 /* Line 1792 of yacc.c  */
28604 #line 3478 "gram.y"
28605     { (yyval.list) = (yyvsp[(3) - (4)].list); }
28606     break;
28607 
28608   case 504:
28609 /* Line 1792 of yacc.c  */
28610 #line 3479 "gram.y"
28611     { (yyval.list) = NIL; }
28612     break;
28613 
28614   case 505:
28615 /* Line 1792 of yacc.c  */
28616 #line 3484 "gram.y"
28617     { (yyval.list) = (yyvsp[(2) - (2)].list); }
28618     break;
28619 
28620   case 506:
28621 /* Line 1792 of yacc.c  */
28622 #line 3485 "gram.y"
28623     { (yyval.list) = list_make1(defWithOids(true)); }
28624     break;
28625 
28626   case 507:
28627 /* Line 1792 of yacc.c  */
28628 #line 3486 "gram.y"
28629     { (yyval.list) = list_make1(defWithOids(false)); }
28630     break;
28631 
28632   case 508:
28633 /* Line 1792 of yacc.c  */
28634 #line 3487 "gram.y"
28635     { (yyval.list) = NIL; }
28636     break;
28637 
28638   case 509:
28639 /* Line 1792 of yacc.c  */
28640 #line 3490 "gram.y"
28641     { (yyval.oncommit) = ONCOMMIT_DROP; }
28642     break;
28643 
28644   case 510:
28645 /* Line 1792 of yacc.c  */
28646 #line 3491 "gram.y"
28647     { (yyval.oncommit) = ONCOMMIT_DELETE_ROWS; }
28648     break;
28649 
28650   case 511:
28651 /* Line 1792 of yacc.c  */
28652 #line 3492 "gram.y"
28653     { (yyval.oncommit) = ONCOMMIT_PRESERVE_ROWS; }
28654     break;
28655 
28656   case 512:
28657 /* Line 1792 of yacc.c  */
28658 #line 3493 "gram.y"
28659     { (yyval.oncommit) = ONCOMMIT_NOOP; }
28660     break;
28661 
28662   case 513:
28663 /* Line 1792 of yacc.c  */
28664 #line 3496 "gram.y"
28665     { (yyval.str) = (yyvsp[(2) - (2)].str); }
28666     break;
28667 
28668   case 514:
28669 /* Line 1792 of yacc.c  */
28670 #line 3497 "gram.y"
28671     { (yyval.str) = NULL; }
28672     break;
28673 
28674   case 515:
28675 /* Line 1792 of yacc.c  */
28676 #line 3500 "gram.y"
28677     { (yyval.str) = (yyvsp[(4) - (4)].str); }
28678     break;
28679 
28680   case 516:
28681 /* Line 1792 of yacc.c  */
28682 #line 3501 "gram.y"
28683     { (yyval.str) = NULL; }
28684     break;
28685 
28686   case 517:
28687 /* Line 1792 of yacc.c  */
28688 #line 3504 "gram.y"
28689     { (yyval.str) = (yyvsp[(3) - (3)].str); }
28690     break;
28691 
28692   case 518:
28693 /* Line 1792 of yacc.c  */
28694 #line 3520 "gram.y"
28695     {
28696 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
28697 					ctas->query = (yyvsp[(6) - (7)].node);
28698 					ctas->into = (yyvsp[(4) - (7)].into);
28699 					ctas->relkind = OBJECT_TABLE;
28700 					ctas->is_select_into = false;
28701 					ctas->if_not_exists = false;
28702 					/* cram additional flags into the IntoClause */
28703 					(yyvsp[(4) - (7)].into)->rel->relpersistence = (yyvsp[(2) - (7)].ival);
28704 					(yyvsp[(4) - (7)].into)->skipData = !((yyvsp[(7) - (7)].boolean));
28705 					(yyval.node) = (Node *) ctas;
28706 				}
28707     break;
28708 
28709   case 519:
28710 /* Line 1792 of yacc.c  */
28711 #line 3533 "gram.y"
28712     {
28713 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
28714 					ctas->query = (yyvsp[(9) - (10)].node);
28715 					ctas->into = (yyvsp[(7) - (10)].into);
28716 					ctas->relkind = OBJECT_TABLE;
28717 					ctas->is_select_into = false;
28718 					ctas->if_not_exists = true;
28719 					/* cram additional flags into the IntoClause */
28720 					(yyvsp[(7) - (10)].into)->rel->relpersistence = (yyvsp[(2) - (10)].ival);
28721 					(yyvsp[(7) - (10)].into)->skipData = !((yyvsp[(10) - (10)].boolean));
28722 					(yyval.node) = (Node *) ctas;
28723 				}
28724     break;
28725 
28726   case 520:
28727 /* Line 1792 of yacc.c  */
28728 #line 3549 "gram.y"
28729     {
28730 					(yyval.into) = makeNode(IntoClause);
28731 					(yyval.into)->rel = (yyvsp[(1) - (5)].range);
28732 					(yyval.into)->colNames = (yyvsp[(2) - (5)].list);
28733 					(yyval.into)->options = (yyvsp[(3) - (5)].list);
28734 					(yyval.into)->onCommit = (yyvsp[(4) - (5)].oncommit);
28735 					(yyval.into)->tableSpaceName = (yyvsp[(5) - (5)].str);
28736 					(yyval.into)->viewQuery = NULL;
28737 					(yyval.into)->skipData = false;		/* might get changed later */
28738 				}
28739     break;
28740 
28741   case 521:
28742 /* Line 1792 of yacc.c  */
28743 #line 3562 "gram.y"
28744     { (yyval.boolean) = TRUE; }
28745     break;
28746 
28747   case 522:
28748 /* Line 1792 of yacc.c  */
28749 #line 3563 "gram.y"
28750     { (yyval.boolean) = FALSE; }
28751     break;
28752 
28753   case 523:
28754 /* Line 1792 of yacc.c  */
28755 #line 3564 "gram.y"
28756     { (yyval.boolean) = TRUE; }
28757     break;
28758 
28759   case 524:
28760 /* Line 1792 of yacc.c  */
28761 #line 3577 "gram.y"
28762     {
28763 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
28764 					ctas->query = (yyvsp[(7) - (8)].node);
28765 					ctas->into = (yyvsp[(5) - (8)].into);
28766 					ctas->relkind = OBJECT_MATVIEW;
28767 					ctas->is_select_into = false;
28768 					ctas->if_not_exists = false;
28769 					/* cram additional flags into the IntoClause */
28770 					(yyvsp[(5) - (8)].into)->rel->relpersistence = (yyvsp[(2) - (8)].ival);
28771 					(yyvsp[(5) - (8)].into)->skipData = !((yyvsp[(8) - (8)].boolean));
28772 					(yyval.node) = (Node *) ctas;
28773 				}
28774     break;
28775 
28776   case 525:
28777 /* Line 1792 of yacc.c  */
28778 #line 3590 "gram.y"
28779     {
28780 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
28781 					ctas->query = (yyvsp[(10) - (11)].node);
28782 					ctas->into = (yyvsp[(8) - (11)].into);
28783 					ctas->relkind = OBJECT_MATVIEW;
28784 					ctas->is_select_into = false;
28785 					ctas->if_not_exists = true;
28786 					/* cram additional flags into the IntoClause */
28787 					(yyvsp[(8) - (11)].into)->rel->relpersistence = (yyvsp[(2) - (11)].ival);
28788 					(yyvsp[(8) - (11)].into)->skipData = !((yyvsp[(11) - (11)].boolean));
28789 					(yyval.node) = (Node *) ctas;
28790 				}
28791     break;
28792 
28793   case 526:
28794 /* Line 1792 of yacc.c  */
28795 #line 3606 "gram.y"
28796     {
28797 					(yyval.into) = makeNode(IntoClause);
28798 					(yyval.into)->rel = (yyvsp[(1) - (4)].range);
28799 					(yyval.into)->colNames = (yyvsp[(2) - (4)].list);
28800 					(yyval.into)->options = (yyvsp[(3) - (4)].list);
28801 					(yyval.into)->onCommit = ONCOMMIT_NOOP;
28802 					(yyval.into)->tableSpaceName = (yyvsp[(4) - (4)].str);
28803 					(yyval.into)->viewQuery = NULL;		/* filled at analysis time */
28804 					(yyval.into)->skipData = false;		/* might get changed later */
28805 				}
28806     break;
28807 
28808   case 527:
28809 /* Line 1792 of yacc.c  */
28810 #line 3618 "gram.y"
28811     { (yyval.ival) = RELPERSISTENCE_UNLOGGED; }
28812     break;
28813 
28814   case 528:
28815 /* Line 1792 of yacc.c  */
28816 #line 3619 "gram.y"
28817     { (yyval.ival) = RELPERSISTENCE_PERMANENT; }
28818     break;
28819 
28820   case 529:
28821 /* Line 1792 of yacc.c  */
28822 #line 3632 "gram.y"
28823     {
28824 					RefreshMatViewStmt *n = makeNode(RefreshMatViewStmt);
28825 					n->concurrent = (yyvsp[(4) - (6)].boolean);
28826 					n->relation = (yyvsp[(5) - (6)].range);
28827 					n->skipData = !((yyvsp[(6) - (6)].boolean));
28828 					(yyval.node) = (Node *) n;
28829 				}
28830     break;
28831 
28832   case 530:
28833 /* Line 1792 of yacc.c  */
28834 #line 3652 "gram.y"
28835     {
28836 					CreateSeqStmt *n = makeNode(CreateSeqStmt);
28837 					(yyvsp[(4) - (5)].range)->relpersistence = (yyvsp[(2) - (5)].ival);
28838 					n->sequence = (yyvsp[(4) - (5)].range);
28839 					n->options = (yyvsp[(5) - (5)].list);
28840 					n->ownerId = InvalidOid;
28841 					n->if_not_exists = false;
28842 					(yyval.node) = (Node *)n;
28843 				}
28844     break;
28845 
28846   case 531:
28847 /* Line 1792 of yacc.c  */
28848 #line 3662 "gram.y"
28849     {
28850 					CreateSeqStmt *n = makeNode(CreateSeqStmt);
28851 					(yyvsp[(7) - (8)].range)->relpersistence = (yyvsp[(2) - (8)].ival);
28852 					n->sequence = (yyvsp[(7) - (8)].range);
28853 					n->options = (yyvsp[(8) - (8)].list);
28854 					n->ownerId = InvalidOid;
28855 					n->if_not_exists = true;
28856 					(yyval.node) = (Node *)n;
28857 				}
28858     break;
28859 
28860   case 532:
28861 /* Line 1792 of yacc.c  */
28862 #line 3675 "gram.y"
28863     {
28864 					AlterSeqStmt *n = makeNode(AlterSeqStmt);
28865 					n->sequence = (yyvsp[(3) - (4)].range);
28866 					n->options = (yyvsp[(4) - (4)].list);
28867 					n->missing_ok = false;
28868 					(yyval.node) = (Node *)n;
28869 				}
28870     break;
28871 
28872   case 533:
28873 /* Line 1792 of yacc.c  */
28874 #line 3683 "gram.y"
28875     {
28876 					AlterSeqStmt *n = makeNode(AlterSeqStmt);
28877 					n->sequence = (yyvsp[(5) - (6)].range);
28878 					n->options = (yyvsp[(6) - (6)].list);
28879 					n->missing_ok = true;
28880 					(yyval.node) = (Node *)n;
28881 				}
28882     break;
28883 
28884   case 534:
28885 /* Line 1792 of yacc.c  */
28886 #line 3693 "gram.y"
28887     { (yyval.list) = (yyvsp[(1) - (1)].list); }
28888     break;
28889 
28890   case 535:
28891 /* Line 1792 of yacc.c  */
28892 #line 3694 "gram.y"
28893     { (yyval.list) = NIL; }
28894     break;
28895 
28896   case 536:
28897 /* Line 1792 of yacc.c  */
28898 #line 3697 "gram.y"
28899     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
28900     break;
28901 
28902   case 537:
28903 /* Line 1792 of yacc.c  */
28904 #line 3698 "gram.y"
28905     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
28906     break;
28907 
28908   case 538:
28909 /* Line 1792 of yacc.c  */
28910 #line 3702 "gram.y"
28911     {
28912 					(yyval.defelt) = makeDefElem("cache", (Node *)(yyvsp[(2) - (2)].value));
28913 				}
28914     break;
28915 
28916   case 539:
28917 /* Line 1792 of yacc.c  */
28918 #line 3706 "gram.y"
28919     {
28920 					(yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(TRUE));
28921 				}
28922     break;
28923 
28924   case 540:
28925 /* Line 1792 of yacc.c  */
28926 #line 3710 "gram.y"
28927     {
28928 					(yyval.defelt) = makeDefElem("cycle", (Node *)makeInteger(FALSE));
28929 				}
28930     break;
28931 
28932   case 541:
28933 /* Line 1792 of yacc.c  */
28934 #line 3714 "gram.y"
28935     {
28936 					(yyval.defelt) = makeDefElem("increment", (Node *)(yyvsp[(3) - (3)].value));
28937 				}
28938     break;
28939 
28940   case 542:
28941 /* Line 1792 of yacc.c  */
28942 #line 3718 "gram.y"
28943     {
28944 					(yyval.defelt) = makeDefElem("maxvalue", (Node *)(yyvsp[(2) - (2)].value));
28945 				}
28946     break;
28947 
28948   case 543:
28949 /* Line 1792 of yacc.c  */
28950 #line 3722 "gram.y"
28951     {
28952 					(yyval.defelt) = makeDefElem("minvalue", (Node *)(yyvsp[(2) - (2)].value));
28953 				}
28954     break;
28955 
28956   case 544:
28957 /* Line 1792 of yacc.c  */
28958 #line 3726 "gram.y"
28959     {
28960 					(yyval.defelt) = makeDefElem("maxvalue", NULL);
28961 				}
28962     break;
28963 
28964   case 545:
28965 /* Line 1792 of yacc.c  */
28966 #line 3730 "gram.y"
28967     {
28968 					(yyval.defelt) = makeDefElem("minvalue", NULL);
28969 				}
28970     break;
28971 
28972   case 546:
28973 /* Line 1792 of yacc.c  */
28974 #line 3734 "gram.y"
28975     {
28976 					(yyval.defelt) = makeDefElem("owned_by", (Node *)(yyvsp[(3) - (3)].list));
28977 				}
28978     break;
28979 
28980   case 547:
28981 /* Line 1792 of yacc.c  */
28982 #line 3738 "gram.y"
28983     {
28984 					(yyval.defelt) = makeDefElem("start", (Node *)(yyvsp[(3) - (3)].value));
28985 				}
28986     break;
28987 
28988   case 548:
28989 /* Line 1792 of yacc.c  */
28990 #line 3742 "gram.y"
28991     {
28992 					(yyval.defelt) = makeDefElem("restart", NULL);
28993 				}
28994     break;
28995 
28996   case 549:
28997 /* Line 1792 of yacc.c  */
28998 #line 3746 "gram.y"
28999     {
29000 					(yyval.defelt) = makeDefElem("restart", (Node *)(yyvsp[(3) - (3)].value));
29001 				}
29002     break;
29003 
29004   case 550:
29005 /* Line 1792 of yacc.c  */
29006 #line 3751 "gram.y"
29007     {}
29008     break;
29009 
29010   case 551:
29011 /* Line 1792 of yacc.c  */
29012 #line 3752 "gram.y"
29013     {}
29014     break;
29015 
29016   case 552:
29017 /* Line 1792 of yacc.c  */
29018 #line 3756 "gram.y"
29019     { (yyval.value) = makeFloat((yyvsp[(1) - (1)].str)); }
29020     break;
29021 
29022   case 553:
29023 /* Line 1792 of yacc.c  */
29024 #line 3758 "gram.y"
29025     {
29026 					(yyval.value) = makeFloat((yyvsp[(2) - (2)].str));
29027 					doNegateFloat((yyval.value));
29028 				}
29029     break;
29030 
29031   case 554:
29032 /* Line 1792 of yacc.c  */
29033 #line 3762 "gram.y"
29034     { (yyval.value) = makeInteger((yyvsp[(1) - (1)].ival)); }
29035     break;
29036 
29037   case 555:
29038 /* Line 1792 of yacc.c  */
29039 #line 3765 "gram.y"
29040     { (yyval.list) = list_make1((yyvsp[(1) - (1)].value)); }
29041     break;
29042 
29043   case 556:
29044 /* Line 1792 of yacc.c  */
29045 #line 3766 "gram.y"
29046     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].value)); }
29047     break;
29048 
29049   case 557:
29050 /* Line 1792 of yacc.c  */
29051 #line 3779 "gram.y"
29052     {
29053 				CreatePLangStmt *n = makeNode(CreatePLangStmt);
29054 				n->replace = (yyvsp[(2) - (6)].boolean);
29055 				n->plname = (yyvsp[(6) - (6)].str);
29056 				/* parameters are all to be supplied by system */
29057 				n->plhandler = NIL;
29058 				n->plinline = NIL;
29059 				n->plvalidator = NIL;
29060 				n->pltrusted = false;
29061 				(yyval.node) = (Node *)n;
29062 			}
29063     break;
29064 
29065   case 558:
29066 /* Line 1792 of yacc.c  */
29067 #line 3792 "gram.y"
29068     {
29069 				CreatePLangStmt *n = makeNode(CreatePLangStmt);
29070 				n->replace = (yyvsp[(2) - (10)].boolean);
29071 				n->plname = (yyvsp[(6) - (10)].str);
29072 				n->plhandler = (yyvsp[(8) - (10)].list);
29073 				n->plinline = (yyvsp[(9) - (10)].list);
29074 				n->plvalidator = (yyvsp[(10) - (10)].list);
29075 				n->pltrusted = (yyvsp[(3) - (10)].boolean);
29076 				(yyval.node) = (Node *)n;
29077 			}
29078     break;
29079 
29080   case 559:
29081 /* Line 1792 of yacc.c  */
29082 #line 3805 "gram.y"
29083     { (yyval.boolean) = TRUE; }
29084     break;
29085 
29086   case 560:
29087 /* Line 1792 of yacc.c  */
29088 #line 3806 "gram.y"
29089     { (yyval.boolean) = FALSE; }
29090     break;
29091 
29092   case 561:
29093 /* Line 1792 of yacc.c  */
29094 #line 3814 "gram.y"
29095     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
29096     break;
29097 
29098   case 562:
29099 /* Line 1792 of yacc.c  */
29100 #line 3815 "gram.y"
29101     { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); }
29102     break;
29103 
29104   case 563:
29105 /* Line 1792 of yacc.c  */
29106 #line 3819 "gram.y"
29107     { (yyval.list) = (yyvsp[(2) - (2)].list); }
29108     break;
29109 
29110   case 564:
29111 /* Line 1792 of yacc.c  */
29112 #line 3820 "gram.y"
29113     { (yyval.list) = NIL; }
29114     break;
29115 
29116   case 565:
29117 /* Line 1792 of yacc.c  */
29118 #line 3824 "gram.y"
29119     { (yyval.list) = (yyvsp[(2) - (2)].list); }
29120     break;
29121 
29122   case 566:
29123 /* Line 1792 of yacc.c  */
29124 #line 3825 "gram.y"
29125     { (yyval.list) = NIL; }
29126     break;
29127 
29128   case 567:
29129 /* Line 1792 of yacc.c  */
29130 #line 3829 "gram.y"
29131     { (yyval.list) = (yyvsp[(1) - (1)].list); }
29132     break;
29133 
29134   case 568:
29135 /* Line 1792 of yacc.c  */
29136 #line 3830 "gram.y"
29137     { (yyval.list) = NIL; }
29138     break;
29139 
29140   case 569:
29141 /* Line 1792 of yacc.c  */
29142 #line 3835 "gram.y"
29143     {
29144 					DropStmt *n = makeNode(DropStmt);
29145 					n->removeType = OBJECT_LANGUAGE;
29146 					n->objects = list_make1(list_make1(makeString((yyvsp[(4) - (5)].str))));
29147 					n->arguments = NIL;
29148 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
29149 					n->missing_ok = false;
29150 					n->concurrent = false;
29151 					(yyval.node) = (Node *)n;
29152 				}
29153     break;
29154 
29155   case 570:
29156 /* Line 1792 of yacc.c  */
29157 #line 3846 "gram.y"
29158     {
29159 					DropStmt *n = makeNode(DropStmt);
29160 					n->removeType = OBJECT_LANGUAGE;
29161 					n->objects = list_make1(list_make1(makeString((yyvsp[(6) - (7)].str))));
29162 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
29163 					n->missing_ok = true;
29164 					n->concurrent = false;
29165 					(yyval.node) = (Node *)n;
29166 				}
29167     break;
29168 
29169   case 571:
29170 /* Line 1792 of yacc.c  */
29171 #line 3858 "gram.y"
29172     {}
29173     break;
29174 
29175   case 572:
29176 /* Line 1792 of yacc.c  */
29177 #line 3859 "gram.y"
29178     {}
29179     break;
29180 
29181   case 573:
29182 /* Line 1792 of yacc.c  */
29183 #line 3870 "gram.y"
29184     {
29185 					CreateTableSpaceStmt *n = makeNode(CreateTableSpaceStmt);
29186 					n->tablespacename = (yyvsp[(3) - (7)].str);
29187 					n->owner = (yyvsp[(4) - (7)].node);
29188 					n->location = (yyvsp[(6) - (7)].str);
29189 					n->options = (yyvsp[(7) - (7)].list);
29190 					(yyval.node) = (Node *) n;
29191 				}
29192     break;
29193 
29194   case 574:
29195 /* Line 1792 of yacc.c  */
29196 #line 3880 "gram.y"
29197     { (yyval.node) = (yyvsp[(2) - (2)].node); }
29198     break;
29199 
29200   case 575:
29201 /* Line 1792 of yacc.c  */
29202 #line 3881 "gram.y"
29203     { (yyval.node) = NULL; }
29204     break;
29205 
29206   case 576:
29207 /* Line 1792 of yacc.c  */
29208 #line 3895 "gram.y"
29209     {
29210 					DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt);
29211 					n->tablespacename = (yyvsp[(3) - (3)].str);
29212 					n->missing_ok = false;
29213 					(yyval.node) = (Node *) n;
29214 				}
29215     break;
29216 
29217   case 577:
29218 /* Line 1792 of yacc.c  */
29219 #line 3902 "gram.y"
29220     {
29221 					DropTableSpaceStmt *n = makeNode(DropTableSpaceStmt);
29222 					n->tablespacename = (yyvsp[(5) - (5)].str);
29223 					n->missing_ok = true;
29224 					(yyval.node) = (Node *) n;
29225 				}
29226     break;
29227 
29228   case 578:
29229 /* Line 1792 of yacc.c  */
29230 #line 3919 "gram.y"
29231     {
29232 					CreateExtensionStmt *n = makeNode(CreateExtensionStmt);
29233 					n->extname = (yyvsp[(3) - (5)].str);
29234 					n->if_not_exists = false;
29235 					n->options = (yyvsp[(5) - (5)].list);
29236 					(yyval.node) = (Node *) n;
29237 				}
29238     break;
29239 
29240   case 579:
29241 /* Line 1792 of yacc.c  */
29242 #line 3927 "gram.y"
29243     {
29244 					CreateExtensionStmt *n = makeNode(CreateExtensionStmt);
29245 					n->extname = (yyvsp[(6) - (8)].str);
29246 					n->if_not_exists = true;
29247 					n->options = (yyvsp[(8) - (8)].list);
29248 					(yyval.node) = (Node *) n;
29249 				}
29250     break;
29251 
29252   case 580:
29253 /* Line 1792 of yacc.c  */
29254 #line 3938 "gram.y"
29255     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
29256     break;
29257 
29258   case 581:
29259 /* Line 1792 of yacc.c  */
29260 #line 3940 "gram.y"
29261     { (yyval.list) = NIL; }
29262     break;
29263 
29264   case 582:
29265 /* Line 1792 of yacc.c  */
29266 #line 3945 "gram.y"
29267     {
29268 					(yyval.defelt) = makeDefElem("schema", (Node *)makeString((yyvsp[(2) - (2)].str)));
29269 				}
29270     break;
29271 
29272   case 583:
29273 /* Line 1792 of yacc.c  */
29274 #line 3949 "gram.y"
29275     {
29276 					(yyval.defelt) = makeDefElem("new_version", (Node *)makeString((yyvsp[(2) - (2)].str)));
29277 				}
29278     break;
29279 
29280   case 584:
29281 /* Line 1792 of yacc.c  */
29282 #line 3953 "gram.y"
29283     {
29284 					(yyval.defelt) = makeDefElem("old_version", (Node *)makeString((yyvsp[(2) - (2)].str)));
29285 				}
29286     break;
29287 
29288   case 585:
29289 /* Line 1792 of yacc.c  */
29290 #line 3957 "gram.y"
29291     {
29292 					(yyval.defelt) = makeDefElem("cascade", (Node *)makeInteger(TRUE));
29293 				}
29294     break;
29295 
29296   case 586:
29297 /* Line 1792 of yacc.c  */
29298 #line 3969 "gram.y"
29299     {
29300 					AlterExtensionStmt *n = makeNode(AlterExtensionStmt);
29301 					n->extname = (yyvsp[(3) - (5)].str);
29302 					n->options = (yyvsp[(5) - (5)].list);
29303 					(yyval.node) = (Node *) n;
29304 				}
29305     break;
29306 
29307   case 587:
29308 /* Line 1792 of yacc.c  */
29309 #line 3979 "gram.y"
29310     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
29311     break;
29312 
29313   case 588:
29314 /* Line 1792 of yacc.c  */
29315 #line 3981 "gram.y"
29316     { (yyval.list) = NIL; }
29317     break;
29318 
29319   case 589:
29320 /* Line 1792 of yacc.c  */
29321 #line 3986 "gram.y"
29322     {
29323 					(yyval.defelt) = makeDefElem("new_version", (Node *)makeString((yyvsp[(2) - (2)].str)));
29324 				}
29325     break;
29326 
29327   case 590:
29328 /* Line 1792 of yacc.c  */
29329 #line 3999 "gram.y"
29330     {
29331 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29332 					n->extname = (yyvsp[(3) - (7)].str);
29333 					n->action = (yyvsp[(4) - (7)].ival);
29334 					n->objtype = OBJECT_AGGREGATE;
29335 					n->objname = (yyvsp[(6) - (7)].list);
29336 					n->objargs = extractAggrArgTypes((yyvsp[(7) - (7)].list));
29337 					(yyval.node) = (Node *)n;
29338 				}
29339     break;
29340 
29341   case 591:
29342 /* Line 1792 of yacc.c  */
29343 #line 4009 "gram.y"
29344     {
29345 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29346 					n->extname = (yyvsp[(3) - (10)].str);
29347 					n->action = (yyvsp[(4) - (10)].ival);
29348 					n->objtype = OBJECT_CAST;
29349 					n->objname = list_make1((yyvsp[(7) - (10)].typnam));
29350 					n->objargs = list_make1((yyvsp[(9) - (10)].typnam));
29351 					(yyval.node) = (Node *) n;
29352 				}
29353     break;
29354 
29355   case 592:
29356 /* Line 1792 of yacc.c  */
29357 #line 4019 "gram.y"
29358     {
29359 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29360 					n->extname = (yyvsp[(3) - (6)].str);
29361 					n->action = (yyvsp[(4) - (6)].ival);
29362 					n->objtype = OBJECT_COLLATION;
29363 					n->objname = (yyvsp[(6) - (6)].list);
29364 					(yyval.node) = (Node *)n;
29365 				}
29366     break;
29367 
29368   case 593:
29369 /* Line 1792 of yacc.c  */
29370 #line 4028 "gram.y"
29371     {
29372 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29373 					n->extname = (yyvsp[(3) - (6)].str);
29374 					n->action = (yyvsp[(4) - (6)].ival);
29375 					n->objtype = OBJECT_CONVERSION;
29376 					n->objname = (yyvsp[(6) - (6)].list);
29377 					(yyval.node) = (Node *)n;
29378 				}
29379     break;
29380 
29381   case 594:
29382 /* Line 1792 of yacc.c  */
29383 #line 4037 "gram.y"
29384     {
29385 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29386 					n->extname = (yyvsp[(3) - (6)].str);
29387 					n->action = (yyvsp[(4) - (6)].ival);
29388 					n->objtype = OBJECT_DOMAIN;
29389 					n->objname = list_make1((yyvsp[(6) - (6)].typnam));
29390 					(yyval.node) = (Node *)n;
29391 				}
29392     break;
29393 
29394   case 595:
29395 /* Line 1792 of yacc.c  */
29396 #line 4046 "gram.y"
29397     {
29398 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29399 					n->extname = (yyvsp[(3) - (6)].str);
29400 					n->action = (yyvsp[(4) - (6)].ival);
29401 					n->objtype = OBJECT_FUNCTION;
29402 					n->objname = (yyvsp[(6) - (6)].funwithargs)->funcname;
29403 					n->objargs = (yyvsp[(6) - (6)].funwithargs)->funcargs;
29404 					(yyval.node) = (Node *)n;
29405 				}
29406     break;
29407 
29408   case 596:
29409 /* Line 1792 of yacc.c  */
29410 #line 4056 "gram.y"
29411     {
29412 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29413 					n->extname = (yyvsp[(3) - (7)].str);
29414 					n->action = (yyvsp[(4) - (7)].ival);
29415 					n->objtype = OBJECT_LANGUAGE;
29416 					n->objname = list_make1(makeString((yyvsp[(7) - (7)].str)));
29417 					(yyval.node) = (Node *)n;
29418 				}
29419     break;
29420 
29421   case 597:
29422 /* Line 1792 of yacc.c  */
29423 #line 4065 "gram.y"
29424     {
29425 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29426 					n->extname = (yyvsp[(3) - (7)].str);
29427 					n->action = (yyvsp[(4) - (7)].ival);
29428 					n->objtype = OBJECT_OPERATOR;
29429 					n->objname = (yyvsp[(6) - (7)].list);
29430 					n->objargs = (yyvsp[(7) - (7)].list);
29431 					(yyval.node) = (Node *)n;
29432 				}
29433     break;
29434 
29435   case 598:
29436 /* Line 1792 of yacc.c  */
29437 #line 4075 "gram.y"
29438     {
29439 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29440 					n->extname = (yyvsp[(3) - (9)].str);
29441 					n->action = (yyvsp[(4) - (9)].ival);
29442 					n->objtype = OBJECT_OPCLASS;
29443 					n->objname = lcons(makeString((yyvsp[(9) - (9)].str)), (yyvsp[(7) - (9)].list));
29444 					(yyval.node) = (Node *)n;
29445 				}
29446     break;
29447 
29448   case 599:
29449 /* Line 1792 of yacc.c  */
29450 #line 4084 "gram.y"
29451     {
29452 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29453 					n->extname = (yyvsp[(3) - (9)].str);
29454 					n->action = (yyvsp[(4) - (9)].ival);
29455 					n->objtype = OBJECT_OPFAMILY;
29456 					n->objname = lcons(makeString((yyvsp[(9) - (9)].str)), (yyvsp[(7) - (9)].list));
29457 					(yyval.node) = (Node *)n;
29458 				}
29459     break;
29460 
29461   case 600:
29462 /* Line 1792 of yacc.c  */
29463 #line 4093 "gram.y"
29464     {
29465 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29466 					n->extname = (yyvsp[(3) - (6)].str);
29467 					n->action = (yyvsp[(4) - (6)].ival);
29468 					n->objtype = OBJECT_SCHEMA;
29469 					n->objname = list_make1(makeString((yyvsp[(6) - (6)].str)));
29470 					(yyval.node) = (Node *)n;
29471 				}
29472     break;
29473 
29474   case 601:
29475 /* Line 1792 of yacc.c  */
29476 #line 4102 "gram.y"
29477     {
29478 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29479 					n->extname = (yyvsp[(3) - (7)].str);
29480 					n->action = (yyvsp[(4) - (7)].ival);
29481 					n->objtype = OBJECT_EVENT_TRIGGER;
29482 					n->objname = list_make1(makeString((yyvsp[(7) - (7)].str)));
29483 					(yyval.node) = (Node *)n;
29484 				}
29485     break;
29486 
29487   case 602:
29488 /* Line 1792 of yacc.c  */
29489 #line 4111 "gram.y"
29490     {
29491 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29492 					n->extname = (yyvsp[(3) - (6)].str);
29493 					n->action = (yyvsp[(4) - (6)].ival);
29494 					n->objtype = OBJECT_TABLE;
29495 					n->objname = (yyvsp[(6) - (6)].list);
29496 					(yyval.node) = (Node *)n;
29497 				}
29498     break;
29499 
29500   case 603:
29501 /* Line 1792 of yacc.c  */
29502 #line 4120 "gram.y"
29503     {
29504 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29505 					n->extname = (yyvsp[(3) - (8)].str);
29506 					n->action = (yyvsp[(4) - (8)].ival);
29507 					n->objtype = OBJECT_TSPARSER;
29508 					n->objname = (yyvsp[(8) - (8)].list);
29509 					(yyval.node) = (Node *)n;
29510 				}
29511     break;
29512 
29513   case 604:
29514 /* Line 1792 of yacc.c  */
29515 #line 4129 "gram.y"
29516     {
29517 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29518 					n->extname = (yyvsp[(3) - (8)].str);
29519 					n->action = (yyvsp[(4) - (8)].ival);
29520 					n->objtype = OBJECT_TSDICTIONARY;
29521 					n->objname = (yyvsp[(8) - (8)].list);
29522 					(yyval.node) = (Node *)n;
29523 				}
29524     break;
29525 
29526   case 605:
29527 /* Line 1792 of yacc.c  */
29528 #line 4138 "gram.y"
29529     {
29530 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29531 					n->extname = (yyvsp[(3) - (8)].str);
29532 					n->action = (yyvsp[(4) - (8)].ival);
29533 					n->objtype = OBJECT_TSTEMPLATE;
29534 					n->objname = (yyvsp[(8) - (8)].list);
29535 					(yyval.node) = (Node *)n;
29536 				}
29537     break;
29538 
29539   case 606:
29540 /* Line 1792 of yacc.c  */
29541 #line 4147 "gram.y"
29542     {
29543 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29544 					n->extname = (yyvsp[(3) - (8)].str);
29545 					n->action = (yyvsp[(4) - (8)].ival);
29546 					n->objtype = OBJECT_TSCONFIGURATION;
29547 					n->objname = (yyvsp[(8) - (8)].list);
29548 					(yyval.node) = (Node *)n;
29549 				}
29550     break;
29551 
29552   case 607:
29553 /* Line 1792 of yacc.c  */
29554 #line 4156 "gram.y"
29555     {
29556 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29557 					n->extname = (yyvsp[(3) - (6)].str);
29558 					n->action = (yyvsp[(4) - (6)].ival);
29559 					n->objtype = OBJECT_SEQUENCE;
29560 					n->objname = (yyvsp[(6) - (6)].list);
29561 					(yyval.node) = (Node *)n;
29562 				}
29563     break;
29564 
29565   case 608:
29566 /* Line 1792 of yacc.c  */
29567 #line 4165 "gram.y"
29568     {
29569 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29570 					n->extname = (yyvsp[(3) - (6)].str);
29571 					n->action = (yyvsp[(4) - (6)].ival);
29572 					n->objtype = OBJECT_VIEW;
29573 					n->objname = (yyvsp[(6) - (6)].list);
29574 					(yyval.node) = (Node *)n;
29575 				}
29576     break;
29577 
29578   case 609:
29579 /* Line 1792 of yacc.c  */
29580 #line 4174 "gram.y"
29581     {
29582 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29583 					n->extname = (yyvsp[(3) - (7)].str);
29584 					n->action = (yyvsp[(4) - (7)].ival);
29585 					n->objtype = OBJECT_MATVIEW;
29586 					n->objname = (yyvsp[(7) - (7)].list);
29587 					(yyval.node) = (Node *)n;
29588 				}
29589     break;
29590 
29591   case 610:
29592 /* Line 1792 of yacc.c  */
29593 #line 4183 "gram.y"
29594     {
29595 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29596 					n->extname = (yyvsp[(3) - (7)].str);
29597 					n->action = (yyvsp[(4) - (7)].ival);
29598 					n->objtype = OBJECT_FOREIGN_TABLE;
29599 					n->objname = (yyvsp[(7) - (7)].list);
29600 					(yyval.node) = (Node *)n;
29601 				}
29602     break;
29603 
29604   case 611:
29605 /* Line 1792 of yacc.c  */
29606 #line 4192 "gram.y"
29607     {
29608 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29609 					n->extname = (yyvsp[(3) - (8)].str);
29610 					n->action = (yyvsp[(4) - (8)].ival);
29611 					n->objtype = OBJECT_FDW;
29612 					n->objname = list_make1(makeString((yyvsp[(8) - (8)].str)));
29613 					(yyval.node) = (Node *)n;
29614 				}
29615     break;
29616 
29617   case 612:
29618 /* Line 1792 of yacc.c  */
29619 #line 4201 "gram.y"
29620     {
29621 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29622 					n->extname = (yyvsp[(3) - (6)].str);
29623 					n->action = (yyvsp[(4) - (6)].ival);
29624 					n->objtype = OBJECT_FOREIGN_SERVER;
29625 					n->objname = list_make1(makeString((yyvsp[(6) - (6)].str)));
29626 					(yyval.node) = (Node *)n;
29627 				}
29628     break;
29629 
29630   case 613:
29631 /* Line 1792 of yacc.c  */
29632 #line 4210 "gram.y"
29633     {
29634 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29635 					n->extname = (yyvsp[(3) - (9)].str);
29636 					n->action = (yyvsp[(4) - (9)].ival);
29637 					n->objtype = OBJECT_TRANSFORM;
29638 					n->objname = list_make1((yyvsp[(7) - (9)].typnam));
29639 					n->objargs = list_make1(makeString((yyvsp[(9) - (9)].str)));
29640 					(yyval.node) = (Node *)n;
29641 				}
29642     break;
29643 
29644   case 614:
29645 /* Line 1792 of yacc.c  */
29646 #line 4220 "gram.y"
29647     {
29648 					AlterExtensionContentsStmt *n = makeNode(AlterExtensionContentsStmt);
29649 					n->extname = (yyvsp[(3) - (6)].str);
29650 					n->action = (yyvsp[(4) - (6)].ival);
29651 					n->objtype = OBJECT_TYPE;
29652 					n->objname = list_make1((yyvsp[(6) - (6)].typnam));
29653 					(yyval.node) = (Node *)n;
29654 				}
29655     break;
29656 
29657   case 615:
29658 /* Line 1792 of yacc.c  */
29659 #line 4238 "gram.y"
29660     {
29661 					CreateFdwStmt *n = makeNode(CreateFdwStmt);
29662 					n->fdwname = (yyvsp[(5) - (7)].str);
29663 					n->func_options = (yyvsp[(6) - (7)].list);
29664 					n->options = (yyvsp[(7) - (7)].list);
29665 					(yyval.node) = (Node *) n;
29666 				}
29667     break;
29668 
29669   case 616:
29670 /* Line 1792 of yacc.c  */
29671 #line 4248 "gram.y"
29672     { (yyval.defelt) = makeDefElem("handler", (Node *)(yyvsp[(2) - (2)].list)); }
29673     break;
29674 
29675   case 617:
29676 /* Line 1792 of yacc.c  */
29677 #line 4249 "gram.y"
29678     { (yyval.defelt) = makeDefElem("handler", NULL); }
29679     break;
29680 
29681   case 618:
29682 /* Line 1792 of yacc.c  */
29683 #line 4250 "gram.y"
29684     { (yyval.defelt) = makeDefElem("validator", (Node *)(yyvsp[(2) - (2)].list)); }
29685     break;
29686 
29687   case 619:
29688 /* Line 1792 of yacc.c  */
29689 #line 4251 "gram.y"
29690     { (yyval.defelt) = makeDefElem("validator", NULL); }
29691     break;
29692 
29693   case 620:
29694 /* Line 1792 of yacc.c  */
29695 #line 4255 "gram.y"
29696     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
29697     break;
29698 
29699   case 621:
29700 /* Line 1792 of yacc.c  */
29701 #line 4256 "gram.y"
29702     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
29703     break;
29704 
29705   case 622:
29706 /* Line 1792 of yacc.c  */
29707 #line 4260 "gram.y"
29708     { (yyval.list) = (yyvsp[(1) - (1)].list); }
29709     break;
29710 
29711   case 623:
29712 /* Line 1792 of yacc.c  */
29713 #line 4261 "gram.y"
29714     { (yyval.list) = NIL; }
29715     break;
29716 
29717   case 624:
29718 /* Line 1792 of yacc.c  */
29719 #line 4272 "gram.y"
29720     {
29721 					DropStmt *n = makeNode(DropStmt);
29722 					n->removeType = OBJECT_FDW;
29723 					n->objects = list_make1(list_make1(makeString((yyvsp[(5) - (6)].str))));
29724 					n->arguments = NIL;
29725 					n->missing_ok = false;
29726 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
29727 					n->concurrent = false;
29728 					(yyval.node) = (Node *) n;
29729 				}
29730     break;
29731 
29732   case 625:
29733 /* Line 1792 of yacc.c  */
29734 #line 4283 "gram.y"
29735     {
29736 					DropStmt *n = makeNode(DropStmt);
29737 					n->removeType = OBJECT_FDW;
29738 					n->objects = list_make1(list_make1(makeString((yyvsp[(7) - (8)].str))));
29739 					n->arguments = NIL;
29740 					n->missing_ok = true;
29741 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
29742 					n->concurrent = false;
29743 					(yyval.node) = (Node *) n;
29744 				}
29745     break;
29746 
29747   case 626:
29748 /* Line 1792 of yacc.c  */
29749 #line 4303 "gram.y"
29750     {
29751 					AlterFdwStmt *n = makeNode(AlterFdwStmt);
29752 					n->fdwname = (yyvsp[(5) - (7)].str);
29753 					n->func_options = (yyvsp[(6) - (7)].list);
29754 					n->options = (yyvsp[(7) - (7)].list);
29755 					(yyval.node) = (Node *) n;
29756 				}
29757     break;
29758 
29759   case 627:
29760 /* Line 1792 of yacc.c  */
29761 #line 4311 "gram.y"
29762     {
29763 					AlterFdwStmt *n = makeNode(AlterFdwStmt);
29764 					n->fdwname = (yyvsp[(5) - (6)].str);
29765 					n->func_options = (yyvsp[(6) - (6)].list);
29766 					n->options = NIL;
29767 					(yyval.node) = (Node *) n;
29768 				}
29769     break;
29770 
29771   case 628:
29772 /* Line 1792 of yacc.c  */
29773 #line 4322 "gram.y"
29774     { (yyval.list) = (yyvsp[(3) - (4)].list); }
29775     break;
29776 
29777   case 629:
29778 /* Line 1792 of yacc.c  */
29779 #line 4323 "gram.y"
29780     { (yyval.list) = NIL; }
29781     break;
29782 
29783   case 630:
29784 /* Line 1792 of yacc.c  */
29785 #line 4328 "gram.y"
29786     {
29787 					(yyval.list) = list_make1((yyvsp[(1) - (1)].defelt));
29788 				}
29789     break;
29790 
29791   case 631:
29792 /* Line 1792 of yacc.c  */
29793 #line 4332 "gram.y"
29794     {
29795 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt));
29796 				}
29797     break;
29798 
29799   case 632:
29800 /* Line 1792 of yacc.c  */
29801 #line 4339 "gram.y"
29802     { (yyval.list) = (yyvsp[(3) - (4)].list); }
29803     break;
29804 
29805   case 633:
29806 /* Line 1792 of yacc.c  */
29807 #line 4344 "gram.y"
29808     {
29809 					(yyval.list) = list_make1((yyvsp[(1) - (1)].defelt));
29810 				}
29811     break;
29812 
29813   case 634:
29814 /* Line 1792 of yacc.c  */
29815 #line 4348 "gram.y"
29816     {
29817 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt));
29818 				}
29819     break;
29820 
29821   case 635:
29822 /* Line 1792 of yacc.c  */
29823 #line 4355 "gram.y"
29824     {
29825 					(yyval.defelt) = (yyvsp[(1) - (1)].defelt);
29826 				}
29827     break;
29828 
29829   case 636:
29830 /* Line 1792 of yacc.c  */
29831 #line 4359 "gram.y"
29832     {
29833 					(yyval.defelt) = (yyvsp[(2) - (2)].defelt);
29834 					(yyval.defelt)->defaction = DEFELEM_SET;
29835 				}
29836     break;
29837 
29838   case 637:
29839 /* Line 1792 of yacc.c  */
29840 #line 4364 "gram.y"
29841     {
29842 					(yyval.defelt) = (yyvsp[(2) - (2)].defelt);
29843 					(yyval.defelt)->defaction = DEFELEM_ADD;
29844 				}
29845     break;
29846 
29847   case 638:
29848 /* Line 1792 of yacc.c  */
29849 #line 4369 "gram.y"
29850     {
29851 					(yyval.defelt) = makeDefElemExtended(NULL, (yyvsp[(2) - (2)].str), NULL, DEFELEM_DROP);
29852 				}
29853     break;
29854 
29855   case 639:
29856 /* Line 1792 of yacc.c  */
29857 #line 4376 "gram.y"
29858     {
29859 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node));
29860 				}
29861     break;
29862 
29863   case 640:
29864 /* Line 1792 of yacc.c  */
29865 #line 4382 "gram.y"
29866     { (yyval.str) = (yyvsp[(1) - (1)].str); }
29867     break;
29868 
29869   case 641:
29870 /* Line 1792 of yacc.c  */
29871 #line 4387 "gram.y"
29872     { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); }
29873     break;
29874 
29875   case 642:
29876 /* Line 1792 of yacc.c  */
29877 #line 4399 "gram.y"
29878     {
29879 					CreateForeignServerStmt *n = makeNode(CreateForeignServerStmt);
29880 					n->servername = (yyvsp[(3) - (10)].str);
29881 					n->servertype = (yyvsp[(4) - (10)].str);
29882 					n->version = (yyvsp[(5) - (10)].str);
29883 					n->fdwname = (yyvsp[(9) - (10)].str);
29884 					n->options = (yyvsp[(10) - (10)].list);
29885 					(yyval.node) = (Node *) n;
29886 				}
29887     break;
29888 
29889   case 643:
29890 /* Line 1792 of yacc.c  */
29891 #line 4411 "gram.y"
29892     { (yyval.str) = (yyvsp[(2) - (2)].str); }
29893     break;
29894 
29895   case 644:
29896 /* Line 1792 of yacc.c  */
29897 #line 4412 "gram.y"
29898     { (yyval.str) = NULL; }
29899     break;
29900 
29901   case 645:
29902 /* Line 1792 of yacc.c  */
29903 #line 4417 "gram.y"
29904     { (yyval.str) = (yyvsp[(2) - (2)].str); }
29905     break;
29906 
29907   case 646:
29908 /* Line 1792 of yacc.c  */
29909 #line 4418 "gram.y"
29910     { (yyval.str) = NULL; }
29911     break;
29912 
29913   case 647:
29914 /* Line 1792 of yacc.c  */
29915 #line 4422 "gram.y"
29916     { (yyval.str) = (yyvsp[(1) - (1)].str); }
29917     break;
29918 
29919   case 648:
29920 /* Line 1792 of yacc.c  */
29921 #line 4423 "gram.y"
29922     { (yyval.str) = NULL; }
29923     break;
29924 
29925   case 649:
29926 /* Line 1792 of yacc.c  */
29927 #line 4434 "gram.y"
29928     {
29929 					DropStmt *n = makeNode(DropStmt);
29930 					n->removeType = OBJECT_FOREIGN_SERVER;
29931 					n->objects = list_make1(list_make1(makeString((yyvsp[(3) - (4)].str))));
29932 					n->arguments = NIL;
29933 					n->missing_ok = false;
29934 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
29935 					n->concurrent = false;
29936 					(yyval.node) = (Node *) n;
29937 				}
29938     break;
29939 
29940   case 650:
29941 /* Line 1792 of yacc.c  */
29942 #line 4445 "gram.y"
29943     {
29944 					DropStmt *n = makeNode(DropStmt);
29945 					n->removeType = OBJECT_FOREIGN_SERVER;
29946 					n->objects = list_make1(list_make1(makeString((yyvsp[(5) - (6)].str))));
29947 					n->arguments = NIL;
29948 					n->missing_ok = true;
29949 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
29950 					n->concurrent = false;
29951 					(yyval.node) = (Node *) n;
29952 				}
29953     break;
29954 
29955   case 651:
29956 /* Line 1792 of yacc.c  */
29957 #line 4465 "gram.y"
29958     {
29959 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
29960 					n->servername = (yyvsp[(3) - (5)].str);
29961 					n->version = (yyvsp[(4) - (5)].str);
29962 					n->options = (yyvsp[(5) - (5)].list);
29963 					n->has_version = true;
29964 					(yyval.node) = (Node *) n;
29965 				}
29966     break;
29967 
29968   case 652:
29969 /* Line 1792 of yacc.c  */
29970 #line 4474 "gram.y"
29971     {
29972 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
29973 					n->servername = (yyvsp[(3) - (4)].str);
29974 					n->version = (yyvsp[(4) - (4)].str);
29975 					n->has_version = true;
29976 					(yyval.node) = (Node *) n;
29977 				}
29978     break;
29979 
29980   case 653:
29981 /* Line 1792 of yacc.c  */
29982 #line 4482 "gram.y"
29983     {
29984 					AlterForeignServerStmt *n = makeNode(AlterForeignServerStmt);
29985 					n->servername = (yyvsp[(3) - (4)].str);
29986 					n->options = (yyvsp[(4) - (4)].list);
29987 					(yyval.node) = (Node *) n;
29988 				}
29989     break;
29990 
29991   case 654:
29992 /* Line 1792 of yacc.c  */
29993 #line 4501 "gram.y"
29994     {
29995 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
29996 					(yyvsp[(4) - (11)].range)->relpersistence = RELPERSISTENCE_PERMANENT;
29997 					n->base.relation = (yyvsp[(4) - (11)].range);
29998 					n->base.tableElts = (yyvsp[(6) - (11)].list);
29999 					n->base.inhRelations = (yyvsp[(8) - (11)].list);
30000 					n->base.ofTypename = NULL;
30001 					n->base.constraints = NIL;
30002 					n->base.options = NIL;
30003 					n->base.oncommit = ONCOMMIT_NOOP;
30004 					n->base.tablespacename = NULL;
30005 					n->base.if_not_exists = false;
30006 					/* FDW-specific data */
30007 					n->servername = (yyvsp[(10) - (11)].str);
30008 					n->options = (yyvsp[(11) - (11)].list);
30009 					(yyval.node) = (Node *) n;
30010 				}
30011     break;
30012 
30013   case 655:
30014 /* Line 1792 of yacc.c  */
30015 #line 4521 "gram.y"
30016     {
30017 					CreateForeignTableStmt *n = makeNode(CreateForeignTableStmt);
30018 					(yyvsp[(7) - (14)].range)->relpersistence = RELPERSISTENCE_PERMANENT;
30019 					n->base.relation = (yyvsp[(7) - (14)].range);
30020 					n->base.tableElts = (yyvsp[(9) - (14)].list);
30021 					n->base.inhRelations = (yyvsp[(11) - (14)].list);
30022 					n->base.ofTypename = NULL;
30023 					n->base.constraints = NIL;
30024 					n->base.options = NIL;
30025 					n->base.oncommit = ONCOMMIT_NOOP;
30026 					n->base.tablespacename = NULL;
30027 					n->base.if_not_exists = true;
30028 					/* FDW-specific data */
30029 					n->servername = (yyvsp[(13) - (14)].str);
30030 					n->options = (yyvsp[(14) - (14)].list);
30031 					(yyval.node) = (Node *) n;
30032 				}
30033     break;
30034 
30035   case 656:
30036 /* Line 1792 of yacc.c  */
30037 #line 4549 "gram.y"
30038     {
30039 					AlterTableStmt *n = makeNode(AlterTableStmt);
30040 					n->relation = (yyvsp[(4) - (5)].range);
30041 					n->cmds = (yyvsp[(5) - (5)].list);
30042 					n->relkind = OBJECT_FOREIGN_TABLE;
30043 					n->missing_ok = false;
30044 					(yyval.node) = (Node *)n;
30045 				}
30046     break;
30047 
30048   case 657:
30049 /* Line 1792 of yacc.c  */
30050 #line 4558 "gram.y"
30051     {
30052 					AlterTableStmt *n = makeNode(AlterTableStmt);
30053 					n->relation = (yyvsp[(6) - (7)].range);
30054 					n->cmds = (yyvsp[(7) - (7)].list);
30055 					n->relkind = OBJECT_FOREIGN_TABLE;
30056 					n->missing_ok = true;
30057 					(yyval.node) = (Node *)n;
30058 				}
30059     break;
30060 
30061   case 658:
30062 /* Line 1792 of yacc.c  */
30063 #line 4580 "gram.y"
30064     {
30065 				ImportForeignSchemaStmt *n = makeNode(ImportForeignSchemaStmt);
30066 				n->server_name = (yyvsp[(8) - (11)].str);
30067 				n->remote_schema = (yyvsp[(4) - (11)].str);
30068 				n->local_schema = (yyvsp[(10) - (11)].str);
30069 				n->list_type = (yyvsp[(5) - (11)].importqual)->type;
30070 				n->table_list = (yyvsp[(5) - (11)].importqual)->table_names;
30071 				n->options = (yyvsp[(11) - (11)].list);
30072 				(yyval.node) = (Node *) n;
30073 			}
30074     break;
30075 
30076   case 659:
30077 /* Line 1792 of yacc.c  */
30078 #line 4593 "gram.y"
30079     { (yyval.ival) = FDW_IMPORT_SCHEMA_LIMIT_TO; }
30080     break;
30081 
30082   case 660:
30083 /* Line 1792 of yacc.c  */
30084 #line 4594 "gram.y"
30085     { (yyval.ival) = FDW_IMPORT_SCHEMA_EXCEPT; }
30086     break;
30087 
30088   case 661:
30089 /* Line 1792 of yacc.c  */
30090 #line 4599 "gram.y"
30091     {
30092 				ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual));
30093 				n->type = (yyvsp[(1) - (4)].ival);
30094 				n->table_names = (yyvsp[(3) - (4)].list);
30095 				(yyval.importqual) = n;
30096 			}
30097     break;
30098 
30099   case 662:
30100 /* Line 1792 of yacc.c  */
30101 #line 4606 "gram.y"
30102     {
30103 				ImportQual *n = (ImportQual *) palloc(sizeof(ImportQual));
30104 				n->type = FDW_IMPORT_SCHEMA_ALL;
30105 				n->table_names = NIL;
30106 				(yyval.importqual) = n;
30107 			}
30108     break;
30109 
30110   case 663:
30111 /* Line 1792 of yacc.c  */
30112 #line 4622 "gram.y"
30113     {
30114 					CreateUserMappingStmt *n = makeNode(CreateUserMappingStmt);
30115 					n->user = (yyvsp[(5) - (8)].node);
30116 					n->servername = (yyvsp[(7) - (8)].str);
30117 					n->options = (yyvsp[(8) - (8)].list);
30118 					(yyval.node) = (Node *) n;
30119 				}
30120     break;
30121 
30122   case 664:
30123 /* Line 1792 of yacc.c  */
30124 #line 4632 "gram.y"
30125     { (yyval.node) = (yyvsp[(1) - (1)].node); }
30126     break;
30127 
30128   case 665:
30129 /* Line 1792 of yacc.c  */
30130 #line 4633 "gram.y"
30131     { (yyval.node) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[(1) - (1)])); }
30132     break;
30133 
30134   case 666:
30135 /* Line 1792 of yacc.c  */
30136 #line 4644 "gram.y"
30137     {
30138 					DropUserMappingStmt *n = makeNode(DropUserMappingStmt);
30139 					n->user = (yyvsp[(5) - (7)].node);
30140 					n->servername = (yyvsp[(7) - (7)].str);
30141 					n->missing_ok = false;
30142 					(yyval.node) = (Node *) n;
30143 				}
30144     break;
30145 
30146   case 667:
30147 /* Line 1792 of yacc.c  */
30148 #line 4652 "gram.y"
30149     {
30150 					DropUserMappingStmt *n = makeNode(DropUserMappingStmt);
30151 					n->user = (yyvsp[(7) - (9)].node);
30152 					n->servername = (yyvsp[(9) - (9)].str);
30153 					n->missing_ok = true;
30154 					(yyval.node) = (Node *) n;
30155 				}
30156     break;
30157 
30158   case 668:
30159 /* Line 1792 of yacc.c  */
30160 #line 4669 "gram.y"
30161     {
30162 					AlterUserMappingStmt *n = makeNode(AlterUserMappingStmt);
30163 					n->user = (yyvsp[(5) - (8)].node);
30164 					n->servername = (yyvsp[(7) - (8)].str);
30165 					n->options = (yyvsp[(8) - (8)].list);
30166 					(yyval.node) = (Node *) n;
30167 				}
30168     break;
30169 
30170   case 669:
30171 /* Line 1792 of yacc.c  */
30172 #line 4693 "gram.y"
30173     {
30174 					CreatePolicyStmt *n = makeNode(CreatePolicyStmt);
30175 					n->policy_name = (yyvsp[(3) - (9)].str);
30176 					n->table = (yyvsp[(5) - (9)].range);
30177 					n->cmd_name = (yyvsp[(6) - (9)].str);
30178 					n->roles = (yyvsp[(7) - (9)].list);
30179 					n->qual = (yyvsp[(8) - (9)].node);
30180 					n->with_check = (yyvsp[(9) - (9)].node);
30181 					(yyval.node) = (Node *) n;
30182 				}
30183     break;
30184 
30185   case 670:
30186 /* Line 1792 of yacc.c  */
30187 #line 4708 "gram.y"
30188     {
30189 					AlterPolicyStmt *n = makeNode(AlterPolicyStmt);
30190 					n->policy_name = (yyvsp[(3) - (8)].str);
30191 					n->table = (yyvsp[(5) - (8)].range);
30192 					n->roles = (yyvsp[(6) - (8)].list);
30193 					n->qual = (yyvsp[(7) - (8)].node);
30194 					n->with_check = (yyvsp[(8) - (8)].node);
30195 					(yyval.node) = (Node *) n;
30196 				}
30197     break;
30198 
30199   case 671:
30200 /* Line 1792 of yacc.c  */
30201 #line 4721 "gram.y"
30202     {
30203 					DropStmt *n = makeNode(DropStmt);
30204 					n->removeType = OBJECT_POLICY;
30205 					n->objects = list_make1(lappend((yyvsp[(5) - (6)].list), makeString((yyvsp[(3) - (6)].str))));
30206 					n->arguments = NIL;
30207 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
30208 					n->missing_ok = false;
30209 					n->concurrent = false;
30210 					(yyval.node) = (Node *) n;
30211 				}
30212     break;
30213 
30214   case 672:
30215 /* Line 1792 of yacc.c  */
30216 #line 4732 "gram.y"
30217     {
30218 					DropStmt *n = makeNode(DropStmt);
30219 					n->removeType = OBJECT_POLICY;
30220 					n->objects = list_make1(lappend((yyvsp[(7) - (8)].list), makeString((yyvsp[(5) - (8)].str))));
30221 					n->arguments = NIL;
30222 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
30223 					n->missing_ok = true;
30224 					n->concurrent = false;
30225 					(yyval.node) = (Node *) n;
30226 				}
30227     break;
30228 
30229   case 673:
30230 /* Line 1792 of yacc.c  */
30231 #line 4745 "gram.y"
30232     { (yyval.node) = (yyvsp[(3) - (4)].node); }
30233     break;
30234 
30235   case 674:
30236 /* Line 1792 of yacc.c  */
30237 #line 4746 "gram.y"
30238     { (yyval.node) = NULL; }
30239     break;
30240 
30241   case 675:
30242 /* Line 1792 of yacc.c  */
30243 #line 4750 "gram.y"
30244     { (yyval.node) = (yyvsp[(4) - (5)].node); }
30245     break;
30246 
30247   case 676:
30248 /* Line 1792 of yacc.c  */
30249 #line 4751 "gram.y"
30250     { (yyval.node) = NULL; }
30251     break;
30252 
30253   case 677:
30254 /* Line 1792 of yacc.c  */
30255 #line 4755 "gram.y"
30256     { (yyval.list) = (yyvsp[(2) - (2)].list); }
30257     break;
30258 
30259   case 678:
30260 /* Line 1792 of yacc.c  */
30261 #line 4756 "gram.y"
30262     { (yyval.list) = list_make1(makeRoleSpec(ROLESPEC_PUBLIC, -1)); }
30263     break;
30264 
30265   case 679:
30266 /* Line 1792 of yacc.c  */
30267 #line 4760 "gram.y"
30268     { (yyval.list) = (yyvsp[(2) - (2)].list); }
30269     break;
30270 
30271   case 680:
30272 /* Line 1792 of yacc.c  */
30273 #line 4761 "gram.y"
30274     { (yyval.list) = NULL; }
30275     break;
30276 
30277   case 681:
30278 /* Line 1792 of yacc.c  */
30279 #line 4765 "gram.y"
30280     { (yyval.str) = (yyvsp[(2) - (2)].str); }
30281     break;
30282 
30283   case 682:
30284 /* Line 1792 of yacc.c  */
30285 #line 4766 "gram.y"
30286     { (yyval.str) = "all"; }
30287     break;
30288 
30289   case 683:
30290 /* Line 1792 of yacc.c  */
30291 #line 4770 "gram.y"
30292     { (yyval.str) = "all"; }
30293     break;
30294 
30295   case 684:
30296 /* Line 1792 of yacc.c  */
30297 #line 4771 "gram.y"
30298     { (yyval.str) = "select"; }
30299     break;
30300 
30301   case 685:
30302 /* Line 1792 of yacc.c  */
30303 #line 4772 "gram.y"
30304     { (yyval.str) = "insert"; }
30305     break;
30306 
30307   case 686:
30308 /* Line 1792 of yacc.c  */
30309 #line 4773 "gram.y"
30310     { (yyval.str) = "update"; }
30311     break;
30312 
30313   case 687:
30314 /* Line 1792 of yacc.c  */
30315 #line 4774 "gram.y"
30316     { (yyval.str) = "delete"; }
30317     break;
30318 
30319   case 688:
30320 /* Line 1792 of yacc.c  */
30321 #line 4785 "gram.y"
30322     {
30323 					CreateAmStmt *n = makeNode(CreateAmStmt);
30324 					n->amname = (yyvsp[(4) - (8)].str);
30325 					n->handler_name = (yyvsp[(8) - (8)].list);
30326 					n->amtype = AMTYPE_INDEX;
30327 					(yyval.node) = (Node *) n;
30328 				}
30329     break;
30330 
30331   case 689:
30332 /* Line 1792 of yacc.c  */
30333 #line 4806 "gram.y"
30334     {
30335 					CreateTrigStmt *n = makeNode(CreateTrigStmt);
30336 					n->trigname = (yyvsp[(3) - (15)].str);
30337 					n->relation = (yyvsp[(7) - (15)].range);
30338 					n->funcname = (yyvsp[(12) - (15)].list);
30339 					n->args = (yyvsp[(14) - (15)].list);
30340 					n->row = (yyvsp[(8) - (15)].boolean);
30341 					n->timing = (yyvsp[(4) - (15)].ival);
30342 					n->events = intVal(linitial((yyvsp[(5) - (15)].list)));
30343 					n->columns = (List *) lsecond((yyvsp[(5) - (15)].list));
30344 					n->whenClause = (yyvsp[(9) - (15)].node);
30345 					n->isconstraint  = FALSE;
30346 					n->deferrable	 = FALSE;
30347 					n->initdeferred  = FALSE;
30348 					n->constrrel = NULL;
30349 					(yyval.node) = (Node *)n;
30350 				}
30351     break;
30352 
30353   case 690:
30354 /* Line 1792 of yacc.c  */
30355 #line 4827 "gram.y"
30356     {
30357 					CreateTrigStmt *n = makeNode(CreateTrigStmt);
30358 					n->trigname = (yyvsp[(4) - (20)].str);
30359 					n->relation = (yyvsp[(8) - (20)].range);
30360 					n->funcname = (yyvsp[(17) - (20)].list);
30361 					n->args = (yyvsp[(19) - (20)].list);
30362 					n->row = TRUE;
30363 					n->timing = TRIGGER_TYPE_AFTER;
30364 					n->events = intVal(linitial((yyvsp[(6) - (20)].list)));
30365 					n->columns = (List *) lsecond((yyvsp[(6) - (20)].list));
30366 					n->whenClause = (yyvsp[(14) - (20)].node);
30367 					n->isconstraint  = TRUE;
30368 					processCASbits((yyvsp[(10) - (20)].ival), (yylsp[(10) - (20)]), "TRIGGER",
30369 								   &n->deferrable, &n->initdeferred, NULL,
30370 								   NULL, yyscanner);
30371 					n->constrrel = (yyvsp[(9) - (20)].range);
30372 					(yyval.node) = (Node *)n;
30373 				}
30374     break;
30375 
30376   case 691:
30377 /* Line 1792 of yacc.c  */
30378 #line 4848 "gram.y"
30379     { (yyval.ival) = TRIGGER_TYPE_BEFORE; }
30380     break;
30381 
30382   case 692:
30383 /* Line 1792 of yacc.c  */
30384 #line 4849 "gram.y"
30385     { (yyval.ival) = TRIGGER_TYPE_AFTER; }
30386     break;
30387 
30388   case 693:
30389 /* Line 1792 of yacc.c  */
30390 #line 4850 "gram.y"
30391     { (yyval.ival) = TRIGGER_TYPE_INSTEAD; }
30392     break;
30393 
30394   case 694:
30395 /* Line 1792 of yacc.c  */
30396 #line 4855 "gram.y"
30397     { (yyval.list) = (yyvsp[(1) - (1)].list); }
30398     break;
30399 
30400   case 695:
30401 /* Line 1792 of yacc.c  */
30402 #line 4857 "gram.y"
30403     {
30404 					int		events1 = intVal(linitial((yyvsp[(1) - (3)].list)));
30405 					int		events2 = intVal(linitial((yyvsp[(3) - (3)].list)));
30406 					List   *columns1 = (List *) lsecond((yyvsp[(1) - (3)].list));
30407 					List   *columns2 = (List *) lsecond((yyvsp[(3) - (3)].list));
30408 
30409 					if (events1 & events2)
30410 						parser_yyerror("duplicate trigger events specified");
30411 					/*
30412 					 * concat'ing the columns lists loses information about
30413 					 * which columns went with which event, but so long as
30414 					 * only UPDATE carries columns and we disallow multiple
30415 					 * UPDATE items, it doesn't matter.  Command execution
30416 					 * should just ignore the columns for non-UPDATE events.
30417 					 */
30418 					(yyval.list) = list_make2(makeInteger(events1 | events2),
30419 									list_concat(columns1, columns2));
30420 				}
30421     break;
30422 
30423   case 696:
30424 /* Line 1792 of yacc.c  */
30425 #line 4879 "gram.y"
30426     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_INSERT), NIL); }
30427     break;
30428 
30429   case 697:
30430 /* Line 1792 of yacc.c  */
30431 #line 4881 "gram.y"
30432     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_DELETE), NIL); }
30433     break;
30434 
30435   case 698:
30436 /* Line 1792 of yacc.c  */
30437 #line 4883 "gram.y"
30438     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), NIL); }
30439     break;
30440 
30441   case 699:
30442 /* Line 1792 of yacc.c  */
30443 #line 4885 "gram.y"
30444     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_UPDATE), (yyvsp[(3) - (3)].list)); }
30445     break;
30446 
30447   case 700:
30448 /* Line 1792 of yacc.c  */
30449 #line 4887 "gram.y"
30450     { (yyval.list) = list_make2(makeInteger(TRIGGER_TYPE_TRUNCATE), NIL); }
30451     break;
30452 
30453   case 701:
30454 /* Line 1792 of yacc.c  */
30455 #line 4892 "gram.y"
30456     {
30457 					(yyval.boolean) = (yyvsp[(3) - (3)].boolean);
30458 				}
30459     break;
30460 
30461   case 702:
30462 /* Line 1792 of yacc.c  */
30463 #line 4896 "gram.y"
30464     {
30465 					/*
30466 					 * If ROW/STATEMENT not specified, default to
30467 					 * STATEMENT, per SQL
30468 					 */
30469 					(yyval.boolean) = FALSE;
30470 				}
30471     break;
30472 
30473   case 703:
30474 /* Line 1792 of yacc.c  */
30475 #line 4906 "gram.y"
30476     {}
30477     break;
30478 
30479   case 704:
30480 /* Line 1792 of yacc.c  */
30481 #line 4907 "gram.y"
30482     {}
30483     break;
30484 
30485   case 705:
30486 /* Line 1792 of yacc.c  */
30487 #line 4911 "gram.y"
30488     { (yyval.boolean) = TRUE; }
30489     break;
30490 
30491   case 706:
30492 /* Line 1792 of yacc.c  */
30493 #line 4912 "gram.y"
30494     { (yyval.boolean) = FALSE; }
30495     break;
30496 
30497   case 707:
30498 /* Line 1792 of yacc.c  */
30499 #line 4916 "gram.y"
30500     { (yyval.node) = (yyvsp[(3) - (4)].node); }
30501     break;
30502 
30503   case 708:
30504 /* Line 1792 of yacc.c  */
30505 #line 4917 "gram.y"
30506     { (yyval.node) = NULL; }
30507     break;
30508 
30509   case 709:
30510 /* Line 1792 of yacc.c  */
30511 #line 4921 "gram.y"
30512     { (yyval.list) = list_make1((yyvsp[(1) - (1)].value)); }
30513     break;
30514 
30515   case 710:
30516 /* Line 1792 of yacc.c  */
30517 #line 4922 "gram.y"
30518     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].value)); }
30519     break;
30520 
30521   case 711:
30522 /* Line 1792 of yacc.c  */
30523 #line 4923 "gram.y"
30524     { (yyval.list) = NIL; }
30525     break;
30526 
30527   case 712:
30528 /* Line 1792 of yacc.c  */
30529 #line 4928 "gram.y"
30530     {
30531 					(yyval.value) = makeString(psprintf("%d", (yyvsp[(1) - (1)].ival)));
30532 				}
30533     break;
30534 
30535   case 713:
30536 /* Line 1792 of yacc.c  */
30537 #line 4931 "gram.y"
30538     { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); }
30539     break;
30540 
30541   case 714:
30542 /* Line 1792 of yacc.c  */
30543 #line 4932 "gram.y"
30544     { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); }
30545     break;
30546 
30547   case 715:
30548 /* Line 1792 of yacc.c  */
30549 #line 4933 "gram.y"
30550     { (yyval.value) = makeString((yyvsp[(1) - (1)].str)); }
30551     break;
30552 
30553   case 716:
30554 /* Line 1792 of yacc.c  */
30555 #line 4937 "gram.y"
30556     { (yyval.range) = (yyvsp[(2) - (2)].range); }
30557     break;
30558 
30559   case 717:
30560 /* Line 1792 of yacc.c  */
30561 #line 4938 "gram.y"
30562     { (yyval.range) = NULL; }
30563     break;
30564 
30565   case 718:
30566 /* Line 1792 of yacc.c  */
30567 #line 4943 "gram.y"
30568     { (yyval.ival) = 0; }
30569     break;
30570 
30571   case 719:
30572 /* Line 1792 of yacc.c  */
30573 #line 4945 "gram.y"
30574     {
30575 					/*
30576 					 * We must complain about conflicting options.
30577 					 * We could, but choose not to, complain about redundant
30578 					 * options (ie, where $2's bit is already set in $1).
30579 					 */
30580 					int		newspec = (yyvsp[(1) - (2)].ival) | (yyvsp[(2) - (2)].ival);
30581 
30582 					/* special message for this case */
30583 					if ((newspec & (CAS_NOT_DEFERRABLE | CAS_INITIALLY_DEFERRED)) == (CAS_NOT_DEFERRABLE | CAS_INITIALLY_DEFERRED))
30584 						ereport(ERROR,
30585 								(errcode(ERRCODE_SYNTAX_ERROR),
30586 								 errmsg("constraint declared INITIALLY DEFERRED must be DEFERRABLE"),
30587 								 parser_errposition((yylsp[(2) - (2)]))));
30588 					/* generic message for other conflicts */
30589 					if ((newspec & (CAS_NOT_DEFERRABLE | CAS_DEFERRABLE)) == (CAS_NOT_DEFERRABLE | CAS_DEFERRABLE) ||
30590 						(newspec & (CAS_INITIALLY_IMMEDIATE | CAS_INITIALLY_DEFERRED)) == (CAS_INITIALLY_IMMEDIATE | CAS_INITIALLY_DEFERRED))
30591 						ereport(ERROR,
30592 								(errcode(ERRCODE_SYNTAX_ERROR),
30593 								 errmsg("conflicting constraint properties"),
30594 								 parser_errposition((yylsp[(2) - (2)]))));
30595 					(yyval.ival) = newspec;
30596 				}
30597     break;
30598 
30599   case 720:
30600 /* Line 1792 of yacc.c  */
30601 #line 4971 "gram.y"
30602     { (yyval.ival) = CAS_NOT_DEFERRABLE; }
30603     break;
30604 
30605   case 721:
30606 /* Line 1792 of yacc.c  */
30607 #line 4972 "gram.y"
30608     { (yyval.ival) = CAS_DEFERRABLE; }
30609     break;
30610 
30611   case 722:
30612 /* Line 1792 of yacc.c  */
30613 #line 4973 "gram.y"
30614     { (yyval.ival) = CAS_INITIALLY_IMMEDIATE; }
30615     break;
30616 
30617   case 723:
30618 /* Line 1792 of yacc.c  */
30619 #line 4974 "gram.y"
30620     { (yyval.ival) = CAS_INITIALLY_DEFERRED; }
30621     break;
30622 
30623   case 724:
30624 /* Line 1792 of yacc.c  */
30625 #line 4975 "gram.y"
30626     { (yyval.ival) = CAS_NOT_VALID; }
30627     break;
30628 
30629   case 725:
30630 /* Line 1792 of yacc.c  */
30631 #line 4976 "gram.y"
30632     { (yyval.ival) = CAS_NO_INHERIT; }
30633     break;
30634 
30635   case 726:
30636 /* Line 1792 of yacc.c  */
30637 #line 4982 "gram.y"
30638     {
30639 					DropStmt *n = makeNode(DropStmt);
30640 					n->removeType = OBJECT_TRIGGER;
30641 					n->objects = list_make1(lappend((yyvsp[(5) - (6)].list), makeString((yyvsp[(3) - (6)].str))));
30642 					n->arguments = NIL;
30643 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
30644 					n->missing_ok = false;
30645 					n->concurrent = false;
30646 					(yyval.node) = (Node *) n;
30647 				}
30648     break;
30649 
30650   case 727:
30651 /* Line 1792 of yacc.c  */
30652 #line 4993 "gram.y"
30653     {
30654 					DropStmt *n = makeNode(DropStmt);
30655 					n->removeType = OBJECT_TRIGGER;
30656 					n->objects = list_make1(lappend((yyvsp[(7) - (8)].list), makeString((yyvsp[(5) - (8)].str))));
30657 					n->arguments = NIL;
30658 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
30659 					n->missing_ok = true;
30660 					n->concurrent = false;
30661 					(yyval.node) = (Node *) n;
30662 				}
30663     break;
30664 
30665   case 728:
30666 /* Line 1792 of yacc.c  */
30667 #line 5017 "gram.y"
30668     {
30669 					CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt);
30670 					n->trigname = (yyvsp[(4) - (11)].str);
30671 					n->eventname = (yyvsp[(6) - (11)].str);
30672 					n->whenclause = NULL;
30673 					n->funcname = (yyvsp[(9) - (11)].list);
30674 					(yyval.node) = (Node *)n;
30675 				}
30676     break;
30677 
30678   case 729:
30679 /* Line 1792 of yacc.c  */
30680 #line 5028 "gram.y"
30681     {
30682 					CreateEventTrigStmt *n = makeNode(CreateEventTrigStmt);
30683 					n->trigname = (yyvsp[(4) - (13)].str);
30684 					n->eventname = (yyvsp[(6) - (13)].str);
30685 					n->whenclause = (yyvsp[(8) - (13)].list);
30686 					n->funcname = (yyvsp[(11) - (13)].list);
30687 					(yyval.node) = (Node *)n;
30688 				}
30689     break;
30690 
30691   case 730:
30692 /* Line 1792 of yacc.c  */
30693 #line 5040 "gram.y"
30694     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
30695     break;
30696 
30697   case 731:
30698 /* Line 1792 of yacc.c  */
30699 #line 5042 "gram.y"
30700     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
30701     break;
30702 
30703   case 732:
30704 /* Line 1792 of yacc.c  */
30705 #line 5047 "gram.y"
30706     { (yyval.defelt) = makeDefElem((yyvsp[(1) - (5)].str), (Node *) (yyvsp[(4) - (5)].list)); }
30707     break;
30708 
30709   case 733:
30710 /* Line 1792 of yacc.c  */
30711 #line 5052 "gram.y"
30712     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
30713     break;
30714 
30715   case 734:
30716 /* Line 1792 of yacc.c  */
30717 #line 5054 "gram.y"
30718     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); }
30719     break;
30720 
30721   case 735:
30722 /* Line 1792 of yacc.c  */
30723 #line 5059 "gram.y"
30724     {
30725 					AlterEventTrigStmt *n = makeNode(AlterEventTrigStmt);
30726 					n->trigname = (yyvsp[(4) - (5)].str);
30727 					n->tgenabled = (yyvsp[(5) - (5)].chr);
30728 					(yyval.node) = (Node *) n;
30729 				}
30730     break;
30731 
30732   case 736:
30733 /* Line 1792 of yacc.c  */
30734 #line 5068 "gram.y"
30735     { (yyval.chr) = TRIGGER_FIRES_ON_ORIGIN; }
30736     break;
30737 
30738   case 737:
30739 /* Line 1792 of yacc.c  */
30740 #line 5069 "gram.y"
30741     { (yyval.chr) = TRIGGER_FIRES_ON_REPLICA; }
30742     break;
30743 
30744   case 738:
30745 /* Line 1792 of yacc.c  */
30746 #line 5070 "gram.y"
30747     { (yyval.chr) = TRIGGER_FIRES_ALWAYS; }
30748     break;
30749 
30750   case 739:
30751 /* Line 1792 of yacc.c  */
30752 #line 5071 "gram.y"
30753     { (yyval.chr) = TRIGGER_DISABLED; }
30754     break;
30755 
30756   case 740:
30757 /* Line 1792 of yacc.c  */
30758 #line 5085 "gram.y"
30759     {
30760 					CreateTrigStmt *n = makeNode(CreateTrigStmt);
30761 					n->trigname = (yyvsp[(3) - (8)].str);
30762 					n->args = list_make1((yyvsp[(6) - (8)].node));
30763 					n->isconstraint  = TRUE;
30764 					processCASbits((yyvsp[(8) - (8)].ival), (yylsp[(8) - (8)]), "ASSERTION",
30765 								   &n->deferrable, &n->initdeferred, NULL,
30766 								   NULL, yyscanner);
30767 
30768 					ereport(ERROR,
30769 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
30770 							 errmsg("CREATE ASSERTION is not yet implemented")));
30771 
30772 					(yyval.node) = (Node *)n;
30773 				}
30774     break;
30775 
30776   case 741:
30777 /* Line 1792 of yacc.c  */
30778 #line 5104 "gram.y"
30779     {
30780 					DropStmt *n = makeNode(DropStmt);
30781 					n->objects = NIL;
30782 					n->arguments = NIL;
30783 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
30784 					n->removeType = OBJECT_TRIGGER; /* XXX */
30785 					ereport(ERROR,
30786 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
30787 							 errmsg("DROP ASSERTION is not yet implemented")));
30788 					(yyval.node) = (Node *) n;
30789 				}
30790     break;
30791 
30792   case 742:
30793 /* Line 1792 of yacc.c  */
30794 #line 5127 "gram.y"
30795     {
30796 					DefineStmt *n = makeNode(DefineStmt);
30797 					n->kind = OBJECT_AGGREGATE;
30798 					n->oldstyle = false;
30799 					n->defnames = (yyvsp[(3) - (5)].list);
30800 					n->args = (yyvsp[(4) - (5)].list);
30801 					n->definition = (yyvsp[(5) - (5)].list);
30802 					(yyval.node) = (Node *)n;
30803 				}
30804     break;
30805 
30806   case 743:
30807 /* Line 1792 of yacc.c  */
30808 #line 5137 "gram.y"
30809     {
30810 					/* old-style (pre-8.2) syntax for CREATE AGGREGATE */
30811 					DefineStmt *n = makeNode(DefineStmt);
30812 					n->kind = OBJECT_AGGREGATE;
30813 					n->oldstyle = true;
30814 					n->defnames = (yyvsp[(3) - (4)].list);
30815 					n->args = NIL;
30816 					n->definition = (yyvsp[(4) - (4)].list);
30817 					(yyval.node) = (Node *)n;
30818 				}
30819     break;
30820 
30821   case 744:
30822 /* Line 1792 of yacc.c  */
30823 #line 5148 "gram.y"
30824     {
30825 					DefineStmt *n = makeNode(DefineStmt);
30826 					n->kind = OBJECT_OPERATOR;
30827 					n->oldstyle = false;
30828 					n->defnames = (yyvsp[(3) - (4)].list);
30829 					n->args = NIL;
30830 					n->definition = (yyvsp[(4) - (4)].list);
30831 					(yyval.node) = (Node *)n;
30832 				}
30833     break;
30834 
30835   case 745:
30836 /* Line 1792 of yacc.c  */
30837 #line 5158 "gram.y"
30838     {
30839 					DefineStmt *n = makeNode(DefineStmt);
30840 					n->kind = OBJECT_TYPE;
30841 					n->oldstyle = false;
30842 					n->defnames = (yyvsp[(3) - (4)].list);
30843 					n->args = NIL;
30844 					n->definition = (yyvsp[(4) - (4)].list);
30845 					(yyval.node) = (Node *)n;
30846 				}
30847     break;
30848 
30849   case 746:
30850 /* Line 1792 of yacc.c  */
30851 #line 5168 "gram.y"
30852     {
30853 					/* Shell type (identified by lack of definition) */
30854 					DefineStmt *n = makeNode(DefineStmt);
30855 					n->kind = OBJECT_TYPE;
30856 					n->oldstyle = false;
30857 					n->defnames = (yyvsp[(3) - (3)].list);
30858 					n->args = NIL;
30859 					n->definition = NIL;
30860 					(yyval.node) = (Node *)n;
30861 				}
30862     break;
30863 
30864   case 747:
30865 /* Line 1792 of yacc.c  */
30866 #line 5179 "gram.y"
30867     {
30868 					CompositeTypeStmt *n = makeNode(CompositeTypeStmt);
30869 
30870 					/* can't use qualified_name, sigh */
30871 					n->typevar = makeRangeVarFromAnyName((yyvsp[(3) - (7)].list), (yylsp[(3) - (7)]), yyscanner);
30872 					n->coldeflist = (yyvsp[(6) - (7)].list);
30873 					(yyval.node) = (Node *)n;
30874 				}
30875     break;
30876 
30877   case 748:
30878 /* Line 1792 of yacc.c  */
30879 #line 5188 "gram.y"
30880     {
30881 					CreateEnumStmt *n = makeNode(CreateEnumStmt);
30882 					n->typeName = (yyvsp[(3) - (8)].list);
30883 					n->vals = (yyvsp[(7) - (8)].list);
30884 					(yyval.node) = (Node *)n;
30885 				}
30886     break;
30887 
30888   case 749:
30889 /* Line 1792 of yacc.c  */
30890 #line 5195 "gram.y"
30891     {
30892 					CreateRangeStmt *n = makeNode(CreateRangeStmt);
30893 					n->typeName = (yyvsp[(3) - (6)].list);
30894 					n->params	= (yyvsp[(6) - (6)].list);
30895 					(yyval.node) = (Node *)n;
30896 				}
30897     break;
30898 
30899   case 750:
30900 /* Line 1792 of yacc.c  */
30901 #line 5202 "gram.y"
30902     {
30903 					DefineStmt *n = makeNode(DefineStmt);
30904 					n->kind = OBJECT_TSPARSER;
30905 					n->args = NIL;
30906 					n->defnames = (yyvsp[(5) - (6)].list);
30907 					n->definition = (yyvsp[(6) - (6)].list);
30908 					(yyval.node) = (Node *)n;
30909 				}
30910     break;
30911 
30912   case 751:
30913 /* Line 1792 of yacc.c  */
30914 #line 5211 "gram.y"
30915     {
30916 					DefineStmt *n = makeNode(DefineStmt);
30917 					n->kind = OBJECT_TSDICTIONARY;
30918 					n->args = NIL;
30919 					n->defnames = (yyvsp[(5) - (6)].list);
30920 					n->definition = (yyvsp[(6) - (6)].list);
30921 					(yyval.node) = (Node *)n;
30922 				}
30923     break;
30924 
30925   case 752:
30926 /* Line 1792 of yacc.c  */
30927 #line 5220 "gram.y"
30928     {
30929 					DefineStmt *n = makeNode(DefineStmt);
30930 					n->kind = OBJECT_TSTEMPLATE;
30931 					n->args = NIL;
30932 					n->defnames = (yyvsp[(5) - (6)].list);
30933 					n->definition = (yyvsp[(6) - (6)].list);
30934 					(yyval.node) = (Node *)n;
30935 				}
30936     break;
30937 
30938   case 753:
30939 /* Line 1792 of yacc.c  */
30940 #line 5229 "gram.y"
30941     {
30942 					DefineStmt *n = makeNode(DefineStmt);
30943 					n->kind = OBJECT_TSCONFIGURATION;
30944 					n->args = NIL;
30945 					n->defnames = (yyvsp[(5) - (6)].list);
30946 					n->definition = (yyvsp[(6) - (6)].list);
30947 					(yyval.node) = (Node *)n;
30948 				}
30949     break;
30950 
30951   case 754:
30952 /* Line 1792 of yacc.c  */
30953 #line 5238 "gram.y"
30954     {
30955 					DefineStmt *n = makeNode(DefineStmt);
30956 					n->kind = OBJECT_COLLATION;
30957 					n->args = NIL;
30958 					n->defnames = (yyvsp[(3) - (4)].list);
30959 					n->definition = (yyvsp[(4) - (4)].list);
30960 					(yyval.node) = (Node *)n;
30961 				}
30962     break;
30963 
30964   case 755:
30965 /* Line 1792 of yacc.c  */
30966 #line 5247 "gram.y"
30967     {
30968 					DefineStmt *n = makeNode(DefineStmt);
30969 					n->kind = OBJECT_COLLATION;
30970 					n->args = NIL;
30971 					n->defnames = (yyvsp[(3) - (5)].list);
30972 					n->definition = list_make1(makeDefElem("from", (Node *) (yyvsp[(5) - (5)].list)));
30973 					(yyval.node) = (Node *)n;
30974 				}
30975     break;
30976 
30977   case 756:
30978 /* Line 1792 of yacc.c  */
30979 #line 5257 "gram.y"
30980     { (yyval.list) = (yyvsp[(2) - (3)].list); }
30981     break;
30982 
30983   case 757:
30984 /* Line 1792 of yacc.c  */
30985 #line 5260 "gram.y"
30986     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
30987     break;
30988 
30989   case 758:
30990 /* Line 1792 of yacc.c  */
30991 #line 5261 "gram.y"
30992     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
30993     break;
30994 
30995   case 759:
30996 /* Line 1792 of yacc.c  */
30997 #line 5265 "gram.y"
30998     {
30999 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node));
31000 				}
31001     break;
31002 
31003   case 760:
31004 /* Line 1792 of yacc.c  */
31005 #line 5269 "gram.y"
31006     {
31007 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (1)].str), NULL);
31008 				}
31009     break;
31010 
31011   case 761:
31012 /* Line 1792 of yacc.c  */
31013 #line 5275 "gram.y"
31014     { (yyval.node) = (Node *)(yyvsp[(1) - (1)].typnam); }
31015     break;
31016 
31017   case 762:
31018 /* Line 1792 of yacc.c  */
31019 #line 5276 "gram.y"
31020     { (yyval.node) = (Node *)makeString(pstrdup((yyvsp[(1) - (1)].keyword))); }
31021     break;
31022 
31023   case 763:
31024 /* Line 1792 of yacc.c  */
31025 #line 5277 "gram.y"
31026     { (yyval.node) = (Node *)(yyvsp[(1) - (1)].list); }
31027     break;
31028 
31029   case 764:
31030 /* Line 1792 of yacc.c  */
31031 #line 5278 "gram.y"
31032     { (yyval.node) = (Node *)(yyvsp[(1) - (1)].value); }
31033     break;
31034 
31035   case 765:
31036 /* Line 1792 of yacc.c  */
31037 #line 5279 "gram.y"
31038     { (yyval.node) = (Node *)makeString((yyvsp[(1) - (1)].str)); }
31039     break;
31040 
31041   case 766:
31042 /* Line 1792 of yacc.c  */
31043 #line 5282 "gram.y"
31044     { (yyval.list) = (yyvsp[(2) - (3)].list); }
31045     break;
31046 
31047   case 767:
31048 /* Line 1792 of yacc.c  */
31049 #line 5285 "gram.y"
31050     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
31051     break;
31052 
31053   case 768:
31054 /* Line 1792 of yacc.c  */
31055 #line 5286 "gram.y"
31056     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
31057     break;
31058 
31059   case 769:
31060 /* Line 1792 of yacc.c  */
31061 #line 5295 "gram.y"
31062     {
31063 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *)(yyvsp[(3) - (3)].node));
31064 				}
31065     break;
31066 
31067   case 770:
31068 /* Line 1792 of yacc.c  */
31069 #line 5301 "gram.y"
31070     { (yyval.list) = (yyvsp[(1) - (1)].list); }
31071     break;
31072 
31073   case 771:
31074 /* Line 1792 of yacc.c  */
31075 #line 5302 "gram.y"
31076     { (yyval.list) = NIL; }
31077     break;
31078 
31079   case 772:
31080 /* Line 1792 of yacc.c  */
31081 #line 5306 "gram.y"
31082     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
31083     break;
31084 
31085   case 773:
31086 /* Line 1792 of yacc.c  */
31087 #line 5308 "gram.y"
31088     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); }
31089     break;
31090 
31091   case 774:
31092 /* Line 1792 of yacc.c  */
31093 #line 5319 "gram.y"
31094     {
31095 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
31096 				n->typeName = (yyvsp[(3) - (7)].list);
31097 				n->newVal = (yyvsp[(7) - (7)].str);
31098 				n->newValNeighbor = NULL;
31099 				n->newValIsAfter = true;
31100 				n->skipIfExists = (yyvsp[(6) - (7)].boolean);
31101 				(yyval.node) = (Node *) n;
31102 			}
31103     break;
31104 
31105   case 775:
31106 /* Line 1792 of yacc.c  */
31107 #line 5329 "gram.y"
31108     {
31109 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
31110 				n->typeName = (yyvsp[(3) - (9)].list);
31111 				n->newVal = (yyvsp[(7) - (9)].str);
31112 				n->newValNeighbor = (yyvsp[(9) - (9)].str);
31113 				n->newValIsAfter = false;
31114 				n->skipIfExists = (yyvsp[(6) - (9)].boolean);
31115 				(yyval.node) = (Node *) n;
31116 			}
31117     break;
31118 
31119   case 776:
31120 /* Line 1792 of yacc.c  */
31121 #line 5339 "gram.y"
31122     {
31123 				AlterEnumStmt *n = makeNode(AlterEnumStmt);
31124 				n->typeName = (yyvsp[(3) - (9)].list);
31125 				n->newVal = (yyvsp[(7) - (9)].str);
31126 				n->newValNeighbor = (yyvsp[(9) - (9)].str);
31127 				n->newValIsAfter = true;
31128 				n->skipIfExists = (yyvsp[(6) - (9)].boolean);
31129 				(yyval.node) = (Node *) n;
31130 			}
31131     break;
31132 
31133   case 777:
31134 /* Line 1792 of yacc.c  */
31135 #line 5350 "gram.y"
31136     { (yyval.boolean) = true; }
31137     break;
31138 
31139   case 778:
31140 /* Line 1792 of yacc.c  */
31141 #line 5351 "gram.y"
31142     { (yyval.boolean) = false; }
31143     break;
31144 
31145   case 779:
31146 /* Line 1792 of yacc.c  */
31147 #line 5369 "gram.y"
31148     {
31149 					CreateOpClassStmt *n = makeNode(CreateOpClassStmt);
31150 					n->opclassname = (yyvsp[(4) - (13)].list);
31151 					n->isDefault = (yyvsp[(5) - (13)].boolean);
31152 					n->datatype = (yyvsp[(8) - (13)].typnam);
31153 					n->amname = (yyvsp[(10) - (13)].str);
31154 					n->opfamilyname = (yyvsp[(11) - (13)].list);
31155 					n->items = (yyvsp[(13) - (13)].list);
31156 					(yyval.node) = (Node *) n;
31157 				}
31158     break;
31159 
31160   case 780:
31161 /* Line 1792 of yacc.c  */
31162 #line 5382 "gram.y"
31163     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
31164     break;
31165 
31166   case 781:
31167 /* Line 1792 of yacc.c  */
31168 #line 5383 "gram.y"
31169     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
31170     break;
31171 
31172   case 782:
31173 /* Line 1792 of yacc.c  */
31174 #line 5388 "gram.y"
31175     {
31176 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31177 					n->itemtype = OPCLASS_ITEM_OPERATOR;
31178 					n->name = (yyvsp[(3) - (5)].list);
31179 					n->args = NIL;
31180 					n->number = (yyvsp[(2) - (5)].ival);
31181 					n->order_family = (yyvsp[(4) - (5)].list);
31182 					(yyval.node) = (Node *) n;
31183 				}
31184     break;
31185 
31186   case 783:
31187 /* Line 1792 of yacc.c  */
31188 #line 5399 "gram.y"
31189     {
31190 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31191 					n->itemtype = OPCLASS_ITEM_OPERATOR;
31192 					n->name = (yyvsp[(3) - (6)].list);
31193 					n->args = (yyvsp[(4) - (6)].list);
31194 					n->number = (yyvsp[(2) - (6)].ival);
31195 					n->order_family = (yyvsp[(5) - (6)].list);
31196 					(yyval.node) = (Node *) n;
31197 				}
31198     break;
31199 
31200   case 784:
31201 /* Line 1792 of yacc.c  */
31202 #line 5409 "gram.y"
31203     {
31204 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31205 					n->itemtype = OPCLASS_ITEM_FUNCTION;
31206 					n->name = (yyvsp[(3) - (4)].list);
31207 					n->args = extractArgTypes((yyvsp[(4) - (4)].list));
31208 					n->number = (yyvsp[(2) - (4)].ival);
31209 					(yyval.node) = (Node *) n;
31210 				}
31211     break;
31212 
31213   case 785:
31214 /* Line 1792 of yacc.c  */
31215 #line 5418 "gram.y"
31216     {
31217 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31218 					n->itemtype = OPCLASS_ITEM_FUNCTION;
31219 					n->name = (yyvsp[(6) - (7)].list);
31220 					n->args = extractArgTypes((yyvsp[(7) - (7)].list));
31221 					n->number = (yyvsp[(2) - (7)].ival);
31222 					n->class_args = (yyvsp[(4) - (7)].list);
31223 					(yyval.node) = (Node *) n;
31224 				}
31225     break;
31226 
31227   case 786:
31228 /* Line 1792 of yacc.c  */
31229 #line 5428 "gram.y"
31230     {
31231 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31232 					n->itemtype = OPCLASS_ITEM_STORAGETYPE;
31233 					n->storedtype = (yyvsp[(2) - (2)].typnam);
31234 					(yyval.node) = (Node *) n;
31235 				}
31236     break;
31237 
31238   case 787:
31239 /* Line 1792 of yacc.c  */
31240 #line 5436 "gram.y"
31241     { (yyval.boolean) = TRUE; }
31242     break;
31243 
31244   case 788:
31245 /* Line 1792 of yacc.c  */
31246 #line 5437 "gram.y"
31247     { (yyval.boolean) = FALSE; }
31248     break;
31249 
31250   case 789:
31251 /* Line 1792 of yacc.c  */
31252 #line 5440 "gram.y"
31253     { (yyval.list) = (yyvsp[(2) - (2)].list); }
31254     break;
31255 
31256   case 790:
31257 /* Line 1792 of yacc.c  */
31258 #line 5441 "gram.y"
31259     { (yyval.list) = NIL; }
31260     break;
31261 
31262   case 791:
31263 /* Line 1792 of yacc.c  */
31264 #line 5444 "gram.y"
31265     { (yyval.list) = NIL; }
31266     break;
31267 
31268   case 792:
31269 /* Line 1792 of yacc.c  */
31270 #line 5445 "gram.y"
31271     { (yyval.list) = (yyvsp[(4) - (4)].list); }
31272     break;
31273 
31274   case 793:
31275 /* Line 1792 of yacc.c  */
31276 #line 5446 "gram.y"
31277     { (yyval.list) = NIL; }
31278     break;
31279 
31280   case 794:
31281 /* Line 1792 of yacc.c  */
31282 #line 5450 "gram.y"
31283     {
31284 					/*
31285 					 * RECHECK no longer does anything in opclass definitions,
31286 					 * but we still accept it to ease porting of old database
31287 					 * dumps.
31288 					 */
31289 					ereport(NOTICE,
31290 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
31291 							 errmsg("RECHECK is no longer required"),
31292 							 errhint("Update your data type."),
31293 							 parser_errposition((yylsp[(1) - (1)]))));
31294 					(yyval.boolean) = TRUE;
31295 				}
31296     break;
31297 
31298   case 795:
31299 /* Line 1792 of yacc.c  */
31300 #line 5463 "gram.y"
31301     { (yyval.boolean) = FALSE; }
31302     break;
31303 
31304   case 796:
31305 /* Line 1792 of yacc.c  */
31306 #line 5469 "gram.y"
31307     {
31308 					CreateOpFamilyStmt *n = makeNode(CreateOpFamilyStmt);
31309 					n->opfamilyname = (yyvsp[(4) - (6)].list);
31310 					n->amname = (yyvsp[(6) - (6)].str);
31311 					(yyval.node) = (Node *) n;
31312 				}
31313     break;
31314 
31315   case 797:
31316 /* Line 1792 of yacc.c  */
31317 #line 5479 "gram.y"
31318     {
31319 					AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt);
31320 					n->opfamilyname = (yyvsp[(4) - (8)].list);
31321 					n->amname = (yyvsp[(6) - (8)].str);
31322 					n->isDrop = false;
31323 					n->items = (yyvsp[(8) - (8)].list);
31324 					(yyval.node) = (Node *) n;
31325 				}
31326     break;
31327 
31328   case 798:
31329 /* Line 1792 of yacc.c  */
31330 #line 5488 "gram.y"
31331     {
31332 					AlterOpFamilyStmt *n = makeNode(AlterOpFamilyStmt);
31333 					n->opfamilyname = (yyvsp[(4) - (8)].list);
31334 					n->amname = (yyvsp[(6) - (8)].str);
31335 					n->isDrop = true;
31336 					n->items = (yyvsp[(8) - (8)].list);
31337 					(yyval.node) = (Node *) n;
31338 				}
31339     break;
31340 
31341   case 799:
31342 /* Line 1792 of yacc.c  */
31343 #line 5499 "gram.y"
31344     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
31345     break;
31346 
31347   case 800:
31348 /* Line 1792 of yacc.c  */
31349 #line 5500 "gram.y"
31350     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
31351     break;
31352 
31353   case 801:
31354 /* Line 1792 of yacc.c  */
31355 #line 5505 "gram.y"
31356     {
31357 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31358 					n->itemtype = OPCLASS_ITEM_OPERATOR;
31359 					n->number = (yyvsp[(2) - (5)].ival);
31360 					n->args = (yyvsp[(4) - (5)].list);
31361 					(yyval.node) = (Node *) n;
31362 				}
31363     break;
31364 
31365   case 802:
31366 /* Line 1792 of yacc.c  */
31367 #line 5513 "gram.y"
31368     {
31369 					CreateOpClassItem *n = makeNode(CreateOpClassItem);
31370 					n->itemtype = OPCLASS_ITEM_FUNCTION;
31371 					n->number = (yyvsp[(2) - (5)].ival);
31372 					n->args = (yyvsp[(4) - (5)].list);
31373 					(yyval.node) = (Node *) n;
31374 				}
31375     break;
31376 
31377   case 803:
31378 /* Line 1792 of yacc.c  */
31379 #line 5525 "gram.y"
31380     {
31381 					DropStmt *n = makeNode(DropStmt);
31382 					n->objects = list_make1(lcons(makeString((yyvsp[(6) - (7)].str)), (yyvsp[(4) - (7)].list)));
31383 					n->removeType = OBJECT_OPCLASS;
31384 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
31385 					n->missing_ok = false;
31386 					n->concurrent = false;
31387 					(yyval.node) = (Node *) n;
31388 				}
31389     break;
31390 
31391   case 804:
31392 /* Line 1792 of yacc.c  */
31393 #line 5535 "gram.y"
31394     {
31395 					DropStmt *n = makeNode(DropStmt);
31396 					n->objects = list_make1(lcons(makeString((yyvsp[(8) - (9)].str)), (yyvsp[(6) - (9)].list)));
31397 					n->removeType = OBJECT_OPCLASS;
31398 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
31399 					n->missing_ok = true;
31400 					n->concurrent = false;
31401 					(yyval.node) = (Node *) n;
31402 				}
31403     break;
31404 
31405   case 805:
31406 /* Line 1792 of yacc.c  */
31407 #line 5548 "gram.y"
31408     {
31409 					DropStmt *n = makeNode(DropStmt);
31410 					n->objects = list_make1(lcons(makeString((yyvsp[(6) - (7)].str)), (yyvsp[(4) - (7)].list)));
31411 					n->removeType = OBJECT_OPFAMILY;
31412 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
31413 					n->missing_ok = false;
31414 					n->concurrent = false;
31415 					(yyval.node) = (Node *) n;
31416 				}
31417     break;
31418 
31419   case 806:
31420 /* Line 1792 of yacc.c  */
31421 #line 5558 "gram.y"
31422     {
31423 					DropStmt *n = makeNode(DropStmt);
31424 					n->objects = list_make1(lcons(makeString((yyvsp[(8) - (9)].str)), (yyvsp[(6) - (9)].list)));
31425 					n->removeType = OBJECT_OPFAMILY;
31426 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
31427 					n->missing_ok = true;
31428 					n->concurrent = false;
31429 					(yyval.node) = (Node *) n;
31430 				}
31431     break;
31432 
31433   case 807:
31434 /* Line 1792 of yacc.c  */
31435 #line 5580 "gram.y"
31436     {
31437 					DropOwnedStmt *n = makeNode(DropOwnedStmt);
31438 					n->roles = (yyvsp[(4) - (5)].list);
31439 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
31440 					(yyval.node) = (Node *)n;
31441 				}
31442     break;
31443 
31444   case 808:
31445 /* Line 1792 of yacc.c  */
31446 #line 5590 "gram.y"
31447     {
31448 					ReassignOwnedStmt *n = makeNode(ReassignOwnedStmt);
31449 					n->roles = (yyvsp[(4) - (6)].list);
31450 					n->newrole = (yyvsp[(6) - (6)].node);
31451 					(yyval.node) = (Node *)n;
31452 				}
31453     break;
31454 
31455   case 809:
31456 /* Line 1792 of yacc.c  */
31457 #line 5608 "gram.y"
31458     {
31459 					DropStmt *n = makeNode(DropStmt);
31460 					n->removeType = (yyvsp[(2) - (6)].objtype);
31461 					n->missing_ok = TRUE;
31462 					n->objects = (yyvsp[(5) - (6)].list);
31463 					n->arguments = NIL;
31464 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
31465 					n->concurrent = false;
31466 					(yyval.node) = (Node *)n;
31467 				}
31468     break;
31469 
31470   case 810:
31471 /* Line 1792 of yacc.c  */
31472 #line 5619 "gram.y"
31473     {
31474 					DropStmt *n = makeNode(DropStmt);
31475 					n->removeType = (yyvsp[(2) - (4)].objtype);
31476 					n->missing_ok = FALSE;
31477 					n->objects = (yyvsp[(3) - (4)].list);
31478 					n->arguments = NIL;
31479 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
31480 					n->concurrent = false;
31481 					(yyval.node) = (Node *)n;
31482 				}
31483     break;
31484 
31485   case 811:
31486 /* Line 1792 of yacc.c  */
31487 #line 5630 "gram.y"
31488     {
31489 					DropStmt *n = makeNode(DropStmt);
31490 					n->removeType = OBJECT_TYPE;
31491 					n->missing_ok = FALSE;
31492 					n->objects = (yyvsp[(3) - (4)].list);
31493 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
31494 					n->concurrent = false;
31495 					(yyval.node) = (Node *) n;
31496 				}
31497     break;
31498 
31499   case 812:
31500 /* Line 1792 of yacc.c  */
31501 #line 5640 "gram.y"
31502     {
31503 					DropStmt *n = makeNode(DropStmt);
31504 					n->removeType = OBJECT_TYPE;
31505 					n->missing_ok = TRUE;
31506 					n->objects = (yyvsp[(5) - (6)].list);
31507 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
31508 					n->concurrent = false;
31509 					(yyval.node) = (Node *) n;
31510 				}
31511     break;
31512 
31513   case 813:
31514 /* Line 1792 of yacc.c  */
31515 #line 5650 "gram.y"
31516     {
31517 					DropStmt *n = makeNode(DropStmt);
31518 					n->removeType = OBJECT_DOMAIN;
31519 					n->missing_ok = FALSE;
31520 					n->objects = (yyvsp[(3) - (4)].list);
31521 					n->behavior = (yyvsp[(4) - (4)].dbehavior);
31522 					n->concurrent = false;
31523 					(yyval.node) = (Node *) n;
31524 				}
31525     break;
31526 
31527   case 814:
31528 /* Line 1792 of yacc.c  */
31529 #line 5660 "gram.y"
31530     {
31531 					DropStmt *n = makeNode(DropStmt);
31532 					n->removeType = OBJECT_DOMAIN;
31533 					n->missing_ok = TRUE;
31534 					n->objects = (yyvsp[(5) - (6)].list);
31535 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
31536 					n->concurrent = false;
31537 					(yyval.node) = (Node *) n;
31538 				}
31539     break;
31540 
31541   case 815:
31542 /* Line 1792 of yacc.c  */
31543 #line 5670 "gram.y"
31544     {
31545 					DropStmt *n = makeNode(DropStmt);
31546 					n->removeType = OBJECT_INDEX;
31547 					n->missing_ok = FALSE;
31548 					n->objects = (yyvsp[(4) - (5)].list);
31549 					n->arguments = NIL;
31550 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
31551 					n->concurrent = true;
31552 					(yyval.node) = (Node *)n;
31553 				}
31554     break;
31555 
31556   case 816:
31557 /* Line 1792 of yacc.c  */
31558 #line 5681 "gram.y"
31559     {
31560 					DropStmt *n = makeNode(DropStmt);
31561 					n->removeType = OBJECT_INDEX;
31562 					n->missing_ok = TRUE;
31563 					n->objects = (yyvsp[(6) - (7)].list);
31564 					n->arguments = NIL;
31565 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
31566 					n->concurrent = true;
31567 					(yyval.node) = (Node *)n;
31568 				}
31569     break;
31570 
31571   case 817:
31572 /* Line 1792 of yacc.c  */
31573 #line 5694 "gram.y"
31574     { (yyval.objtype) = OBJECT_TABLE; }
31575     break;
31576 
31577   case 818:
31578 /* Line 1792 of yacc.c  */
31579 #line 5695 "gram.y"
31580     { (yyval.objtype) = OBJECT_SEQUENCE; }
31581     break;
31582 
31583   case 819:
31584 /* Line 1792 of yacc.c  */
31585 #line 5696 "gram.y"
31586     { (yyval.objtype) = OBJECT_VIEW; }
31587     break;
31588 
31589   case 820:
31590 /* Line 1792 of yacc.c  */
31591 #line 5697 "gram.y"
31592     { (yyval.objtype) = OBJECT_MATVIEW; }
31593     break;
31594 
31595   case 821:
31596 /* Line 1792 of yacc.c  */
31597 #line 5698 "gram.y"
31598     { (yyval.objtype) = OBJECT_INDEX; }
31599     break;
31600 
31601   case 822:
31602 /* Line 1792 of yacc.c  */
31603 #line 5699 "gram.y"
31604     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
31605     break;
31606 
31607   case 823:
31608 /* Line 1792 of yacc.c  */
31609 #line 5700 "gram.y"
31610     { (yyval.objtype) = OBJECT_ACCESS_METHOD; }
31611     break;
31612 
31613   case 824:
31614 /* Line 1792 of yacc.c  */
31615 #line 5701 "gram.y"
31616     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
31617     break;
31618 
31619   case 825:
31620 /* Line 1792 of yacc.c  */
31621 #line 5702 "gram.y"
31622     { (yyval.objtype) = OBJECT_COLLATION; }
31623     break;
31624 
31625   case 826:
31626 /* Line 1792 of yacc.c  */
31627 #line 5703 "gram.y"
31628     { (yyval.objtype) = OBJECT_CONVERSION; }
31629     break;
31630 
31631   case 827:
31632 /* Line 1792 of yacc.c  */
31633 #line 5704 "gram.y"
31634     { (yyval.objtype) = OBJECT_SCHEMA; }
31635     break;
31636 
31637   case 828:
31638 /* Line 1792 of yacc.c  */
31639 #line 5705 "gram.y"
31640     { (yyval.objtype) = OBJECT_EXTENSION; }
31641     break;
31642 
31643   case 829:
31644 /* Line 1792 of yacc.c  */
31645 #line 5706 "gram.y"
31646     { (yyval.objtype) = OBJECT_TSPARSER; }
31647     break;
31648 
31649   case 830:
31650 /* Line 1792 of yacc.c  */
31651 #line 5707 "gram.y"
31652     { (yyval.objtype) = OBJECT_TSDICTIONARY; }
31653     break;
31654 
31655   case 831:
31656 /* Line 1792 of yacc.c  */
31657 #line 5708 "gram.y"
31658     { (yyval.objtype) = OBJECT_TSTEMPLATE; }
31659     break;
31660 
31661   case 832:
31662 /* Line 1792 of yacc.c  */
31663 #line 5709 "gram.y"
31664     { (yyval.objtype) = OBJECT_TSCONFIGURATION; }
31665     break;
31666 
31667   case 833:
31668 /* Line 1792 of yacc.c  */
31669 #line 5713 "gram.y"
31670     { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); }
31671     break;
31672 
31673   case 834:
31674 /* Line 1792 of yacc.c  */
31675 #line 5714 "gram.y"
31676     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); }
31677     break;
31678 
31679   case 835:
31680 /* Line 1792 of yacc.c  */
31681 #line 5717 "gram.y"
31682     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
31683     break;
31684 
31685   case 836:
31686 /* Line 1792 of yacc.c  */
31687 #line 5718 "gram.y"
31688     { (yyval.list) = lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)); }
31689     break;
31690 
31691   case 837:
31692 /* Line 1792 of yacc.c  */
31693 #line 5722 "gram.y"
31694     { (yyval.list) = list_make1(makeString((yyvsp[(2) - (2)].str))); }
31695     break;
31696 
31697   case 838:
31698 /* Line 1792 of yacc.c  */
31699 #line 5724 "gram.y"
31700     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); }
31701     break;
31702 
31703   case 839:
31704 /* Line 1792 of yacc.c  */
31705 #line 5728 "gram.y"
31706     { (yyval.list) = list_make1(list_make1((yyvsp[(1) - (1)].typnam))); }
31707     break;
31708 
31709   case 840:
31710 /* Line 1792 of yacc.c  */
31711 #line 5729 "gram.y"
31712     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), list_make1((yyvsp[(3) - (3)].typnam))); }
31713     break;
31714 
31715   case 841:
31716 /* Line 1792 of yacc.c  */
31717 #line 5740 "gram.y"
31718     {
31719 					TruncateStmt *n = makeNode(TruncateStmt);
31720 					n->relations = (yyvsp[(3) - (5)].list);
31721 					n->restart_seqs = (yyvsp[(4) - (5)].boolean);
31722 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
31723 					(yyval.node) = (Node *)n;
31724 				}
31725     break;
31726 
31727   case 842:
31728 /* Line 1792 of yacc.c  */
31729 #line 5750 "gram.y"
31730     { (yyval.boolean) = false; }
31731     break;
31732 
31733   case 843:
31734 /* Line 1792 of yacc.c  */
31735 #line 5751 "gram.y"
31736     { (yyval.boolean) = true; }
31737     break;
31738 
31739   case 844:
31740 /* Line 1792 of yacc.c  */
31741 #line 5752 "gram.y"
31742     { (yyval.boolean) = false; }
31743     break;
31744 
31745   case 845:
31746 /* Line 1792 of yacc.c  */
31747 #line 5787 "gram.y"
31748     {
31749 					CommentStmt *n = makeNode(CommentStmt);
31750 					n->objtype = (yyvsp[(3) - (6)].objtype);
31751 					n->objname = (yyvsp[(4) - (6)].list);
31752 					n->objargs = NIL;
31753 					n->comment = (yyvsp[(6) - (6)].str);
31754 					(yyval.node) = (Node *) n;
31755 				}
31756     break;
31757 
31758   case 846:
31759 /* Line 1792 of yacc.c  */
31760 #line 5796 "gram.y"
31761     {
31762 					CommentStmt *n = makeNode(CommentStmt);
31763 					n->objtype = OBJECT_TYPE;
31764 					n->objname = list_make1((yyvsp[(4) - (6)].typnam));
31765 					n->objargs = NIL;
31766 					n->comment = (yyvsp[(6) - (6)].str);
31767 					(yyval.node) = (Node *) n;
31768 				}
31769     break;
31770 
31771   case 847:
31772 /* Line 1792 of yacc.c  */
31773 #line 5805 "gram.y"
31774     {
31775 					CommentStmt *n = makeNode(CommentStmt);
31776 					n->objtype = OBJECT_DOMAIN;
31777 					n->objname = list_make1((yyvsp[(4) - (6)].typnam));
31778 					n->objargs = NIL;
31779 					n->comment = (yyvsp[(6) - (6)].str);
31780 					(yyval.node) = (Node *) n;
31781 				}
31782     break;
31783 
31784   case 848:
31785 /* Line 1792 of yacc.c  */
31786 #line 5814 "gram.y"
31787     {
31788 					CommentStmt *n = makeNode(CommentStmt);
31789 					n->objtype = OBJECT_AGGREGATE;
31790 					n->objname = (yyvsp[(4) - (7)].list);
31791 					n->objargs = extractAggrArgTypes((yyvsp[(5) - (7)].list));
31792 					n->comment = (yyvsp[(7) - (7)].str);
31793 					(yyval.node) = (Node *) n;
31794 				}
31795     break;
31796 
31797   case 849:
31798 /* Line 1792 of yacc.c  */
31799 #line 5823 "gram.y"
31800     {
31801 					CommentStmt *n = makeNode(CommentStmt);
31802 					n->objtype = OBJECT_FUNCTION;
31803 					n->objname = (yyvsp[(4) - (7)].list);
31804 					n->objargs = extractArgTypes((yyvsp[(5) - (7)].list));
31805 					n->comment = (yyvsp[(7) - (7)].str);
31806 					(yyval.node) = (Node *) n;
31807 				}
31808     break;
31809 
31810   case 850:
31811 /* Line 1792 of yacc.c  */
31812 #line 5832 "gram.y"
31813     {
31814 					CommentStmt *n = makeNode(CommentStmt);
31815 					n->objtype = OBJECT_OPERATOR;
31816 					n->objname = (yyvsp[(4) - (7)].list);
31817 					n->objargs = (yyvsp[(5) - (7)].list);
31818 					n->comment = (yyvsp[(7) - (7)].str);
31819 					(yyval.node) = (Node *) n;
31820 				}
31821     break;
31822 
31823   case 851:
31824 /* Line 1792 of yacc.c  */
31825 #line 5841 "gram.y"
31826     {
31827 					CommentStmt *n = makeNode(CommentStmt);
31828 					n->objtype = OBJECT_TABCONSTRAINT;
31829 					n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str)));
31830 					n->objargs = NIL;
31831 					n->comment = (yyvsp[(8) - (8)].str);
31832 					(yyval.node) = (Node *) n;
31833 				}
31834     break;
31835 
31836   case 852:
31837 /* Line 1792 of yacc.c  */
31838 #line 5850 "gram.y"
31839     {
31840 					CommentStmt *n = makeNode(CommentStmt);
31841 					n->objtype = OBJECT_DOMCONSTRAINT;
31842 					/*
31843 					 * should use Typename not any_name in the production, but
31844 					 * there's a shift/reduce conflict if we do that, so fix it
31845 					 * up here.
31846 					 */
31847 					n->objname = list_make1(makeTypeNameFromNameList((yyvsp[(7) - (9)].list)));
31848 					n->objargs = list_make1(makeString((yyvsp[(4) - (9)].str)));
31849 					n->comment = (yyvsp[(9) - (9)].str);
31850 					(yyval.node) = (Node *) n;
31851 				}
31852     break;
31853 
31854   case 853:
31855 /* Line 1792 of yacc.c  */
31856 #line 5864 "gram.y"
31857     {
31858 					CommentStmt *n = makeNode(CommentStmt);
31859 					n->objtype = OBJECT_POLICY;
31860 					n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str)));
31861 					n->objargs = NIL;
31862 					n->comment = (yyvsp[(8) - (8)].str);
31863 					(yyval.node) = (Node *) n;
31864 				}
31865     break;
31866 
31867   case 854:
31868 /* Line 1792 of yacc.c  */
31869 #line 5873 "gram.y"
31870     {
31871 					CommentStmt *n = makeNode(CommentStmt);
31872 					n->objtype = OBJECT_RULE;
31873 					n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str)));
31874 					n->objargs = NIL;
31875 					n->comment = (yyvsp[(8) - (8)].str);
31876 					(yyval.node) = (Node *) n;
31877 				}
31878     break;
31879 
31880   case 855:
31881 /* Line 1792 of yacc.c  */
31882 #line 5882 "gram.y"
31883     {
31884 					/* Obsolete syntax supported for awhile for compatibility */
31885 					CommentStmt *n = makeNode(CommentStmt);
31886 					n->objtype = OBJECT_RULE;
31887 					n->objname = list_make1(makeString((yyvsp[(4) - (6)].str)));
31888 					n->objargs = NIL;
31889 					n->comment = (yyvsp[(6) - (6)].str);
31890 					(yyval.node) = (Node *) n;
31891 				}
31892     break;
31893 
31894   case 856:
31895 /* Line 1792 of yacc.c  */
31896 #line 5892 "gram.y"
31897     {
31898 					CommentStmt *n = makeNode(CommentStmt);
31899 					n->objtype = OBJECT_TRANSFORM;
31900 					n->objname = list_make1((yyvsp[(5) - (9)].typnam));
31901 					n->objargs = list_make1(makeString((yyvsp[(7) - (9)].str)));
31902 					n->comment = (yyvsp[(9) - (9)].str);
31903 					(yyval.node) = (Node *) n;
31904 				}
31905     break;
31906 
31907   case 857:
31908 /* Line 1792 of yacc.c  */
31909 #line 5901 "gram.y"
31910     {
31911 					CommentStmt *n = makeNode(CommentStmt);
31912 					n->objtype = OBJECT_TRIGGER;
31913 					n->objname = lappend((yyvsp[(6) - (8)].list), makeString((yyvsp[(4) - (8)].str)));
31914 					n->objargs = NIL;
31915 					n->comment = (yyvsp[(8) - (8)].str);
31916 					(yyval.node) = (Node *) n;
31917 				}
31918     break;
31919 
31920   case 858:
31921 /* Line 1792 of yacc.c  */
31922 #line 5910 "gram.y"
31923     {
31924 					CommentStmt *n = makeNode(CommentStmt);
31925 					n->objtype = OBJECT_OPCLASS;
31926 					n->objname = lcons(makeString((yyvsp[(7) - (9)].str)), (yyvsp[(5) - (9)].list));
31927 					n->comment = (yyvsp[(9) - (9)].str);
31928 					(yyval.node) = (Node *) n;
31929 				}
31930     break;
31931 
31932   case 859:
31933 /* Line 1792 of yacc.c  */
31934 #line 5918 "gram.y"
31935     {
31936 					CommentStmt *n = makeNode(CommentStmt);
31937 					n->objtype = OBJECT_OPFAMILY;
31938 					n->objname = lcons(makeString((yyvsp[(7) - (9)].str)), (yyvsp[(5) - (9)].list));
31939 					n->objargs = NIL;
31940 					n->comment = (yyvsp[(9) - (9)].str);
31941 					(yyval.node) = (Node *) n;
31942 				}
31943     break;
31944 
31945   case 860:
31946 /* Line 1792 of yacc.c  */
31947 #line 5927 "gram.y"
31948     {
31949 					CommentStmt *n = makeNode(CommentStmt);
31950 					n->objtype = OBJECT_LARGEOBJECT;
31951 					n->objname = list_make1((yyvsp[(5) - (7)].value));
31952 					n->objargs = NIL;
31953 					n->comment = (yyvsp[(7) - (7)].str);
31954 					(yyval.node) = (Node *) n;
31955 				}
31956     break;
31957 
31958   case 861:
31959 /* Line 1792 of yacc.c  */
31960 #line 5936 "gram.y"
31961     {
31962 					CommentStmt *n = makeNode(CommentStmt);
31963 					n->objtype = OBJECT_CAST;
31964 					n->objname = list_make1((yyvsp[(5) - (10)].typnam));
31965 					n->objargs = list_make1((yyvsp[(7) - (10)].typnam));
31966 					n->comment = (yyvsp[(10) - (10)].str);
31967 					(yyval.node) = (Node *) n;
31968 				}
31969     break;
31970 
31971   case 862:
31972 /* Line 1792 of yacc.c  */
31973 #line 5945 "gram.y"
31974     {
31975 					CommentStmt *n = makeNode(CommentStmt);
31976 					n->objtype = OBJECT_LANGUAGE;
31977 					n->objname = (yyvsp[(5) - (7)].list);
31978 					n->objargs = NIL;
31979 					n->comment = (yyvsp[(7) - (7)].str);
31980 					(yyval.node) = (Node *) n;
31981 				}
31982     break;
31983 
31984   case 863:
31985 /* Line 1792 of yacc.c  */
31986 #line 5956 "gram.y"
31987     { (yyval.objtype) = OBJECT_ACCESS_METHOD; }
31988     break;
31989 
31990   case 864:
31991 /* Line 1792 of yacc.c  */
31992 #line 5957 "gram.y"
31993     { (yyval.objtype) = OBJECT_COLUMN; }
31994     break;
31995 
31996   case 865:
31997 /* Line 1792 of yacc.c  */
31998 #line 5958 "gram.y"
31999     { (yyval.objtype) = OBJECT_DATABASE; }
32000     break;
32001 
32002   case 866:
32003 /* Line 1792 of yacc.c  */
32004 #line 5959 "gram.y"
32005     { (yyval.objtype) = OBJECT_SCHEMA; }
32006     break;
32007 
32008   case 867:
32009 /* Line 1792 of yacc.c  */
32010 #line 5960 "gram.y"
32011     { (yyval.objtype) = OBJECT_INDEX; }
32012     break;
32013 
32014   case 868:
32015 /* Line 1792 of yacc.c  */
32016 #line 5961 "gram.y"
32017     { (yyval.objtype) = OBJECT_SEQUENCE; }
32018     break;
32019 
32020   case 869:
32021 /* Line 1792 of yacc.c  */
32022 #line 5962 "gram.y"
32023     { (yyval.objtype) = OBJECT_TABLE; }
32024     break;
32025 
32026   case 870:
32027 /* Line 1792 of yacc.c  */
32028 #line 5963 "gram.y"
32029     { (yyval.objtype) = OBJECT_VIEW; }
32030     break;
32031 
32032   case 871:
32033 /* Line 1792 of yacc.c  */
32034 #line 5964 "gram.y"
32035     { (yyval.objtype) = OBJECT_MATVIEW; }
32036     break;
32037 
32038   case 872:
32039 /* Line 1792 of yacc.c  */
32040 #line 5965 "gram.y"
32041     { (yyval.objtype) = OBJECT_COLLATION; }
32042     break;
32043 
32044   case 873:
32045 /* Line 1792 of yacc.c  */
32046 #line 5966 "gram.y"
32047     { (yyval.objtype) = OBJECT_CONVERSION; }
32048     break;
32049 
32050   case 874:
32051 /* Line 1792 of yacc.c  */
32052 #line 5967 "gram.y"
32053     { (yyval.objtype) = OBJECT_TABLESPACE; }
32054     break;
32055 
32056   case 875:
32057 /* Line 1792 of yacc.c  */
32058 #line 5968 "gram.y"
32059     { (yyval.objtype) = OBJECT_EXTENSION; }
32060     break;
32061 
32062   case 876:
32063 /* Line 1792 of yacc.c  */
32064 #line 5969 "gram.y"
32065     { (yyval.objtype) = OBJECT_ROLE; }
32066     break;
32067 
32068   case 877:
32069 /* Line 1792 of yacc.c  */
32070 #line 5970 "gram.y"
32071     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
32072     break;
32073 
32074   case 878:
32075 /* Line 1792 of yacc.c  */
32076 #line 5971 "gram.y"
32077     { (yyval.objtype) = OBJECT_FOREIGN_SERVER; }
32078     break;
32079 
32080   case 879:
32081 /* Line 1792 of yacc.c  */
32082 #line 5972 "gram.y"
32083     { (yyval.objtype) = OBJECT_FDW; }
32084     break;
32085 
32086   case 880:
32087 /* Line 1792 of yacc.c  */
32088 #line 5973 "gram.y"
32089     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
32090     break;
32091 
32092   case 881:
32093 /* Line 1792 of yacc.c  */
32094 #line 5974 "gram.y"
32095     { (yyval.objtype) = OBJECT_TSCONFIGURATION; }
32096     break;
32097 
32098   case 882:
32099 /* Line 1792 of yacc.c  */
32100 #line 5975 "gram.y"
32101     { (yyval.objtype) = OBJECT_TSDICTIONARY; }
32102     break;
32103 
32104   case 883:
32105 /* Line 1792 of yacc.c  */
32106 #line 5976 "gram.y"
32107     { (yyval.objtype) = OBJECT_TSPARSER; }
32108     break;
32109 
32110   case 884:
32111 /* Line 1792 of yacc.c  */
32112 #line 5977 "gram.y"
32113     { (yyval.objtype) = OBJECT_TSTEMPLATE; }
32114     break;
32115 
32116   case 885:
32117 /* Line 1792 of yacc.c  */
32118 #line 5981 "gram.y"
32119     { (yyval.str) = (yyvsp[(1) - (1)].str); }
32120     break;
32121 
32122   case 886:
32123 /* Line 1792 of yacc.c  */
32124 #line 5982 "gram.y"
32125     { (yyval.str) = NULL; }
32126     break;
32127 
32128   case 887:
32129 /* Line 1792 of yacc.c  */
32130 #line 5998 "gram.y"
32131     {
32132 					SecLabelStmt *n = makeNode(SecLabelStmt);
32133 					n->provider = (yyvsp[(3) - (8)].str);
32134 					n->objtype = (yyvsp[(5) - (8)].objtype);
32135 					n->objname = (yyvsp[(6) - (8)].list);
32136 					n->objargs = NIL;
32137 					n->label = (yyvsp[(8) - (8)].str);
32138 					(yyval.node) = (Node *) n;
32139 				}
32140     break;
32141 
32142   case 888:
32143 /* Line 1792 of yacc.c  */
32144 #line 6009 "gram.y"
32145     {
32146 					SecLabelStmt *n = makeNode(SecLabelStmt);
32147 					n->provider = (yyvsp[(3) - (8)].str);
32148 					n->objtype = OBJECT_TYPE;
32149 					n->objname = list_make1((yyvsp[(6) - (8)].typnam));
32150 					n->objargs = NIL;
32151 					n->label = (yyvsp[(8) - (8)].str);
32152 					(yyval.node) = (Node *) n;
32153 				}
32154     break;
32155 
32156   case 889:
32157 /* Line 1792 of yacc.c  */
32158 #line 6020 "gram.y"
32159     {
32160 					SecLabelStmt *n = makeNode(SecLabelStmt);
32161 					n->provider = (yyvsp[(3) - (8)].str);
32162 					n->objtype = OBJECT_TYPE;
32163 					n->objname = list_make1((yyvsp[(6) - (8)].typnam));
32164 					n->objargs = NIL;
32165 					n->label = (yyvsp[(8) - (8)].str);
32166 					(yyval.node) = (Node *) n;
32167 				}
32168     break;
32169 
32170   case 890:
32171 /* Line 1792 of yacc.c  */
32172 #line 6031 "gram.y"
32173     {
32174 					SecLabelStmt *n = makeNode(SecLabelStmt);
32175 					n->provider = (yyvsp[(3) - (9)].str);
32176 					n->objtype = OBJECT_AGGREGATE;
32177 					n->objname = (yyvsp[(6) - (9)].list);
32178 					n->objargs = extractAggrArgTypes((yyvsp[(7) - (9)].list));
32179 					n->label = (yyvsp[(9) - (9)].str);
32180 					(yyval.node) = (Node *) n;
32181 				}
32182     break;
32183 
32184   case 891:
32185 /* Line 1792 of yacc.c  */
32186 #line 6042 "gram.y"
32187     {
32188 					SecLabelStmt *n = makeNode(SecLabelStmt);
32189 					n->provider = (yyvsp[(3) - (9)].str);
32190 					n->objtype = OBJECT_FUNCTION;
32191 					n->objname = (yyvsp[(6) - (9)].list);
32192 					n->objargs = extractArgTypes((yyvsp[(7) - (9)].list));
32193 					n->label = (yyvsp[(9) - (9)].str);
32194 					(yyval.node) = (Node *) n;
32195 				}
32196     break;
32197 
32198   case 892:
32199 /* Line 1792 of yacc.c  */
32200 #line 6053 "gram.y"
32201     {
32202 					SecLabelStmt *n = makeNode(SecLabelStmt);
32203 					n->provider = (yyvsp[(3) - (9)].str);
32204 					n->objtype = OBJECT_LARGEOBJECT;
32205 					n->objname = list_make1((yyvsp[(7) - (9)].value));
32206 					n->objargs = NIL;
32207 					n->label = (yyvsp[(9) - (9)].str);
32208 					(yyval.node) = (Node *) n;
32209 				}
32210     break;
32211 
32212   case 893:
32213 /* Line 1792 of yacc.c  */
32214 #line 6064 "gram.y"
32215     {
32216 					SecLabelStmt *n = makeNode(SecLabelStmt);
32217 					n->provider = (yyvsp[(3) - (9)].str);
32218 					n->objtype = OBJECT_LANGUAGE;
32219 					n->objname = (yyvsp[(7) - (9)].list);
32220 					n->objargs = NIL;
32221 					n->label = (yyvsp[(9) - (9)].str);
32222 					(yyval.node) = (Node *) n;
32223 				}
32224     break;
32225 
32226   case 894:
32227 /* Line 1792 of yacc.c  */
32228 #line 6075 "gram.y"
32229     { (yyval.str) = (yyvsp[(2) - (2)].str); }
32230     break;
32231 
32232   case 895:
32233 /* Line 1792 of yacc.c  */
32234 #line 6076 "gram.y"
32235     { (yyval.str) = NULL; }
32236     break;
32237 
32238   case 896:
32239 /* Line 1792 of yacc.c  */
32240 #line 6080 "gram.y"
32241     { (yyval.objtype) = OBJECT_COLUMN; }
32242     break;
32243 
32244   case 897:
32245 /* Line 1792 of yacc.c  */
32246 #line 6081 "gram.y"
32247     { (yyval.objtype) = OBJECT_DATABASE; }
32248     break;
32249 
32250   case 898:
32251 /* Line 1792 of yacc.c  */
32252 #line 6082 "gram.y"
32253     { (yyval.objtype) = OBJECT_EVENT_TRIGGER; }
32254     break;
32255 
32256   case 899:
32257 /* Line 1792 of yacc.c  */
32258 #line 6083 "gram.y"
32259     { (yyval.objtype) = OBJECT_FOREIGN_TABLE; }
32260     break;
32261 
32262   case 900:
32263 /* Line 1792 of yacc.c  */
32264 #line 6084 "gram.y"
32265     { (yyval.objtype) = OBJECT_SCHEMA; }
32266     break;
32267 
32268   case 901:
32269 /* Line 1792 of yacc.c  */
32270 #line 6085 "gram.y"
32271     { (yyval.objtype) = OBJECT_SEQUENCE; }
32272     break;
32273 
32274   case 902:
32275 /* Line 1792 of yacc.c  */
32276 #line 6086 "gram.y"
32277     { (yyval.objtype) = OBJECT_TABLE; }
32278     break;
32279 
32280   case 903:
32281 /* Line 1792 of yacc.c  */
32282 #line 6087 "gram.y"
32283     { (yyval.objtype) = OBJECT_ROLE; }
32284     break;
32285 
32286   case 904:
32287 /* Line 1792 of yacc.c  */
32288 #line 6088 "gram.y"
32289     { (yyval.objtype) = OBJECT_TABLESPACE; }
32290     break;
32291 
32292   case 905:
32293 /* Line 1792 of yacc.c  */
32294 #line 6089 "gram.y"
32295     { (yyval.objtype) = OBJECT_VIEW; }
32296     break;
32297 
32298   case 906:
32299 /* Line 1792 of yacc.c  */
32300 #line 6090 "gram.y"
32301     { (yyval.objtype) = OBJECT_MATVIEW; }
32302     break;
32303 
32304   case 907:
32305 /* Line 1792 of yacc.c  */
32306 #line 6093 "gram.y"
32307     { (yyval.str) = (yyvsp[(1) - (1)].str); }
32308     break;
32309 
32310   case 908:
32311 /* Line 1792 of yacc.c  */
32312 #line 6094 "gram.y"
32313     { (yyval.str) = NULL; }
32314     break;
32315 
32316   case 909:
32317 /* Line 1792 of yacc.c  */
32318 #line 6105 "gram.y"
32319     {
32320 					FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (2)].node);
32321 					n->ismove = FALSE;
32322 					(yyval.node) = (Node *)n;
32323 				}
32324     break;
32325 
32326   case 910:
32327 /* Line 1792 of yacc.c  */
32328 #line 6111 "gram.y"
32329     {
32330 					FetchStmt *n = (FetchStmt *) (yyvsp[(2) - (2)].node);
32331 					n->ismove = TRUE;
32332 					(yyval.node) = (Node *)n;
32333 				}
32334     break;
32335 
32336   case 911:
32337 /* Line 1792 of yacc.c  */
32338 #line 6119 "gram.y"
32339     {
32340 					FetchStmt *n = makeNode(FetchStmt);
32341 					n->portalname = (yyvsp[(1) - (1)].str);
32342 					n->direction = FETCH_FORWARD;
32343 					n->howMany = 1;
32344 					(yyval.node) = (Node *)n;
32345 				}
32346     break;
32347 
32348   case 912:
32349 /* Line 1792 of yacc.c  */
32350 #line 6127 "gram.y"
32351     {
32352 					FetchStmt *n = makeNode(FetchStmt);
32353 					n->portalname = (yyvsp[(2) - (2)].str);
32354 					n->direction = FETCH_FORWARD;
32355 					n->howMany = 1;
32356 					(yyval.node) = (Node *)n;
32357 				}
32358     break;
32359 
32360   case 913:
32361 /* Line 1792 of yacc.c  */
32362 #line 6135 "gram.y"
32363     {
32364 					FetchStmt *n = makeNode(FetchStmt);
32365 					n->portalname = (yyvsp[(3) - (3)].str);
32366 					n->direction = FETCH_FORWARD;
32367 					n->howMany = 1;
32368 					(yyval.node) = (Node *)n;
32369 				}
32370     break;
32371 
32372   case 914:
32373 /* Line 1792 of yacc.c  */
32374 #line 6143 "gram.y"
32375     {
32376 					FetchStmt *n = makeNode(FetchStmt);
32377 					n->portalname = (yyvsp[(3) - (3)].str);
32378 					n->direction = FETCH_BACKWARD;
32379 					n->howMany = 1;
32380 					(yyval.node) = (Node *)n;
32381 				}
32382     break;
32383 
32384   case 915:
32385 /* Line 1792 of yacc.c  */
32386 #line 6151 "gram.y"
32387     {
32388 					FetchStmt *n = makeNode(FetchStmt);
32389 					n->portalname = (yyvsp[(3) - (3)].str);
32390 					n->direction = FETCH_ABSOLUTE;
32391 					n->howMany = 1;
32392 					(yyval.node) = (Node *)n;
32393 				}
32394     break;
32395 
32396   case 916:
32397 /* Line 1792 of yacc.c  */
32398 #line 6159 "gram.y"
32399     {
32400 					FetchStmt *n = makeNode(FetchStmt);
32401 					n->portalname = (yyvsp[(3) - (3)].str);
32402 					n->direction = FETCH_ABSOLUTE;
32403 					n->howMany = -1;
32404 					(yyval.node) = (Node *)n;
32405 				}
32406     break;
32407 
32408   case 917:
32409 /* Line 1792 of yacc.c  */
32410 #line 6167 "gram.y"
32411     {
32412 					FetchStmt *n = makeNode(FetchStmt);
32413 					n->portalname = (yyvsp[(4) - (4)].str);
32414 					n->direction = FETCH_ABSOLUTE;
32415 					n->howMany = (yyvsp[(2) - (4)].ival);
32416 					(yyval.node) = (Node *)n;
32417 				}
32418     break;
32419 
32420   case 918:
32421 /* Line 1792 of yacc.c  */
32422 #line 6175 "gram.y"
32423     {
32424 					FetchStmt *n = makeNode(FetchStmt);
32425 					n->portalname = (yyvsp[(4) - (4)].str);
32426 					n->direction = FETCH_RELATIVE;
32427 					n->howMany = (yyvsp[(2) - (4)].ival);
32428 					(yyval.node) = (Node *)n;
32429 				}
32430     break;
32431 
32432   case 919:
32433 /* Line 1792 of yacc.c  */
32434 #line 6183 "gram.y"
32435     {
32436 					FetchStmt *n = makeNode(FetchStmt);
32437 					n->portalname = (yyvsp[(3) - (3)].str);
32438 					n->direction = FETCH_FORWARD;
32439 					n->howMany = (yyvsp[(1) - (3)].ival);
32440 					(yyval.node) = (Node *)n;
32441 				}
32442     break;
32443 
32444   case 920:
32445 /* Line 1792 of yacc.c  */
32446 #line 6191 "gram.y"
32447     {
32448 					FetchStmt *n = makeNode(FetchStmt);
32449 					n->portalname = (yyvsp[(3) - (3)].str);
32450 					n->direction = FETCH_FORWARD;
32451 					n->howMany = FETCH_ALL;
32452 					(yyval.node) = (Node *)n;
32453 				}
32454     break;
32455 
32456   case 921:
32457 /* Line 1792 of yacc.c  */
32458 #line 6199 "gram.y"
32459     {
32460 					FetchStmt *n = makeNode(FetchStmt);
32461 					n->portalname = (yyvsp[(3) - (3)].str);
32462 					n->direction = FETCH_FORWARD;
32463 					n->howMany = 1;
32464 					(yyval.node) = (Node *)n;
32465 				}
32466     break;
32467 
32468   case 922:
32469 /* Line 1792 of yacc.c  */
32470 #line 6207 "gram.y"
32471     {
32472 					FetchStmt *n = makeNode(FetchStmt);
32473 					n->portalname = (yyvsp[(4) - (4)].str);
32474 					n->direction = FETCH_FORWARD;
32475 					n->howMany = (yyvsp[(2) - (4)].ival);
32476 					(yyval.node) = (Node *)n;
32477 				}
32478     break;
32479 
32480   case 923:
32481 /* Line 1792 of yacc.c  */
32482 #line 6215 "gram.y"
32483     {
32484 					FetchStmt *n = makeNode(FetchStmt);
32485 					n->portalname = (yyvsp[(4) - (4)].str);
32486 					n->direction = FETCH_FORWARD;
32487 					n->howMany = FETCH_ALL;
32488 					(yyval.node) = (Node *)n;
32489 				}
32490     break;
32491 
32492   case 924:
32493 /* Line 1792 of yacc.c  */
32494 #line 6223 "gram.y"
32495     {
32496 					FetchStmt *n = makeNode(FetchStmt);
32497 					n->portalname = (yyvsp[(3) - (3)].str);
32498 					n->direction = FETCH_BACKWARD;
32499 					n->howMany = 1;
32500 					(yyval.node) = (Node *)n;
32501 				}
32502     break;
32503 
32504   case 925:
32505 /* Line 1792 of yacc.c  */
32506 #line 6231 "gram.y"
32507     {
32508 					FetchStmt *n = makeNode(FetchStmt);
32509 					n->portalname = (yyvsp[(4) - (4)].str);
32510 					n->direction = FETCH_BACKWARD;
32511 					n->howMany = (yyvsp[(2) - (4)].ival);
32512 					(yyval.node) = (Node *)n;
32513 				}
32514     break;
32515 
32516   case 926:
32517 /* Line 1792 of yacc.c  */
32518 #line 6239 "gram.y"
32519     {
32520 					FetchStmt *n = makeNode(FetchStmt);
32521 					n->portalname = (yyvsp[(4) - (4)].str);
32522 					n->direction = FETCH_BACKWARD;
32523 					n->howMany = FETCH_ALL;
32524 					(yyval.node) = (Node *)n;
32525 				}
32526     break;
32527 
32528   case 927:
32529 /* Line 1792 of yacc.c  */
32530 #line 6248 "gram.y"
32531     {}
32532     break;
32533 
32534   case 928:
32535 /* Line 1792 of yacc.c  */
32536 #line 6249 "gram.y"
32537     {}
32538     break;
32539 
32540   case 929:
32541 /* Line 1792 of yacc.c  */
32542 #line 6252 "gram.y"
32543     {}
32544     break;
32545 
32546   case 930:
32547 /* Line 1792 of yacc.c  */
32548 #line 6253 "gram.y"
32549     {}
32550     break;
32551 
32552   case 931:
32553 /* Line 1792 of yacc.c  */
32554 #line 6265 "gram.y"
32555     {
32556 					GrantStmt *n = makeNode(GrantStmt);
32557 					n->is_grant = true;
32558 					n->privileges = (yyvsp[(2) - (7)].list);
32559 					n->targtype = ((yyvsp[(4) - (7)].privtarget))->targtype;
32560 					n->objtype = ((yyvsp[(4) - (7)].privtarget))->objtype;
32561 					n->objects = ((yyvsp[(4) - (7)].privtarget))->objs;
32562 					n->grantees = (yyvsp[(6) - (7)].list);
32563 					n->grant_option = (yyvsp[(7) - (7)].boolean);
32564 					(yyval.node) = (Node*)n;
32565 				}
32566     break;
32567 
32568   case 932:
32569 /* Line 1792 of yacc.c  */
32570 #line 6281 "gram.y"
32571     {
32572 					GrantStmt *n = makeNode(GrantStmt);
32573 					n->is_grant = false;
32574 					n->grant_option = false;
32575 					n->privileges = (yyvsp[(2) - (7)].list);
32576 					n->targtype = ((yyvsp[(4) - (7)].privtarget))->targtype;
32577 					n->objtype = ((yyvsp[(4) - (7)].privtarget))->objtype;
32578 					n->objects = ((yyvsp[(4) - (7)].privtarget))->objs;
32579 					n->grantees = (yyvsp[(6) - (7)].list);
32580 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
32581 					(yyval.node) = (Node *)n;
32582 				}
32583     break;
32584 
32585   case 933:
32586 /* Line 1792 of yacc.c  */
32587 #line 6295 "gram.y"
32588     {
32589 					GrantStmt *n = makeNode(GrantStmt);
32590 					n->is_grant = false;
32591 					n->grant_option = true;
32592 					n->privileges = (yyvsp[(5) - (10)].list);
32593 					n->targtype = ((yyvsp[(7) - (10)].privtarget))->targtype;
32594 					n->objtype = ((yyvsp[(7) - (10)].privtarget))->objtype;
32595 					n->objects = ((yyvsp[(7) - (10)].privtarget))->objs;
32596 					n->grantees = (yyvsp[(9) - (10)].list);
32597 					n->behavior = (yyvsp[(10) - (10)].dbehavior);
32598 					(yyval.node) = (Node *)n;
32599 				}
32600     break;
32601 
32602   case 934:
32603 /* Line 1792 of yacc.c  */
32604 #line 6320 "gram.y"
32605     { (yyval.list) = (yyvsp[(1) - (1)].list); }
32606     break;
32607 
32608   case 935:
32609 /* Line 1792 of yacc.c  */
32610 #line 6322 "gram.y"
32611     { (yyval.list) = NIL; }
32612     break;
32613 
32614   case 936:
32615 /* Line 1792 of yacc.c  */
32616 #line 6324 "gram.y"
32617     { (yyval.list) = NIL; }
32618     break;
32619 
32620   case 937:
32621 /* Line 1792 of yacc.c  */
32622 #line 6326 "gram.y"
32623     {
32624 					AccessPriv *n = makeNode(AccessPriv);
32625 					n->priv_name = NULL;
32626 					n->cols = (yyvsp[(3) - (4)].list);
32627 					(yyval.list) = list_make1(n);
32628 				}
32629     break;
32630 
32631   case 938:
32632 /* Line 1792 of yacc.c  */
32633 #line 6333 "gram.y"
32634     {
32635 					AccessPriv *n = makeNode(AccessPriv);
32636 					n->priv_name = NULL;
32637 					n->cols = (yyvsp[(4) - (5)].list);
32638 					(yyval.list) = list_make1(n);
32639 				}
32640     break;
32641 
32642   case 939:
32643 /* Line 1792 of yacc.c  */
32644 #line 6341 "gram.y"
32645     { (yyval.list) = list_make1((yyvsp[(1) - (1)].accesspriv)); }
32646     break;
32647 
32648   case 940:
32649 /* Line 1792 of yacc.c  */
32650 #line 6342 "gram.y"
32651     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].accesspriv)); }
32652     break;
32653 
32654   case 941:
32655 /* Line 1792 of yacc.c  */
32656 #line 6346 "gram.y"
32657     {
32658 				AccessPriv *n = makeNode(AccessPriv);
32659 				n->priv_name = pstrdup((yyvsp[(1) - (2)].keyword));
32660 				n->cols = (yyvsp[(2) - (2)].list);
32661 				(yyval.accesspriv) = n;
32662 			}
32663     break;
32664 
32665   case 942:
32666 /* Line 1792 of yacc.c  */
32667 #line 6353 "gram.y"
32668     {
32669 				AccessPriv *n = makeNode(AccessPriv);
32670 				n->priv_name = pstrdup((yyvsp[(1) - (2)].keyword));
32671 				n->cols = (yyvsp[(2) - (2)].list);
32672 				(yyval.accesspriv) = n;
32673 			}
32674     break;
32675 
32676   case 943:
32677 /* Line 1792 of yacc.c  */
32678 #line 6360 "gram.y"
32679     {
32680 				AccessPriv *n = makeNode(AccessPriv);
32681 				n->priv_name = pstrdup((yyvsp[(1) - (2)].keyword));
32682 				n->cols = (yyvsp[(2) - (2)].list);
32683 				(yyval.accesspriv) = n;
32684 			}
32685     break;
32686 
32687   case 944:
32688 /* Line 1792 of yacc.c  */
32689 #line 6367 "gram.y"
32690     {
32691 				AccessPriv *n = makeNode(AccessPriv);
32692 				n->priv_name = (yyvsp[(1) - (2)].str);
32693 				n->cols = (yyvsp[(2) - (2)].list);
32694 				(yyval.accesspriv) = n;
32695 			}
32696     break;
32697 
32698   case 945:
32699 /* Line 1792 of yacc.c  */
32700 #line 6381 "gram.y"
32701     {
32702 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32703 					n->targtype = ACL_TARGET_OBJECT;
32704 					n->objtype = ACL_OBJECT_RELATION;
32705 					n->objs = (yyvsp[(1) - (1)].list);
32706 					(yyval.privtarget) = n;
32707 				}
32708     break;
32709 
32710   case 946:
32711 /* Line 1792 of yacc.c  */
32712 #line 6389 "gram.y"
32713     {
32714 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32715 					n->targtype = ACL_TARGET_OBJECT;
32716 					n->objtype = ACL_OBJECT_RELATION;
32717 					n->objs = (yyvsp[(2) - (2)].list);
32718 					(yyval.privtarget) = n;
32719 				}
32720     break;
32721 
32722   case 947:
32723 /* Line 1792 of yacc.c  */
32724 #line 6397 "gram.y"
32725     {
32726 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32727 					n->targtype = ACL_TARGET_OBJECT;
32728 					n->objtype = ACL_OBJECT_SEQUENCE;
32729 					n->objs = (yyvsp[(2) - (2)].list);
32730 					(yyval.privtarget) = n;
32731 				}
32732     break;
32733 
32734   case 948:
32735 /* Line 1792 of yacc.c  */
32736 #line 6405 "gram.y"
32737     {
32738 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32739 					n->targtype = ACL_TARGET_OBJECT;
32740 					n->objtype = ACL_OBJECT_FDW;
32741 					n->objs = (yyvsp[(4) - (4)].list);
32742 					(yyval.privtarget) = n;
32743 				}
32744     break;
32745 
32746   case 949:
32747 /* Line 1792 of yacc.c  */
32748 #line 6413 "gram.y"
32749     {
32750 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32751 					n->targtype = ACL_TARGET_OBJECT;
32752 					n->objtype = ACL_OBJECT_FOREIGN_SERVER;
32753 					n->objs = (yyvsp[(3) - (3)].list);
32754 					(yyval.privtarget) = n;
32755 				}
32756     break;
32757 
32758   case 950:
32759 /* Line 1792 of yacc.c  */
32760 #line 6421 "gram.y"
32761     {
32762 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32763 					n->targtype = ACL_TARGET_OBJECT;
32764 					n->objtype = ACL_OBJECT_FUNCTION;
32765 					n->objs = (yyvsp[(2) - (2)].list);
32766 					(yyval.privtarget) = n;
32767 				}
32768     break;
32769 
32770   case 951:
32771 /* Line 1792 of yacc.c  */
32772 #line 6429 "gram.y"
32773     {
32774 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32775 					n->targtype = ACL_TARGET_OBJECT;
32776 					n->objtype = ACL_OBJECT_DATABASE;
32777 					n->objs = (yyvsp[(2) - (2)].list);
32778 					(yyval.privtarget) = n;
32779 				}
32780     break;
32781 
32782   case 952:
32783 /* Line 1792 of yacc.c  */
32784 #line 6437 "gram.y"
32785     {
32786 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32787 					n->targtype = ACL_TARGET_OBJECT;
32788 					n->objtype = ACL_OBJECT_DOMAIN;
32789 					n->objs = (yyvsp[(2) - (2)].list);
32790 					(yyval.privtarget) = n;
32791 				}
32792     break;
32793 
32794   case 953:
32795 /* Line 1792 of yacc.c  */
32796 #line 6445 "gram.y"
32797     {
32798 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32799 					n->targtype = ACL_TARGET_OBJECT;
32800 					n->objtype = ACL_OBJECT_LANGUAGE;
32801 					n->objs = (yyvsp[(2) - (2)].list);
32802 					(yyval.privtarget) = n;
32803 				}
32804     break;
32805 
32806   case 954:
32807 /* Line 1792 of yacc.c  */
32808 #line 6453 "gram.y"
32809     {
32810 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32811 					n->targtype = ACL_TARGET_OBJECT;
32812 					n->objtype = ACL_OBJECT_LARGEOBJECT;
32813 					n->objs = (yyvsp[(3) - (3)].list);
32814 					(yyval.privtarget) = n;
32815 				}
32816     break;
32817 
32818   case 955:
32819 /* Line 1792 of yacc.c  */
32820 #line 6461 "gram.y"
32821     {
32822 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32823 					n->targtype = ACL_TARGET_OBJECT;
32824 					n->objtype = ACL_OBJECT_NAMESPACE;
32825 					n->objs = (yyvsp[(2) - (2)].list);
32826 					(yyval.privtarget) = n;
32827 				}
32828     break;
32829 
32830   case 956:
32831 /* Line 1792 of yacc.c  */
32832 #line 6469 "gram.y"
32833     {
32834 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32835 					n->targtype = ACL_TARGET_OBJECT;
32836 					n->objtype = ACL_OBJECT_TABLESPACE;
32837 					n->objs = (yyvsp[(2) - (2)].list);
32838 					(yyval.privtarget) = n;
32839 				}
32840     break;
32841 
32842   case 957:
32843 /* Line 1792 of yacc.c  */
32844 #line 6477 "gram.y"
32845     {
32846 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32847 					n->targtype = ACL_TARGET_OBJECT;
32848 					n->objtype = ACL_OBJECT_TYPE;
32849 					n->objs = (yyvsp[(2) - (2)].list);
32850 					(yyval.privtarget) = n;
32851 				}
32852     break;
32853 
32854   case 958:
32855 /* Line 1792 of yacc.c  */
32856 #line 6485 "gram.y"
32857     {
32858 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32859 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
32860 					n->objtype = ACL_OBJECT_RELATION;
32861 					n->objs = (yyvsp[(5) - (5)].list);
32862 					(yyval.privtarget) = n;
32863 				}
32864     break;
32865 
32866   case 959:
32867 /* Line 1792 of yacc.c  */
32868 #line 6493 "gram.y"
32869     {
32870 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32871 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
32872 					n->objtype = ACL_OBJECT_SEQUENCE;
32873 					n->objs = (yyvsp[(5) - (5)].list);
32874 					(yyval.privtarget) = n;
32875 				}
32876     break;
32877 
32878   case 960:
32879 /* Line 1792 of yacc.c  */
32880 #line 6501 "gram.y"
32881     {
32882 					PrivTarget *n = (PrivTarget *) palloc(sizeof(PrivTarget));
32883 					n->targtype = ACL_TARGET_ALL_IN_SCHEMA;
32884 					n->objtype = ACL_OBJECT_FUNCTION;
32885 					n->objs = (yyvsp[(5) - (5)].list);
32886 					(yyval.privtarget) = n;
32887 				}
32888     break;
32889 
32890   case 961:
32891 /* Line 1792 of yacc.c  */
32892 #line 6512 "gram.y"
32893     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
32894     break;
32895 
32896   case 962:
32897 /* Line 1792 of yacc.c  */
32898 #line 6513 "gram.y"
32899     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
32900     break;
32901 
32902   case 963:
32903 /* Line 1792 of yacc.c  */
32904 #line 6517 "gram.y"
32905     { (yyval.node) = (yyvsp[(1) - (1)].node); }
32906     break;
32907 
32908   case 964:
32909 /* Line 1792 of yacc.c  */
32910 #line 6518 "gram.y"
32911     { (yyval.node) = (yyvsp[(2) - (2)].node); }
32912     break;
32913 
32914   case 965:
32915 /* Line 1792 of yacc.c  */
32916 #line 6523 "gram.y"
32917     { (yyval.boolean) = TRUE; }
32918     break;
32919 
32920   case 966:
32921 /* Line 1792 of yacc.c  */
32922 #line 6524 "gram.y"
32923     { (yyval.boolean) = FALSE; }
32924     break;
32925 
32926   case 967:
32927 /* Line 1792 of yacc.c  */
32928 #line 6528 "gram.y"
32929     { (yyval.list) = list_make1((yyvsp[(1) - (1)].funwithargs)); }
32930     break;
32931 
32932   case 968:
32933 /* Line 1792 of yacc.c  */
32934 #line 6530 "gram.y"
32935     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].funwithargs)); }
32936     break;
32937 
32938   case 969:
32939 /* Line 1792 of yacc.c  */
32940 #line 6535 "gram.y"
32941     {
32942 					FuncWithArgs *n = makeNode(FuncWithArgs);
32943 					n->funcname = (yyvsp[(1) - (2)].list);
32944 					n->funcargs = extractArgTypes((yyvsp[(2) - (2)].list));
32945 					(yyval.funwithargs) = n;
32946 				}
32947     break;
32948 
32949   case 970:
32950 /* Line 1792 of yacc.c  */
32951 #line 6551 "gram.y"
32952     {
32953 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
32954 					n->is_grant = true;
32955 					n->granted_roles = (yyvsp[(2) - (6)].list);
32956 					n->grantee_roles = (yyvsp[(4) - (6)].list);
32957 					n->admin_opt = (yyvsp[(5) - (6)].boolean);
32958 					n->grantor = (yyvsp[(6) - (6)].node);
32959 					(yyval.node) = (Node*)n;
32960 				}
32961     break;
32962 
32963   case 971:
32964 /* Line 1792 of yacc.c  */
32965 #line 6564 "gram.y"
32966     {
32967 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
32968 					n->is_grant = false;
32969 					n->admin_opt = false;
32970 					n->granted_roles = (yyvsp[(2) - (6)].list);
32971 					n->grantee_roles = (yyvsp[(4) - (6)].list);
32972 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
32973 					(yyval.node) = (Node*)n;
32974 				}
32975     break;
32976 
32977   case 972:
32978 /* Line 1792 of yacc.c  */
32979 #line 6574 "gram.y"
32980     {
32981 					GrantRoleStmt *n = makeNode(GrantRoleStmt);
32982 					n->is_grant = false;
32983 					n->admin_opt = true;
32984 					n->granted_roles = (yyvsp[(5) - (9)].list);
32985 					n->grantee_roles = (yyvsp[(7) - (9)].list);
32986 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
32987 					(yyval.node) = (Node*)n;
32988 				}
32989     break;
32990 
32991   case 973:
32992 /* Line 1792 of yacc.c  */
32993 #line 6585 "gram.y"
32994     { (yyval.boolean) = TRUE; }
32995     break;
32996 
32997   case 974:
32998 /* Line 1792 of yacc.c  */
32999 #line 6586 "gram.y"
33000     { (yyval.boolean) = FALSE; }
33001     break;
33002 
33003   case 975:
33004 /* Line 1792 of yacc.c  */
33005 #line 6589 "gram.y"
33006     { (yyval.node) = (yyvsp[(3) - (3)].node); }
33007     break;
33008 
33009   case 976:
33010 /* Line 1792 of yacc.c  */
33011 #line 6590 "gram.y"
33012     { (yyval.node) = NULL; }
33013     break;
33014 
33015   case 977:
33016 /* Line 1792 of yacc.c  */
33017 #line 6601 "gram.y"
33018     {
33019 					AlterDefaultPrivilegesStmt *n = makeNode(AlterDefaultPrivilegesStmt);
33020 					n->options = (yyvsp[(4) - (5)].list);
33021 					n->action = (GrantStmt *) (yyvsp[(5) - (5)].node);
33022 					(yyval.node) = (Node*)n;
33023 				}
33024     break;
33025 
33026   case 978:
33027 /* Line 1792 of yacc.c  */
33028 #line 6610 "gram.y"
33029     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
33030     break;
33031 
33032   case 979:
33033 /* Line 1792 of yacc.c  */
33034 #line 6611 "gram.y"
33035     { (yyval.list) = NIL; }
33036     break;
33037 
33038   case 980:
33039 /* Line 1792 of yacc.c  */
33040 #line 6616 "gram.y"
33041     {
33042 					(yyval.defelt) = makeDefElem("schemas", (Node *)(yyvsp[(3) - (3)].list));
33043 				}
33044     break;
33045 
33046   case 981:
33047 /* Line 1792 of yacc.c  */
33048 #line 6620 "gram.y"
33049     {
33050 					(yyval.defelt) = makeDefElem("roles", (Node *)(yyvsp[(3) - (3)].list));
33051 				}
33052     break;
33053 
33054   case 982:
33055 /* Line 1792 of yacc.c  */
33056 #line 6624 "gram.y"
33057     {
33058 					(yyval.defelt) = makeDefElem("roles", (Node *)(yyvsp[(3) - (3)].list));
33059 				}
33060     break;
33061 
33062   case 983:
33063 /* Line 1792 of yacc.c  */
33064 #line 6636 "gram.y"
33065     {
33066 					GrantStmt *n = makeNode(GrantStmt);
33067 					n->is_grant = true;
33068 					n->privileges = (yyvsp[(2) - (7)].list);
33069 					n->targtype = ACL_TARGET_DEFAULTS;
33070 					n->objtype = (yyvsp[(4) - (7)].ival);
33071 					n->objects = NIL;
33072 					n->grantees = (yyvsp[(6) - (7)].list);
33073 					n->grant_option = (yyvsp[(7) - (7)].boolean);
33074 					(yyval.node) = (Node*)n;
33075 				}
33076     break;
33077 
33078   case 984:
33079 /* Line 1792 of yacc.c  */
33080 #line 6649 "gram.y"
33081     {
33082 					GrantStmt *n = makeNode(GrantStmt);
33083 					n->is_grant = false;
33084 					n->grant_option = false;
33085 					n->privileges = (yyvsp[(2) - (7)].list);
33086 					n->targtype = ACL_TARGET_DEFAULTS;
33087 					n->objtype = (yyvsp[(4) - (7)].ival);
33088 					n->objects = NIL;
33089 					n->grantees = (yyvsp[(6) - (7)].list);
33090 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
33091 					(yyval.node) = (Node *)n;
33092 				}
33093     break;
33094 
33095   case 985:
33096 /* Line 1792 of yacc.c  */
33097 #line 6663 "gram.y"
33098     {
33099 					GrantStmt *n = makeNode(GrantStmt);
33100 					n->is_grant = false;
33101 					n->grant_option = true;
33102 					n->privileges = (yyvsp[(5) - (10)].list);
33103 					n->targtype = ACL_TARGET_DEFAULTS;
33104 					n->objtype = (yyvsp[(7) - (10)].ival);
33105 					n->objects = NIL;
33106 					n->grantees = (yyvsp[(9) - (10)].list);
33107 					n->behavior = (yyvsp[(10) - (10)].dbehavior);
33108 					(yyval.node) = (Node *)n;
33109 				}
33110     break;
33111 
33112   case 986:
33113 /* Line 1792 of yacc.c  */
33114 #line 6678 "gram.y"
33115     { (yyval.ival) = ACL_OBJECT_RELATION; }
33116     break;
33117 
33118   case 987:
33119 /* Line 1792 of yacc.c  */
33120 #line 6679 "gram.y"
33121     { (yyval.ival) = ACL_OBJECT_FUNCTION; }
33122     break;
33123 
33124   case 988:
33125 /* Line 1792 of yacc.c  */
33126 #line 6680 "gram.y"
33127     { (yyval.ival) = ACL_OBJECT_SEQUENCE; }
33128     break;
33129 
33130   case 989:
33131 /* Line 1792 of yacc.c  */
33132 #line 6681 "gram.y"
33133     { (yyval.ival) = ACL_OBJECT_TYPE; }
33134     break;
33135 
33136   case 990:
33137 /* Line 1792 of yacc.c  */
33138 #line 6696 "gram.y"
33139     {
33140 					IndexStmt *n = makeNode(IndexStmt);
33141 					n->unique = (yyvsp[(2) - (14)].boolean);
33142 					n->concurrent = (yyvsp[(4) - (14)].boolean);
33143 					n->idxname = (yyvsp[(5) - (14)].str);
33144 					n->relation = (yyvsp[(7) - (14)].range);
33145 					n->accessMethod = (yyvsp[(8) - (14)].str);
33146 					n->indexParams = (yyvsp[(10) - (14)].list);
33147 					n->options = (yyvsp[(12) - (14)].list);
33148 					n->tableSpace = (yyvsp[(13) - (14)].str);
33149 					n->whereClause = (yyvsp[(14) - (14)].node);
33150 					n->excludeOpNames = NIL;
33151 					n->idxcomment = NULL;
33152 					n->indexOid = InvalidOid;
33153 					n->oldNode = InvalidOid;
33154 					n->primary = false;
33155 					n->isconstraint = false;
33156 					n->deferrable = false;
33157 					n->initdeferred = false;
33158 					n->transformed = false;
33159 					n->if_not_exists = false;
33160 					(yyval.node) = (Node *)n;
33161 				}
33162     break;
33163 
33164   case 991:
33165 /* Line 1792 of yacc.c  */
33166 #line 6722 "gram.y"
33167     {
33168 					IndexStmt *n = makeNode(IndexStmt);
33169 					n->unique = (yyvsp[(2) - (17)].boolean);
33170 					n->concurrent = (yyvsp[(4) - (17)].boolean);
33171 					n->idxname = (yyvsp[(8) - (17)].str);
33172 					n->relation = (yyvsp[(10) - (17)].range);
33173 					n->accessMethod = (yyvsp[(11) - (17)].str);
33174 					n->indexParams = (yyvsp[(13) - (17)].list);
33175 					n->options = (yyvsp[(15) - (17)].list);
33176 					n->tableSpace = (yyvsp[(16) - (17)].str);
33177 					n->whereClause = (yyvsp[(17) - (17)].node);
33178 					n->excludeOpNames = NIL;
33179 					n->idxcomment = NULL;
33180 					n->indexOid = InvalidOid;
33181 					n->oldNode = InvalidOid;
33182 					n->primary = false;
33183 					n->isconstraint = false;
33184 					n->deferrable = false;
33185 					n->initdeferred = false;
33186 					n->transformed = false;
33187 					n->if_not_exists = true;
33188 					(yyval.node) = (Node *)n;
33189 				}
33190     break;
33191 
33192   case 992:
33193 /* Line 1792 of yacc.c  */
33194 #line 6748 "gram.y"
33195     { (yyval.boolean) = TRUE; }
33196     break;
33197 
33198   case 993:
33199 /* Line 1792 of yacc.c  */
33200 #line 6749 "gram.y"
33201     { (yyval.boolean) = FALSE; }
33202     break;
33203 
33204   case 994:
33205 /* Line 1792 of yacc.c  */
33206 #line 6753 "gram.y"
33207     { (yyval.boolean) = TRUE; }
33208     break;
33209 
33210   case 995:
33211 /* Line 1792 of yacc.c  */
33212 #line 6754 "gram.y"
33213     { (yyval.boolean) = FALSE; }
33214     break;
33215 
33216   case 996:
33217 /* Line 1792 of yacc.c  */
33218 #line 6758 "gram.y"
33219     { (yyval.str) = (yyvsp[(1) - (1)].str); }
33220     break;
33221 
33222   case 997:
33223 /* Line 1792 of yacc.c  */
33224 #line 6759 "gram.y"
33225     { (yyval.str) = NULL; }
33226     break;
33227 
33228   case 998:
33229 /* Line 1792 of yacc.c  */
33230 #line 6763 "gram.y"
33231     { (yyval.str) = (yyvsp[(2) - (2)].str); }
33232     break;
33233 
33234   case 999:
33235 /* Line 1792 of yacc.c  */
33236 #line 6764 "gram.y"
33237     { (yyval.str) = DEFAULT_INDEX_TYPE; }
33238     break;
33239 
33240   case 1000:
33241 /* Line 1792 of yacc.c  */
33242 #line 6767 "gram.y"
33243     { (yyval.list) = list_make1((yyvsp[(1) - (1)].ielem)); }
33244     break;
33245 
33246   case 1001:
33247 /* Line 1792 of yacc.c  */
33248 #line 6768 "gram.y"
33249     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].ielem)); }
33250     break;
33251 
33252   case 1002:
33253 /* Line 1792 of yacc.c  */
33254 #line 6777 "gram.y"
33255     {
33256 					(yyval.ielem) = makeNode(IndexElem);
33257 					(yyval.ielem)->name = (yyvsp[(1) - (5)].str);
33258 					(yyval.ielem)->expr = NULL;
33259 					(yyval.ielem)->indexcolname = NULL;
33260 					(yyval.ielem)->collation = (yyvsp[(2) - (5)].list);
33261 					(yyval.ielem)->opclass = (yyvsp[(3) - (5)].list);
33262 					(yyval.ielem)->ordering = (yyvsp[(4) - (5)].ival);
33263 					(yyval.ielem)->nulls_ordering = (yyvsp[(5) - (5)].ival);
33264 				}
33265     break;
33266 
33267   case 1003:
33268 /* Line 1792 of yacc.c  */
33269 #line 6788 "gram.y"
33270     {
33271 					(yyval.ielem) = makeNode(IndexElem);
33272 					(yyval.ielem)->name = NULL;
33273 					(yyval.ielem)->expr = (yyvsp[(1) - (5)].node);
33274 					(yyval.ielem)->indexcolname = NULL;
33275 					(yyval.ielem)->collation = (yyvsp[(2) - (5)].list);
33276 					(yyval.ielem)->opclass = (yyvsp[(3) - (5)].list);
33277 					(yyval.ielem)->ordering = (yyvsp[(4) - (5)].ival);
33278 					(yyval.ielem)->nulls_ordering = (yyvsp[(5) - (5)].ival);
33279 				}
33280     break;
33281 
33282   case 1004:
33283 /* Line 1792 of yacc.c  */
33284 #line 6799 "gram.y"
33285     {
33286 					(yyval.ielem) = makeNode(IndexElem);
33287 					(yyval.ielem)->name = NULL;
33288 					(yyval.ielem)->expr = (yyvsp[(2) - (7)].node);
33289 					(yyval.ielem)->indexcolname = NULL;
33290 					(yyval.ielem)->collation = (yyvsp[(4) - (7)].list);
33291 					(yyval.ielem)->opclass = (yyvsp[(5) - (7)].list);
33292 					(yyval.ielem)->ordering = (yyvsp[(6) - (7)].ival);
33293 					(yyval.ielem)->nulls_ordering = (yyvsp[(7) - (7)].ival);
33294 				}
33295     break;
33296 
33297   case 1005:
33298 /* Line 1792 of yacc.c  */
33299 #line 6811 "gram.y"
33300     { (yyval.list) = (yyvsp[(2) - (2)].list); }
33301     break;
33302 
33303   case 1006:
33304 /* Line 1792 of yacc.c  */
33305 #line 6812 "gram.y"
33306     { (yyval.list) = NIL; }
33307     break;
33308 
33309   case 1007:
33310 /* Line 1792 of yacc.c  */
33311 #line 6815 "gram.y"
33312     { (yyval.list) = (yyvsp[(1) - (1)].list); }
33313     break;
33314 
33315   case 1008:
33316 /* Line 1792 of yacc.c  */
33317 #line 6816 "gram.y"
33318     { (yyval.list) = NIL; }
33319     break;
33320 
33321   case 1009:
33322 /* Line 1792 of yacc.c  */
33323 #line 6819 "gram.y"
33324     { (yyval.ival) = SORTBY_ASC; }
33325     break;
33326 
33327   case 1010:
33328 /* Line 1792 of yacc.c  */
33329 #line 6820 "gram.y"
33330     { (yyval.ival) = SORTBY_DESC; }
33331     break;
33332 
33333   case 1011:
33334 /* Line 1792 of yacc.c  */
33335 #line 6821 "gram.y"
33336     { (yyval.ival) = SORTBY_DEFAULT; }
33337     break;
33338 
33339   case 1012:
33340 /* Line 1792 of yacc.c  */
33341 #line 6824 "gram.y"
33342     { (yyval.ival) = SORTBY_NULLS_FIRST; }
33343     break;
33344 
33345   case 1013:
33346 /* Line 1792 of yacc.c  */
33347 #line 6825 "gram.y"
33348     { (yyval.ival) = SORTBY_NULLS_LAST; }
33349     break;
33350 
33351   case 1014:
33352 /* Line 1792 of yacc.c  */
33353 #line 6826 "gram.y"
33354     { (yyval.ival) = SORTBY_NULLS_DEFAULT; }
33355     break;
33356 
33357   case 1015:
33358 /* Line 1792 of yacc.c  */
33359 #line 6844 "gram.y"
33360     {
33361 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
33362 					n->replace = (yyvsp[(2) - (9)].boolean);
33363 					n->funcname = (yyvsp[(4) - (9)].list);
33364 					n->parameters = (yyvsp[(5) - (9)].list);
33365 					n->returnType = (yyvsp[(7) - (9)].typnam);
33366 					n->options = (yyvsp[(8) - (9)].list);
33367 					n->withClause = (yyvsp[(9) - (9)].list);
33368 					(yyval.node) = (Node *)n;
33369 				}
33370     break;
33371 
33372   case 1016:
33373 /* Line 1792 of yacc.c  */
33374 #line 6856 "gram.y"
33375     {
33376 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
33377 					n->replace = (yyvsp[(2) - (12)].boolean);
33378 					n->funcname = (yyvsp[(4) - (12)].list);
33379 					n->parameters = mergeTableFuncParameters((yyvsp[(5) - (12)].list), (yyvsp[(9) - (12)].list));
33380 					n->returnType = TableFuncTypeName((yyvsp[(9) - (12)].list));
33381 					n->returnType->location = (yylsp[(7) - (12)]);
33382 					n->options = (yyvsp[(11) - (12)].list);
33383 					n->withClause = (yyvsp[(12) - (12)].list);
33384 					(yyval.node) = (Node *)n;
33385 				}
33386     break;
33387 
33388   case 1017:
33389 /* Line 1792 of yacc.c  */
33390 #line 6869 "gram.y"
33391     {
33392 					CreateFunctionStmt *n = makeNode(CreateFunctionStmt);
33393 					n->replace = (yyvsp[(2) - (7)].boolean);
33394 					n->funcname = (yyvsp[(4) - (7)].list);
33395 					n->parameters = (yyvsp[(5) - (7)].list);
33396 					n->returnType = NULL;
33397 					n->options = (yyvsp[(6) - (7)].list);
33398 					n->withClause = (yyvsp[(7) - (7)].list);
33399 					(yyval.node) = (Node *)n;
33400 				}
33401     break;
33402 
33403   case 1018:
33404 /* Line 1792 of yacc.c  */
33405 #line 6882 "gram.y"
33406     { (yyval.boolean) = TRUE; }
33407     break;
33408 
33409   case 1019:
33410 /* Line 1792 of yacc.c  */
33411 #line 6883 "gram.y"
33412     { (yyval.boolean) = FALSE; }
33413     break;
33414 
33415   case 1020:
33416 /* Line 1792 of yacc.c  */
33417 #line 6886 "gram.y"
33418     { (yyval.list) = (yyvsp[(2) - (3)].list); }
33419     break;
33420 
33421   case 1021:
33422 /* Line 1792 of yacc.c  */
33423 #line 6887 "gram.y"
33424     { (yyval.list) = NIL; }
33425     break;
33426 
33427   case 1022:
33428 /* Line 1792 of yacc.c  */
33429 #line 6891 "gram.y"
33430     { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); }
33431     break;
33432 
33433   case 1023:
33434 /* Line 1792 of yacc.c  */
33435 #line 6892 "gram.y"
33436     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); }
33437     break;
33438 
33439   case 1024:
33440 /* Line 1792 of yacc.c  */
33441 #line 6900 "gram.y"
33442     { (yyval.list) = (yyvsp[(2) - (3)].list); }
33443     break;
33444 
33445   case 1025:
33446 /* Line 1792 of yacc.c  */
33447 #line 6901 "gram.y"
33448     { (yyval.list) = NIL; }
33449     break;
33450 
33451   case 1026:
33452 /* Line 1792 of yacc.c  */
33453 #line 6905 "gram.y"
33454     { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); }
33455     break;
33456 
33457   case 1027:
33458 /* Line 1792 of yacc.c  */
33459 #line 6907 "gram.y"
33460     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); }
33461     break;
33462 
33463   case 1028:
33464 /* Line 1792 of yacc.c  */
33465 #line 6922 "gram.y"
33466     {
33467 					FunctionParameter *n = makeNode(FunctionParameter);
33468 					n->name = (yyvsp[(2) - (3)].str);
33469 					n->argType = (yyvsp[(3) - (3)].typnam);
33470 					n->mode = (yyvsp[(1) - (3)].fun_param_mode);
33471 					n->defexpr = NULL;
33472 					(yyval.fun_param) = n;
33473 				}
33474     break;
33475 
33476   case 1029:
33477 /* Line 1792 of yacc.c  */
33478 #line 6931 "gram.y"
33479     {
33480 					FunctionParameter *n = makeNode(FunctionParameter);
33481 					n->name = (yyvsp[(1) - (3)].str);
33482 					n->argType = (yyvsp[(3) - (3)].typnam);
33483 					n->mode = (yyvsp[(2) - (3)].fun_param_mode);
33484 					n->defexpr = NULL;
33485 					(yyval.fun_param) = n;
33486 				}
33487     break;
33488 
33489   case 1030:
33490 /* Line 1792 of yacc.c  */
33491 #line 6940 "gram.y"
33492     {
33493 					FunctionParameter *n = makeNode(FunctionParameter);
33494 					n->name = (yyvsp[(1) - (2)].str);
33495 					n->argType = (yyvsp[(2) - (2)].typnam);
33496 					n->mode = FUNC_PARAM_IN;
33497 					n->defexpr = NULL;
33498 					(yyval.fun_param) = n;
33499 				}
33500     break;
33501 
33502   case 1031:
33503 /* Line 1792 of yacc.c  */
33504 #line 6949 "gram.y"
33505     {
33506 					FunctionParameter *n = makeNode(FunctionParameter);
33507 					n->name = NULL;
33508 					n->argType = (yyvsp[(2) - (2)].typnam);
33509 					n->mode = (yyvsp[(1) - (2)].fun_param_mode);
33510 					n->defexpr = NULL;
33511 					(yyval.fun_param) = n;
33512 				}
33513     break;
33514 
33515   case 1032:
33516 /* Line 1792 of yacc.c  */
33517 #line 6958 "gram.y"
33518     {
33519 					FunctionParameter *n = makeNode(FunctionParameter);
33520 					n->name = NULL;
33521 					n->argType = (yyvsp[(1) - (1)].typnam);
33522 					n->mode = FUNC_PARAM_IN;
33523 					n->defexpr = NULL;
33524 					(yyval.fun_param) = n;
33525 				}
33526     break;
33527 
33528   case 1033:
33529 /* Line 1792 of yacc.c  */
33530 #line 6969 "gram.y"
33531     { (yyval.fun_param_mode) = FUNC_PARAM_IN; }
33532     break;
33533 
33534   case 1034:
33535 /* Line 1792 of yacc.c  */
33536 #line 6970 "gram.y"
33537     { (yyval.fun_param_mode) = FUNC_PARAM_OUT; }
33538     break;
33539 
33540   case 1035:
33541 /* Line 1792 of yacc.c  */
33542 #line 6971 "gram.y"
33543     { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; }
33544     break;
33545 
33546   case 1036:
33547 /* Line 1792 of yacc.c  */
33548 #line 6972 "gram.y"
33549     { (yyval.fun_param_mode) = FUNC_PARAM_INOUT; }
33550     break;
33551 
33552   case 1037:
33553 /* Line 1792 of yacc.c  */
33554 #line 6973 "gram.y"
33555     { (yyval.fun_param_mode) = FUNC_PARAM_VARIADIC; }
33556     break;
33557 
33558   case 1039:
33559 /* Line 1792 of yacc.c  */
33560 #line 6984 "gram.y"
33561     {
33562 					/* We can catch over-specified results here if we want to,
33563 					 * but for now better to silently swallow typmod, etc.
33564 					 * - thomas 2000-03-22
33565 					 */
33566 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
33567 				}
33568     break;
33569 
33570   case 1040:
33571 /* Line 1792 of yacc.c  */
33572 #line 6998 "gram.y"
33573     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
33574     break;
33575 
33576   case 1041:
33577 /* Line 1792 of yacc.c  */
33578 #line 7000 "gram.y"
33579     {
33580 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(1) - (4)].str)), (yyvsp[(2) - (4)].list)));
33581 					(yyval.typnam)->pct_type = true;
33582 					(yyval.typnam)->location = (yylsp[(1) - (4)]);
33583 				}
33584     break;
33585 
33586   case 1042:
33587 /* Line 1792 of yacc.c  */
33588 #line 7006 "gram.y"
33589     {
33590 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(2) - (5)].str)), (yyvsp[(3) - (5)].list)));
33591 					(yyval.typnam)->pct_type = true;
33592 					(yyval.typnam)->setof = TRUE;
33593 					(yyval.typnam)->location = (yylsp[(2) - (5)]);
33594 				}
33595     break;
33596 
33597   case 1043:
33598 /* Line 1792 of yacc.c  */
33599 #line 7016 "gram.y"
33600     {
33601 					(yyval.fun_param) = (yyvsp[(1) - (1)].fun_param);
33602 				}
33603     break;
33604 
33605   case 1044:
33606 /* Line 1792 of yacc.c  */
33607 #line 7020 "gram.y"
33608     {
33609 					(yyval.fun_param) = (yyvsp[(1) - (3)].fun_param);
33610 					(yyval.fun_param)->defexpr = (yyvsp[(3) - (3)].node);
33611 				}
33612     break;
33613 
33614   case 1045:
33615 /* Line 1792 of yacc.c  */
33616 #line 7025 "gram.y"
33617     {
33618 					(yyval.fun_param) = (yyvsp[(1) - (3)].fun_param);
33619 					(yyval.fun_param)->defexpr = (yyvsp[(3) - (3)].node);
33620 				}
33621     break;
33622 
33623   case 1046:
33624 /* Line 1792 of yacc.c  */
33625 #line 7033 "gram.y"
33626     {
33627 					if (!((yyvsp[(1) - (1)].fun_param)->mode == FUNC_PARAM_IN ||
33628 						  (yyvsp[(1) - (1)].fun_param)->mode == FUNC_PARAM_VARIADIC))
33629 						ereport(ERROR,
33630 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
33631 								 errmsg("aggregates cannot have output arguments"),
33632 								 parser_errposition((yylsp[(1) - (1)]))));
33633 					(yyval.fun_param) = (yyvsp[(1) - (1)].fun_param);
33634 				}
33635     break;
33636 
33637   case 1047:
33638 /* Line 1792 of yacc.c  */
33639 #line 7074 "gram.y"
33640     {
33641 					(yyval.list) = list_make2(NIL, makeInteger(-1));
33642 				}
33643     break;
33644 
33645   case 1048:
33646 /* Line 1792 of yacc.c  */
33647 #line 7078 "gram.y"
33648     {
33649 					(yyval.list) = list_make2((yyvsp[(2) - (3)].list), makeInteger(-1));
33650 				}
33651     break;
33652 
33653   case 1049:
33654 /* Line 1792 of yacc.c  */
33655 #line 7082 "gram.y"
33656     {
33657 					(yyval.list) = list_make2((yyvsp[(4) - (5)].list), makeInteger(0));
33658 				}
33659     break;
33660 
33661   case 1050:
33662 /* Line 1792 of yacc.c  */
33663 #line 7086 "gram.y"
33664     {
33665 					/* this is the only case requiring consistency checking */
33666 					(yyval.list) = makeOrderedSetArgs((yyvsp[(2) - (6)].list), (yyvsp[(5) - (6)].list), yyscanner);
33667 				}
33668     break;
33669 
33670   case 1051:
33671 /* Line 1792 of yacc.c  */
33672 #line 7093 "gram.y"
33673     { (yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param)); }
33674     break;
33675 
33676   case 1052:
33677 /* Line 1792 of yacc.c  */
33678 #line 7094 "gram.y"
33679     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param)); }
33680     break;
33681 
33682   case 1053:
33683 /* Line 1792 of yacc.c  */
33684 #line 7099 "gram.y"
33685     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
33686     break;
33687 
33688   case 1054:
33689 /* Line 1792 of yacc.c  */
33690 #line 7100 "gram.y"
33691     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
33692     break;
33693 
33694   case 1055:
33695 /* Line 1792 of yacc.c  */
33696 #line 7108 "gram.y"
33697     {
33698 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(FALSE));
33699 				}
33700     break;
33701 
33702   case 1056:
33703 /* Line 1792 of yacc.c  */
33704 #line 7112 "gram.y"
33705     {
33706 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(TRUE));
33707 				}
33708     break;
33709 
33710   case 1057:
33711 /* Line 1792 of yacc.c  */
33712 #line 7116 "gram.y"
33713     {
33714 					(yyval.defelt) = makeDefElem("strict", (Node *)makeInteger(TRUE));
33715 				}
33716     break;
33717 
33718   case 1058:
33719 /* Line 1792 of yacc.c  */
33720 #line 7120 "gram.y"
33721     {
33722 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("immutable"));
33723 				}
33724     break;
33725 
33726   case 1059:
33727 /* Line 1792 of yacc.c  */
33728 #line 7124 "gram.y"
33729     {
33730 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("stable"));
33731 				}
33732     break;
33733 
33734   case 1060:
33735 /* Line 1792 of yacc.c  */
33736 #line 7128 "gram.y"
33737     {
33738 					(yyval.defelt) = makeDefElem("volatility", (Node *)makeString("volatile"));
33739 				}
33740     break;
33741 
33742   case 1061:
33743 /* Line 1792 of yacc.c  */
33744 #line 7132 "gram.y"
33745     {
33746 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(TRUE));
33747 				}
33748     break;
33749 
33750   case 1062:
33751 /* Line 1792 of yacc.c  */
33752 #line 7136 "gram.y"
33753     {
33754 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(FALSE));
33755 				}
33756     break;
33757 
33758   case 1063:
33759 /* Line 1792 of yacc.c  */
33760 #line 7140 "gram.y"
33761     {
33762 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(TRUE));
33763 				}
33764     break;
33765 
33766   case 1064:
33767 /* Line 1792 of yacc.c  */
33768 #line 7144 "gram.y"
33769     {
33770 					(yyval.defelt) = makeDefElem("security", (Node *)makeInteger(FALSE));
33771 				}
33772     break;
33773 
33774   case 1065:
33775 /* Line 1792 of yacc.c  */
33776 #line 7148 "gram.y"
33777     {
33778 					(yyval.defelt) = makeDefElem("leakproof", (Node *)makeInteger(TRUE));
33779 				}
33780     break;
33781 
33782   case 1066:
33783 /* Line 1792 of yacc.c  */
33784 #line 7152 "gram.y"
33785     {
33786 					(yyval.defelt) = makeDefElem("leakproof", (Node *)makeInteger(FALSE));
33787 				}
33788     break;
33789 
33790   case 1067:
33791 /* Line 1792 of yacc.c  */
33792 #line 7156 "gram.y"
33793     {
33794 					(yyval.defelt) = makeDefElem("cost", (Node *)(yyvsp[(2) - (2)].value));
33795 				}
33796     break;
33797 
33798   case 1068:
33799 /* Line 1792 of yacc.c  */
33800 #line 7160 "gram.y"
33801     {
33802 					(yyval.defelt) = makeDefElem("rows", (Node *)(yyvsp[(2) - (2)].value));
33803 				}
33804     break;
33805 
33806   case 1069:
33807 /* Line 1792 of yacc.c  */
33808 #line 7164 "gram.y"
33809     {
33810 					/* we abuse the normal content of a DefElem here */
33811 					(yyval.defelt) = makeDefElem("set", (Node *)(yyvsp[(1) - (1)].vsetstmt));
33812 				}
33813     break;
33814 
33815   case 1070:
33816 /* Line 1792 of yacc.c  */
33817 #line 7169 "gram.y"
33818     {
33819 					(yyval.defelt) = makeDefElem("parallel", (Node *)makeString((yyvsp[(2) - (2)].str)));
33820 				}
33821     break;
33822 
33823   case 1071:
33824 /* Line 1792 of yacc.c  */
33825 #line 7176 "gram.y"
33826     {
33827 					(yyval.defelt) = makeDefElem("as", (Node *)(yyvsp[(2) - (2)].list));
33828 				}
33829     break;
33830 
33831   case 1072:
33832 /* Line 1792 of yacc.c  */
33833 #line 7180 "gram.y"
33834     {
33835 					(yyval.defelt) = makeDefElem("language", (Node *)makeString((yyvsp[(2) - (2)].str)));
33836 				}
33837     break;
33838 
33839   case 1073:
33840 /* Line 1792 of yacc.c  */
33841 #line 7184 "gram.y"
33842     {
33843 					(yyval.defelt) = makeDefElem("transform", (Node *)(yyvsp[(2) - (2)].list));
33844 				}
33845     break;
33846 
33847   case 1074:
33848 /* Line 1792 of yacc.c  */
33849 #line 7188 "gram.y"
33850     {
33851 					(yyval.defelt) = makeDefElem("window", (Node *)makeInteger(TRUE));
33852 				}
33853     break;
33854 
33855   case 1075:
33856 /* Line 1792 of yacc.c  */
33857 #line 7192 "gram.y"
33858     {
33859 					(yyval.defelt) = (yyvsp[(1) - (1)].defelt);
33860 				}
33861     break;
33862 
33863   case 1076:
33864 /* Line 1792 of yacc.c  */
33865 #line 7197 "gram.y"
33866     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
33867     break;
33868 
33869   case 1077:
33870 /* Line 1792 of yacc.c  */
33871 #line 7199 "gram.y"
33872     {
33873 					(yyval.list) = list_make2(makeString((yyvsp[(1) - (3)].str)), makeString((yyvsp[(3) - (3)].str)));
33874 				}
33875     break;
33876 
33877   case 1078:
33878 /* Line 1792 of yacc.c  */
33879 #line 7205 "gram.y"
33880     { (yyval.list) = list_make1((yyvsp[(3) - (3)].typnam)); }
33881     break;
33882 
33883   case 1079:
33884 /* Line 1792 of yacc.c  */
33885 #line 7206 "gram.y"
33886     { (yyval.list) = lappend((yyvsp[(1) - (5)].list), (yyvsp[(5) - (5)].typnam)); }
33887     break;
33888 
33889   case 1080:
33890 /* Line 1792 of yacc.c  */
33891 #line 7210 "gram.y"
33892     { (yyval.list) = (yyvsp[(2) - (2)].list); }
33893     break;
33894 
33895   case 1081:
33896 /* Line 1792 of yacc.c  */
33897 #line 7211 "gram.y"
33898     { (yyval.list) = NIL; }
33899     break;
33900 
33901   case 1082:
33902 /* Line 1792 of yacc.c  */
33903 #line 7215 "gram.y"
33904     {
33905 					FunctionParameter *n = makeNode(FunctionParameter);
33906 					n->name = (yyvsp[(1) - (2)].str);
33907 					n->argType = (yyvsp[(2) - (2)].typnam);
33908 					n->mode = FUNC_PARAM_TABLE;
33909 					n->defexpr = NULL;
33910 					(yyval.fun_param) = n;
33911 				}
33912     break;
33913 
33914   case 1083:
33915 /* Line 1792 of yacc.c  */
33916 #line 7227 "gram.y"
33917     {
33918 					(yyval.list) = list_make1((yyvsp[(1) - (1)].fun_param));
33919 				}
33920     break;
33921 
33922   case 1084:
33923 /* Line 1792 of yacc.c  */
33924 #line 7231 "gram.y"
33925     {
33926 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].fun_param));
33927 				}
33928     break;
33929 
33930   case 1085:
33931 /* Line 1792 of yacc.c  */
33932 #line 7246 "gram.y"
33933     {
33934 					AlterFunctionStmt *n = makeNode(AlterFunctionStmt);
33935 					n->func = (yyvsp[(3) - (5)].funwithargs);
33936 					n->actions = (yyvsp[(4) - (5)].list);
33937 					(yyval.node) = (Node *) n;
33938 				}
33939     break;
33940 
33941   case 1086:
33942 /* Line 1792 of yacc.c  */
33943 #line 7256 "gram.y"
33944     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
33945     break;
33946 
33947   case 1087:
33948 /* Line 1792 of yacc.c  */
33949 #line 7257 "gram.y"
33950     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
33951     break;
33952 
33953   case 1090:
33954 /* Line 1792 of yacc.c  */
33955 #line 7279 "gram.y"
33956     {
33957 					DropStmt *n = makeNode(DropStmt);
33958 					n->removeType = OBJECT_FUNCTION;
33959 					n->objects = list_make1((yyvsp[(3) - (5)].list));
33960 					n->arguments = list_make1(extractArgTypes((yyvsp[(4) - (5)].list)));
33961 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
33962 					n->missing_ok = false;
33963 					n->concurrent = false;
33964 					(yyval.node) = (Node *)n;
33965 				}
33966     break;
33967 
33968   case 1091:
33969 /* Line 1792 of yacc.c  */
33970 #line 7290 "gram.y"
33971     {
33972 					DropStmt *n = makeNode(DropStmt);
33973 					n->removeType = OBJECT_FUNCTION;
33974 					n->objects = list_make1((yyvsp[(5) - (7)].list));
33975 					n->arguments = list_make1(extractArgTypes((yyvsp[(6) - (7)].list)));
33976 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
33977 					n->missing_ok = true;
33978 					n->concurrent = false;
33979 					(yyval.node) = (Node *)n;
33980 				}
33981     break;
33982 
33983   case 1092:
33984 /* Line 1792 of yacc.c  */
33985 #line 7304 "gram.y"
33986     {
33987 					DropStmt *n = makeNode(DropStmt);
33988 					n->removeType = OBJECT_AGGREGATE;
33989 					n->objects = list_make1((yyvsp[(3) - (5)].list));
33990 					n->arguments = list_make1(extractAggrArgTypes((yyvsp[(4) - (5)].list)));
33991 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
33992 					n->missing_ok = false;
33993 					n->concurrent = false;
33994 					(yyval.node) = (Node *)n;
33995 				}
33996     break;
33997 
33998   case 1093:
33999 /* Line 1792 of yacc.c  */
34000 #line 7315 "gram.y"
34001     {
34002 					DropStmt *n = makeNode(DropStmt);
34003 					n->removeType = OBJECT_AGGREGATE;
34004 					n->objects = list_make1((yyvsp[(5) - (7)].list));
34005 					n->arguments = list_make1(extractAggrArgTypes((yyvsp[(6) - (7)].list)));
34006 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
34007 					n->missing_ok = true;
34008 					n->concurrent = false;
34009 					(yyval.node) = (Node *)n;
34010 				}
34011     break;
34012 
34013   case 1094:
34014 /* Line 1792 of yacc.c  */
34015 #line 7329 "gram.y"
34016     {
34017 					DropStmt *n = makeNode(DropStmt);
34018 					n->removeType = OBJECT_OPERATOR;
34019 					n->objects = list_make1((yyvsp[(3) - (5)].list));
34020 					n->arguments = list_make1((yyvsp[(4) - (5)].list));
34021 					n->behavior = (yyvsp[(5) - (5)].dbehavior);
34022 					n->missing_ok = false;
34023 					n->concurrent = false;
34024 					(yyval.node) = (Node *)n;
34025 				}
34026     break;
34027 
34028   case 1095:
34029 /* Line 1792 of yacc.c  */
34030 #line 7340 "gram.y"
34031     {
34032 					DropStmt *n = makeNode(DropStmt);
34033 					n->removeType = OBJECT_OPERATOR;
34034 					n->objects = list_make1((yyvsp[(5) - (7)].list));
34035 					n->arguments = list_make1((yyvsp[(6) - (7)].list));
34036 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
34037 					n->missing_ok = true;
34038 					n->concurrent = false;
34039 					(yyval.node) = (Node *)n;
34040 				}
34041     break;
34042 
34043   case 1096:
34044 /* Line 1792 of yacc.c  */
34045 #line 7354 "gram.y"
34046     {
34047 				   ereport(ERROR,
34048 						   (errcode(ERRCODE_SYNTAX_ERROR),
34049 							errmsg("missing argument"),
34050 							errhint("Use NONE to denote the missing argument of a unary operator."),
34051 							parser_errposition((yylsp[(3) - (3)]))));
34052 				}
34053     break;
34054 
34055   case 1097:
34056 /* Line 1792 of yacc.c  */
34057 #line 7362 "gram.y"
34058     { (yyval.list) = list_make2((yyvsp[(2) - (5)].typnam), (yyvsp[(4) - (5)].typnam)); }
34059     break;
34060 
34061   case 1098:
34062 /* Line 1792 of yacc.c  */
34063 #line 7364 "gram.y"
34064     { (yyval.list) = list_make2(NULL, (yyvsp[(4) - (5)].typnam)); }
34065     break;
34066 
34067   case 1099:
34068 /* Line 1792 of yacc.c  */
34069 #line 7366 "gram.y"
34070     { (yyval.list) = list_make2((yyvsp[(2) - (5)].typnam), NULL); }
34071     break;
34072 
34073   case 1100:
34074 /* Line 1792 of yacc.c  */
34075 #line 7371 "gram.y"
34076     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
34077     break;
34078 
34079   case 1101:
34080 /* Line 1792 of yacc.c  */
34081 #line 7373 "gram.y"
34082     { (yyval.list) = lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(3) - (3)].list)); }
34083     break;
34084 
34085   case 1102:
34086 /* Line 1792 of yacc.c  */
34087 #line 7386 "gram.y"
34088     {
34089 					DoStmt *n = makeNode(DoStmt);
34090 					n->args = (yyvsp[(2) - (2)].list);
34091 					(yyval.node) = (Node *)n;
34092 				}
34093     break;
34094 
34095   case 1103:
34096 /* Line 1792 of yacc.c  */
34097 #line 7394 "gram.y"
34098     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
34099     break;
34100 
34101   case 1104:
34102 /* Line 1792 of yacc.c  */
34103 #line 7395 "gram.y"
34104     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
34105     break;
34106 
34107   case 1105:
34108 /* Line 1792 of yacc.c  */
34109 #line 7400 "gram.y"
34110     {
34111 					(yyval.defelt) = makeDefElem("as", (Node *)makeString((yyvsp[(1) - (1)].str)));
34112 				}
34113     break;
34114 
34115   case 1106:
34116 /* Line 1792 of yacc.c  */
34117 #line 7404 "gram.y"
34118     {
34119 					(yyval.defelt) = makeDefElem("language", (Node *)makeString((yyvsp[(2) - (2)].str)));
34120 				}
34121     break;
34122 
34123   case 1107:
34124 /* Line 1792 of yacc.c  */
34125 #line 7417 "gram.y"
34126     {
34127 					CreateCastStmt *n = makeNode(CreateCastStmt);
34128 					n->sourcetype = (yyvsp[(4) - (11)].typnam);
34129 					n->targettype = (yyvsp[(6) - (11)].typnam);
34130 					n->func = (yyvsp[(10) - (11)].funwithargs);
34131 					n->context = (CoercionContext) (yyvsp[(11) - (11)].ival);
34132 					n->inout = false;
34133 					(yyval.node) = (Node *)n;
34134 				}
34135     break;
34136 
34137   case 1108:
34138 /* Line 1792 of yacc.c  */
34139 #line 7428 "gram.y"
34140     {
34141 					CreateCastStmt *n = makeNode(CreateCastStmt);
34142 					n->sourcetype = (yyvsp[(4) - (10)].typnam);
34143 					n->targettype = (yyvsp[(6) - (10)].typnam);
34144 					n->func = NULL;
34145 					n->context = (CoercionContext) (yyvsp[(10) - (10)].ival);
34146 					n->inout = false;
34147 					(yyval.node) = (Node *)n;
34148 				}
34149     break;
34150 
34151   case 1109:
34152 /* Line 1792 of yacc.c  */
34153 #line 7439 "gram.y"
34154     {
34155 					CreateCastStmt *n = makeNode(CreateCastStmt);
34156 					n->sourcetype = (yyvsp[(4) - (10)].typnam);
34157 					n->targettype = (yyvsp[(6) - (10)].typnam);
34158 					n->func = NULL;
34159 					n->context = (CoercionContext) (yyvsp[(10) - (10)].ival);
34160 					n->inout = true;
34161 					(yyval.node) = (Node *)n;
34162 				}
34163     break;
34164 
34165   case 1110:
34166 /* Line 1792 of yacc.c  */
34167 #line 7450 "gram.y"
34168     { (yyval.ival) = COERCION_IMPLICIT; }
34169     break;
34170 
34171   case 1111:
34172 /* Line 1792 of yacc.c  */
34173 #line 7451 "gram.y"
34174     { (yyval.ival) = COERCION_ASSIGNMENT; }
34175     break;
34176 
34177   case 1112:
34178 /* Line 1792 of yacc.c  */
34179 #line 7452 "gram.y"
34180     { (yyval.ival) = COERCION_EXPLICIT; }
34181     break;
34182 
34183   case 1113:
34184 /* Line 1792 of yacc.c  */
34185 #line 7457 "gram.y"
34186     {
34187 					DropStmt *n = makeNode(DropStmt);
34188 					n->removeType = OBJECT_CAST;
34189 					n->objects = list_make1(list_make1((yyvsp[(5) - (9)].typnam)));
34190 					n->arguments = list_make1(list_make1((yyvsp[(7) - (9)].typnam)));
34191 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
34192 					n->missing_ok = (yyvsp[(3) - (9)].boolean);
34193 					n->concurrent = false;
34194 					(yyval.node) = (Node *)n;
34195 				}
34196     break;
34197 
34198   case 1114:
34199 /* Line 1792 of yacc.c  */
34200 #line 7469 "gram.y"
34201     { (yyval.boolean) = TRUE; }
34202     break;
34203 
34204   case 1115:
34205 /* Line 1792 of yacc.c  */
34206 #line 7470 "gram.y"
34207     { (yyval.boolean) = FALSE; }
34208     break;
34209 
34210   case 1116:
34211 /* Line 1792 of yacc.c  */
34212 #line 7481 "gram.y"
34213     {
34214 					CreateTransformStmt *n = makeNode(CreateTransformStmt);
34215 					n->replace = (yyvsp[(2) - (10)].boolean);
34216 					n->type_name = (yyvsp[(5) - (10)].typnam);
34217 					n->lang = (yyvsp[(7) - (10)].str);
34218 					n->fromsql = linitial((yyvsp[(9) - (10)].list));
34219 					n->tosql = lsecond((yyvsp[(9) - (10)].list));
34220 					(yyval.node) = (Node *)n;
34221 				}
34222     break;
34223 
34224   case 1117:
34225 /* Line 1792 of yacc.c  */
34226 #line 7493 "gram.y"
34227     {
34228 					(yyval.list) = list_make2((yyvsp[(5) - (11)].funwithargs), (yyvsp[(11) - (11)].funwithargs));
34229 				}
34230     break;
34231 
34232   case 1118:
34233 /* Line 1792 of yacc.c  */
34234 #line 7497 "gram.y"
34235     {
34236 					(yyval.list) = list_make2((yyvsp[(11) - (11)].funwithargs), (yyvsp[(5) - (11)].funwithargs));
34237 				}
34238     break;
34239 
34240   case 1119:
34241 /* Line 1792 of yacc.c  */
34242 #line 7501 "gram.y"
34243     {
34244 					(yyval.list) = list_make2((yyvsp[(5) - (5)].funwithargs), NULL);
34245 				}
34246     break;
34247 
34248   case 1120:
34249 /* Line 1792 of yacc.c  */
34250 #line 7505 "gram.y"
34251     {
34252 					(yyval.list) = list_make2(NULL, (yyvsp[(5) - (5)].funwithargs));
34253 				}
34254     break;
34255 
34256   case 1121:
34257 /* Line 1792 of yacc.c  */
34258 #line 7512 "gram.y"
34259     {
34260 					DropStmt *n = makeNode(DropStmt);
34261 					n->removeType = OBJECT_TRANSFORM;
34262 					n->objects = list_make1(list_make1((yyvsp[(5) - (8)].typnam)));
34263 					n->arguments = list_make1(list_make1(makeString((yyvsp[(7) - (8)].str))));
34264 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
34265 					n->missing_ok = (yyvsp[(3) - (8)].boolean);
34266 					(yyval.node) = (Node *)n;
34267 				}
34268     break;
34269 
34270   case 1122:
34271 /* Line 1792 of yacc.c  */
34272 #line 7533 "gram.y"
34273     {
34274 					ReindexStmt *n = makeNode(ReindexStmt);
34275 					n->kind = (yyvsp[(2) - (3)].ival);
34276 					n->relation = (yyvsp[(3) - (3)].range);
34277 					n->name = NULL;
34278 					n->options = 0;
34279 					(yyval.node) = (Node *)n;
34280 				}
34281     break;
34282 
34283   case 1123:
34284 /* Line 1792 of yacc.c  */
34285 #line 7542 "gram.y"
34286     {
34287 					ReindexStmt *n = makeNode(ReindexStmt);
34288 					n->kind = (yyvsp[(2) - (3)].ival);
34289 					n->name = (yyvsp[(3) - (3)].str);
34290 					n->relation = NULL;
34291 					n->options = 0;
34292 					(yyval.node) = (Node *)n;
34293 				}
34294     break;
34295 
34296   case 1124:
34297 /* Line 1792 of yacc.c  */
34298 #line 7551 "gram.y"
34299     {
34300 					ReindexStmt *n = makeNode(ReindexStmt);
34301 					n->kind = (yyvsp[(5) - (6)].ival);
34302 					n->relation = (yyvsp[(6) - (6)].range);
34303 					n->name = NULL;
34304 					n->options = (yyvsp[(3) - (6)].ival);
34305 					(yyval.node) = (Node *)n;
34306 				}
34307     break;
34308 
34309   case 1125:
34310 /* Line 1792 of yacc.c  */
34311 #line 7560 "gram.y"
34312     {
34313 					ReindexStmt *n = makeNode(ReindexStmt);
34314 					n->kind = (yyvsp[(5) - (6)].ival);
34315 					n->name = (yyvsp[(6) - (6)].str);
34316 					n->relation = NULL;
34317 					n->options = (yyvsp[(3) - (6)].ival);
34318 					(yyval.node) = (Node *)n;
34319 				}
34320     break;
34321 
34322   case 1126:
34323 /* Line 1792 of yacc.c  */
34324 #line 7570 "gram.y"
34325     { (yyval.ival) = REINDEX_OBJECT_INDEX; }
34326     break;
34327 
34328   case 1127:
34329 /* Line 1792 of yacc.c  */
34330 #line 7571 "gram.y"
34331     { (yyval.ival) = REINDEX_OBJECT_TABLE; }
34332     break;
34333 
34334   case 1128:
34335 /* Line 1792 of yacc.c  */
34336 #line 7574 "gram.y"
34337     { (yyval.ival) = REINDEX_OBJECT_SCHEMA; }
34338     break;
34339 
34340   case 1129:
34341 /* Line 1792 of yacc.c  */
34342 #line 7575 "gram.y"
34343     { (yyval.ival) = REINDEX_OBJECT_SYSTEM; }
34344     break;
34345 
34346   case 1130:
34347 /* Line 1792 of yacc.c  */
34348 #line 7576 "gram.y"
34349     { (yyval.ival) = REINDEX_OBJECT_DATABASE; }
34350     break;
34351 
34352   case 1131:
34353 /* Line 1792 of yacc.c  */
34354 #line 7579 "gram.y"
34355     { (yyval.ival) = (yyvsp[(1) - (1)].ival); }
34356     break;
34357 
34358   case 1132:
34359 /* Line 1792 of yacc.c  */
34360 #line 7580 "gram.y"
34361     { (yyval.ival) = (yyvsp[(1) - (3)].ival) | (yyvsp[(3) - (3)].ival); }
34362     break;
34363 
34364   case 1133:
34365 /* Line 1792 of yacc.c  */
34366 #line 7583 "gram.y"
34367     { (yyval.ival) = REINDEXOPT_VERBOSE; }
34368     break;
34369 
34370   case 1134:
34371 /* Line 1792 of yacc.c  */
34372 #line 7594 "gram.y"
34373     {
34374 					AlterTableSpaceOptionsStmt *n =
34375 						makeNode(AlterTableSpaceOptionsStmt);
34376 					n->tablespacename = (yyvsp[(3) - (5)].str);
34377 					n->options = (yyvsp[(5) - (5)].list);
34378 					n->isReset = FALSE;
34379 					(yyval.node) = (Node *)n;
34380 				}
34381     break;
34382 
34383   case 1135:
34384 /* Line 1792 of yacc.c  */
34385 #line 7603 "gram.y"
34386     {
34387 					AlterTableSpaceOptionsStmt *n =
34388 						makeNode(AlterTableSpaceOptionsStmt);
34389 					n->tablespacename = (yyvsp[(3) - (5)].str);
34390 					n->options = (yyvsp[(5) - (5)].list);
34391 					n->isReset = TRUE;
34392 					(yyval.node) = (Node *)n;
34393 				}
34394     break;
34395 
34396   case 1136:
34397 /* Line 1792 of yacc.c  */
34398 #line 7620 "gram.y"
34399     {
34400 					RenameStmt *n = makeNode(RenameStmt);
34401 					n->renameType = OBJECT_AGGREGATE;
34402 					n->object = (yyvsp[(3) - (7)].list);
34403 					n->objarg = extractAggrArgTypes((yyvsp[(4) - (7)].list));
34404 					n->newname = (yyvsp[(7) - (7)].str);
34405 					n->missing_ok = false;
34406 					(yyval.node) = (Node *)n;
34407 				}
34408     break;
34409 
34410   case 1137:
34411 /* Line 1792 of yacc.c  */
34412 #line 7630 "gram.y"
34413     {
34414 					RenameStmt *n = makeNode(RenameStmt);
34415 					n->renameType = OBJECT_COLLATION;
34416 					n->object = (yyvsp[(3) - (6)].list);
34417 					n->newname = (yyvsp[(6) - (6)].str);
34418 					n->missing_ok = false;
34419 					(yyval.node) = (Node *)n;
34420 				}
34421     break;
34422 
34423   case 1138:
34424 /* Line 1792 of yacc.c  */
34425 #line 7639 "gram.y"
34426     {
34427 					RenameStmt *n = makeNode(RenameStmt);
34428 					n->renameType = OBJECT_CONVERSION;
34429 					n->object = (yyvsp[(3) - (6)].list);
34430 					n->newname = (yyvsp[(6) - (6)].str);
34431 					n->missing_ok = false;
34432 					(yyval.node) = (Node *)n;
34433 				}
34434     break;
34435 
34436   case 1139:
34437 /* Line 1792 of yacc.c  */
34438 #line 7648 "gram.y"
34439     {
34440 					RenameStmt *n = makeNode(RenameStmt);
34441 					n->renameType = OBJECT_DATABASE;
34442 					n->subname = (yyvsp[(3) - (6)].str);
34443 					n->newname = (yyvsp[(6) - (6)].str);
34444 					n->missing_ok = false;
34445 					(yyval.node) = (Node *)n;
34446 				}
34447     break;
34448 
34449   case 1140:
34450 /* Line 1792 of yacc.c  */
34451 #line 7657 "gram.y"
34452     {
34453 					RenameStmt *n = makeNode(RenameStmt);
34454 					n->renameType = OBJECT_DOMAIN;
34455 					n->object = (yyvsp[(3) - (6)].list);
34456 					n->newname = (yyvsp[(6) - (6)].str);
34457 					n->missing_ok = false;
34458 					(yyval.node) = (Node *)n;
34459 				}
34460     break;
34461 
34462   case 1141:
34463 /* Line 1792 of yacc.c  */
34464 #line 7666 "gram.y"
34465     {
34466 					RenameStmt *n = makeNode(RenameStmt);
34467 					n->renameType = OBJECT_DOMCONSTRAINT;
34468 					n->object = (yyvsp[(3) - (8)].list);
34469 					n->subname = (yyvsp[(6) - (8)].str);
34470 					n->newname = (yyvsp[(8) - (8)].str);
34471 					(yyval.node) = (Node *)n;
34472 				}
34473     break;
34474 
34475   case 1142:
34476 /* Line 1792 of yacc.c  */
34477 #line 7675 "gram.y"
34478     {
34479 					RenameStmt *n = makeNode(RenameStmt);
34480 					n->renameType = OBJECT_FDW;
34481 					n->object = list_make1(makeString((yyvsp[(5) - (8)].str)));
34482 					n->newname = (yyvsp[(8) - (8)].str);
34483 					n->missing_ok = false;
34484 					(yyval.node) = (Node *)n;
34485 				}
34486     break;
34487 
34488   case 1143:
34489 /* Line 1792 of yacc.c  */
34490 #line 7684 "gram.y"
34491     {
34492 					RenameStmt *n = makeNode(RenameStmt);
34493 					n->renameType = OBJECT_FUNCTION;
34494 					n->object = (yyvsp[(3) - (6)].funwithargs)->funcname;
34495 					n->objarg = (yyvsp[(3) - (6)].funwithargs)->funcargs;
34496 					n->newname = (yyvsp[(6) - (6)].str);
34497 					n->missing_ok = false;
34498 					(yyval.node) = (Node *)n;
34499 				}
34500     break;
34501 
34502   case 1144:
34503 /* Line 1792 of yacc.c  */
34504 #line 7694 "gram.y"
34505     {
34506 					RenameStmt *n = makeNode(RenameStmt);
34507 					n->renameType = OBJECT_ROLE;
34508 					n->subname = (yyvsp[(3) - (6)].str);
34509 					n->newname = (yyvsp[(6) - (6)].str);
34510 					n->missing_ok = false;
34511 					(yyval.node) = (Node *)n;
34512 				}
34513     break;
34514 
34515   case 1145:
34516 /* Line 1792 of yacc.c  */
34517 #line 7703 "gram.y"
34518     {
34519 					RenameStmt *n = makeNode(RenameStmt);
34520 					n->renameType = OBJECT_LANGUAGE;
34521 					n->object = list_make1(makeString((yyvsp[(4) - (7)].str)));
34522 					n->newname = (yyvsp[(7) - (7)].str);
34523 					n->missing_ok = false;
34524 					(yyval.node) = (Node *)n;
34525 				}
34526     break;
34527 
34528   case 1146:
34529 /* Line 1792 of yacc.c  */
34530 #line 7712 "gram.y"
34531     {
34532 					RenameStmt *n = makeNode(RenameStmt);
34533 					n->renameType = OBJECT_OPCLASS;
34534 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
34535 					n->newname = (yyvsp[(9) - (9)].str);
34536 					n->missing_ok = false;
34537 					(yyval.node) = (Node *)n;
34538 				}
34539     break;
34540 
34541   case 1147:
34542 /* Line 1792 of yacc.c  */
34543 #line 7721 "gram.y"
34544     {
34545 					RenameStmt *n = makeNode(RenameStmt);
34546 					n->renameType = OBJECT_OPFAMILY;
34547 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
34548 					n->newname = (yyvsp[(9) - (9)].str);
34549 					n->missing_ok = false;
34550 					(yyval.node) = (Node *)n;
34551 				}
34552     break;
34553 
34554   case 1148:
34555 /* Line 1792 of yacc.c  */
34556 #line 7730 "gram.y"
34557     {
34558 					RenameStmt *n = makeNode(RenameStmt);
34559 					n->renameType = OBJECT_POLICY;
34560 					n->relation = (yyvsp[(5) - (8)].range);
34561 					n->subname = (yyvsp[(3) - (8)].str);
34562 					n->newname = (yyvsp[(8) - (8)].str);
34563 					n->missing_ok = false;
34564 					(yyval.node) = (Node *)n;
34565 				}
34566     break;
34567 
34568   case 1149:
34569 /* Line 1792 of yacc.c  */
34570 #line 7740 "gram.y"
34571     {
34572 					RenameStmt *n = makeNode(RenameStmt);
34573 					n->renameType = OBJECT_POLICY;
34574 					n->relation = (yyvsp[(7) - (10)].range);
34575 					n->subname = (yyvsp[(5) - (10)].str);
34576 					n->newname = (yyvsp[(10) - (10)].str);
34577 					n->missing_ok = true;
34578 					(yyval.node) = (Node *)n;
34579 				}
34580     break;
34581 
34582   case 1150:
34583 /* Line 1792 of yacc.c  */
34584 #line 7750 "gram.y"
34585     {
34586 					RenameStmt *n = makeNode(RenameStmt);
34587 					n->renameType = OBJECT_SCHEMA;
34588 					n->subname = (yyvsp[(3) - (6)].str);
34589 					n->newname = (yyvsp[(6) - (6)].str);
34590 					n->missing_ok = false;
34591 					(yyval.node) = (Node *)n;
34592 				}
34593     break;
34594 
34595   case 1151:
34596 /* Line 1792 of yacc.c  */
34597 #line 7759 "gram.y"
34598     {
34599 					RenameStmt *n = makeNode(RenameStmt);
34600 					n->renameType = OBJECT_FOREIGN_SERVER;
34601 					n->object = list_make1(makeString((yyvsp[(3) - (6)].str)));
34602 					n->newname = (yyvsp[(6) - (6)].str);
34603 					n->missing_ok = false;
34604 					(yyval.node) = (Node *)n;
34605 				}
34606     break;
34607 
34608   case 1152:
34609 /* Line 1792 of yacc.c  */
34610 #line 7768 "gram.y"
34611     {
34612 					RenameStmt *n = makeNode(RenameStmt);
34613 					n->renameType = OBJECT_TABLE;
34614 					n->relation = (yyvsp[(3) - (6)].range);
34615 					n->subname = NULL;
34616 					n->newname = (yyvsp[(6) - (6)].str);
34617 					n->missing_ok = false;
34618 					(yyval.node) = (Node *)n;
34619 				}
34620     break;
34621 
34622   case 1153:
34623 /* Line 1792 of yacc.c  */
34624 #line 7778 "gram.y"
34625     {
34626 					RenameStmt *n = makeNode(RenameStmt);
34627 					n->renameType = OBJECT_TABLE;
34628 					n->relation = (yyvsp[(5) - (8)].range);
34629 					n->subname = NULL;
34630 					n->newname = (yyvsp[(8) - (8)].str);
34631 					n->missing_ok = true;
34632 					(yyval.node) = (Node *)n;
34633 				}
34634     break;
34635 
34636   case 1154:
34637 /* Line 1792 of yacc.c  */
34638 #line 7788 "gram.y"
34639     {
34640 					RenameStmt *n = makeNode(RenameStmt);
34641 					n->renameType = OBJECT_SEQUENCE;
34642 					n->relation = (yyvsp[(3) - (6)].range);
34643 					n->subname = NULL;
34644 					n->newname = (yyvsp[(6) - (6)].str);
34645 					n->missing_ok = false;
34646 					(yyval.node) = (Node *)n;
34647 				}
34648     break;
34649 
34650   case 1155:
34651 /* Line 1792 of yacc.c  */
34652 #line 7798 "gram.y"
34653     {
34654 					RenameStmt *n = makeNode(RenameStmt);
34655 					n->renameType = OBJECT_SEQUENCE;
34656 					n->relation = (yyvsp[(5) - (8)].range);
34657 					n->subname = NULL;
34658 					n->newname = (yyvsp[(8) - (8)].str);
34659 					n->missing_ok = true;
34660 					(yyval.node) = (Node *)n;
34661 				}
34662     break;
34663 
34664   case 1156:
34665 /* Line 1792 of yacc.c  */
34666 #line 7808 "gram.y"
34667     {
34668 					RenameStmt *n = makeNode(RenameStmt);
34669 					n->renameType = OBJECT_VIEW;
34670 					n->relation = (yyvsp[(3) - (6)].range);
34671 					n->subname = NULL;
34672 					n->newname = (yyvsp[(6) - (6)].str);
34673 					n->missing_ok = false;
34674 					(yyval.node) = (Node *)n;
34675 				}
34676     break;
34677 
34678   case 1157:
34679 /* Line 1792 of yacc.c  */
34680 #line 7818 "gram.y"
34681     {
34682 					RenameStmt *n = makeNode(RenameStmt);
34683 					n->renameType = OBJECT_VIEW;
34684 					n->relation = (yyvsp[(5) - (8)].range);
34685 					n->subname = NULL;
34686 					n->newname = (yyvsp[(8) - (8)].str);
34687 					n->missing_ok = true;
34688 					(yyval.node) = (Node *)n;
34689 				}
34690     break;
34691 
34692   case 1158:
34693 /* Line 1792 of yacc.c  */
34694 #line 7828 "gram.y"
34695     {
34696 					RenameStmt *n = makeNode(RenameStmt);
34697 					n->renameType = OBJECT_MATVIEW;
34698 					n->relation = (yyvsp[(4) - (7)].range);
34699 					n->subname = NULL;
34700 					n->newname = (yyvsp[(7) - (7)].str);
34701 					n->missing_ok = false;
34702 					(yyval.node) = (Node *)n;
34703 				}
34704     break;
34705 
34706   case 1159:
34707 /* Line 1792 of yacc.c  */
34708 #line 7838 "gram.y"
34709     {
34710 					RenameStmt *n = makeNode(RenameStmt);
34711 					n->renameType = OBJECT_MATVIEW;
34712 					n->relation = (yyvsp[(6) - (9)].range);
34713 					n->subname = NULL;
34714 					n->newname = (yyvsp[(9) - (9)].str);
34715 					n->missing_ok = true;
34716 					(yyval.node) = (Node *)n;
34717 				}
34718     break;
34719 
34720   case 1160:
34721 /* Line 1792 of yacc.c  */
34722 #line 7848 "gram.y"
34723     {
34724 					RenameStmt *n = makeNode(RenameStmt);
34725 					n->renameType = OBJECT_INDEX;
34726 					n->relation = (yyvsp[(3) - (6)].range);
34727 					n->subname = NULL;
34728 					n->newname = (yyvsp[(6) - (6)].str);
34729 					n->missing_ok = false;
34730 					(yyval.node) = (Node *)n;
34731 				}
34732     break;
34733 
34734   case 1161:
34735 /* Line 1792 of yacc.c  */
34736 #line 7858 "gram.y"
34737     {
34738 					RenameStmt *n = makeNode(RenameStmt);
34739 					n->renameType = OBJECT_INDEX;
34740 					n->relation = (yyvsp[(5) - (8)].range);
34741 					n->subname = NULL;
34742 					n->newname = (yyvsp[(8) - (8)].str);
34743 					n->missing_ok = true;
34744 					(yyval.node) = (Node *)n;
34745 				}
34746     break;
34747 
34748   case 1162:
34749 /* Line 1792 of yacc.c  */
34750 #line 7868 "gram.y"
34751     {
34752 					RenameStmt *n = makeNode(RenameStmt);
34753 					n->renameType = OBJECT_FOREIGN_TABLE;
34754 					n->relation = (yyvsp[(4) - (7)].range);
34755 					n->subname = NULL;
34756 					n->newname = (yyvsp[(7) - (7)].str);
34757 					n->missing_ok = false;
34758 					(yyval.node) = (Node *)n;
34759 				}
34760     break;
34761 
34762   case 1163:
34763 /* Line 1792 of yacc.c  */
34764 #line 7878 "gram.y"
34765     {
34766 					RenameStmt *n = makeNode(RenameStmt);
34767 					n->renameType = OBJECT_FOREIGN_TABLE;
34768 					n->relation = (yyvsp[(6) - (9)].range);
34769 					n->subname = NULL;
34770 					n->newname = (yyvsp[(9) - (9)].str);
34771 					n->missing_ok = true;
34772 					(yyval.node) = (Node *)n;
34773 				}
34774     break;
34775 
34776   case 1164:
34777 /* Line 1792 of yacc.c  */
34778 #line 7888 "gram.y"
34779     {
34780 					RenameStmt *n = makeNode(RenameStmt);
34781 					n->renameType = OBJECT_COLUMN;
34782 					n->relationType = OBJECT_TABLE;
34783 					n->relation = (yyvsp[(3) - (8)].range);
34784 					n->subname = (yyvsp[(6) - (8)].str);
34785 					n->newname = (yyvsp[(8) - (8)].str);
34786 					n->missing_ok = false;
34787 					(yyval.node) = (Node *)n;
34788 				}
34789     break;
34790 
34791   case 1165:
34792 /* Line 1792 of yacc.c  */
34793 #line 7899 "gram.y"
34794     {
34795 					RenameStmt *n = makeNode(RenameStmt);
34796 					n->renameType = OBJECT_COLUMN;
34797 					n->relationType = OBJECT_TABLE;
34798 					n->relation = (yyvsp[(5) - (10)].range);
34799 					n->subname = (yyvsp[(8) - (10)].str);
34800 					n->newname = (yyvsp[(10) - (10)].str);
34801 					n->missing_ok = true;
34802 					(yyval.node) = (Node *)n;
34803 				}
34804     break;
34805 
34806   case 1166:
34807 /* Line 1792 of yacc.c  */
34808 #line 7910 "gram.y"
34809     {
34810 					RenameStmt *n = makeNode(RenameStmt);
34811 					n->renameType = OBJECT_COLUMN;
34812 					n->relationType = OBJECT_MATVIEW;
34813 					n->relation = (yyvsp[(4) - (9)].range);
34814 					n->subname = (yyvsp[(7) - (9)].str);
34815 					n->newname = (yyvsp[(9) - (9)].str);
34816 					n->missing_ok = false;
34817 					(yyval.node) = (Node *)n;
34818 				}
34819     break;
34820 
34821   case 1167:
34822 /* Line 1792 of yacc.c  */
34823 #line 7921 "gram.y"
34824     {
34825 					RenameStmt *n = makeNode(RenameStmt);
34826 					n->renameType = OBJECT_COLUMN;
34827 					n->relationType = OBJECT_MATVIEW;
34828 					n->relation = (yyvsp[(6) - (11)].range);
34829 					n->subname = (yyvsp[(9) - (11)].str);
34830 					n->newname = (yyvsp[(11) - (11)].str);
34831 					n->missing_ok = true;
34832 					(yyval.node) = (Node *)n;
34833 				}
34834     break;
34835 
34836   case 1168:
34837 /* Line 1792 of yacc.c  */
34838 #line 7932 "gram.y"
34839     {
34840 					RenameStmt *n = makeNode(RenameStmt);
34841 					n->renameType = OBJECT_TABCONSTRAINT;
34842 					n->relation = (yyvsp[(3) - (8)].range);
34843 					n->subname = (yyvsp[(6) - (8)].str);
34844 					n->newname = (yyvsp[(8) - (8)].str);
34845 					n->missing_ok = false;
34846 					(yyval.node) = (Node *)n;
34847 				}
34848     break;
34849 
34850   case 1169:
34851 /* Line 1792 of yacc.c  */
34852 #line 7942 "gram.y"
34853     {
34854 					RenameStmt *n = makeNode(RenameStmt);
34855 					n->renameType = OBJECT_TABCONSTRAINT;
34856 					n->relation = (yyvsp[(5) - (10)].range);
34857 					n->subname = (yyvsp[(8) - (10)].str);
34858 					n->newname = (yyvsp[(10) - (10)].str);
34859 					n->missing_ok = true;
34860 					(yyval.node) = (Node *)n;
34861 				}
34862     break;
34863 
34864   case 1170:
34865 /* Line 1792 of yacc.c  */
34866 #line 7952 "gram.y"
34867     {
34868 					RenameStmt *n = makeNode(RenameStmt);
34869 					n->renameType = OBJECT_COLUMN;
34870 					n->relationType = OBJECT_FOREIGN_TABLE;
34871 					n->relation = (yyvsp[(4) - (9)].range);
34872 					n->subname = (yyvsp[(7) - (9)].str);
34873 					n->newname = (yyvsp[(9) - (9)].str);
34874 					n->missing_ok = false;
34875 					(yyval.node) = (Node *)n;
34876 				}
34877     break;
34878 
34879   case 1171:
34880 /* Line 1792 of yacc.c  */
34881 #line 7963 "gram.y"
34882     {
34883 					RenameStmt *n = makeNode(RenameStmt);
34884 					n->renameType = OBJECT_COLUMN;
34885 					n->relationType = OBJECT_FOREIGN_TABLE;
34886 					n->relation = (yyvsp[(6) - (11)].range);
34887 					n->subname = (yyvsp[(9) - (11)].str);
34888 					n->newname = (yyvsp[(11) - (11)].str);
34889 					n->missing_ok = true;
34890 					(yyval.node) = (Node *)n;
34891 				}
34892     break;
34893 
34894   case 1172:
34895 /* Line 1792 of yacc.c  */
34896 #line 7974 "gram.y"
34897     {
34898 					RenameStmt *n = makeNode(RenameStmt);
34899 					n->renameType = OBJECT_RULE;
34900 					n->relation = (yyvsp[(5) - (8)].range);
34901 					n->subname = (yyvsp[(3) - (8)].str);
34902 					n->newname = (yyvsp[(8) - (8)].str);
34903 					n->missing_ok = false;
34904 					(yyval.node) = (Node *)n;
34905 				}
34906     break;
34907 
34908   case 1173:
34909 /* Line 1792 of yacc.c  */
34910 #line 7984 "gram.y"
34911     {
34912 					RenameStmt *n = makeNode(RenameStmt);
34913 					n->renameType = OBJECT_TRIGGER;
34914 					n->relation = (yyvsp[(5) - (8)].range);
34915 					n->subname = (yyvsp[(3) - (8)].str);
34916 					n->newname = (yyvsp[(8) - (8)].str);
34917 					n->missing_ok = false;
34918 					(yyval.node) = (Node *)n;
34919 				}
34920     break;
34921 
34922   case 1174:
34923 /* Line 1792 of yacc.c  */
34924 #line 7994 "gram.y"
34925     {
34926 					RenameStmt *n = makeNode(RenameStmt);
34927 					n->renameType = OBJECT_EVENT_TRIGGER;
34928 					n->object = list_make1(makeString((yyvsp[(4) - (7)].str)));
34929 					n->newname = (yyvsp[(7) - (7)].str);
34930 					(yyval.node) = (Node *)n;
34931 				}
34932     break;
34933 
34934   case 1175:
34935 /* Line 1792 of yacc.c  */
34936 #line 8002 "gram.y"
34937     {
34938 					RenameStmt *n = makeNode(RenameStmt);
34939 					n->renameType = OBJECT_ROLE;
34940 					n->subname = (yyvsp[(3) - (6)].str);
34941 					n->newname = (yyvsp[(6) - (6)].str);
34942 					n->missing_ok = false;
34943 					(yyval.node) = (Node *)n;
34944 				}
34945     break;
34946 
34947   case 1176:
34948 /* Line 1792 of yacc.c  */
34949 #line 8011 "gram.y"
34950     {
34951 					RenameStmt *n = makeNode(RenameStmt);
34952 					n->renameType = OBJECT_ROLE;
34953 					n->subname = (yyvsp[(3) - (6)].str);
34954 					n->newname = (yyvsp[(6) - (6)].str);
34955 					n->missing_ok = false;
34956 					(yyval.node) = (Node *)n;
34957 				}
34958     break;
34959 
34960   case 1177:
34961 /* Line 1792 of yacc.c  */
34962 #line 8020 "gram.y"
34963     {
34964 					RenameStmt *n = makeNode(RenameStmt);
34965 					n->renameType = OBJECT_TABLESPACE;
34966 					n->subname = (yyvsp[(3) - (6)].str);
34967 					n->newname = (yyvsp[(6) - (6)].str);
34968 					n->missing_ok = false;
34969 					(yyval.node) = (Node *)n;
34970 				}
34971     break;
34972 
34973   case 1178:
34974 /* Line 1792 of yacc.c  */
34975 #line 8029 "gram.y"
34976     {
34977 					RenameStmt *n = makeNode(RenameStmt);
34978 					n->renameType = OBJECT_TSPARSER;
34979 					n->object = (yyvsp[(5) - (8)].list);
34980 					n->newname = (yyvsp[(8) - (8)].str);
34981 					n->missing_ok = false;
34982 					(yyval.node) = (Node *)n;
34983 				}
34984     break;
34985 
34986   case 1179:
34987 /* Line 1792 of yacc.c  */
34988 #line 8038 "gram.y"
34989     {
34990 					RenameStmt *n = makeNode(RenameStmt);
34991 					n->renameType = OBJECT_TSDICTIONARY;
34992 					n->object = (yyvsp[(5) - (8)].list);
34993 					n->newname = (yyvsp[(8) - (8)].str);
34994 					n->missing_ok = false;
34995 					(yyval.node) = (Node *)n;
34996 				}
34997     break;
34998 
34999   case 1180:
35000 /* Line 1792 of yacc.c  */
35001 #line 8047 "gram.y"
35002     {
35003 					RenameStmt *n = makeNode(RenameStmt);
35004 					n->renameType = OBJECT_TSTEMPLATE;
35005 					n->object = (yyvsp[(5) - (8)].list);
35006 					n->newname = (yyvsp[(8) - (8)].str);
35007 					n->missing_ok = false;
35008 					(yyval.node) = (Node *)n;
35009 				}
35010     break;
35011 
35012   case 1181:
35013 /* Line 1792 of yacc.c  */
35014 #line 8056 "gram.y"
35015     {
35016 					RenameStmt *n = makeNode(RenameStmt);
35017 					n->renameType = OBJECT_TSCONFIGURATION;
35018 					n->object = (yyvsp[(5) - (8)].list);
35019 					n->newname = (yyvsp[(8) - (8)].str);
35020 					n->missing_ok = false;
35021 					(yyval.node) = (Node *)n;
35022 				}
35023     break;
35024 
35025   case 1182:
35026 /* Line 1792 of yacc.c  */
35027 #line 8065 "gram.y"
35028     {
35029 					RenameStmt *n = makeNode(RenameStmt);
35030 					n->renameType = OBJECT_TYPE;
35031 					n->object = (yyvsp[(3) - (6)].list);
35032 					n->newname = (yyvsp[(6) - (6)].str);
35033 					n->missing_ok = false;
35034 					(yyval.node) = (Node *)n;
35035 				}
35036     break;
35037 
35038   case 1183:
35039 /* Line 1792 of yacc.c  */
35040 #line 8074 "gram.y"
35041     {
35042 					RenameStmt *n = makeNode(RenameStmt);
35043 					n->renameType = OBJECT_ATTRIBUTE;
35044 					n->relationType = OBJECT_TYPE;
35045 					n->relation = makeRangeVarFromAnyName((yyvsp[(3) - (9)].list), (yylsp[(3) - (9)]), yyscanner);
35046 					n->subname = (yyvsp[(6) - (9)].str);
35047 					n->newname = (yyvsp[(8) - (9)].str);
35048 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
35049 					n->missing_ok = false;
35050 					(yyval.node) = (Node *)n;
35051 				}
35052     break;
35053 
35054   case 1184:
35055 /* Line 1792 of yacc.c  */
35056 #line 8087 "gram.y"
35057     { (yyval.ival) = COLUMN; }
35058     break;
35059 
35060   case 1185:
35061 /* Line 1792 of yacc.c  */
35062 #line 8088 "gram.y"
35063     { (yyval.ival) = 0; }
35064     break;
35065 
35066   case 1186:
35067 /* Line 1792 of yacc.c  */
35068 #line 8091 "gram.y"
35069     { (yyval.ival) = 1; }
35070     break;
35071 
35072   case 1187:
35073 /* Line 1792 of yacc.c  */
35074 #line 8092 "gram.y"
35075     { (yyval.ival) = 0; }
35076     break;
35077 
35078   case 1188:
35079 /* Line 1792 of yacc.c  */
35080 #line 8103 "gram.y"
35081     {
35082 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
35083 					n->objectType = OBJECT_FUNCTION;
35084 					n->relation = NULL;
35085 					n->objname = (yyvsp[(3) - (7)].funwithargs)->funcname;
35086 					n->objargs = (yyvsp[(3) - (7)].funwithargs)->funcargs;
35087 					n->extname = makeString((yyvsp[(7) - (7)].str));
35088 					(yyval.node) = (Node *)n;
35089 				}
35090     break;
35091 
35092   case 1189:
35093 /* Line 1792 of yacc.c  */
35094 #line 8113 "gram.y"
35095     {
35096 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
35097 					n->objectType = OBJECT_TRIGGER;
35098 					n->relation = (yyvsp[(5) - (9)].range);
35099 					n->objname = list_make1(makeString((yyvsp[(3) - (9)].str)));
35100 					n->objargs = NIL;
35101 					n->extname = makeString((yyvsp[(9) - (9)].str));
35102 					(yyval.node) = (Node *)n;
35103 				}
35104     break;
35105 
35106   case 1190:
35107 /* Line 1792 of yacc.c  */
35108 #line 8123 "gram.y"
35109     {
35110 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
35111 					n->objectType = OBJECT_MATVIEW;
35112 					n->relation = (yyvsp[(4) - (8)].range);
35113 					n->objname = NIL;
35114 					n->objargs = NIL;
35115 					n->extname = makeString((yyvsp[(8) - (8)].str));
35116 					(yyval.node) = (Node *)n;
35117 				}
35118     break;
35119 
35120   case 1191:
35121 /* Line 1792 of yacc.c  */
35122 #line 8133 "gram.y"
35123     {
35124 					AlterObjectDependsStmt *n = makeNode(AlterObjectDependsStmt);
35125 					n->objectType = OBJECT_INDEX;
35126 					n->relation = (yyvsp[(3) - (7)].range);
35127 					n->objname = NIL;
35128 					n->objargs = NIL;
35129 					n->extname = makeString((yyvsp[(7) - (7)].str));
35130 					(yyval.node) = (Node *)n;
35131 				}
35132     break;
35133 
35134   case 1192:
35135 /* Line 1792 of yacc.c  */
35136 #line 8152 "gram.y"
35137     {
35138 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35139 					n->objectType = OBJECT_AGGREGATE;
35140 					n->object = (yyvsp[(3) - (7)].list);
35141 					n->objarg = extractAggrArgTypes((yyvsp[(4) - (7)].list));
35142 					n->newschema = (yyvsp[(7) - (7)].str);
35143 					n->missing_ok = false;
35144 					(yyval.node) = (Node *)n;
35145 				}
35146     break;
35147 
35148   case 1193:
35149 /* Line 1792 of yacc.c  */
35150 #line 8162 "gram.y"
35151     {
35152 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35153 					n->objectType = OBJECT_COLLATION;
35154 					n->object = (yyvsp[(3) - (6)].list);
35155 					n->newschema = (yyvsp[(6) - (6)].str);
35156 					n->missing_ok = false;
35157 					(yyval.node) = (Node *)n;
35158 				}
35159     break;
35160 
35161   case 1194:
35162 /* Line 1792 of yacc.c  */
35163 #line 8171 "gram.y"
35164     {
35165 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35166 					n->objectType = OBJECT_CONVERSION;
35167 					n->object = (yyvsp[(3) - (6)].list);
35168 					n->newschema = (yyvsp[(6) - (6)].str);
35169 					n->missing_ok = false;
35170 					(yyval.node) = (Node *)n;
35171 				}
35172     break;
35173 
35174   case 1195:
35175 /* Line 1792 of yacc.c  */
35176 #line 8180 "gram.y"
35177     {
35178 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35179 					n->objectType = OBJECT_DOMAIN;
35180 					n->object = (yyvsp[(3) - (6)].list);
35181 					n->newschema = (yyvsp[(6) - (6)].str);
35182 					n->missing_ok = false;
35183 					(yyval.node) = (Node *)n;
35184 				}
35185     break;
35186 
35187   case 1196:
35188 /* Line 1792 of yacc.c  */
35189 #line 8189 "gram.y"
35190     {
35191 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35192 					n->objectType = OBJECT_EXTENSION;
35193 					n->object = (yyvsp[(3) - (6)].list);
35194 					n->newschema = (yyvsp[(6) - (6)].str);
35195 					n->missing_ok = false;
35196 					(yyval.node) = (Node *)n;
35197 				}
35198     break;
35199 
35200   case 1197:
35201 /* Line 1792 of yacc.c  */
35202 #line 8198 "gram.y"
35203     {
35204 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35205 					n->objectType = OBJECT_FUNCTION;
35206 					n->object = (yyvsp[(3) - (6)].funwithargs)->funcname;
35207 					n->objarg = (yyvsp[(3) - (6)].funwithargs)->funcargs;
35208 					n->newschema = (yyvsp[(6) - (6)].str);
35209 					n->missing_ok = false;
35210 					(yyval.node) = (Node *)n;
35211 				}
35212     break;
35213 
35214   case 1198:
35215 /* Line 1792 of yacc.c  */
35216 #line 8208 "gram.y"
35217     {
35218 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35219 					n->objectType = OBJECT_OPERATOR;
35220 					n->object = (yyvsp[(3) - (7)].list);
35221 					n->objarg = (yyvsp[(4) - (7)].list);
35222 					n->newschema = (yyvsp[(7) - (7)].str);
35223 					n->missing_ok = false;
35224 					(yyval.node) = (Node *)n;
35225 				}
35226     break;
35227 
35228   case 1199:
35229 /* Line 1792 of yacc.c  */
35230 #line 8218 "gram.y"
35231     {
35232 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35233 					n->objectType = OBJECT_OPCLASS;
35234 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
35235 					n->newschema = (yyvsp[(9) - (9)].str);
35236 					n->missing_ok = false;
35237 					(yyval.node) = (Node *)n;
35238 				}
35239     break;
35240 
35241   case 1200:
35242 /* Line 1792 of yacc.c  */
35243 #line 8227 "gram.y"
35244     {
35245 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35246 					n->objectType = OBJECT_OPFAMILY;
35247 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
35248 					n->newschema = (yyvsp[(9) - (9)].str);
35249 					n->missing_ok = false;
35250 					(yyval.node) = (Node *)n;
35251 				}
35252     break;
35253 
35254   case 1201:
35255 /* Line 1792 of yacc.c  */
35256 #line 8236 "gram.y"
35257     {
35258 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35259 					n->objectType = OBJECT_TABLE;
35260 					n->relation = (yyvsp[(3) - (6)].range);
35261 					n->newschema = (yyvsp[(6) - (6)].str);
35262 					n->missing_ok = false;
35263 					(yyval.node) = (Node *)n;
35264 				}
35265     break;
35266 
35267   case 1202:
35268 /* Line 1792 of yacc.c  */
35269 #line 8245 "gram.y"
35270     {
35271 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35272 					n->objectType = OBJECT_TABLE;
35273 					n->relation = (yyvsp[(5) - (8)].range);
35274 					n->newschema = (yyvsp[(8) - (8)].str);
35275 					n->missing_ok = true;
35276 					(yyval.node) = (Node *)n;
35277 				}
35278     break;
35279 
35280   case 1203:
35281 /* Line 1792 of yacc.c  */
35282 #line 8254 "gram.y"
35283     {
35284 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35285 					n->objectType = OBJECT_TSPARSER;
35286 					n->object = (yyvsp[(5) - (8)].list);
35287 					n->newschema = (yyvsp[(8) - (8)].str);
35288 					n->missing_ok = false;
35289 					(yyval.node) = (Node *)n;
35290 				}
35291     break;
35292 
35293   case 1204:
35294 /* Line 1792 of yacc.c  */
35295 #line 8263 "gram.y"
35296     {
35297 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35298 					n->objectType = OBJECT_TSDICTIONARY;
35299 					n->object = (yyvsp[(5) - (8)].list);
35300 					n->newschema = (yyvsp[(8) - (8)].str);
35301 					n->missing_ok = false;
35302 					(yyval.node) = (Node *)n;
35303 				}
35304     break;
35305 
35306   case 1205:
35307 /* Line 1792 of yacc.c  */
35308 #line 8272 "gram.y"
35309     {
35310 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35311 					n->objectType = OBJECT_TSTEMPLATE;
35312 					n->object = (yyvsp[(5) - (8)].list);
35313 					n->newschema = (yyvsp[(8) - (8)].str);
35314 					n->missing_ok = false;
35315 					(yyval.node) = (Node *)n;
35316 				}
35317     break;
35318 
35319   case 1206:
35320 /* Line 1792 of yacc.c  */
35321 #line 8281 "gram.y"
35322     {
35323 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35324 					n->objectType = OBJECT_TSCONFIGURATION;
35325 					n->object = (yyvsp[(5) - (8)].list);
35326 					n->newschema = (yyvsp[(8) - (8)].str);
35327 					n->missing_ok = false;
35328 					(yyval.node) = (Node *)n;
35329 				}
35330     break;
35331 
35332   case 1207:
35333 /* Line 1792 of yacc.c  */
35334 #line 8290 "gram.y"
35335     {
35336 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35337 					n->objectType = OBJECT_SEQUENCE;
35338 					n->relation = (yyvsp[(3) - (6)].range);
35339 					n->newschema = (yyvsp[(6) - (6)].str);
35340 					n->missing_ok = false;
35341 					(yyval.node) = (Node *)n;
35342 				}
35343     break;
35344 
35345   case 1208:
35346 /* Line 1792 of yacc.c  */
35347 #line 8299 "gram.y"
35348     {
35349 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35350 					n->objectType = OBJECT_SEQUENCE;
35351 					n->relation = (yyvsp[(5) - (8)].range);
35352 					n->newschema = (yyvsp[(8) - (8)].str);
35353 					n->missing_ok = true;
35354 					(yyval.node) = (Node *)n;
35355 				}
35356     break;
35357 
35358   case 1209:
35359 /* Line 1792 of yacc.c  */
35360 #line 8308 "gram.y"
35361     {
35362 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35363 					n->objectType = OBJECT_VIEW;
35364 					n->relation = (yyvsp[(3) - (6)].range);
35365 					n->newschema = (yyvsp[(6) - (6)].str);
35366 					n->missing_ok = false;
35367 					(yyval.node) = (Node *)n;
35368 				}
35369     break;
35370 
35371   case 1210:
35372 /* Line 1792 of yacc.c  */
35373 #line 8317 "gram.y"
35374     {
35375 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35376 					n->objectType = OBJECT_VIEW;
35377 					n->relation = (yyvsp[(5) - (8)].range);
35378 					n->newschema = (yyvsp[(8) - (8)].str);
35379 					n->missing_ok = true;
35380 					(yyval.node) = (Node *)n;
35381 				}
35382     break;
35383 
35384   case 1211:
35385 /* Line 1792 of yacc.c  */
35386 #line 8326 "gram.y"
35387     {
35388 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35389 					n->objectType = OBJECT_MATVIEW;
35390 					n->relation = (yyvsp[(4) - (7)].range);
35391 					n->newschema = (yyvsp[(7) - (7)].str);
35392 					n->missing_ok = false;
35393 					(yyval.node) = (Node *)n;
35394 				}
35395     break;
35396 
35397   case 1212:
35398 /* Line 1792 of yacc.c  */
35399 #line 8335 "gram.y"
35400     {
35401 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35402 					n->objectType = OBJECT_MATVIEW;
35403 					n->relation = (yyvsp[(6) - (9)].range);
35404 					n->newschema = (yyvsp[(9) - (9)].str);
35405 					n->missing_ok = true;
35406 					(yyval.node) = (Node *)n;
35407 				}
35408     break;
35409 
35410   case 1213:
35411 /* Line 1792 of yacc.c  */
35412 #line 8344 "gram.y"
35413     {
35414 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35415 					n->objectType = OBJECT_FOREIGN_TABLE;
35416 					n->relation = (yyvsp[(4) - (7)].range);
35417 					n->newschema = (yyvsp[(7) - (7)].str);
35418 					n->missing_ok = false;
35419 					(yyval.node) = (Node *)n;
35420 				}
35421     break;
35422 
35423   case 1214:
35424 /* Line 1792 of yacc.c  */
35425 #line 8353 "gram.y"
35426     {
35427 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35428 					n->objectType = OBJECT_FOREIGN_TABLE;
35429 					n->relation = (yyvsp[(6) - (9)].range);
35430 					n->newschema = (yyvsp[(9) - (9)].str);
35431 					n->missing_ok = true;
35432 					(yyval.node) = (Node *)n;
35433 				}
35434     break;
35435 
35436   case 1215:
35437 /* Line 1792 of yacc.c  */
35438 #line 8362 "gram.y"
35439     {
35440 					AlterObjectSchemaStmt *n = makeNode(AlterObjectSchemaStmt);
35441 					n->objectType = OBJECT_TYPE;
35442 					n->object = (yyvsp[(3) - (6)].list);
35443 					n->newschema = (yyvsp[(6) - (6)].str);
35444 					n->missing_ok = false;
35445 					(yyval.node) = (Node *)n;
35446 				}
35447     break;
35448 
35449   case 1216:
35450 /* Line 1792 of yacc.c  */
35451 #line 8380 "gram.y"
35452     {
35453 					AlterOperatorStmt *n = makeNode(AlterOperatorStmt);
35454 					n->opername = (yyvsp[(3) - (8)].list);
35455 					n->operargs = (yyvsp[(4) - (8)].list);
35456 					n->options = (yyvsp[(7) - (8)].list);
35457 					(yyval.node) = (Node *)n;
35458 				}
35459     break;
35460 
35461   case 1217:
35462 /* Line 1792 of yacc.c  */
35463 #line 8389 "gram.y"
35464     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
35465     break;
35466 
35467   case 1218:
35468 /* Line 1792 of yacc.c  */
35469 #line 8390 "gram.y"
35470     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
35471     break;
35472 
35473   case 1219:
35474 /* Line 1792 of yacc.c  */
35475 #line 8394 "gram.y"
35476     { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), NULL); }
35477     break;
35478 
35479   case 1220:
35480 /* Line 1792 of yacc.c  */
35481 #line 8396 "gram.y"
35482     { (yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *) (yyvsp[(3) - (3)].node)); }
35483     break;
35484 
35485   case 1221:
35486 /* Line 1792 of yacc.c  */
35487 #line 8406 "gram.y"
35488     {
35489 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35490 					n->objectType = OBJECT_AGGREGATE;
35491 					n->object = (yyvsp[(3) - (7)].list);
35492 					n->objarg = extractAggrArgTypes((yyvsp[(4) - (7)].list));
35493 					n->newowner = (yyvsp[(7) - (7)].node);
35494 					(yyval.node) = (Node *)n;
35495 				}
35496     break;
35497 
35498   case 1222:
35499 /* Line 1792 of yacc.c  */
35500 #line 8415 "gram.y"
35501     {
35502 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35503 					n->objectType = OBJECT_COLLATION;
35504 					n->object = (yyvsp[(3) - (6)].list);
35505 					n->newowner = (yyvsp[(6) - (6)].node);
35506 					(yyval.node) = (Node *)n;
35507 				}
35508     break;
35509 
35510   case 1223:
35511 /* Line 1792 of yacc.c  */
35512 #line 8423 "gram.y"
35513     {
35514 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35515 					n->objectType = OBJECT_CONVERSION;
35516 					n->object = (yyvsp[(3) - (6)].list);
35517 					n->newowner = (yyvsp[(6) - (6)].node);
35518 					(yyval.node) = (Node *)n;
35519 				}
35520     break;
35521 
35522   case 1224:
35523 /* Line 1792 of yacc.c  */
35524 #line 8431 "gram.y"
35525     {
35526 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35527 					n->objectType = OBJECT_DATABASE;
35528 					n->object = list_make1(makeString((yyvsp[(3) - (6)].str)));
35529 					n->newowner = (yyvsp[(6) - (6)].node);
35530 					(yyval.node) = (Node *)n;
35531 				}
35532     break;
35533 
35534   case 1225:
35535 /* Line 1792 of yacc.c  */
35536 #line 8439 "gram.y"
35537     {
35538 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35539 					n->objectType = OBJECT_DOMAIN;
35540 					n->object = (yyvsp[(3) - (6)].list);
35541 					n->newowner = (yyvsp[(6) - (6)].node);
35542 					(yyval.node) = (Node *)n;
35543 				}
35544     break;
35545 
35546   case 1226:
35547 /* Line 1792 of yacc.c  */
35548 #line 8447 "gram.y"
35549     {
35550 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35551 					n->objectType = OBJECT_FUNCTION;
35552 					n->object = (yyvsp[(3) - (6)].funwithargs)->funcname;
35553 					n->objarg = (yyvsp[(3) - (6)].funwithargs)->funcargs;
35554 					n->newowner = (yyvsp[(6) - (6)].node);
35555 					(yyval.node) = (Node *)n;
35556 				}
35557     break;
35558 
35559   case 1227:
35560 /* Line 1792 of yacc.c  */
35561 #line 8456 "gram.y"
35562     {
35563 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35564 					n->objectType = OBJECT_LANGUAGE;
35565 					n->object = list_make1(makeString((yyvsp[(4) - (7)].str)));
35566 					n->newowner = (yyvsp[(7) - (7)].node);
35567 					(yyval.node) = (Node *)n;
35568 				}
35569     break;
35570 
35571   case 1228:
35572 /* Line 1792 of yacc.c  */
35573 #line 8464 "gram.y"
35574     {
35575 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35576 					n->objectType = OBJECT_LARGEOBJECT;
35577 					n->object = list_make1((yyvsp[(4) - (7)].value));
35578 					n->newowner = (yyvsp[(7) - (7)].node);
35579 					(yyval.node) = (Node *)n;
35580 				}
35581     break;
35582 
35583   case 1229:
35584 /* Line 1792 of yacc.c  */
35585 #line 8472 "gram.y"
35586     {
35587 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35588 					n->objectType = OBJECT_OPERATOR;
35589 					n->object = (yyvsp[(3) - (7)].list);
35590 					n->objarg = (yyvsp[(4) - (7)].list);
35591 					n->newowner = (yyvsp[(7) - (7)].node);
35592 					(yyval.node) = (Node *)n;
35593 				}
35594     break;
35595 
35596   case 1230:
35597 /* Line 1792 of yacc.c  */
35598 #line 8481 "gram.y"
35599     {
35600 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35601 					n->objectType = OBJECT_OPCLASS;
35602 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
35603 					n->newowner = (yyvsp[(9) - (9)].node);
35604 					(yyval.node) = (Node *)n;
35605 				}
35606     break;
35607 
35608   case 1231:
35609 /* Line 1792 of yacc.c  */
35610 #line 8489 "gram.y"
35611     {
35612 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35613 					n->objectType = OBJECT_OPFAMILY;
35614 					n->object = lcons(makeString((yyvsp[(6) - (9)].str)), (yyvsp[(4) - (9)].list));
35615 					n->newowner = (yyvsp[(9) - (9)].node);
35616 					(yyval.node) = (Node *)n;
35617 				}
35618     break;
35619 
35620   case 1232:
35621 /* Line 1792 of yacc.c  */
35622 #line 8497 "gram.y"
35623     {
35624 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35625 					n->objectType = OBJECT_SCHEMA;
35626 					n->object = list_make1(makeString((yyvsp[(3) - (6)].str)));
35627 					n->newowner = (yyvsp[(6) - (6)].node);
35628 					(yyval.node) = (Node *)n;
35629 				}
35630     break;
35631 
35632   case 1233:
35633 /* Line 1792 of yacc.c  */
35634 #line 8505 "gram.y"
35635     {
35636 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35637 					n->objectType = OBJECT_TYPE;
35638 					n->object = (yyvsp[(3) - (6)].list);
35639 					n->newowner = (yyvsp[(6) - (6)].node);
35640 					(yyval.node) = (Node *)n;
35641 				}
35642     break;
35643 
35644   case 1234:
35645 /* Line 1792 of yacc.c  */
35646 #line 8513 "gram.y"
35647     {
35648 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35649 					n->objectType = OBJECT_TABLESPACE;
35650 					n->object = list_make1(makeString((yyvsp[(3) - (6)].str)));
35651 					n->newowner = (yyvsp[(6) - (6)].node);
35652 					(yyval.node) = (Node *)n;
35653 				}
35654     break;
35655 
35656   case 1235:
35657 /* Line 1792 of yacc.c  */
35658 #line 8521 "gram.y"
35659     {
35660 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35661 					n->objectType = OBJECT_TSDICTIONARY;
35662 					n->object = (yyvsp[(5) - (8)].list);
35663 					n->newowner = (yyvsp[(8) - (8)].node);
35664 					(yyval.node) = (Node *)n;
35665 				}
35666     break;
35667 
35668   case 1236:
35669 /* Line 1792 of yacc.c  */
35670 #line 8529 "gram.y"
35671     {
35672 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35673 					n->objectType = OBJECT_TSCONFIGURATION;
35674 					n->object = (yyvsp[(5) - (8)].list);
35675 					n->newowner = (yyvsp[(8) - (8)].node);
35676 					(yyval.node) = (Node *)n;
35677 				}
35678     break;
35679 
35680   case 1237:
35681 /* Line 1792 of yacc.c  */
35682 #line 8537 "gram.y"
35683     {
35684 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35685 					n->objectType = OBJECT_FDW;
35686 					n->object = list_make1(makeString((yyvsp[(5) - (8)].str)));
35687 					n->newowner = (yyvsp[(8) - (8)].node);
35688 					(yyval.node) = (Node *)n;
35689 				}
35690     break;
35691 
35692   case 1238:
35693 /* Line 1792 of yacc.c  */
35694 #line 8545 "gram.y"
35695     {
35696 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35697 					n->objectType = OBJECT_FOREIGN_SERVER;
35698 					n->object = list_make1(makeString((yyvsp[(3) - (6)].str)));
35699 					n->newowner = (yyvsp[(6) - (6)].node);
35700 					(yyval.node) = (Node *)n;
35701 				}
35702     break;
35703 
35704   case 1239:
35705 /* Line 1792 of yacc.c  */
35706 #line 8553 "gram.y"
35707     {
35708 					AlterOwnerStmt *n = makeNode(AlterOwnerStmt);
35709 					n->objectType = OBJECT_EVENT_TRIGGER;
35710 					n->object = list_make1(makeString((yyvsp[(4) - (7)].str)));
35711 					n->newowner = (yyvsp[(7) - (7)].node);
35712 					(yyval.node) = (Node *)n;
35713 				}
35714     break;
35715 
35716   case 1240:
35717 /* Line 1792 of yacc.c  */
35718 #line 8572 "gram.y"
35719     {
35720 					RuleStmt *n = makeNode(RuleStmt);
35721 					n->replace = (yyvsp[(2) - (13)].boolean);
35722 					n->relation = (yyvsp[(9) - (13)].range);
35723 					n->rulename = (yyvsp[(4) - (13)].str);
35724 					n->whereClause = (yyvsp[(10) - (13)].node);
35725 					n->event = (yyvsp[(7) - (13)].ival);
35726 					n->instead = (yyvsp[(12) - (13)].boolean);
35727 					n->actions = (yyvsp[(13) - (13)].list);
35728 					(yyval.node) = (Node *)n;
35729 				}
35730     break;
35731 
35732   case 1241:
35733 /* Line 1792 of yacc.c  */
35734 #line 8586 "gram.y"
35735     { (yyval.list) = NIL; }
35736     break;
35737 
35738   case 1242:
35739 /* Line 1792 of yacc.c  */
35740 #line 8587 "gram.y"
35741     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
35742     break;
35743 
35744   case 1243:
35745 /* Line 1792 of yacc.c  */
35746 #line 8588 "gram.y"
35747     { (yyval.list) = (yyvsp[(2) - (3)].list); }
35748     break;
35749 
35750   case 1244:
35751 /* Line 1792 of yacc.c  */
35752 #line 8594 "gram.y"
35753     { if ((yyvsp[(3) - (3)].node) != NULL)
35754 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
35755 				  else
35756 					(yyval.list) = (yyvsp[(1) - (3)].list);
35757 				}
35758     break;
35759 
35760   case 1245:
35761 /* Line 1792 of yacc.c  */
35762 #line 8600 "gram.y"
35763     { if ((yyvsp[(1) - (1)].node) != NULL)
35764 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
35765 				  else
35766 					(yyval.list) = NIL;
35767 				}
35768     break;
35769 
35770   case 1251:
35771 /* Line 1792 of yacc.c  */
35772 #line 8616 "gram.y"
35773     { (yyval.node) = (yyvsp[(1) - (1)].node); }
35774     break;
35775 
35776   case 1252:
35777 /* Line 1792 of yacc.c  */
35778 #line 8617 "gram.y"
35779     { (yyval.node) = NULL; }
35780     break;
35781 
35782   case 1253:
35783 /* Line 1792 of yacc.c  */
35784 #line 8620 "gram.y"
35785     { (yyval.ival) = CMD_SELECT; }
35786     break;
35787 
35788   case 1254:
35789 /* Line 1792 of yacc.c  */
35790 #line 8621 "gram.y"
35791     { (yyval.ival) = CMD_UPDATE; }
35792     break;
35793 
35794   case 1255:
35795 /* Line 1792 of yacc.c  */
35796 #line 8622 "gram.y"
35797     { (yyval.ival) = CMD_DELETE; }
35798     break;
35799 
35800   case 1256:
35801 /* Line 1792 of yacc.c  */
35802 #line 8623 "gram.y"
35803     { (yyval.ival) = CMD_INSERT; }
35804     break;
35805 
35806   case 1257:
35807 /* Line 1792 of yacc.c  */
35808 #line 8627 "gram.y"
35809     { (yyval.boolean) = TRUE; }
35810     break;
35811 
35812   case 1258:
35813 /* Line 1792 of yacc.c  */
35814 #line 8628 "gram.y"
35815     { (yyval.boolean) = FALSE; }
35816     break;
35817 
35818   case 1259:
35819 /* Line 1792 of yacc.c  */
35820 #line 8629 "gram.y"
35821     { (yyval.boolean) = FALSE; }
35822     break;
35823 
35824   case 1260:
35825 /* Line 1792 of yacc.c  */
35826 #line 8635 "gram.y"
35827     {
35828 					DropStmt *n = makeNode(DropStmt);
35829 					n->removeType = OBJECT_RULE;
35830 					n->objects = list_make1(lappend((yyvsp[(5) - (6)].list), makeString((yyvsp[(3) - (6)].str))));
35831 					n->arguments = NIL;
35832 					n->behavior = (yyvsp[(6) - (6)].dbehavior);
35833 					n->missing_ok = false;
35834 					n->concurrent = false;
35835 					(yyval.node) = (Node *) n;
35836 				}
35837     break;
35838 
35839   case 1261:
35840 /* Line 1792 of yacc.c  */
35841 #line 8646 "gram.y"
35842     {
35843 					DropStmt *n = makeNode(DropStmt);
35844 					n->removeType = OBJECT_RULE;
35845 					n->objects = list_make1(lappend((yyvsp[(7) - (8)].list), makeString((yyvsp[(5) - (8)].str))));
35846 					n->arguments = NIL;
35847 					n->behavior = (yyvsp[(8) - (8)].dbehavior);
35848 					n->missing_ok = true;
35849 					n->concurrent = false;
35850 					(yyval.node) = (Node *) n;
35851 				}
35852     break;
35853 
35854   case 1262:
35855 /* Line 1792 of yacc.c  */
35856 #line 8668 "gram.y"
35857     {
35858 					NotifyStmt *n = makeNode(NotifyStmt);
35859 					n->conditionname = (yyvsp[(2) - (3)].str);
35860 					n->payload = (yyvsp[(3) - (3)].str);
35861 					(yyval.node) = (Node *)n;
35862 				}
35863     break;
35864 
35865   case 1263:
35866 /* Line 1792 of yacc.c  */
35867 #line 8677 "gram.y"
35868     { (yyval.str) = (yyvsp[(2) - (2)].str); }
35869     break;
35870 
35871   case 1264:
35872 /* Line 1792 of yacc.c  */
35873 #line 8678 "gram.y"
35874     { (yyval.str) = NULL; }
35875     break;
35876 
35877   case 1265:
35878 /* Line 1792 of yacc.c  */
35879 #line 8682 "gram.y"
35880     {
35881 					ListenStmt *n = makeNode(ListenStmt);
35882 					n->conditionname = (yyvsp[(2) - (2)].str);
35883 					(yyval.node) = (Node *)n;
35884 				}
35885     break;
35886 
35887   case 1266:
35888 /* Line 1792 of yacc.c  */
35889 #line 8691 "gram.y"
35890     {
35891 					UnlistenStmt *n = makeNode(UnlistenStmt);
35892 					n->conditionname = (yyvsp[(2) - (2)].str);
35893 					(yyval.node) = (Node *)n;
35894 				}
35895     break;
35896 
35897   case 1267:
35898 /* Line 1792 of yacc.c  */
35899 #line 8697 "gram.y"
35900     {
35901 					UnlistenStmt *n = makeNode(UnlistenStmt);
35902 					n->conditionname = NULL;
35903 					(yyval.node) = (Node *)n;
35904 				}
35905     break;
35906 
35907   case 1268:
35908 /* Line 1792 of yacc.c  */
35909 #line 8716 "gram.y"
35910     {
35911 					TransactionStmt *n = makeNode(TransactionStmt);
35912 					n->kind = TRANS_STMT_ROLLBACK;
35913 					n->options = NIL;
35914 					(yyval.node) = (Node *)n;
35915 				}
35916     break;
35917 
35918   case 1269:
35919 /* Line 1792 of yacc.c  */
35920 #line 8723 "gram.y"
35921     {
35922 					TransactionStmt *n = makeNode(TransactionStmt);
35923 					n->kind = TRANS_STMT_BEGIN;
35924 					n->options = (yyvsp[(3) - (3)].list);
35925 					(yyval.node) = (Node *)n;
35926 				}
35927     break;
35928 
35929   case 1270:
35930 /* Line 1792 of yacc.c  */
35931 #line 8730 "gram.y"
35932     {
35933 					TransactionStmt *n = makeNode(TransactionStmt);
35934 					n->kind = TRANS_STMT_START;
35935 					n->options = (yyvsp[(3) - (3)].list);
35936 					(yyval.node) = (Node *)n;
35937 				}
35938     break;
35939 
35940   case 1271:
35941 /* Line 1792 of yacc.c  */
35942 #line 8737 "gram.y"
35943     {
35944 					TransactionStmt *n = makeNode(TransactionStmt);
35945 					n->kind = TRANS_STMT_COMMIT;
35946 					n->options = NIL;
35947 					(yyval.node) = (Node *)n;
35948 				}
35949     break;
35950 
35951   case 1272:
35952 /* Line 1792 of yacc.c  */
35953 #line 8744 "gram.y"
35954     {
35955 					TransactionStmt *n = makeNode(TransactionStmt);
35956 					n->kind = TRANS_STMT_COMMIT;
35957 					n->options = NIL;
35958 					(yyval.node) = (Node *)n;
35959 				}
35960     break;
35961 
35962   case 1273:
35963 /* Line 1792 of yacc.c  */
35964 #line 8751 "gram.y"
35965     {
35966 					TransactionStmt *n = makeNode(TransactionStmt);
35967 					n->kind = TRANS_STMT_ROLLBACK;
35968 					n->options = NIL;
35969 					(yyval.node) = (Node *)n;
35970 				}
35971     break;
35972 
35973   case 1274:
35974 /* Line 1792 of yacc.c  */
35975 #line 8758 "gram.y"
35976     {
35977 					TransactionStmt *n = makeNode(TransactionStmt);
35978 					n->kind = TRANS_STMT_SAVEPOINT;
35979 					n->options = list_make1(makeDefElem("savepoint_name",
35980 														(Node *)makeString((yyvsp[(2) - (2)].str))));
35981 					(yyval.node) = (Node *)n;
35982 				}
35983     break;
35984 
35985   case 1275:
35986 /* Line 1792 of yacc.c  */
35987 #line 8766 "gram.y"
35988     {
35989 					TransactionStmt *n = makeNode(TransactionStmt);
35990 					n->kind = TRANS_STMT_RELEASE;
35991 					n->options = list_make1(makeDefElem("savepoint_name",
35992 														(Node *)makeString((yyvsp[(3) - (3)].str))));
35993 					(yyval.node) = (Node *)n;
35994 				}
35995     break;
35996 
35997   case 1276:
35998 /* Line 1792 of yacc.c  */
35999 #line 8774 "gram.y"
36000     {
36001 					TransactionStmt *n = makeNode(TransactionStmt);
36002 					n->kind = TRANS_STMT_RELEASE;
36003 					n->options = list_make1(makeDefElem("savepoint_name",
36004 														(Node *)makeString((yyvsp[(2) - (2)].str))));
36005 					(yyval.node) = (Node *)n;
36006 				}
36007     break;
36008 
36009   case 1277:
36010 /* Line 1792 of yacc.c  */
36011 #line 8782 "gram.y"
36012     {
36013 					TransactionStmt *n = makeNode(TransactionStmt);
36014 					n->kind = TRANS_STMT_ROLLBACK_TO;
36015 					n->options = list_make1(makeDefElem("savepoint_name",
36016 														(Node *)makeString((yyvsp[(5) - (5)].str))));
36017 					(yyval.node) = (Node *)n;
36018 				}
36019     break;
36020 
36021   case 1278:
36022 /* Line 1792 of yacc.c  */
36023 #line 8790 "gram.y"
36024     {
36025 					TransactionStmt *n = makeNode(TransactionStmt);
36026 					n->kind = TRANS_STMT_ROLLBACK_TO;
36027 					n->options = list_make1(makeDefElem("savepoint_name",
36028 														(Node *)makeString((yyvsp[(4) - (4)].str))));
36029 					(yyval.node) = (Node *)n;
36030 				}
36031     break;
36032 
36033   case 1279:
36034 /* Line 1792 of yacc.c  */
36035 #line 8798 "gram.y"
36036     {
36037 					TransactionStmt *n = makeNode(TransactionStmt);
36038 					n->kind = TRANS_STMT_PREPARE;
36039 					n->gid = (yyvsp[(3) - (3)].str);
36040 					(yyval.node) = (Node *)n;
36041 				}
36042     break;
36043 
36044   case 1280:
36045 /* Line 1792 of yacc.c  */
36046 #line 8805 "gram.y"
36047     {
36048 					TransactionStmt *n = makeNode(TransactionStmt);
36049 					n->kind = TRANS_STMT_COMMIT_PREPARED;
36050 					n->gid = (yyvsp[(3) - (3)].str);
36051 					(yyval.node) = (Node *)n;
36052 				}
36053     break;
36054 
36055   case 1281:
36056 /* Line 1792 of yacc.c  */
36057 #line 8812 "gram.y"
36058     {
36059 					TransactionStmt *n = makeNode(TransactionStmt);
36060 					n->kind = TRANS_STMT_ROLLBACK_PREPARED;
36061 					n->gid = (yyvsp[(3) - (3)].str);
36062 					(yyval.node) = (Node *)n;
36063 				}
36064     break;
36065 
36066   case 1282:
36067 /* Line 1792 of yacc.c  */
36068 #line 8820 "gram.y"
36069     {}
36070     break;
36071 
36072   case 1283:
36073 /* Line 1792 of yacc.c  */
36074 #line 8821 "gram.y"
36075     {}
36076     break;
36077 
36078   case 1284:
36079 /* Line 1792 of yacc.c  */
36080 #line 8822 "gram.y"
36081     {}
36082     break;
36083 
36084   case 1285:
36085 /* Line 1792 of yacc.c  */
36086 #line 8827 "gram.y"
36087     { (yyval.defelt) = makeDefElem("transaction_isolation",
36088 									   makeStringConst((yyvsp[(3) - (3)].str), (yylsp[(3) - (3)]))); }
36089     break;
36090 
36091   case 1286:
36092 /* Line 1792 of yacc.c  */
36093 #line 8830 "gram.y"
36094     { (yyval.defelt) = makeDefElem("transaction_read_only",
36095 									   makeIntConst(TRUE, (yylsp[(1) - (2)]))); }
36096     break;
36097 
36098   case 1287:
36099 /* Line 1792 of yacc.c  */
36100 #line 8833 "gram.y"
36101     { (yyval.defelt) = makeDefElem("transaction_read_only",
36102 									   makeIntConst(FALSE, (yylsp[(1) - (2)]))); }
36103     break;
36104 
36105   case 1288:
36106 /* Line 1792 of yacc.c  */
36107 #line 8836 "gram.y"
36108     { (yyval.defelt) = makeDefElem("transaction_deferrable",
36109 									   makeIntConst(TRUE, (yylsp[(1) - (1)]))); }
36110     break;
36111 
36112   case 1289:
36113 /* Line 1792 of yacc.c  */
36114 #line 8839 "gram.y"
36115     { (yyval.defelt) = makeDefElem("transaction_deferrable",
36116 									   makeIntConst(FALSE, (yylsp[(1) - (2)]))); }
36117     break;
36118 
36119   case 1290:
36120 /* Line 1792 of yacc.c  */
36121 #line 8846 "gram.y"
36122     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
36123     break;
36124 
36125   case 1291:
36126 /* Line 1792 of yacc.c  */
36127 #line 8848 "gram.y"
36128     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt)); }
36129     break;
36130 
36131   case 1292:
36132 /* Line 1792 of yacc.c  */
36133 #line 8850 "gram.y"
36134     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
36135     break;
36136 
36137   case 1294:
36138 /* Line 1792 of yacc.c  */
36139 #line 8856 "gram.y"
36140     { (yyval.list) = NIL; }
36141     break;
36142 
36143   case 1295:
36144 /* Line 1792 of yacc.c  */
36145 #line 8870 "gram.y"
36146     {
36147 					ViewStmt *n = makeNode(ViewStmt);
36148 					n->view = (yyvsp[(4) - (9)].range);
36149 					n->view->relpersistence = (yyvsp[(2) - (9)].ival);
36150 					n->aliases = (yyvsp[(5) - (9)].list);
36151 					n->query = (yyvsp[(8) - (9)].node);
36152 					n->replace = false;
36153 					n->options = (yyvsp[(6) - (9)].list);
36154 					n->withCheckOption = (yyvsp[(9) - (9)].ival);
36155 					(yyval.node) = (Node *) n;
36156 				}
36157     break;
36158 
36159   case 1296:
36160 /* Line 1792 of yacc.c  */
36161 #line 8883 "gram.y"
36162     {
36163 					ViewStmt *n = makeNode(ViewStmt);
36164 					n->view = (yyvsp[(6) - (11)].range);
36165 					n->view->relpersistence = (yyvsp[(4) - (11)].ival);
36166 					n->aliases = (yyvsp[(7) - (11)].list);
36167 					n->query = (yyvsp[(10) - (11)].node);
36168 					n->replace = true;
36169 					n->options = (yyvsp[(8) - (11)].list);
36170 					n->withCheckOption = (yyvsp[(11) - (11)].ival);
36171 					(yyval.node) = (Node *) n;
36172 				}
36173     break;
36174 
36175   case 1297:
36176 /* Line 1792 of yacc.c  */
36177 #line 8896 "gram.y"
36178     {
36179 					ViewStmt *n = makeNode(ViewStmt);
36180 					n->view = (yyvsp[(5) - (12)].range);
36181 					n->view->relpersistence = (yyvsp[(2) - (12)].ival);
36182 					n->aliases = (yyvsp[(7) - (12)].list);
36183 					n->query = makeRecursiveViewSelect(n->view->relname, n->aliases, (yyvsp[(11) - (12)].node));
36184 					n->replace = false;
36185 					n->options = (yyvsp[(9) - (12)].list);
36186 					n->withCheckOption = (yyvsp[(12) - (12)].ival);
36187 					if (n->withCheckOption != NO_CHECK_OPTION)
36188 						ereport(ERROR,
36189 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
36190 								 errmsg("WITH CHECK OPTION not supported on recursive views"),
36191 								 parser_errposition((yylsp[(12) - (12)]))));
36192 					(yyval.node) = (Node *) n;
36193 				}
36194     break;
36195 
36196   case 1298:
36197 /* Line 1792 of yacc.c  */
36198 #line 8914 "gram.y"
36199     {
36200 					ViewStmt *n = makeNode(ViewStmt);
36201 					n->view = (yyvsp[(7) - (14)].range);
36202 					n->view->relpersistence = (yyvsp[(4) - (14)].ival);
36203 					n->aliases = (yyvsp[(9) - (14)].list);
36204 					n->query = makeRecursiveViewSelect(n->view->relname, n->aliases, (yyvsp[(13) - (14)].node));
36205 					n->replace = true;
36206 					n->options = (yyvsp[(11) - (14)].list);
36207 					n->withCheckOption = (yyvsp[(14) - (14)].ival);
36208 					if (n->withCheckOption != NO_CHECK_OPTION)
36209 						ereport(ERROR,
36210 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
36211 								 errmsg("WITH CHECK OPTION not supported on recursive views"),
36212 								 parser_errposition((yylsp[(14) - (14)]))));
36213 					(yyval.node) = (Node *) n;
36214 				}
36215     break;
36216 
36217   case 1299:
36218 /* Line 1792 of yacc.c  */
36219 #line 8933 "gram.y"
36220     { (yyval.ival) = CASCADED_CHECK_OPTION; }
36221     break;
36222 
36223   case 1300:
36224 /* Line 1792 of yacc.c  */
36225 #line 8934 "gram.y"
36226     { (yyval.ival) = CASCADED_CHECK_OPTION; }
36227     break;
36228 
36229   case 1301:
36230 /* Line 1792 of yacc.c  */
36231 #line 8935 "gram.y"
36232     { (yyval.ival) = LOCAL_CHECK_OPTION; }
36233     break;
36234 
36235   case 1302:
36236 /* Line 1792 of yacc.c  */
36237 #line 8936 "gram.y"
36238     { (yyval.ival) = NO_CHECK_OPTION; }
36239     break;
36240 
36241   case 1303:
36242 /* Line 1792 of yacc.c  */
36243 #line 8947 "gram.y"
36244     {
36245 					LoadStmt *n = makeNode(LoadStmt);
36246 					n->filename = (yyvsp[(2) - (2)].str);
36247 					(yyval.node) = (Node *)n;
36248 				}
36249     break;
36250 
36251   case 1304:
36252 /* Line 1792 of yacc.c  */
36253 #line 8963 "gram.y"
36254     {
36255 					CreatedbStmt *n = makeNode(CreatedbStmt);
36256 					n->dbname = (yyvsp[(3) - (5)].str);
36257 					n->options = (yyvsp[(5) - (5)].list);
36258 					(yyval.node) = (Node *)n;
36259 				}
36260     break;
36261 
36262   case 1305:
36263 /* Line 1792 of yacc.c  */
36264 #line 8972 "gram.y"
36265     { (yyval.list) = (yyvsp[(1) - (1)].list); }
36266     break;
36267 
36268   case 1306:
36269 /* Line 1792 of yacc.c  */
36270 #line 8973 "gram.y"
36271     { (yyval.list) = NIL; }
36272     break;
36273 
36274   case 1307:
36275 /* Line 1792 of yacc.c  */
36276 #line 8977 "gram.y"
36277     { (yyval.list) = list_make1((yyvsp[(1) - (1)].defelt)); }
36278     break;
36279 
36280   case 1308:
36281 /* Line 1792 of yacc.c  */
36282 #line 8978 "gram.y"
36283     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].defelt)); }
36284     break;
36285 
36286   case 1309:
36287 /* Line 1792 of yacc.c  */
36288 #line 8983 "gram.y"
36289     {
36290 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *)makeInteger((yyvsp[(3) - (3)].ival)));
36291 				}
36292     break;
36293 
36294   case 1310:
36295 /* Line 1792 of yacc.c  */
36296 #line 8987 "gram.y"
36297     {
36298 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), (Node *)makeString((yyvsp[(3) - (3)].str)));
36299 				}
36300     break;
36301 
36302   case 1311:
36303 /* Line 1792 of yacc.c  */
36304 #line 8991 "gram.y"
36305     {
36306 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (3)].str), NULL);
36307 				}
36308     break;
36309 
36310   case 1312:
36311 /* Line 1792 of yacc.c  */
36312 #line 9008 "gram.y"
36313     { (yyval.str) = (yyvsp[(1) - (1)].str); }
36314     break;
36315 
36316   case 1313:
36317 /* Line 1792 of yacc.c  */
36318 #line 9009 "gram.y"
36319     { (yyval.str) = pstrdup("connection_limit"); }
36320     break;
36321 
36322   case 1314:
36323 /* Line 1792 of yacc.c  */
36324 #line 9010 "gram.y"
36325     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
36326     break;
36327 
36328   case 1315:
36329 /* Line 1792 of yacc.c  */
36330 #line 9011 "gram.y"
36331     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
36332     break;
36333 
36334   case 1316:
36335 /* Line 1792 of yacc.c  */
36336 #line 9012 "gram.y"
36337     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
36338     break;
36339 
36340   case 1317:
36341 /* Line 1792 of yacc.c  */
36342 #line 9013 "gram.y"
36343     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
36344     break;
36345 
36346   case 1318:
36347 /* Line 1792 of yacc.c  */
36348 #line 9014 "gram.y"
36349     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
36350     break;
36351 
36352   case 1319:
36353 /* Line 1792 of yacc.c  */
36354 #line 9021 "gram.y"
36355     {}
36356     break;
36357 
36358   case 1320:
36359 /* Line 1792 of yacc.c  */
36360 #line 9022 "gram.y"
36361     {}
36362     break;
36363 
36364   case 1321:
36365 /* Line 1792 of yacc.c  */
36366 #line 9034 "gram.y"
36367     {
36368 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
36369 					n->dbname = (yyvsp[(3) - (5)].str);
36370 					n->options = (yyvsp[(5) - (5)].list);
36371 					(yyval.node) = (Node *)n;
36372 				 }
36373     break;
36374 
36375   case 1322:
36376 /* Line 1792 of yacc.c  */
36377 #line 9041 "gram.y"
36378     {
36379 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
36380 					n->dbname = (yyvsp[(3) - (4)].str);
36381 					n->options = (yyvsp[(4) - (4)].list);
36382 					(yyval.node) = (Node *)n;
36383 				 }
36384     break;
36385 
36386   case 1323:
36387 /* Line 1792 of yacc.c  */
36388 #line 9048 "gram.y"
36389     {
36390 					AlterDatabaseStmt *n = makeNode(AlterDatabaseStmt);
36391 					n->dbname = (yyvsp[(3) - (6)].str);
36392 					n->options = list_make1(makeDefElem("tablespace",
36393 													(Node *)makeString((yyvsp[(6) - (6)].str))));
36394 					(yyval.node) = (Node *)n;
36395 				 }
36396     break;
36397 
36398   case 1324:
36399 /* Line 1792 of yacc.c  */
36400 #line 9059 "gram.y"
36401     {
36402 					AlterDatabaseSetStmt *n = makeNode(AlterDatabaseSetStmt);
36403 					n->dbname = (yyvsp[(3) - (4)].str);
36404 					n->setstmt = (yyvsp[(4) - (4)].vsetstmt);
36405 					(yyval.node) = (Node *)n;
36406 				}
36407     break;
36408 
36409   case 1325:
36410 /* Line 1792 of yacc.c  */
36411 #line 9076 "gram.y"
36412     {
36413 					DropdbStmt *n = makeNode(DropdbStmt);
36414 					n->dbname = (yyvsp[(3) - (3)].str);
36415 					n->missing_ok = FALSE;
36416 					(yyval.node) = (Node *)n;
36417 				}
36418     break;
36419 
36420   case 1326:
36421 /* Line 1792 of yacc.c  */
36422 #line 9083 "gram.y"
36423     {
36424 					DropdbStmt *n = makeNode(DropdbStmt);
36425 					n->dbname = (yyvsp[(5) - (5)].str);
36426 					n->missing_ok = TRUE;
36427 					(yyval.node) = (Node *)n;
36428 				}
36429     break;
36430 
36431   case 1327:
36432 /* Line 1792 of yacc.c  */
36433 #line 9101 "gram.y"
36434     {
36435 					AlterSystemStmt *n = makeNode(AlterSystemStmt);
36436 					n->setstmt = (yyvsp[(4) - (4)].vsetstmt);
36437 					(yyval.node) = (Node *)n;
36438 				}
36439     break;
36440 
36441   case 1328:
36442 /* Line 1792 of yacc.c  */
36443 #line 9107 "gram.y"
36444     {
36445 					AlterSystemStmt *n = makeNode(AlterSystemStmt);
36446 					n->setstmt = (yyvsp[(4) - (4)].vsetstmt);
36447 					(yyval.node) = (Node *)n;
36448 				}
36449     break;
36450 
36451   case 1329:
36452 /* Line 1792 of yacc.c  */
36453 #line 9123 "gram.y"
36454     {
36455 					CreateDomainStmt *n = makeNode(CreateDomainStmt);
36456 					n->domainname = (yyvsp[(3) - (6)].list);
36457 					n->typeName = (yyvsp[(5) - (6)].typnam);
36458 					SplitColQualList((yyvsp[(6) - (6)].list), &n->constraints, &n->collClause,
36459 									 yyscanner);
36460 					(yyval.node) = (Node *)n;
36461 				}
36462     break;
36463 
36464   case 1330:
36465 /* Line 1792 of yacc.c  */
36466 #line 9136 "gram.y"
36467     {
36468 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36469 					n->subtype = 'T';
36470 					n->typeName = (yyvsp[(3) - (4)].list);
36471 					n->def = (yyvsp[(4) - (4)].node);
36472 					(yyval.node) = (Node *)n;
36473 				}
36474     break;
36475 
36476   case 1331:
36477 /* Line 1792 of yacc.c  */
36478 #line 9145 "gram.y"
36479     {
36480 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36481 					n->subtype = 'N';
36482 					n->typeName = (yyvsp[(3) - (6)].list);
36483 					(yyval.node) = (Node *)n;
36484 				}
36485     break;
36486 
36487   case 1332:
36488 /* Line 1792 of yacc.c  */
36489 #line 9153 "gram.y"
36490     {
36491 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36492 					n->subtype = 'O';
36493 					n->typeName = (yyvsp[(3) - (6)].list);
36494 					(yyval.node) = (Node *)n;
36495 				}
36496     break;
36497 
36498   case 1333:
36499 /* Line 1792 of yacc.c  */
36500 #line 9161 "gram.y"
36501     {
36502 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36503 					n->subtype = 'C';
36504 					n->typeName = (yyvsp[(3) - (5)].list);
36505 					n->def = (yyvsp[(5) - (5)].node);
36506 					(yyval.node) = (Node *)n;
36507 				}
36508     break;
36509 
36510   case 1334:
36511 /* Line 1792 of yacc.c  */
36512 #line 9170 "gram.y"
36513     {
36514 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36515 					n->subtype = 'X';
36516 					n->typeName = (yyvsp[(3) - (7)].list);
36517 					n->name = (yyvsp[(6) - (7)].str);
36518 					n->behavior = (yyvsp[(7) - (7)].dbehavior);
36519 					n->missing_ok = false;
36520 					(yyval.node) = (Node *)n;
36521 				}
36522     break;
36523 
36524   case 1335:
36525 /* Line 1792 of yacc.c  */
36526 #line 9181 "gram.y"
36527     {
36528 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36529 					n->subtype = 'X';
36530 					n->typeName = (yyvsp[(3) - (9)].list);
36531 					n->name = (yyvsp[(8) - (9)].str);
36532 					n->behavior = (yyvsp[(9) - (9)].dbehavior);
36533 					n->missing_ok = true;
36534 					(yyval.node) = (Node *)n;
36535 				}
36536     break;
36537 
36538   case 1336:
36539 /* Line 1792 of yacc.c  */
36540 #line 9192 "gram.y"
36541     {
36542 					AlterDomainStmt *n = makeNode(AlterDomainStmt);
36543 					n->subtype = 'V';
36544 					n->typeName = (yyvsp[(3) - (6)].list);
36545 					n->name = (yyvsp[(6) - (6)].str);
36546 					(yyval.node) = (Node *)n;
36547 				}
36548     break;
36549 
36550   case 1337:
36551 /* Line 1792 of yacc.c  */
36552 #line 9201 "gram.y"
36553     {}
36554     break;
36555 
36556   case 1338:
36557 /* Line 1792 of yacc.c  */
36558 #line 9202 "gram.y"
36559     {}
36560     break;
36561 
36562   case 1339:
36563 /* Line 1792 of yacc.c  */
36564 #line 9214 "gram.y"
36565     {
36566 					AlterTSDictionaryStmt *n = makeNode(AlterTSDictionaryStmt);
36567 					n->dictname = (yyvsp[(5) - (6)].list);
36568 					n->options = (yyvsp[(6) - (6)].list);
36569 					(yyval.node) = (Node *)n;
36570 				}
36571     break;
36572 
36573   case 1340:
36574 /* Line 1792 of yacc.c  */
36575 #line 9224 "gram.y"
36576     {
36577 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36578 					n->kind = ALTER_TSCONFIG_ADD_MAPPING;
36579 					n->cfgname = (yyvsp[(5) - (11)].list);
36580 					n->tokentype = (yyvsp[(9) - (11)].list);
36581 					n->dicts = (yyvsp[(11) - (11)].list);
36582 					n->override = false;
36583 					n->replace = false;
36584 					(yyval.node) = (Node*)n;
36585 				}
36586     break;
36587 
36588   case 1341:
36589 /* Line 1792 of yacc.c  */
36590 #line 9235 "gram.y"
36591     {
36592 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36593 					n->kind = ALTER_TSCONFIG_ALTER_MAPPING_FOR_TOKEN;
36594 					n->cfgname = (yyvsp[(5) - (11)].list);
36595 					n->tokentype = (yyvsp[(9) - (11)].list);
36596 					n->dicts = (yyvsp[(11) - (11)].list);
36597 					n->override = true;
36598 					n->replace = false;
36599 					(yyval.node) = (Node*)n;
36600 				}
36601     break;
36602 
36603   case 1342:
36604 /* Line 1792 of yacc.c  */
36605 #line 9246 "gram.y"
36606     {
36607 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36608 					n->kind = ALTER_TSCONFIG_REPLACE_DICT;
36609 					n->cfgname = (yyvsp[(5) - (11)].list);
36610 					n->tokentype = NIL;
36611 					n->dicts = list_make2((yyvsp[(9) - (11)].list),(yyvsp[(11) - (11)].list));
36612 					n->override = false;
36613 					n->replace = true;
36614 					(yyval.node) = (Node*)n;
36615 				}
36616     break;
36617 
36618   case 1343:
36619 /* Line 1792 of yacc.c  */
36620 #line 9257 "gram.y"
36621     {
36622 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36623 					n->kind = ALTER_TSCONFIG_REPLACE_DICT_FOR_TOKEN;
36624 					n->cfgname = (yyvsp[(5) - (13)].list);
36625 					n->tokentype = (yyvsp[(9) - (13)].list);
36626 					n->dicts = list_make2((yyvsp[(11) - (13)].list),(yyvsp[(13) - (13)].list));
36627 					n->override = false;
36628 					n->replace = true;
36629 					(yyval.node) = (Node*)n;
36630 				}
36631     break;
36632 
36633   case 1344:
36634 /* Line 1792 of yacc.c  */
36635 #line 9268 "gram.y"
36636     {
36637 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36638 					n->kind = ALTER_TSCONFIG_DROP_MAPPING;
36639 					n->cfgname = (yyvsp[(5) - (9)].list);
36640 					n->tokentype = (yyvsp[(9) - (9)].list);
36641 					n->missing_ok = false;
36642 					(yyval.node) = (Node*)n;
36643 				}
36644     break;
36645 
36646   case 1345:
36647 /* Line 1792 of yacc.c  */
36648 #line 9277 "gram.y"
36649     {
36650 					AlterTSConfigurationStmt *n = makeNode(AlterTSConfigurationStmt);
36651 					n->kind = ALTER_TSCONFIG_DROP_MAPPING;
36652 					n->cfgname = (yyvsp[(5) - (11)].list);
36653 					n->tokentype = (yyvsp[(11) - (11)].list);
36654 					n->missing_ok = true;
36655 					(yyval.node) = (Node*)n;
36656 				}
36657     break;
36658 
36659   case 1346:
36660 /* Line 1792 of yacc.c  */
36661 #line 9288 "gram.y"
36662     {}
36663     break;
36664 
36665   case 1347:
36666 /* Line 1792 of yacc.c  */
36667 #line 9289 "gram.y"
36668     {}
36669     break;
36670 
36671   case 1348:
36672 /* Line 1792 of yacc.c  */
36673 #line 9305 "gram.y"
36674     {
36675 				CreateConversionStmt *n = makeNode(CreateConversionStmt);
36676 				n->conversion_name = (yyvsp[(4) - (10)].list);
36677 				n->for_encoding_name = (yyvsp[(6) - (10)].str);
36678 				n->to_encoding_name = (yyvsp[(8) - (10)].str);
36679 				n->func_name = (yyvsp[(10) - (10)].list);
36680 				n->def = (yyvsp[(2) - (10)].boolean);
36681 				(yyval.node) = (Node *)n;
36682 			}
36683     break;
36684 
36685   case 1349:
36686 /* Line 1792 of yacc.c  */
36687 #line 9327 "gram.y"
36688     {
36689 					ClusterStmt *n = makeNode(ClusterStmt);
36690 					n->relation = (yyvsp[(3) - (4)].range);
36691 					n->indexname = (yyvsp[(4) - (4)].str);
36692 					n->verbose = (yyvsp[(2) - (4)].boolean);
36693 					(yyval.node) = (Node*)n;
36694 				}
36695     break;
36696 
36697   case 1350:
36698 /* Line 1792 of yacc.c  */
36699 #line 9335 "gram.y"
36700     {
36701 					ClusterStmt *n = makeNode(ClusterStmt);
36702 					n->relation = NULL;
36703 					n->indexname = NULL;
36704 					n->verbose = (yyvsp[(2) - (2)].boolean);
36705 					(yyval.node) = (Node*)n;
36706 				}
36707     break;
36708 
36709   case 1351:
36710 /* Line 1792 of yacc.c  */
36711 #line 9344 "gram.y"
36712     {
36713 					ClusterStmt *n = makeNode(ClusterStmt);
36714 					n->relation = (yyvsp[(5) - (5)].range);
36715 					n->indexname = (yyvsp[(3) - (5)].str);
36716 					n->verbose = (yyvsp[(2) - (5)].boolean);
36717 					(yyval.node) = (Node*)n;
36718 				}
36719     break;
36720 
36721   case 1352:
36722 /* Line 1792 of yacc.c  */
36723 #line 9354 "gram.y"
36724     { (yyval.str) = (yyvsp[(2) - (2)].str); }
36725     break;
36726 
36727   case 1353:
36728 /* Line 1792 of yacc.c  */
36729 #line 9355 "gram.y"
36730     { (yyval.str) = NULL; }
36731     break;
36732 
36733   case 1354:
36734 /* Line 1792 of yacc.c  */
36735 #line 9368 "gram.y"
36736     {
36737 					VacuumStmt *n = makeNode(VacuumStmt);
36738 					n->options = VACOPT_VACUUM;
36739 					if ((yyvsp[(2) - (4)].boolean))
36740 						n->options |= VACOPT_FULL;
36741 					if ((yyvsp[(3) - (4)].boolean))
36742 						n->options |= VACOPT_FREEZE;
36743 					if ((yyvsp[(4) - (4)].boolean))
36744 						n->options |= VACOPT_VERBOSE;
36745 					n->relation = NULL;
36746 					n->va_cols = NIL;
36747 					(yyval.node) = (Node *)n;
36748 				}
36749     break;
36750 
36751   case 1355:
36752 /* Line 1792 of yacc.c  */
36753 #line 9382 "gram.y"
36754     {
36755 					VacuumStmt *n = makeNode(VacuumStmt);
36756 					n->options = VACOPT_VACUUM;
36757 					if ((yyvsp[(2) - (5)].boolean))
36758 						n->options |= VACOPT_FULL;
36759 					if ((yyvsp[(3) - (5)].boolean))
36760 						n->options |= VACOPT_FREEZE;
36761 					if ((yyvsp[(4) - (5)].boolean))
36762 						n->options |= VACOPT_VERBOSE;
36763 					n->relation = (yyvsp[(5) - (5)].range);
36764 					n->va_cols = NIL;
36765 					(yyval.node) = (Node *)n;
36766 				}
36767     break;
36768 
36769   case 1356:
36770 /* Line 1792 of yacc.c  */
36771 #line 9396 "gram.y"
36772     {
36773 					VacuumStmt *n = (VacuumStmt *) (yyvsp[(5) - (5)].node);
36774 					n->options |= VACOPT_VACUUM;
36775 					if ((yyvsp[(2) - (5)].boolean))
36776 						n->options |= VACOPT_FULL;
36777 					if ((yyvsp[(3) - (5)].boolean))
36778 						n->options |= VACOPT_FREEZE;
36779 					if ((yyvsp[(4) - (5)].boolean))
36780 						n->options |= VACOPT_VERBOSE;
36781 					(yyval.node) = (Node *)n;
36782 				}
36783     break;
36784 
36785   case 1357:
36786 /* Line 1792 of yacc.c  */
36787 #line 9408 "gram.y"
36788     {
36789 					VacuumStmt *n = makeNode(VacuumStmt);
36790 					n->options = VACOPT_VACUUM | (yyvsp[(3) - (4)].ival);
36791 					n->relation = NULL;
36792 					n->va_cols = NIL;
36793 					(yyval.node) = (Node *) n;
36794 				}
36795     break;
36796 
36797   case 1358:
36798 /* Line 1792 of yacc.c  */
36799 #line 9416 "gram.y"
36800     {
36801 					VacuumStmt *n = makeNode(VacuumStmt);
36802 					n->options = VACOPT_VACUUM | (yyvsp[(3) - (6)].ival);
36803 					n->relation = (yyvsp[(5) - (6)].range);
36804 					n->va_cols = (yyvsp[(6) - (6)].list);
36805 					if (n->va_cols != NIL)	/* implies analyze */
36806 						n->options |= VACOPT_ANALYZE;
36807 					(yyval.node) = (Node *) n;
36808 				}
36809     break;
36810 
36811   case 1359:
36812 /* Line 1792 of yacc.c  */
36813 #line 9428 "gram.y"
36814     { (yyval.ival) = (yyvsp[(1) - (1)].ival); }
36815     break;
36816 
36817   case 1360:
36818 /* Line 1792 of yacc.c  */
36819 #line 9429 "gram.y"
36820     { (yyval.ival) = (yyvsp[(1) - (3)].ival) | (yyvsp[(3) - (3)].ival); }
36821     break;
36822 
36823   case 1361:
36824 /* Line 1792 of yacc.c  */
36825 #line 9433 "gram.y"
36826     { (yyval.ival) = VACOPT_ANALYZE; }
36827     break;
36828 
36829   case 1362:
36830 /* Line 1792 of yacc.c  */
36831 #line 9434 "gram.y"
36832     { (yyval.ival) = VACOPT_VERBOSE; }
36833     break;
36834 
36835   case 1363:
36836 /* Line 1792 of yacc.c  */
36837 #line 9435 "gram.y"
36838     { (yyval.ival) = VACOPT_FREEZE; }
36839     break;
36840 
36841   case 1364:
36842 /* Line 1792 of yacc.c  */
36843 #line 9436 "gram.y"
36844     { (yyval.ival) = VACOPT_FULL; }
36845     break;
36846 
36847   case 1365:
36848 /* Line 1792 of yacc.c  */
36849 #line 9438 "gram.y"
36850     {
36851 					if (strcmp((yyvsp[(1) - (1)].str), "disable_page_skipping") == 0)
36852 						(yyval.ival) = VACOPT_DISABLE_PAGE_SKIPPING;
36853 					else
36854 						ereport(ERROR,
36855 								(errcode(ERRCODE_SYNTAX_ERROR),
36856 							 errmsg("unrecognized VACUUM option \"%s\"", (yyvsp[(1) - (1)].str)),
36857 									 parser_errposition((yylsp[(1) - (1)]))));
36858 				}
36859     break;
36860 
36861   case 1366:
36862 /* Line 1792 of yacc.c  */
36863 #line 9451 "gram.y"
36864     {
36865 					VacuumStmt *n = makeNode(VacuumStmt);
36866 					n->options = VACOPT_ANALYZE;
36867 					if ((yyvsp[(2) - (2)].boolean))
36868 						n->options |= VACOPT_VERBOSE;
36869 					n->relation = NULL;
36870 					n->va_cols = NIL;
36871 					(yyval.node) = (Node *)n;
36872 				}
36873     break;
36874 
36875   case 1367:
36876 /* Line 1792 of yacc.c  */
36877 #line 9461 "gram.y"
36878     {
36879 					VacuumStmt *n = makeNode(VacuumStmt);
36880 					n->options = VACOPT_ANALYZE;
36881 					if ((yyvsp[(2) - (4)].boolean))
36882 						n->options |= VACOPT_VERBOSE;
36883 					n->relation = (yyvsp[(3) - (4)].range);
36884 					n->va_cols = (yyvsp[(4) - (4)].list);
36885 					(yyval.node) = (Node *)n;
36886 				}
36887     break;
36888 
36889   case 1368:
36890 /* Line 1792 of yacc.c  */
36891 #line 9473 "gram.y"
36892     {}
36893     break;
36894 
36895   case 1369:
36896 /* Line 1792 of yacc.c  */
36897 #line 9474 "gram.y"
36898     {}
36899     break;
36900 
36901   case 1370:
36902 /* Line 1792 of yacc.c  */
36903 #line 9478 "gram.y"
36904     { (yyval.boolean) = TRUE; }
36905     break;
36906 
36907   case 1371:
36908 /* Line 1792 of yacc.c  */
36909 #line 9479 "gram.y"
36910     { (yyval.boolean) = FALSE; }
36911     break;
36912 
36913   case 1372:
36914 /* Line 1792 of yacc.c  */
36915 #line 9482 "gram.y"
36916     { (yyval.boolean) = TRUE; }
36917     break;
36918 
36919   case 1373:
36920 /* Line 1792 of yacc.c  */
36921 #line 9483 "gram.y"
36922     { (yyval.boolean) = FALSE; }
36923     break;
36924 
36925   case 1374:
36926 /* Line 1792 of yacc.c  */
36927 #line 9486 "gram.y"
36928     { (yyval.boolean) = TRUE; }
36929     break;
36930 
36931   case 1375:
36932 /* Line 1792 of yacc.c  */
36933 #line 9487 "gram.y"
36934     { (yyval.boolean) = FALSE; }
36935     break;
36936 
36937   case 1376:
36938 /* Line 1792 of yacc.c  */
36939 #line 9491 "gram.y"
36940     { (yyval.list) = (yyvsp[(2) - (3)].list); }
36941     break;
36942 
36943   case 1377:
36944 /* Line 1792 of yacc.c  */
36945 #line 9492 "gram.y"
36946     { (yyval.list) = NIL; }
36947     break;
36948 
36949   case 1378:
36950 /* Line 1792 of yacc.c  */
36951 #line 9506 "gram.y"
36952     {
36953 					ExplainStmt *n = makeNode(ExplainStmt);
36954 					n->query = (yyvsp[(2) - (2)].node);
36955 					n->options = NIL;
36956 					(yyval.node) = (Node *) n;
36957 				}
36958     break;
36959 
36960   case 1379:
36961 /* Line 1792 of yacc.c  */
36962 #line 9513 "gram.y"
36963     {
36964 					ExplainStmt *n = makeNode(ExplainStmt);
36965 					n->query = (yyvsp[(4) - (4)].node);
36966 					n->options = list_make1(makeDefElem("analyze", NULL));
36967 					if ((yyvsp[(3) - (4)].boolean))
36968 						n->options = lappend(n->options,
36969 											 makeDefElem("verbose", NULL));
36970 					(yyval.node) = (Node *) n;
36971 				}
36972     break;
36973 
36974   case 1380:
36975 /* Line 1792 of yacc.c  */
36976 #line 9523 "gram.y"
36977     {
36978 					ExplainStmt *n = makeNode(ExplainStmt);
36979 					n->query = (yyvsp[(3) - (3)].node);
36980 					n->options = list_make1(makeDefElem("verbose", NULL));
36981 					(yyval.node) = (Node *) n;
36982 				}
36983     break;
36984 
36985   case 1381:
36986 /* Line 1792 of yacc.c  */
36987 #line 9530 "gram.y"
36988     {
36989 					ExplainStmt *n = makeNode(ExplainStmt);
36990 					n->query = (yyvsp[(5) - (5)].node);
36991 					n->options = (yyvsp[(3) - (5)].list);
36992 					(yyval.node) = (Node *) n;
36993 				}
36994     break;
36995 
36996   case 1391:
36997 /* Line 1792 of yacc.c  */
36998 #line 9552 "gram.y"
36999     {
37000 					(yyval.list) = list_make1((yyvsp[(1) - (1)].defelt));
37001 				}
37002     break;
37003 
37004   case 1392:
37005 /* Line 1792 of yacc.c  */
37006 #line 9556 "gram.y"
37007     {
37008 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].defelt));
37009 				}
37010     break;
37011 
37012   case 1393:
37013 /* Line 1792 of yacc.c  */
37014 #line 9563 "gram.y"
37015     {
37016 					(yyval.defelt) = makeDefElem((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].node));
37017 				}
37018     break;
37019 
37020   case 1394:
37021 /* Line 1792 of yacc.c  */
37022 #line 9569 "gram.y"
37023     { (yyval.str) = (yyvsp[(1) - (1)].str); }
37024     break;
37025 
37026   case 1395:
37027 /* Line 1792 of yacc.c  */
37028 #line 9570 "gram.y"
37029     { (yyval.str) = "analyze"; }
37030     break;
37031 
37032   case 1396:
37033 /* Line 1792 of yacc.c  */
37034 #line 9574 "gram.y"
37035     { (yyval.node) = (Node *) makeString((yyvsp[(1) - (1)].str)); }
37036     break;
37037 
37038   case 1397:
37039 /* Line 1792 of yacc.c  */
37040 #line 9575 "gram.y"
37041     { (yyval.node) = (Node *) (yyvsp[(1) - (1)].value); }
37042     break;
37043 
37044   case 1398:
37045 /* Line 1792 of yacc.c  */
37046 #line 9576 "gram.y"
37047     { (yyval.node) = NULL; }
37048     break;
37049 
37050   case 1399:
37051 /* Line 1792 of yacc.c  */
37052 #line 9587 "gram.y"
37053     {
37054 					PrepareStmt *n = makeNode(PrepareStmt);
37055 					n->name = (yyvsp[(2) - (5)].str);
37056 					n->argtypes = (yyvsp[(3) - (5)].list);
37057 					n->query = (yyvsp[(5) - (5)].node);
37058 					(yyval.node) = (Node *) n;
37059 				}
37060     break;
37061 
37062   case 1400:
37063 /* Line 1792 of yacc.c  */
37064 #line 9596 "gram.y"
37065     { (yyval.list) = (yyvsp[(2) - (3)].list); }
37066     break;
37067 
37068   case 1401:
37069 /* Line 1792 of yacc.c  */
37070 #line 9597 "gram.y"
37071     { (yyval.list) = NIL; }
37072     break;
37073 
37074   case 1406:
37075 /* Line 1792 of yacc.c  */
37076 #line 9615 "gram.y"
37077     {
37078 					ExecuteStmt *n = makeNode(ExecuteStmt);
37079 					n->name = (yyvsp[(2) - (3)].str);
37080 					n->params = (yyvsp[(3) - (3)].list);
37081 					(yyval.node) = (Node *) n;
37082 				}
37083     break;
37084 
37085   case 1407:
37086 /* Line 1792 of yacc.c  */
37087 #line 9623 "gram.y"
37088     {
37089 					CreateTableAsStmt *ctas = makeNode(CreateTableAsStmt);
37090 					ExecuteStmt *n = makeNode(ExecuteStmt);
37091 					n->name = (yyvsp[(7) - (9)].str);
37092 					n->params = (yyvsp[(8) - (9)].list);
37093 					ctas->query = (Node *) n;
37094 					ctas->into = (yyvsp[(4) - (9)].into);
37095 					ctas->relkind = OBJECT_TABLE;
37096 					ctas->is_select_into = false;
37097 					/* cram additional flags into the IntoClause */
37098 					(yyvsp[(4) - (9)].into)->rel->relpersistence = (yyvsp[(2) - (9)].ival);
37099 					(yyvsp[(4) - (9)].into)->skipData = !((yyvsp[(9) - (9)].boolean));
37100 					(yyval.node) = (Node *) ctas;
37101 				}
37102     break;
37103 
37104   case 1408:
37105 /* Line 1792 of yacc.c  */
37106 #line 9639 "gram.y"
37107     { (yyval.list) = (yyvsp[(2) - (3)].list); }
37108     break;
37109 
37110   case 1409:
37111 /* Line 1792 of yacc.c  */
37112 #line 9640 "gram.y"
37113     { (yyval.list) = NIL; }
37114     break;
37115 
37116   case 1410:
37117 /* Line 1792 of yacc.c  */
37118 #line 9651 "gram.y"
37119     {
37120 						DeallocateStmt *n = makeNode(DeallocateStmt);
37121 						n->name = (yyvsp[(2) - (2)].str);
37122 						(yyval.node) = (Node *) n;
37123 					}
37124     break;
37125 
37126   case 1411:
37127 /* Line 1792 of yacc.c  */
37128 #line 9657 "gram.y"
37129     {
37130 						DeallocateStmt *n = makeNode(DeallocateStmt);
37131 						n->name = (yyvsp[(3) - (3)].str);
37132 						(yyval.node) = (Node *) n;
37133 					}
37134     break;
37135 
37136   case 1412:
37137 /* Line 1792 of yacc.c  */
37138 #line 9663 "gram.y"
37139     {
37140 						DeallocateStmt *n = makeNode(DeallocateStmt);
37141 						n->name = NULL;
37142 						(yyval.node) = (Node *) n;
37143 					}
37144     break;
37145 
37146   case 1413:
37147 /* Line 1792 of yacc.c  */
37148 #line 9669 "gram.y"
37149     {
37150 						DeallocateStmt *n = makeNode(DeallocateStmt);
37151 						n->name = NULL;
37152 						(yyval.node) = (Node *) n;
37153 					}
37154     break;
37155 
37156   case 1414:
37157 /* Line 1792 of yacc.c  */
37158 #line 9686 "gram.y"
37159     {
37160 					(yyvsp[(5) - (7)].istmt)->relation = (yyvsp[(4) - (7)].range);
37161 					(yyvsp[(5) - (7)].istmt)->onConflictClause = (yyvsp[(6) - (7)].onconflict);
37162 					(yyvsp[(5) - (7)].istmt)->returningList = (yyvsp[(7) - (7)].list);
37163 					(yyvsp[(5) - (7)].istmt)->withClause = (yyvsp[(1) - (7)].with);
37164 					(yyval.node) = (Node *) (yyvsp[(5) - (7)].istmt);
37165 				}
37166     break;
37167 
37168   case 1415:
37169 /* Line 1792 of yacc.c  */
37170 #line 9703 "gram.y"
37171     {
37172 					(yyval.range) = (yyvsp[(1) - (1)].range);
37173 				}
37174     break;
37175 
37176   case 1416:
37177 /* Line 1792 of yacc.c  */
37178 #line 9707 "gram.y"
37179     {
37180 					(yyvsp[(1) - (3)].range)->alias = makeAlias((yyvsp[(3) - (3)].str), NIL);
37181 					(yyval.range) = (yyvsp[(1) - (3)].range);
37182 				}
37183     break;
37184 
37185   case 1417:
37186 /* Line 1792 of yacc.c  */
37187 #line 9715 "gram.y"
37188     {
37189 					(yyval.istmt) = makeNode(InsertStmt);
37190 					(yyval.istmt)->cols = NIL;
37191 					(yyval.istmt)->selectStmt = (yyvsp[(1) - (1)].node);
37192 				}
37193     break;
37194 
37195   case 1418:
37196 /* Line 1792 of yacc.c  */
37197 #line 9721 "gram.y"
37198     {
37199 					(yyval.istmt) = makeNode(InsertStmt);
37200 					(yyval.istmt)->cols = (yyvsp[(2) - (4)].list);
37201 					(yyval.istmt)->selectStmt = (yyvsp[(4) - (4)].node);
37202 				}
37203     break;
37204 
37205   case 1419:
37206 /* Line 1792 of yacc.c  */
37207 #line 9727 "gram.y"
37208     {
37209 					(yyval.istmt) = makeNode(InsertStmt);
37210 					(yyval.istmt)->cols = NIL;
37211 					(yyval.istmt)->selectStmt = NULL;
37212 				}
37213     break;
37214 
37215   case 1420:
37216 /* Line 1792 of yacc.c  */
37217 #line 9736 "gram.y"
37218     { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); }
37219     break;
37220 
37221   case 1421:
37222 /* Line 1792 of yacc.c  */
37223 #line 9738 "gram.y"
37224     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); }
37225     break;
37226 
37227   case 1422:
37228 /* Line 1792 of yacc.c  */
37229 #line 9743 "gram.y"
37230     {
37231 					(yyval.target) = makeNode(ResTarget);
37232 					(yyval.target)->name = (yyvsp[(1) - (2)].str);
37233 					(yyval.target)->indirection = check_indirection((yyvsp[(2) - (2)].list), yyscanner);
37234 					(yyval.target)->val = NULL;
37235 					(yyval.target)->location = (yylsp[(1) - (2)]);
37236 				}
37237     break;
37238 
37239   case 1423:
37240 /* Line 1792 of yacc.c  */
37241 #line 9754 "gram.y"
37242     {
37243 					(yyval.onconflict) = makeNode(OnConflictClause);
37244 					(yyval.onconflict)->action = ONCONFLICT_UPDATE;
37245 					(yyval.onconflict)->infer = (yyvsp[(3) - (8)].infer);
37246 					(yyval.onconflict)->targetList = (yyvsp[(7) - (8)].list);
37247 					(yyval.onconflict)->whereClause = (yyvsp[(8) - (8)].node);
37248 					(yyval.onconflict)->location = (yylsp[(1) - (8)]);
37249 				}
37250     break;
37251 
37252   case 1424:
37253 /* Line 1792 of yacc.c  */
37254 #line 9764 "gram.y"
37255     {
37256 					(yyval.onconflict) = makeNode(OnConflictClause);
37257 					(yyval.onconflict)->action = ONCONFLICT_NOTHING;
37258 					(yyval.onconflict)->infer = (yyvsp[(3) - (5)].infer);
37259 					(yyval.onconflict)->targetList = NIL;
37260 					(yyval.onconflict)->whereClause = NULL;
37261 					(yyval.onconflict)->location = (yylsp[(1) - (5)]);
37262 				}
37263     break;
37264 
37265   case 1425:
37266 /* Line 1792 of yacc.c  */
37267 #line 9773 "gram.y"
37268     {
37269 					(yyval.onconflict) = NULL;
37270 				}
37271     break;
37272 
37273   case 1426:
37274 /* Line 1792 of yacc.c  */
37275 #line 9780 "gram.y"
37276     {
37277 					(yyval.infer) = makeNode(InferClause);
37278 					(yyval.infer)->indexElems = (yyvsp[(2) - (4)].list);
37279 					(yyval.infer)->whereClause = (yyvsp[(4) - (4)].node);
37280 					(yyval.infer)->conname = NULL;
37281 					(yyval.infer)->location = (yylsp[(1) - (4)]);
37282 				}
37283     break;
37284 
37285   case 1427:
37286 /* Line 1792 of yacc.c  */
37287 #line 9789 "gram.y"
37288     {
37289 					(yyval.infer) = makeNode(InferClause);
37290 					(yyval.infer)->indexElems = NIL;
37291 					(yyval.infer)->whereClause = NULL;
37292 					(yyval.infer)->conname = (yyvsp[(3) - (3)].str);
37293 					(yyval.infer)->location = (yylsp[(1) - (3)]);
37294 				}
37295     break;
37296 
37297   case 1428:
37298 /* Line 1792 of yacc.c  */
37299 #line 9797 "gram.y"
37300     {
37301 					(yyval.infer) = NULL;
37302 				}
37303     break;
37304 
37305   case 1429:
37306 /* Line 1792 of yacc.c  */
37307 #line 9803 "gram.y"
37308     { (yyval.list) = (yyvsp[(2) - (2)].list); }
37309     break;
37310 
37311   case 1430:
37312 /* Line 1792 of yacc.c  */
37313 #line 9804 "gram.y"
37314     { (yyval.list) = NIL; }
37315     break;
37316 
37317   case 1431:
37318 /* Line 1792 of yacc.c  */
37319 #line 9817 "gram.y"
37320     {
37321 					DeleteStmt *n = makeNode(DeleteStmt);
37322 					n->relation = (yyvsp[(4) - (7)].range);
37323 					n->usingClause = (yyvsp[(5) - (7)].list);
37324 					n->whereClause = (yyvsp[(6) - (7)].node);
37325 					n->returningList = (yyvsp[(7) - (7)].list);
37326 					n->withClause = (yyvsp[(1) - (7)].with);
37327 					(yyval.node) = (Node *)n;
37328 				}
37329     break;
37330 
37331   case 1432:
37332 /* Line 1792 of yacc.c  */
37333 #line 9829 "gram.y"
37334     { (yyval.list) = (yyvsp[(2) - (2)].list); }
37335     break;
37336 
37337   case 1433:
37338 /* Line 1792 of yacc.c  */
37339 #line 9830 "gram.y"
37340     { (yyval.list) = NIL; }
37341     break;
37342 
37343   case 1434:
37344 /* Line 1792 of yacc.c  */
37345 #line 9842 "gram.y"
37346     {
37347 					LockStmt *n = makeNode(LockStmt);
37348 
37349 					n->relations = (yyvsp[(3) - (5)].list);
37350 					n->mode = (yyvsp[(4) - (5)].ival);
37351 					n->nowait = (yyvsp[(5) - (5)].boolean);
37352 					(yyval.node) = (Node *)n;
37353 				}
37354     break;
37355 
37356   case 1435:
37357 /* Line 1792 of yacc.c  */
37358 #line 9852 "gram.y"
37359     { (yyval.ival) = (yyvsp[(2) - (3)].ival); }
37360     break;
37361 
37362   case 1436:
37363 /* Line 1792 of yacc.c  */
37364 #line 9853 "gram.y"
37365     { (yyval.ival) = AccessExclusiveLock; }
37366     break;
37367 
37368   case 1437:
37369 /* Line 1792 of yacc.c  */
37370 #line 9856 "gram.y"
37371     { (yyval.ival) = AccessShareLock; }
37372     break;
37373 
37374   case 1438:
37375 /* Line 1792 of yacc.c  */
37376 #line 9857 "gram.y"
37377     { (yyval.ival) = RowShareLock; }
37378     break;
37379 
37380   case 1439:
37381 /* Line 1792 of yacc.c  */
37382 #line 9858 "gram.y"
37383     { (yyval.ival) = RowExclusiveLock; }
37384     break;
37385 
37386   case 1440:
37387 /* Line 1792 of yacc.c  */
37388 #line 9859 "gram.y"
37389     { (yyval.ival) = ShareUpdateExclusiveLock; }
37390     break;
37391 
37392   case 1441:
37393 /* Line 1792 of yacc.c  */
37394 #line 9860 "gram.y"
37395     { (yyval.ival) = ShareLock; }
37396     break;
37397 
37398   case 1442:
37399 /* Line 1792 of yacc.c  */
37400 #line 9861 "gram.y"
37401     { (yyval.ival) = ShareRowExclusiveLock; }
37402     break;
37403 
37404   case 1443:
37405 /* Line 1792 of yacc.c  */
37406 #line 9862 "gram.y"
37407     { (yyval.ival) = ExclusiveLock; }
37408     break;
37409 
37410   case 1444:
37411 /* Line 1792 of yacc.c  */
37412 #line 9863 "gram.y"
37413     { (yyval.ival) = AccessExclusiveLock; }
37414     break;
37415 
37416   case 1445:
37417 /* Line 1792 of yacc.c  */
37418 #line 9866 "gram.y"
37419     { (yyval.boolean) = TRUE; }
37420     break;
37421 
37422   case 1446:
37423 /* Line 1792 of yacc.c  */
37424 #line 9867 "gram.y"
37425     { (yyval.boolean) = FALSE; }
37426     break;
37427 
37428   case 1447:
37429 /* Line 1792 of yacc.c  */
37430 #line 9871 "gram.y"
37431     { (yyval.ival) = LockWaitError; }
37432     break;
37433 
37434   case 1448:
37435 /* Line 1792 of yacc.c  */
37436 #line 9872 "gram.y"
37437     { (yyval.ival) = LockWaitSkip; }
37438     break;
37439 
37440   case 1449:
37441 /* Line 1792 of yacc.c  */
37442 #line 9873 "gram.y"
37443     { (yyval.ival) = LockWaitBlock; }
37444     break;
37445 
37446   case 1450:
37447 /* Line 1792 of yacc.c  */
37448 #line 9889 "gram.y"
37449     {
37450 					UpdateStmt *n = makeNode(UpdateStmt);
37451 					n->relation = (yyvsp[(3) - (8)].range);
37452 					n->targetList = (yyvsp[(5) - (8)].list);
37453 					n->fromClause = (yyvsp[(6) - (8)].list);
37454 					n->whereClause = (yyvsp[(7) - (8)].node);
37455 					n->returningList = (yyvsp[(8) - (8)].list);
37456 					n->withClause = (yyvsp[(1) - (8)].with);
37457 					(yyval.node) = (Node *)n;
37458 				}
37459     break;
37460 
37461   case 1451:
37462 /* Line 1792 of yacc.c  */
37463 #line 9902 "gram.y"
37464     { (yyval.list) = (yyvsp[(1) - (1)].list); }
37465     break;
37466 
37467   case 1452:
37468 /* Line 1792 of yacc.c  */
37469 #line 9903 "gram.y"
37470     { (yyval.list) = list_concat((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].list)); }
37471     break;
37472 
37473   case 1453:
37474 /* Line 1792 of yacc.c  */
37475 #line 9907 "gram.y"
37476     { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); }
37477     break;
37478 
37479   case 1454:
37480 /* Line 1792 of yacc.c  */
37481 #line 9908 "gram.y"
37482     { (yyval.list) = (yyvsp[(1) - (1)].list); }
37483     break;
37484 
37485   case 1455:
37486 /* Line 1792 of yacc.c  */
37487 #line 9913 "gram.y"
37488     {
37489 					(yyval.target) = (yyvsp[(1) - (3)].target);
37490 					(yyval.target)->val = (Node *) (yyvsp[(3) - (3)].node);
37491 				}
37492     break;
37493 
37494   case 1456:
37495 /* Line 1792 of yacc.c  */
37496 #line 9929 "gram.y"
37497     {
37498 					ListCell *col_cell;
37499 					ListCell *val_cell;
37500 
37501 					/*
37502 					 * Break the ctext_row apart, merge individual expressions
37503 					 * into the destination ResTargets.  This is semantically
37504 					 * equivalent to, and much cheaper to process than, the
37505 					 * general case.
37506 					 */
37507 					if (list_length((yyvsp[(2) - (5)].list)) != list_length((yyvsp[(5) - (5)].list)))
37508 						ereport(ERROR,
37509 								(errcode(ERRCODE_SYNTAX_ERROR),
37510 								 errmsg("number of columns does not match number of values"),
37511 								 parser_errposition((yylsp[(5) - (5)]))));
37512 					forboth(col_cell, (yyvsp[(2) - (5)].list), val_cell, (yyvsp[(5) - (5)].list))
37513 					{
37514 						ResTarget *res_col = (ResTarget *) lfirst(col_cell);
37515 						Node *res_val = (Node *) lfirst(val_cell);
37516 
37517 						res_col->val = res_val;
37518 					}
37519 
37520 					(yyval.list) = (yyvsp[(2) - (5)].list);
37521 				}
37522     break;
37523 
37524   case 1457:
37525 /* Line 1792 of yacc.c  */
37526 #line 9955 "gram.y"
37527     {
37528 					SubLink *sl = makeNode(SubLink);
37529 					int ncolumns = list_length((yyvsp[(2) - (5)].list));
37530 					int i = 1;
37531 					ListCell *col_cell;
37532 
37533 					/* First, convert bare SelectStmt into a SubLink */
37534 					sl->subLinkType = MULTIEXPR_SUBLINK;
37535 					sl->subLinkId = 0;		/* will be assigned later */
37536 					sl->testexpr = NULL;
37537 					sl->operName = NIL;
37538 					sl->subselect = (yyvsp[(5) - (5)].node);
37539 					sl->location = (yylsp[(5) - (5)]);
37540 
37541 					/* Create a MultiAssignRef source for each target */
37542 					foreach(col_cell, (yyvsp[(2) - (5)].list))
37543 					{
37544 						ResTarget *res_col = (ResTarget *) lfirst(col_cell);
37545 						MultiAssignRef *r = makeNode(MultiAssignRef);
37546 
37547 						r->source = (Node *) sl;
37548 						r->colno = i;
37549 						r->ncolumns = ncolumns;
37550 						res_col->val = (Node *) r;
37551 						i++;
37552 					}
37553 
37554 					(yyval.list) = (yyvsp[(2) - (5)].list);
37555 				}
37556     break;
37557 
37558   case 1458:
37559 /* Line 1792 of yacc.c  */
37560 #line 9988 "gram.y"
37561     {
37562 					(yyval.target) = makeNode(ResTarget);
37563 					(yyval.target)->name = (yyvsp[(1) - (2)].str);
37564 					(yyval.target)->indirection = check_indirection((yyvsp[(2) - (2)].list), yyscanner);
37565 					(yyval.target)->val = NULL;	/* upper production sets this */
37566 					(yyval.target)->location = (yylsp[(1) - (2)]);
37567 				}
37568     break;
37569 
37570   case 1459:
37571 /* Line 1792 of yacc.c  */
37572 #line 9998 "gram.y"
37573     { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); }
37574     break;
37575 
37576   case 1460:
37577 /* Line 1792 of yacc.c  */
37578 #line 9999 "gram.y"
37579     { (yyval.list) = lappend((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].target)); }
37580     break;
37581 
37582   case 1461:
37583 /* Line 1792 of yacc.c  */
37584 #line 10010 "gram.y"
37585     {
37586 					DeclareCursorStmt *n = makeNode(DeclareCursorStmt);
37587 					n->portalname = (yyvsp[(2) - (7)].str);
37588 					/* currently we always set FAST_PLAN option */
37589 					n->options = (yyvsp[(3) - (7)].ival) | (yyvsp[(5) - (7)].ival) | CURSOR_OPT_FAST_PLAN;
37590 					n->query = (yyvsp[(7) - (7)].node);
37591 					(yyval.node) = (Node *)n;
37592 				}
37593     break;
37594 
37595   case 1462:
37596 /* Line 1792 of yacc.c  */
37597 #line 10020 "gram.y"
37598     { (yyval.str) = (yyvsp[(1) - (1)].str); }
37599     break;
37600 
37601   case 1463:
37602 /* Line 1792 of yacc.c  */
37603 #line 10023 "gram.y"
37604     { (yyval.ival) = 0; }
37605     break;
37606 
37607   case 1464:
37608 /* Line 1792 of yacc.c  */
37609 #line 10024 "gram.y"
37610     { (yyval.ival) = (yyvsp[(1) - (3)].ival) | CURSOR_OPT_NO_SCROLL; }
37611     break;
37612 
37613   case 1465:
37614 /* Line 1792 of yacc.c  */
37615 #line 10025 "gram.y"
37616     { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_SCROLL; }
37617     break;
37618 
37619   case 1466:
37620 /* Line 1792 of yacc.c  */
37621 #line 10026 "gram.y"
37622     { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_BINARY; }
37623     break;
37624 
37625   case 1467:
37626 /* Line 1792 of yacc.c  */
37627 #line 10027 "gram.y"
37628     { (yyval.ival) = (yyvsp[(1) - (2)].ival) | CURSOR_OPT_INSENSITIVE; }
37629     break;
37630 
37631   case 1468:
37632 /* Line 1792 of yacc.c  */
37633 #line 10030 "gram.y"
37634     { (yyval.ival) = 0; }
37635     break;
37636 
37637   case 1469:
37638 /* Line 1792 of yacc.c  */
37639 #line 10031 "gram.y"
37640     { (yyval.ival) = CURSOR_OPT_HOLD; }
37641     break;
37642 
37643   case 1470:
37644 /* Line 1792 of yacc.c  */
37645 #line 10032 "gram.y"
37646     { (yyval.ival) = 0; }
37647     break;
37648 
37649   case 1473:
37650 /* Line 1792 of yacc.c  */
37651 #line 10085 "gram.y"
37652     { (yyval.node) = (yyvsp[(2) - (3)].node); }
37653     break;
37654 
37655   case 1474:
37656 /* Line 1792 of yacc.c  */
37657 #line 10086 "gram.y"
37658     { (yyval.node) = (yyvsp[(2) - (3)].node); }
37659     break;
37660 
37661   case 1475:
37662 /* Line 1792 of yacc.c  */
37663 #line 10101 "gram.y"
37664     { (yyval.node) = (yyvsp[(1) - (1)].node); }
37665     break;
37666 
37667   case 1476:
37668 /* Line 1792 of yacc.c  */
37669 #line 10103 "gram.y"
37670     {
37671 					insertSelectOptions((SelectStmt *) (yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].list), NIL,
37672 										NULL, NULL, NULL,
37673 										yyscanner);
37674 					(yyval.node) = (yyvsp[(1) - (2)].node);
37675 				}
37676     break;
37677 
37678   case 1477:
37679 /* Line 1792 of yacc.c  */
37680 #line 10110 "gram.y"
37681     {
37682 					insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(3) - (4)].list),
37683 										list_nth((yyvsp[(4) - (4)].list), 0), list_nth((yyvsp[(4) - (4)].list), 1),
37684 										NULL,
37685 										yyscanner);
37686 					(yyval.node) = (yyvsp[(1) - (4)].node);
37687 				}
37688     break;
37689 
37690   case 1478:
37691 /* Line 1792 of yacc.c  */
37692 #line 10118 "gram.y"
37693     {
37694 					insertSelectOptions((SelectStmt *) (yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].list), (yyvsp[(4) - (4)].list),
37695 										list_nth((yyvsp[(3) - (4)].list), 0), list_nth((yyvsp[(3) - (4)].list), 1),
37696 										NULL,
37697 										yyscanner);
37698 					(yyval.node) = (yyvsp[(1) - (4)].node);
37699 				}
37700     break;
37701 
37702   case 1479:
37703 /* Line 1792 of yacc.c  */
37704 #line 10126 "gram.y"
37705     {
37706 					insertSelectOptions((SelectStmt *) (yyvsp[(2) - (2)].node), NULL, NIL,
37707 										NULL, NULL,
37708 										(yyvsp[(1) - (2)].with),
37709 										yyscanner);
37710 					(yyval.node) = (yyvsp[(2) - (2)].node);
37711 				}
37712     break;
37713 
37714   case 1480:
37715 /* Line 1792 of yacc.c  */
37716 #line 10134 "gram.y"
37717     {
37718 					insertSelectOptions((SelectStmt *) (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].list), NIL,
37719 										NULL, NULL,
37720 										(yyvsp[(1) - (3)].with),
37721 										yyscanner);
37722 					(yyval.node) = (yyvsp[(2) - (3)].node);
37723 				}
37724     break;
37725 
37726   case 1481:
37727 /* Line 1792 of yacc.c  */
37728 #line 10142 "gram.y"
37729     {
37730 					insertSelectOptions((SelectStmt *) (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].list), (yyvsp[(4) - (5)].list),
37731 										list_nth((yyvsp[(5) - (5)].list), 0), list_nth((yyvsp[(5) - (5)].list), 1),
37732 										(yyvsp[(1) - (5)].with),
37733 										yyscanner);
37734 					(yyval.node) = (yyvsp[(2) - (5)].node);
37735 				}
37736     break;
37737 
37738   case 1482:
37739 /* Line 1792 of yacc.c  */
37740 #line 10150 "gram.y"
37741     {
37742 					insertSelectOptions((SelectStmt *) (yyvsp[(2) - (5)].node), (yyvsp[(3) - (5)].list), (yyvsp[(5) - (5)].list),
37743 										list_nth((yyvsp[(4) - (5)].list), 0), list_nth((yyvsp[(4) - (5)].list), 1),
37744 										(yyvsp[(1) - (5)].with),
37745 										yyscanner);
37746 					(yyval.node) = (yyvsp[(2) - (5)].node);
37747 				}
37748     break;
37749 
37750   case 1483:
37751 /* Line 1792 of yacc.c  */
37752 #line 10160 "gram.y"
37753     { (yyval.node) = (yyvsp[(1) - (1)].node); }
37754     break;
37755 
37756   case 1484:
37757 /* Line 1792 of yacc.c  */
37758 #line 10161 "gram.y"
37759     { (yyval.node) = (yyvsp[(1) - (1)].node); }
37760     break;
37761 
37762   case 1485:
37763 /* Line 1792 of yacc.c  */
37764 #line 10191 "gram.y"
37765     {
37766 					SelectStmt *n = makeNode(SelectStmt);
37767 					n->targetList = (yyvsp[(3) - (9)].list);
37768 					n->intoClause = (yyvsp[(4) - (9)].into);
37769 					n->fromClause = (yyvsp[(5) - (9)].list);
37770 					n->whereClause = (yyvsp[(6) - (9)].node);
37771 					n->groupClause = (yyvsp[(7) - (9)].list);
37772 					n->havingClause = (yyvsp[(8) - (9)].node);
37773 					n->windowClause = (yyvsp[(9) - (9)].list);
37774 					(yyval.node) = (Node *)n;
37775 				}
37776     break;
37777 
37778   case 1486:
37779 /* Line 1792 of yacc.c  */
37780 #line 10205 "gram.y"
37781     {
37782 					SelectStmt *n = makeNode(SelectStmt);
37783 					n->distinctClause = (yyvsp[(2) - (9)].list);
37784 					n->targetList = (yyvsp[(3) - (9)].list);
37785 					n->intoClause = (yyvsp[(4) - (9)].into);
37786 					n->fromClause = (yyvsp[(5) - (9)].list);
37787 					n->whereClause = (yyvsp[(6) - (9)].node);
37788 					n->groupClause = (yyvsp[(7) - (9)].list);
37789 					n->havingClause = (yyvsp[(8) - (9)].node);
37790 					n->windowClause = (yyvsp[(9) - (9)].list);
37791 					(yyval.node) = (Node *)n;
37792 				}
37793     break;
37794 
37795   case 1487:
37796 /* Line 1792 of yacc.c  */
37797 #line 10217 "gram.y"
37798     { (yyval.node) = (yyvsp[(1) - (1)].node); }
37799     break;
37800 
37801   case 1488:
37802 /* Line 1792 of yacc.c  */
37803 #line 10219 "gram.y"
37804     {
37805 					/* same as SELECT * FROM relation_expr */
37806 					ColumnRef *cr = makeNode(ColumnRef);
37807 					ResTarget *rt = makeNode(ResTarget);
37808 					SelectStmt *n = makeNode(SelectStmt);
37809 
37810 					cr->fields = list_make1(makeNode(A_Star));
37811 					cr->location = -1;
37812 
37813 					rt->name = NULL;
37814 					rt->indirection = NIL;
37815 					rt->val = (Node *)cr;
37816 					rt->location = -1;
37817 
37818 					n->targetList = list_make1(rt);
37819 					n->fromClause = list_make1((yyvsp[(2) - (2)].range));
37820 					(yyval.node) = (Node *)n;
37821 				}
37822     break;
37823 
37824   case 1489:
37825 /* Line 1792 of yacc.c  */
37826 #line 10238 "gram.y"
37827     {
37828 					(yyval.node) = makeSetOp(SETOP_UNION, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
37829 				}
37830     break;
37831 
37832   case 1490:
37833 /* Line 1792 of yacc.c  */
37834 #line 10242 "gram.y"
37835     {
37836 					(yyval.node) = makeSetOp(SETOP_INTERSECT, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
37837 				}
37838     break;
37839 
37840   case 1491:
37841 /* Line 1792 of yacc.c  */
37842 #line 10246 "gram.y"
37843     {
37844 					(yyval.node) = makeSetOp(SETOP_EXCEPT, (yyvsp[(3) - (4)].boolean), (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node));
37845 				}
37846     break;
37847 
37848   case 1492:
37849 /* Line 1792 of yacc.c  */
37850 #line 10263 "gram.y"
37851     {
37852 				(yyval.with) = makeNode(WithClause);
37853 				(yyval.with)->ctes = (yyvsp[(2) - (2)].list);
37854 				(yyval.with)->recursive = false;
37855 				(yyval.with)->location = (yylsp[(1) - (2)]);
37856 			}
37857     break;
37858 
37859   case 1493:
37860 /* Line 1792 of yacc.c  */
37861 #line 10270 "gram.y"
37862     {
37863 				(yyval.with) = makeNode(WithClause);
37864 				(yyval.with)->ctes = (yyvsp[(2) - (2)].list);
37865 				(yyval.with)->recursive = false;
37866 				(yyval.with)->location = (yylsp[(1) - (2)]);
37867 			}
37868     break;
37869 
37870   case 1494:
37871 /* Line 1792 of yacc.c  */
37872 #line 10277 "gram.y"
37873     {
37874 				(yyval.with) = makeNode(WithClause);
37875 				(yyval.with)->ctes = (yyvsp[(3) - (3)].list);
37876 				(yyval.with)->recursive = true;
37877 				(yyval.with)->location = (yylsp[(1) - (3)]);
37878 			}
37879     break;
37880 
37881   case 1495:
37882 /* Line 1792 of yacc.c  */
37883 #line 10286 "gram.y"
37884     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
37885     break;
37886 
37887   case 1496:
37888 /* Line 1792 of yacc.c  */
37889 #line 10287 "gram.y"
37890     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
37891     break;
37892 
37893   case 1497:
37894 /* Line 1792 of yacc.c  */
37895 #line 10291 "gram.y"
37896     {
37897 				CommonTableExpr *n = makeNode(CommonTableExpr);
37898 				n->ctename = (yyvsp[(1) - (6)].str);
37899 				n->aliascolnames = (yyvsp[(2) - (6)].list);
37900 				n->ctequery = (yyvsp[(5) - (6)].node);
37901 				n->location = (yylsp[(1) - (6)]);
37902 				(yyval.node) = (Node *) n;
37903 			}
37904     break;
37905 
37906   case 1498:
37907 /* Line 1792 of yacc.c  */
37908 #line 10302 "gram.y"
37909     { (yyval.with) = (yyvsp[(1) - (1)].with); }
37910     break;
37911 
37912   case 1499:
37913 /* Line 1792 of yacc.c  */
37914 #line 10303 "gram.y"
37915     { (yyval.with) = NULL; }
37916     break;
37917 
37918   case 1500:
37919 /* Line 1792 of yacc.c  */
37920 #line 10308 "gram.y"
37921     {
37922 					(yyval.into) = makeNode(IntoClause);
37923 					(yyval.into)->rel = (yyvsp[(2) - (2)].range);
37924 					(yyval.into)->colNames = NIL;
37925 					(yyval.into)->options = NIL;
37926 					(yyval.into)->onCommit = ONCOMMIT_NOOP;
37927 					(yyval.into)->tableSpaceName = NULL;
37928 					(yyval.into)->viewQuery = NULL;
37929 					(yyval.into)->skipData = false;
37930 				}
37931     break;
37932 
37933   case 1501:
37934 /* Line 1792 of yacc.c  */
37935 #line 10319 "gram.y"
37936     { (yyval.into) = NULL; }
37937     break;
37938 
37939   case 1502:
37940 /* Line 1792 of yacc.c  */
37941 #line 10328 "gram.y"
37942     {
37943 					(yyval.range) = (yyvsp[(3) - (3)].range);
37944 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37945 				}
37946     break;
37947 
37948   case 1503:
37949 /* Line 1792 of yacc.c  */
37950 #line 10333 "gram.y"
37951     {
37952 					(yyval.range) = (yyvsp[(3) - (3)].range);
37953 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37954 				}
37955     break;
37956 
37957   case 1504:
37958 /* Line 1792 of yacc.c  */
37959 #line 10338 "gram.y"
37960     {
37961 					(yyval.range) = (yyvsp[(4) - (4)].range);
37962 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37963 				}
37964     break;
37965 
37966   case 1505:
37967 /* Line 1792 of yacc.c  */
37968 #line 10343 "gram.y"
37969     {
37970 					(yyval.range) = (yyvsp[(4) - (4)].range);
37971 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37972 				}
37973     break;
37974 
37975   case 1506:
37976 /* Line 1792 of yacc.c  */
37977 #line 10348 "gram.y"
37978     {
37979 					ereport(WARNING,
37980 							(errmsg("GLOBAL is deprecated in temporary table creation"),
37981 							 parser_errposition((yylsp[(1) - (4)]))));
37982 					(yyval.range) = (yyvsp[(4) - (4)].range);
37983 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37984 				}
37985     break;
37986 
37987   case 1507:
37988 /* Line 1792 of yacc.c  */
37989 #line 10356 "gram.y"
37990     {
37991 					ereport(WARNING,
37992 							(errmsg("GLOBAL is deprecated in temporary table creation"),
37993 							 parser_errposition((yylsp[(1) - (4)]))));
37994 					(yyval.range) = (yyvsp[(4) - (4)].range);
37995 					(yyval.range)->relpersistence = RELPERSISTENCE_TEMP;
37996 				}
37997     break;
37998 
37999   case 1508:
38000 /* Line 1792 of yacc.c  */
38001 #line 10364 "gram.y"
38002     {
38003 					(yyval.range) = (yyvsp[(3) - (3)].range);
38004 					(yyval.range)->relpersistence = RELPERSISTENCE_UNLOGGED;
38005 				}
38006     break;
38007 
38008   case 1509:
38009 /* Line 1792 of yacc.c  */
38010 #line 10369 "gram.y"
38011     {
38012 					(yyval.range) = (yyvsp[(2) - (2)].range);
38013 					(yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT;
38014 				}
38015     break;
38016 
38017   case 1510:
38018 /* Line 1792 of yacc.c  */
38019 #line 10374 "gram.y"
38020     {
38021 					(yyval.range) = (yyvsp[(1) - (1)].range);
38022 					(yyval.range)->relpersistence = RELPERSISTENCE_PERMANENT;
38023 				}
38024     break;
38025 
38026   case 1511:
38027 /* Line 1792 of yacc.c  */
38028 #line 10380 "gram.y"
38029     {}
38030     break;
38031 
38032   case 1512:
38033 /* Line 1792 of yacc.c  */
38034 #line 10381 "gram.y"
38035     {}
38036     break;
38037 
38038   case 1513:
38039 /* Line 1792 of yacc.c  */
38040 #line 10385 "gram.y"
38041     { (yyval.boolean) = TRUE; }
38042     break;
38043 
38044   case 1514:
38045 /* Line 1792 of yacc.c  */
38046 #line 10386 "gram.y"
38047     { (yyval.boolean) = FALSE; }
38048     break;
38049 
38050   case 1515:
38051 /* Line 1792 of yacc.c  */
38052 #line 10387 "gram.y"
38053     { (yyval.boolean) = FALSE; }
38054     break;
38055 
38056   case 1516:
38057 /* Line 1792 of yacc.c  */
38058 #line 10394 "gram.y"
38059     { (yyval.list) = list_make1(NIL); }
38060     break;
38061 
38062   case 1517:
38063 /* Line 1792 of yacc.c  */
38064 #line 10395 "gram.y"
38065     { (yyval.list) = (yyvsp[(4) - (5)].list); }
38066     break;
38067 
38068   case 1518:
38069 /* Line 1792 of yacc.c  */
38070 #line 10399 "gram.y"
38071     { (yyval.list) = NIL;}
38072     break;
38073 
38074   case 1519:
38075 /* Line 1792 of yacc.c  */
38076 #line 10400 "gram.y"
38077     { (yyval.list) = NIL; }
38078     break;
38079 
38080   case 1520:
38081 /* Line 1792 of yacc.c  */
38082 #line 10404 "gram.y"
38083     { (yyval.list) = (yyvsp[(1) - (1)].list);}
38084     break;
38085 
38086   case 1521:
38087 /* Line 1792 of yacc.c  */
38088 #line 10405 "gram.y"
38089     { (yyval.list) = NIL; }
38090     break;
38091 
38092   case 1522:
38093 /* Line 1792 of yacc.c  */
38094 #line 10409 "gram.y"
38095     { (yyval.list) = (yyvsp[(3) - (3)].list); }
38096     break;
38097 
38098   case 1523:
38099 /* Line 1792 of yacc.c  */
38100 #line 10413 "gram.y"
38101     { (yyval.list) = list_make1((yyvsp[(1) - (1)].sortby)); }
38102     break;
38103 
38104   case 1524:
38105 /* Line 1792 of yacc.c  */
38106 #line 10414 "gram.y"
38107     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].sortby)); }
38108     break;
38109 
38110   case 1525:
38111 /* Line 1792 of yacc.c  */
38112 #line 10418 "gram.y"
38113     {
38114 					(yyval.sortby) = makeNode(SortBy);
38115 					(yyval.sortby)->node = (yyvsp[(1) - (4)].node);
38116 					(yyval.sortby)->sortby_dir = SORTBY_USING;
38117 					(yyval.sortby)->sortby_nulls = (yyvsp[(4) - (4)].ival);
38118 					(yyval.sortby)->useOp = (yyvsp[(3) - (4)].list);
38119 					(yyval.sortby)->location = (yylsp[(3) - (4)]);
38120 				}
38121     break;
38122 
38123   case 1526:
38124 /* Line 1792 of yacc.c  */
38125 #line 10427 "gram.y"
38126     {
38127 					(yyval.sortby) = makeNode(SortBy);
38128 					(yyval.sortby)->node = (yyvsp[(1) - (3)].node);
38129 					(yyval.sortby)->sortby_dir = (yyvsp[(2) - (3)].ival);
38130 					(yyval.sortby)->sortby_nulls = (yyvsp[(3) - (3)].ival);
38131 					(yyval.sortby)->useOp = NIL;
38132 					(yyval.sortby)->location = -1;		/* no operator */
38133 				}
38134     break;
38135 
38136   case 1527:
38137 /* Line 1792 of yacc.c  */
38138 #line 10439 "gram.y"
38139     { (yyval.list) = list_make2((yyvsp[(2) - (2)].node), (yyvsp[(1) - (2)].node)); }
38140     break;
38141 
38142   case 1528:
38143 /* Line 1792 of yacc.c  */
38144 #line 10440 "gram.y"
38145     { (yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node)); }
38146     break;
38147 
38148   case 1529:
38149 /* Line 1792 of yacc.c  */
38150 #line 10441 "gram.y"
38151     { (yyval.list) = list_make2(NULL, (yyvsp[(1) - (1)].node)); }
38152     break;
38153 
38154   case 1530:
38155 /* Line 1792 of yacc.c  */
38156 #line 10442 "gram.y"
38157     { (yyval.list) = list_make2((yyvsp[(1) - (1)].node), NULL); }
38158     break;
38159 
38160   case 1531:
38161 /* Line 1792 of yacc.c  */
38162 #line 10446 "gram.y"
38163     { (yyval.list) = (yyvsp[(1) - (1)].list); }
38164     break;
38165 
38166   case 1532:
38167 /* Line 1792 of yacc.c  */
38168 #line 10447 "gram.y"
38169     { (yyval.list) = list_make2(NULL,NULL); }
38170     break;
38171 
38172   case 1533:
38173 /* Line 1792 of yacc.c  */
38174 #line 10452 "gram.y"
38175     { (yyval.node) = (yyvsp[(2) - (2)].node); }
38176     break;
38177 
38178   case 1534:
38179 /* Line 1792 of yacc.c  */
38180 #line 10454 "gram.y"
38181     {
38182 					/* Disabled because it was too confusing, bjm 2002-02-18 */
38183 					ereport(ERROR,
38184 							(errcode(ERRCODE_SYNTAX_ERROR),
38185 							 errmsg("LIMIT #,# syntax is not supported"),
38186 							 errhint("Use separate LIMIT and OFFSET clauses."),
38187 							 parser_errposition((yylsp[(1) - (4)]))));
38188 				}
38189     break;
38190 
38191   case 1535:
38192 /* Line 1792 of yacc.c  */
38193 #line 10464 "gram.y"
38194     { (yyval.node) = (yyvsp[(3) - (5)].node); }
38195     break;
38196 
38197   case 1536:
38198 /* Line 1792 of yacc.c  */
38199 #line 10469 "gram.y"
38200     { (yyval.node) = (yyvsp[(2) - (2)].node); }
38201     break;
38202 
38203   case 1537:
38204 /* Line 1792 of yacc.c  */
38205 #line 10472 "gram.y"
38206     { (yyval.node) = (yyvsp[(2) - (3)].node); }
38207     break;
38208 
38209   case 1538:
38210 /* Line 1792 of yacc.c  */
38211 #line 10476 "gram.y"
38212     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38213     break;
38214 
38215   case 1539:
38216 /* Line 1792 of yacc.c  */
38217 #line 10478 "gram.y"
38218     {
38219 					/* LIMIT ALL is represented as a NULL constant */
38220 					(yyval.node) = makeNullAConst((yylsp[(1) - (1)]));
38221 				}
38222     break;
38223 
38224   case 1540:
38225 /* Line 1792 of yacc.c  */
38226 #line 10485 "gram.y"
38227     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38228     break;
38229 
38230   case 1541:
38231 /* Line 1792 of yacc.c  */
38232 #line 10495 "gram.y"
38233     { (yyval.node) = makeIntConst((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)])); }
38234     break;
38235 
38236   case 1542:
38237 /* Line 1792 of yacc.c  */
38238 #line 10496 "gram.y"
38239     { (yyval.node) = (yyvsp[(2) - (3)].node); }
38240     break;
38241 
38242   case 1543:
38243 /* Line 1792 of yacc.c  */
38244 #line 10497 "gram.y"
38245     { (yyval.node) = makeIntConst(1, -1); }
38246     break;
38247 
38248   case 1544:
38249 /* Line 1792 of yacc.c  */
38250 #line 10505 "gram.y"
38251     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38252     break;
38253 
38254   case 1545:
38255 /* Line 1792 of yacc.c  */
38256 #line 10509 "gram.y"
38257     { (yyval.ival) = 0; }
38258     break;
38259 
38260   case 1546:
38261 /* Line 1792 of yacc.c  */
38262 #line 10510 "gram.y"
38263     { (yyval.ival) = 0; }
38264     break;
38265 
38266   case 1547:
38267 /* Line 1792 of yacc.c  */
38268 #line 10513 "gram.y"
38269     { (yyval.ival) = 0; }
38270     break;
38271 
38272   case 1548:
38273 /* Line 1792 of yacc.c  */
38274 #line 10514 "gram.y"
38275     { (yyval.ival) = 0; }
38276     break;
38277 
38278   case 1549:
38279 /* Line 1792 of yacc.c  */
38280 #line 10539 "gram.y"
38281     { (yyval.list) = (yyvsp[(3) - (3)].list); }
38282     break;
38283 
38284   case 1550:
38285 /* Line 1792 of yacc.c  */
38286 #line 10540 "gram.y"
38287     { (yyval.list) = NIL; }
38288     break;
38289 
38290   case 1551:
38291 /* Line 1792 of yacc.c  */
38292 #line 10544 "gram.y"
38293     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
38294     break;
38295 
38296   case 1552:
38297 /* Line 1792 of yacc.c  */
38298 #line 10545 "gram.y"
38299     { (yyval.list) = lappend((yyvsp[(1) - (3)].list),(yyvsp[(3) - (3)].node)); }
38300     break;
38301 
38302   case 1553:
38303 /* Line 1792 of yacc.c  */
38304 #line 10549 "gram.y"
38305     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38306     break;
38307 
38308   case 1554:
38309 /* Line 1792 of yacc.c  */
38310 #line 10550 "gram.y"
38311     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38312     break;
38313 
38314   case 1555:
38315 /* Line 1792 of yacc.c  */
38316 #line 10551 "gram.y"
38317     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38318     break;
38319 
38320   case 1556:
38321 /* Line 1792 of yacc.c  */
38322 #line 10552 "gram.y"
38323     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38324     break;
38325 
38326   case 1557:
38327 /* Line 1792 of yacc.c  */
38328 #line 10553 "gram.y"
38329     { (yyval.node) = (yyvsp[(1) - (1)].node); }
38330     break;
38331 
38332   case 1558:
38333 /* Line 1792 of yacc.c  */
38334 #line 10558 "gram.y"
38335     {
38336 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_EMPTY, NIL, (yylsp[(1) - (2)]));
38337 				}
38338     break;
38339 
38340   case 1559:
38341 /* Line 1792 of yacc.c  */
38342 #line 10571 "gram.y"
38343     {
38344 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_ROLLUP, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
38345 				}
38346     break;
38347 
38348   case 1560:
38349 /* Line 1792 of yacc.c  */
38350 #line 10578 "gram.y"
38351     {
38352 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_CUBE, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
38353 				}
38354     break;
38355 
38356   case 1561:
38357 /* Line 1792 of yacc.c  */
38358 #line 10585 "gram.y"
38359     {
38360 					(yyval.node) = (Node *) makeGroupingSet(GROUPING_SET_SETS, (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)]));
38361 				}
38362     break;
38363 
38364   case 1562:
38365 /* Line 1792 of yacc.c  */
38366 #line 10591 "gram.y"
38367     { (yyval.node) = (yyvsp[(2) - (2)].node); }
38368     break;
38369 
38370   case 1563:
38371 /* Line 1792 of yacc.c  */
38372 #line 10592 "gram.y"
38373     { (yyval.node) = NULL; }
38374     break;
38375 
38376   case 1564:
38377 /* Line 1792 of yacc.c  */
38378 #line 10596 "gram.y"
38379     { (yyval.list) = (yyvsp[(1) - (1)].list); }
38380     break;
38381 
38382   case 1565:
38383 /* Line 1792 of yacc.c  */
38384 #line 10597 "gram.y"
38385     { (yyval.list) = NIL; }
38386     break;
38387 
38388   case 1566:
38389 /* Line 1792 of yacc.c  */
38390 #line 10601 "gram.y"
38391     { (yyval.list) = (yyvsp[(1) - (1)].list); }
38392     break;
38393 
38394   case 1567:
38395 /* Line 1792 of yacc.c  */
38396 #line 10602 "gram.y"
38397     { (yyval.list) = NIL; }
38398     break;
38399 
38400   case 1568:
38401 /* Line 1792 of yacc.c  */
38402 #line 10606 "gram.y"
38403     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
38404     break;
38405 
38406   case 1569:
38407 /* Line 1792 of yacc.c  */
38408 #line 10607 "gram.y"
38409     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); }
38410     break;
38411 
38412   case 1570:
38413 /* Line 1792 of yacc.c  */
38414 #line 10612 "gram.y"
38415     {
38416 					LockingClause *n = makeNode(LockingClause);
38417 					n->lockedRels = (yyvsp[(2) - (3)].list);
38418 					n->strength = (yyvsp[(1) - (3)].ival);
38419 					n->waitPolicy = (yyvsp[(3) - (3)].ival);
38420 					(yyval.node) = (Node *) n;
38421 				}
38422     break;
38423 
38424   case 1571:
38425 /* Line 1792 of yacc.c  */
38426 #line 10622 "gram.y"
38427     { (yyval.ival) = LCS_FORUPDATE; }
38428     break;
38429 
38430   case 1572:
38431 /* Line 1792 of yacc.c  */
38432 #line 10623 "gram.y"
38433     { (yyval.ival) = LCS_FORNOKEYUPDATE; }
38434     break;
38435 
38436   case 1573:
38437 /* Line 1792 of yacc.c  */
38438 #line 10624 "gram.y"
38439     { (yyval.ival) = LCS_FORSHARE; }
38440     break;
38441 
38442   case 1574:
38443 /* Line 1792 of yacc.c  */
38444 #line 10625 "gram.y"
38445     { (yyval.ival) = LCS_FORKEYSHARE; }
38446     break;
38447 
38448   case 1575:
38449 /* Line 1792 of yacc.c  */
38450 #line 10629 "gram.y"
38451     { (yyval.list) = (yyvsp[(2) - (2)].list); }
38452     break;
38453 
38454   case 1576:
38455 /* Line 1792 of yacc.c  */
38456 #line 10630 "gram.y"
38457     { (yyval.list) = NIL; }
38458     break;
38459 
38460   case 1577:
38461 /* Line 1792 of yacc.c  */
38462 #line 10636 "gram.y"
38463     {
38464 					SelectStmt *n = makeNode(SelectStmt);
38465 					n->valuesLists = list_make1((yyvsp[(2) - (2)].list));
38466 					(yyval.node) = (Node *) n;
38467 				}
38468     break;
38469 
38470   case 1578:
38471 /* Line 1792 of yacc.c  */
38472 #line 10642 "gram.y"
38473     {
38474 					SelectStmt *n = (SelectStmt *) (yyvsp[(1) - (3)].node);
38475 					n->valuesLists = lappend(n->valuesLists, (yyvsp[(3) - (3)].list));
38476 					(yyval.node) = (Node *) n;
38477 				}
38478     break;
38479 
38480   case 1579:
38481 /* Line 1792 of yacc.c  */
38482 #line 10659 "gram.y"
38483     { (yyval.list) = (yyvsp[(2) - (2)].list); }
38484     break;
38485 
38486   case 1580:
38487 /* Line 1792 of yacc.c  */
38488 #line 10660 "gram.y"
38489     { (yyval.list) = NIL; }
38490     break;
38491 
38492   case 1581:
38493 /* Line 1792 of yacc.c  */
38494 #line 10664 "gram.y"
38495     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
38496     break;
38497 
38498   case 1582:
38499 /* Line 1792 of yacc.c  */
38500 #line 10665 "gram.y"
38501     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
38502     break;
38503 
38504   case 1583:
38505 /* Line 1792 of yacc.c  */
38506 #line 10672 "gram.y"
38507     {
38508 					(yyvsp[(1) - (2)].range)->alias = (yyvsp[(2) - (2)].alias);
38509 					(yyval.node) = (Node *) (yyvsp[(1) - (2)].range);
38510 				}
38511     break;
38512 
38513   case 1584:
38514 /* Line 1792 of yacc.c  */
38515 #line 10677 "gram.y"
38516     {
38517 					RangeTableSample *n = (RangeTableSample *) (yyvsp[(3) - (3)].node);
38518 					(yyvsp[(1) - (3)].range)->alias = (yyvsp[(2) - (3)].alias);
38519 					/* relation_expr goes inside the RangeTableSample node */
38520 					n->relation = (Node *) (yyvsp[(1) - (3)].range);
38521 					(yyval.node) = (Node *) n;
38522 				}
38523     break;
38524 
38525   case 1585:
38526 /* Line 1792 of yacc.c  */
38527 #line 10685 "gram.y"
38528     {
38529 					RangeFunction *n = (RangeFunction *) (yyvsp[(1) - (2)].node);
38530 					n->alias = linitial((yyvsp[(2) - (2)].list));
38531 					n->coldeflist = lsecond((yyvsp[(2) - (2)].list));
38532 					(yyval.node) = (Node *) n;
38533 				}
38534     break;
38535 
38536   case 1586:
38537 /* Line 1792 of yacc.c  */
38538 #line 10692 "gram.y"
38539     {
38540 					RangeFunction *n = (RangeFunction *) (yyvsp[(2) - (3)].node);
38541 					n->lateral = true;
38542 					n->alias = linitial((yyvsp[(3) - (3)].list));
38543 					n->coldeflist = lsecond((yyvsp[(3) - (3)].list));
38544 					(yyval.node) = (Node *) n;
38545 				}
38546     break;
38547 
38548   case 1587:
38549 /* Line 1792 of yacc.c  */
38550 #line 10700 "gram.y"
38551     {
38552 					RangeSubselect *n = makeNode(RangeSubselect);
38553 					n->lateral = false;
38554 					n->subquery = (yyvsp[(1) - (2)].node);
38555 					n->alias = (yyvsp[(2) - (2)].alias);
38556 					/*
38557 					 * The SQL spec does not permit a subselect
38558 					 * (<derived_table>) without an alias clause,
38559 					 * so we don't either.  This avoids the problem
38560 					 * of needing to invent a unique refname for it.
38561 					 * That could be surmounted if there's sufficient
38562 					 * popular demand, but for now let's just implement
38563 					 * the spec and see if anyone complains.
38564 					 * However, it does seem like a good idea to emit
38565 					 * an error message that's better than "syntax error".
38566 					 */
38567 					if ((yyvsp[(2) - (2)].alias) == NULL)
38568 					{
38569 						if (IsA((yyvsp[(1) - (2)].node), SelectStmt) &&
38570 							((SelectStmt *) (yyvsp[(1) - (2)].node))->valuesLists)
38571 							ereport(ERROR,
38572 									(errcode(ERRCODE_SYNTAX_ERROR),
38573 									 errmsg("VALUES in FROM must have an alias"),
38574 									 errhint("For example, FROM (VALUES ...) [AS] foo."),
38575 									 parser_errposition((yylsp[(1) - (2)]))));
38576 						else
38577 							ereport(ERROR,
38578 									(errcode(ERRCODE_SYNTAX_ERROR),
38579 									 errmsg("subquery in FROM must have an alias"),
38580 									 errhint("For example, FROM (SELECT ...) [AS] foo."),
38581 									 parser_errposition((yylsp[(1) - (2)]))));
38582 					}
38583 					(yyval.node) = (Node *) n;
38584 				}
38585     break;
38586 
38587   case 1588:
38588 /* Line 1792 of yacc.c  */
38589 #line 10735 "gram.y"
38590     {
38591 					RangeSubselect *n = makeNode(RangeSubselect);
38592 					n->lateral = true;
38593 					n->subquery = (yyvsp[(2) - (3)].node);
38594 					n->alias = (yyvsp[(3) - (3)].alias);
38595 					/* same coment as above */
38596 					if ((yyvsp[(3) - (3)].alias) == NULL)
38597 					{
38598 						if (IsA((yyvsp[(2) - (3)].node), SelectStmt) &&
38599 							((SelectStmt *) (yyvsp[(2) - (3)].node))->valuesLists)
38600 							ereport(ERROR,
38601 									(errcode(ERRCODE_SYNTAX_ERROR),
38602 									 errmsg("VALUES in FROM must have an alias"),
38603 									 errhint("For example, FROM (VALUES ...) [AS] foo."),
38604 									 parser_errposition((yylsp[(2) - (3)]))));
38605 						else
38606 							ereport(ERROR,
38607 									(errcode(ERRCODE_SYNTAX_ERROR),
38608 									 errmsg("subquery in FROM must have an alias"),
38609 									 errhint("For example, FROM (SELECT ...) [AS] foo."),
38610 									 parser_errposition((yylsp[(2) - (3)]))));
38611 					}
38612 					(yyval.node) = (Node *) n;
38613 				}
38614     break;
38615 
38616   case 1589:
38617 /* Line 1792 of yacc.c  */
38618 #line 10760 "gram.y"
38619     {
38620 					(yyval.node) = (Node *) (yyvsp[(1) - (1)].jexpr);
38621 				}
38622     break;
38623 
38624   case 1590:
38625 /* Line 1792 of yacc.c  */
38626 #line 10764 "gram.y"
38627     {
38628 					(yyvsp[(2) - (4)].jexpr)->alias = (yyvsp[(4) - (4)].alias);
38629 					(yyval.node) = (Node *) (yyvsp[(2) - (4)].jexpr);
38630 				}
38631     break;
38632 
38633   case 1591:
38634 /* Line 1792 of yacc.c  */
38635 #line 10790 "gram.y"
38636     {
38637 					(yyval.jexpr) = (yyvsp[(2) - (3)].jexpr);
38638 				}
38639     break;
38640 
38641   case 1592:
38642 /* Line 1792 of yacc.c  */
38643 #line 10794 "gram.y"
38644     {
38645 					/* CROSS JOIN is same as unqualified inner join */
38646 					JoinExpr *n = makeNode(JoinExpr);
38647 					n->jointype = JOIN_INNER;
38648 					n->isNatural = FALSE;
38649 					n->larg = (yyvsp[(1) - (4)].node);
38650 					n->rarg = (yyvsp[(4) - (4)].node);
38651 					n->usingClause = NIL;
38652 					n->quals = NULL;
38653 					(yyval.jexpr) = n;
38654 				}
38655     break;
38656 
38657   case 1593:
38658 /* Line 1792 of yacc.c  */
38659 #line 10806 "gram.y"
38660     {
38661 					JoinExpr *n = makeNode(JoinExpr);
38662 					n->jointype = (yyvsp[(2) - (5)].jtype);
38663 					n->isNatural = FALSE;
38664 					n->larg = (yyvsp[(1) - (5)].node);
38665 					n->rarg = (yyvsp[(4) - (5)].node);
38666 					if ((yyvsp[(5) - (5)].node) != NULL && IsA((yyvsp[(5) - (5)].node), List))
38667 						n->usingClause = (List *) (yyvsp[(5) - (5)].node); /* USING clause */
38668 					else
38669 						n->quals = (yyvsp[(5) - (5)].node); /* ON clause */
38670 					(yyval.jexpr) = n;
38671 				}
38672     break;
38673 
38674   case 1594:
38675 /* Line 1792 of yacc.c  */
38676 #line 10819 "gram.y"
38677     {
38678 					/* letting join_type reduce to empty doesn't work */
38679 					JoinExpr *n = makeNode(JoinExpr);
38680 					n->jointype = JOIN_INNER;
38681 					n->isNatural = FALSE;
38682 					n->larg = (yyvsp[(1) - (4)].node);
38683 					n->rarg = (yyvsp[(3) - (4)].node);
38684 					if ((yyvsp[(4) - (4)].node) != NULL && IsA((yyvsp[(4) - (4)].node), List))
38685 						n->usingClause = (List *) (yyvsp[(4) - (4)].node); /* USING clause */
38686 					else
38687 						n->quals = (yyvsp[(4) - (4)].node); /* ON clause */
38688 					(yyval.jexpr) = n;
38689 				}
38690     break;
38691 
38692   case 1595:
38693 /* Line 1792 of yacc.c  */
38694 #line 10833 "gram.y"
38695     {
38696 					JoinExpr *n = makeNode(JoinExpr);
38697 					n->jointype = (yyvsp[(3) - (5)].jtype);
38698 					n->isNatural = TRUE;
38699 					n->larg = (yyvsp[(1) - (5)].node);
38700 					n->rarg = (yyvsp[(5) - (5)].node);
38701 					n->usingClause = NIL; /* figure out which columns later... */
38702 					n->quals = NULL; /* fill later */
38703 					(yyval.jexpr) = n;
38704 				}
38705     break;
38706 
38707   case 1596:
38708 /* Line 1792 of yacc.c  */
38709 #line 10844 "gram.y"
38710     {
38711 					/* letting join_type reduce to empty doesn't work */
38712 					JoinExpr *n = makeNode(JoinExpr);
38713 					n->jointype = JOIN_INNER;
38714 					n->isNatural = TRUE;
38715 					n->larg = (yyvsp[(1) - (4)].node);
38716 					n->rarg = (yyvsp[(4) - (4)].node);
38717 					n->usingClause = NIL; /* figure out which columns later... */
38718 					n->quals = NULL; /* fill later */
38719 					(yyval.jexpr) = n;
38720 				}
38721     break;
38722 
38723   case 1597:
38724 /* Line 1792 of yacc.c  */
38725 #line 10859 "gram.y"
38726     {
38727 					(yyval.alias) = makeNode(Alias);
38728 					(yyval.alias)->aliasname = (yyvsp[(2) - (5)].str);
38729 					(yyval.alias)->colnames = (yyvsp[(4) - (5)].list);
38730 				}
38731     break;
38732 
38733   case 1598:
38734 /* Line 1792 of yacc.c  */
38735 #line 10865 "gram.y"
38736     {
38737 					(yyval.alias) = makeNode(Alias);
38738 					(yyval.alias)->aliasname = (yyvsp[(2) - (2)].str);
38739 				}
38740     break;
38741 
38742   case 1599:
38743 /* Line 1792 of yacc.c  */
38744 #line 10870 "gram.y"
38745     {
38746 					(yyval.alias) = makeNode(Alias);
38747 					(yyval.alias)->aliasname = (yyvsp[(1) - (4)].str);
38748 					(yyval.alias)->colnames = (yyvsp[(3) - (4)].list);
38749 				}
38750     break;
38751 
38752   case 1600:
38753 /* Line 1792 of yacc.c  */
38754 #line 10876 "gram.y"
38755     {
38756 					(yyval.alias) = makeNode(Alias);
38757 					(yyval.alias)->aliasname = (yyvsp[(1) - (1)].str);
38758 				}
38759     break;
38760 
38761   case 1601:
38762 /* Line 1792 of yacc.c  */
38763 #line 10882 "gram.y"
38764     { (yyval.alias) = (yyvsp[(1) - (1)].alias); }
38765     break;
38766 
38767   case 1602:
38768 /* Line 1792 of yacc.c  */
38769 #line 10883 "gram.y"
38770     { (yyval.alias) = NULL; }
38771     break;
38772 
38773   case 1603:
38774 /* Line 1792 of yacc.c  */
38775 #line 10892 "gram.y"
38776     {
38777 					(yyval.list) = list_make2((yyvsp[(1) - (1)].alias), NIL);
38778 				}
38779     break;
38780 
38781   case 1604:
38782 /* Line 1792 of yacc.c  */
38783 #line 10896 "gram.y"
38784     {
38785 					(yyval.list) = list_make2(NULL, (yyvsp[(3) - (4)].list));
38786 				}
38787     break;
38788 
38789   case 1605:
38790 /* Line 1792 of yacc.c  */
38791 #line 10900 "gram.y"
38792     {
38793 					Alias *a = makeNode(Alias);
38794 					a->aliasname = (yyvsp[(2) - (5)].str);
38795 					(yyval.list) = list_make2(a, (yyvsp[(4) - (5)].list));
38796 				}
38797     break;
38798 
38799   case 1606:
38800 /* Line 1792 of yacc.c  */
38801 #line 10906 "gram.y"
38802     {
38803 					Alias *a = makeNode(Alias);
38804 					a->aliasname = (yyvsp[(1) - (4)].str);
38805 					(yyval.list) = list_make2(a, (yyvsp[(3) - (4)].list));
38806 				}
38807     break;
38808 
38809   case 1607:
38810 /* Line 1792 of yacc.c  */
38811 #line 10912 "gram.y"
38812     {
38813 					(yyval.list) = list_make2(NULL, NIL);
38814 				}
38815     break;
38816 
38817   case 1608:
38818 /* Line 1792 of yacc.c  */
38819 #line 10917 "gram.y"
38820     { (yyval.jtype) = JOIN_FULL; }
38821     break;
38822 
38823   case 1609:
38824 /* Line 1792 of yacc.c  */
38825 #line 10918 "gram.y"
38826     { (yyval.jtype) = JOIN_LEFT; }
38827     break;
38828 
38829   case 1610:
38830 /* Line 1792 of yacc.c  */
38831 #line 10919 "gram.y"
38832     { (yyval.jtype) = JOIN_RIGHT; }
38833     break;
38834 
38835   case 1611:
38836 /* Line 1792 of yacc.c  */
38837 #line 10920 "gram.y"
38838     { (yyval.jtype) = JOIN_INNER; }
38839     break;
38840 
38841   case 1612:
38842 /* Line 1792 of yacc.c  */
38843 #line 10924 "gram.y"
38844     { (yyval.node) = NULL; }
38845     break;
38846 
38847   case 1613:
38848 /* Line 1792 of yacc.c  */
38849 #line 10925 "gram.y"
38850     { (yyval.node) = NULL; }
38851     break;
38852 
38853   case 1614:
38854 /* Line 1792 of yacc.c  */
38855 #line 10937 "gram.y"
38856     { (yyval.node) = (Node *) (yyvsp[(3) - (4)].list); }
38857     break;
38858 
38859   case 1615:
38860 /* Line 1792 of yacc.c  */
38861 #line 10938 "gram.y"
38862     { (yyval.node) = (yyvsp[(2) - (2)].node); }
38863     break;
38864 
38865   case 1616:
38866 /* Line 1792 of yacc.c  */
38867 #line 10944 "gram.y"
38868     {
38869 					/* default inheritance */
38870 					(yyval.range) = (yyvsp[(1) - (1)].range);
38871 					(yyval.range)->inhOpt = INH_DEFAULT;
38872 					(yyval.range)->alias = NULL;
38873 				}
38874     break;
38875 
38876   case 1617:
38877 /* Line 1792 of yacc.c  */
38878 #line 10951 "gram.y"
38879     {
38880 					/* inheritance query */
38881 					(yyval.range) = (yyvsp[(1) - (2)].range);
38882 					(yyval.range)->inhOpt = INH_YES;
38883 					(yyval.range)->alias = NULL;
38884 				}
38885     break;
38886 
38887   case 1618:
38888 /* Line 1792 of yacc.c  */
38889 #line 10958 "gram.y"
38890     {
38891 					/* no inheritance */
38892 					(yyval.range) = (yyvsp[(2) - (2)].range);
38893 					(yyval.range)->inhOpt = INH_NO;
38894 					(yyval.range)->alias = NULL;
38895 				}
38896     break;
38897 
38898   case 1619:
38899 /* Line 1792 of yacc.c  */
38900 #line 10965 "gram.y"
38901     {
38902 					/* no inheritance, SQL99-style syntax */
38903 					(yyval.range) = (yyvsp[(3) - (4)].range);
38904 					(yyval.range)->inhOpt = INH_NO;
38905 					(yyval.range)->alias = NULL;
38906 				}
38907     break;
38908 
38909   case 1620:
38910 /* Line 1792 of yacc.c  */
38911 #line 10975 "gram.y"
38912     { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); }
38913     break;
38914 
38915   case 1621:
38916 /* Line 1792 of yacc.c  */
38917 #line 10976 "gram.y"
38918     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); }
38919     break;
38920 
38921   case 1622:
38922 /* Line 1792 of yacc.c  */
38923 #line 10990 "gram.y"
38924     {
38925 					(yyval.range) = (yyvsp[(1) - (1)].range);
38926 				}
38927     break;
38928 
38929   case 1623:
38930 /* Line 1792 of yacc.c  */
38931 #line 10994 "gram.y"
38932     {
38933 					Alias *alias = makeNode(Alias);
38934 					alias->aliasname = (yyvsp[(2) - (2)].str);
38935 					(yyvsp[(1) - (2)].range)->alias = alias;
38936 					(yyval.range) = (yyvsp[(1) - (2)].range);
38937 				}
38938     break;
38939 
38940   case 1624:
38941 /* Line 1792 of yacc.c  */
38942 #line 11001 "gram.y"
38943     {
38944 					Alias *alias = makeNode(Alias);
38945 					alias->aliasname = (yyvsp[(3) - (3)].str);
38946 					(yyvsp[(1) - (3)].range)->alias = alias;
38947 					(yyval.range) = (yyvsp[(1) - (3)].range);
38948 				}
38949     break;
38950 
38951   case 1625:
38952 /* Line 1792 of yacc.c  */
38953 #line 11014 "gram.y"
38954     {
38955 					RangeTableSample *n = makeNode(RangeTableSample);
38956 					/* n->relation will be filled in later */
38957 					n->method = (yyvsp[(2) - (6)].list);
38958 					n->args = (yyvsp[(4) - (6)].list);
38959 					n->repeatable = (yyvsp[(6) - (6)].node);
38960 					n->location = (yylsp[(2) - (6)]);
38961 					(yyval.node) = (Node *) n;
38962 				}
38963     break;
38964 
38965   case 1626:
38966 /* Line 1792 of yacc.c  */
38967 #line 11026 "gram.y"
38968     { (yyval.node) = (Node *) (yyvsp[(3) - (4)].node); }
38969     break;
38970 
38971   case 1627:
38972 /* Line 1792 of yacc.c  */
38973 #line 11027 "gram.y"
38974     { (yyval.node) = NULL; }
38975     break;
38976 
38977   case 1628:
38978 /* Line 1792 of yacc.c  */
38979 #line 11043 "gram.y"
38980     {
38981 					RangeFunction *n = makeNode(RangeFunction);
38982 					n->lateral = false;
38983 					n->ordinality = (yyvsp[(2) - (2)].boolean);
38984 					n->is_rowsfrom = false;
38985 					n->functions = list_make1(list_make2((yyvsp[(1) - (2)].node), NIL));
38986 					/* alias and coldeflist are set by table_ref production */
38987 					(yyval.node) = (Node *) n;
38988 				}
38989     break;
38990 
38991   case 1629:
38992 /* Line 1792 of yacc.c  */
38993 #line 11053 "gram.y"
38994     {
38995 					RangeFunction *n = makeNode(RangeFunction);
38996 					n->lateral = false;
38997 					n->ordinality = (yyvsp[(6) - (6)].boolean);
38998 					n->is_rowsfrom = true;
38999 					n->functions = (yyvsp[(4) - (6)].list);
39000 					/* alias and coldeflist are set by table_ref production */
39001 					(yyval.node) = (Node *) n;
39002 				}
39003     break;
39004 
39005   case 1630:
39006 /* Line 1792 of yacc.c  */
39007 #line 11065 "gram.y"
39008     { (yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].list)); }
39009     break;
39010 
39011   case 1631:
39012 /* Line 1792 of yacc.c  */
39013 #line 11069 "gram.y"
39014     { (yyval.list) = list_make1((yyvsp[(1) - (1)].list)); }
39015     break;
39016 
39017   case 1632:
39018 /* Line 1792 of yacc.c  */
39019 #line 11070 "gram.y"
39020     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)); }
39021     break;
39022 
39023   case 1633:
39024 /* Line 1792 of yacc.c  */
39025 #line 11073 "gram.y"
39026     { (yyval.list) = (yyvsp[(3) - (4)].list); }
39027     break;
39028 
39029   case 1634:
39030 /* Line 1792 of yacc.c  */
39031 #line 11074 "gram.y"
39032     { (yyval.list) = NIL; }
39033     break;
39034 
39035   case 1635:
39036 /* Line 1792 of yacc.c  */
39037 #line 11077 "gram.y"
39038     { (yyval.boolean) = true; }
39039     break;
39040 
39041   case 1636:
39042 /* Line 1792 of yacc.c  */
39043 #line 11078 "gram.y"
39044     { (yyval.boolean) = false; }
39045     break;
39046 
39047   case 1637:
39048 /* Line 1792 of yacc.c  */
39049 #line 11083 "gram.y"
39050     { (yyval.node) = (yyvsp[(2) - (2)].node); }
39051     break;
39052 
39053   case 1638:
39054 /* Line 1792 of yacc.c  */
39055 #line 11084 "gram.y"
39056     { (yyval.node) = NULL; }
39057     break;
39058 
39059   case 1639:
39060 /* Line 1792 of yacc.c  */
39061 #line 11089 "gram.y"
39062     { (yyval.node) = (yyvsp[(2) - (2)].node); }
39063     break;
39064 
39065   case 1640:
39066 /* Line 1792 of yacc.c  */
39067 #line 11091 "gram.y"
39068     {
39069 					CurrentOfExpr *n = makeNode(CurrentOfExpr);
39070 					/* cvarno is filled in by parse analysis */
39071 					n->cursor_name = (yyvsp[(4) - (4)].str);
39072 					n->cursor_param = 0;
39073 					(yyval.node) = (Node *) n;
39074 				}
39075     break;
39076 
39077   case 1641:
39078 /* Line 1792 of yacc.c  */
39079 #line 11098 "gram.y"
39080     { (yyval.node) = NULL; }
39081     break;
39082 
39083   case 1642:
39084 /* Line 1792 of yacc.c  */
39085 #line 11103 "gram.y"
39086     { (yyval.list) = (yyvsp[(1) - (1)].list); }
39087     break;
39088 
39089   case 1643:
39090 /* Line 1792 of yacc.c  */
39091 #line 11104 "gram.y"
39092     { (yyval.list) = NIL; }
39093     break;
39094 
39095   case 1644:
39096 /* Line 1792 of yacc.c  */
39097 #line 11109 "gram.y"
39098     {
39099 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
39100 				}
39101     break;
39102 
39103   case 1645:
39104 /* Line 1792 of yacc.c  */
39105 #line 11113 "gram.y"
39106     {
39107 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
39108 				}
39109     break;
39110 
39111   case 1646:
39112 /* Line 1792 of yacc.c  */
39113 #line 11119 "gram.y"
39114     {
39115 					ColumnDef *n = makeNode(ColumnDef);
39116 					n->colname = (yyvsp[(1) - (3)].str);
39117 					n->typeName = (yyvsp[(2) - (3)].typnam);
39118 					n->inhcount = 0;
39119 					n->is_local = true;
39120 					n->is_not_null = false;
39121 					n->is_from_type = false;
39122 					n->storage = 0;
39123 					n->raw_default = NULL;
39124 					n->cooked_default = NULL;
39125 					n->collClause = (CollateClause *) (yyvsp[(3) - (3)].node);
39126 					n->collOid = InvalidOid;
39127 					n->constraints = NIL;
39128 					n->location = (yylsp[(1) - (3)]);
39129 					(yyval.node) = (Node *)n;
39130 				}
39131     break;
39132 
39133   case 1647:
39134 /* Line 1792 of yacc.c  */
39135 #line 11149 "gram.y"
39136     {
39137 					(yyval.typnam) = (yyvsp[(1) - (2)].typnam);
39138 					(yyval.typnam)->arrayBounds = (yyvsp[(2) - (2)].list);
39139 				}
39140     break;
39141 
39142   case 1648:
39143 /* Line 1792 of yacc.c  */
39144 #line 11154 "gram.y"
39145     {
39146 					(yyval.typnam) = (yyvsp[(2) - (3)].typnam);
39147 					(yyval.typnam)->arrayBounds = (yyvsp[(3) - (3)].list);
39148 					(yyval.typnam)->setof = TRUE;
39149 				}
39150     break;
39151 
39152   case 1649:
39153 /* Line 1792 of yacc.c  */
39154 #line 11161 "gram.y"
39155     {
39156 					(yyval.typnam) = (yyvsp[(1) - (5)].typnam);
39157 					(yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(4) - (5)].ival)));
39158 				}
39159     break;
39160 
39161   case 1650:
39162 /* Line 1792 of yacc.c  */
39163 #line 11166 "gram.y"
39164     {
39165 					(yyval.typnam) = (yyvsp[(2) - (6)].typnam);
39166 					(yyval.typnam)->arrayBounds = list_make1(makeInteger((yyvsp[(5) - (6)].ival)));
39167 					(yyval.typnam)->setof = TRUE;
39168 				}
39169     break;
39170 
39171   case 1651:
39172 /* Line 1792 of yacc.c  */
39173 #line 11172 "gram.y"
39174     {
39175 					(yyval.typnam) = (yyvsp[(1) - (2)].typnam);
39176 					(yyval.typnam)->arrayBounds = list_make1(makeInteger(-1));
39177 				}
39178     break;
39179 
39180   case 1652:
39181 /* Line 1792 of yacc.c  */
39182 #line 11177 "gram.y"
39183     {
39184 					(yyval.typnam) = (yyvsp[(2) - (3)].typnam);
39185 					(yyval.typnam)->arrayBounds = list_make1(makeInteger(-1));
39186 					(yyval.typnam)->setof = TRUE;
39187 				}
39188     break;
39189 
39190   case 1653:
39191 /* Line 1792 of yacc.c  */
39192 #line 11186 "gram.y"
39193     {  (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeInteger(-1)); }
39194     break;
39195 
39196   case 1654:
39197 /* Line 1792 of yacc.c  */
39198 #line 11188 "gram.y"
39199     {  (yyval.list) = lappend((yyvsp[(1) - (4)].list), makeInteger((yyvsp[(3) - (4)].ival))); }
39200     break;
39201 
39202   case 1655:
39203 /* Line 1792 of yacc.c  */
39204 #line 11190 "gram.y"
39205     {  (yyval.list) = NIL; }
39206     break;
39207 
39208   case 1656:
39209 /* Line 1792 of yacc.c  */
39210 #line 11194 "gram.y"
39211     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39212     break;
39213 
39214   case 1657:
39215 /* Line 1792 of yacc.c  */
39216 #line 11195 "gram.y"
39217     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39218     break;
39219 
39220   case 1658:
39221 /* Line 1792 of yacc.c  */
39222 #line 11196 "gram.y"
39223     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39224     break;
39225 
39226   case 1659:
39227 /* Line 1792 of yacc.c  */
39228 #line 11197 "gram.y"
39229     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39230     break;
39231 
39232   case 1660:
39233 /* Line 1792 of yacc.c  */
39234 #line 11198 "gram.y"
39235     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39236     break;
39237 
39238   case 1661:
39239 /* Line 1792 of yacc.c  */
39240 #line 11200 "gram.y"
39241     {
39242 					(yyval.typnam) = (yyvsp[(1) - (2)].typnam);
39243 					(yyval.typnam)->typmods = (yyvsp[(2) - (2)].list);
39244 				}
39245     break;
39246 
39247   case 1662:
39248 /* Line 1792 of yacc.c  */
39249 #line 11205 "gram.y"
39250     {
39251 					(yyval.typnam) = (yyvsp[(1) - (4)].typnam);
39252 					(yyval.typnam)->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
39253 											 makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
39254 				}
39255     break;
39256 
39257   case 1663:
39258 /* Line 1792 of yacc.c  */
39259 #line 11224 "gram.y"
39260     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39261     break;
39262 
39263   case 1664:
39264 /* Line 1792 of yacc.c  */
39265 #line 11225 "gram.y"
39266     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39267     break;
39268 
39269   case 1665:
39270 /* Line 1792 of yacc.c  */
39271 #line 11226 "gram.y"
39272     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39273     break;
39274 
39275   case 1666:
39276 /* Line 1792 of yacc.c  */
39277 #line 11227 "gram.y"
39278     { (yyval.typnam) = (yyvsp[(1) - (1)].typnam); }
39279     break;
39280 
39281   case 1667:
39282 /* Line 1792 of yacc.c  */
39283 #line 11239 "gram.y"
39284     {
39285 					(yyval.typnam) = makeTypeName((yyvsp[(1) - (2)].str));
39286 					(yyval.typnam)->typmods = (yyvsp[(2) - (2)].list);
39287 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39288 				}
39289     break;
39290 
39291   case 1668:
39292 /* Line 1792 of yacc.c  */
39293 #line 11245 "gram.y"
39294     {
39295 					(yyval.typnam) = makeTypeNameFromNameList(lcons(makeString((yyvsp[(1) - (3)].str)), (yyvsp[(2) - (3)].list)));
39296 					(yyval.typnam)->typmods = (yyvsp[(3) - (3)].list);
39297 					(yyval.typnam)->location = (yylsp[(1) - (3)]);
39298 				}
39299     break;
39300 
39301   case 1669:
39302 /* Line 1792 of yacc.c  */
39303 #line 11252 "gram.y"
39304     { (yyval.list) = (yyvsp[(2) - (3)].list); }
39305     break;
39306 
39307   case 1670:
39308 /* Line 1792 of yacc.c  */
39309 #line 11253 "gram.y"
39310     { (yyval.list) = NIL; }
39311     break;
39312 
39313   case 1671:
39314 /* Line 1792 of yacc.c  */
39315 #line 11260 "gram.y"
39316     {
39317 					(yyval.typnam) = SystemTypeName("int4");
39318 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39319 				}
39320     break;
39321 
39322   case 1672:
39323 /* Line 1792 of yacc.c  */
39324 #line 11265 "gram.y"
39325     {
39326 					(yyval.typnam) = SystemTypeName("int4");
39327 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39328 				}
39329     break;
39330 
39331   case 1673:
39332 /* Line 1792 of yacc.c  */
39333 #line 11270 "gram.y"
39334     {
39335 					(yyval.typnam) = SystemTypeName("int2");
39336 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39337 				}
39338     break;
39339 
39340   case 1674:
39341 /* Line 1792 of yacc.c  */
39342 #line 11275 "gram.y"
39343     {
39344 					(yyval.typnam) = SystemTypeName("int8");
39345 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39346 				}
39347     break;
39348 
39349   case 1675:
39350 /* Line 1792 of yacc.c  */
39351 #line 11280 "gram.y"
39352     {
39353 					(yyval.typnam) = SystemTypeName("float4");
39354 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39355 				}
39356     break;
39357 
39358   case 1676:
39359 /* Line 1792 of yacc.c  */
39360 #line 11285 "gram.y"
39361     {
39362 					(yyval.typnam) = (yyvsp[(2) - (2)].typnam);
39363 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39364 				}
39365     break;
39366 
39367   case 1677:
39368 /* Line 1792 of yacc.c  */
39369 #line 11290 "gram.y"
39370     {
39371 					(yyval.typnam) = SystemTypeName("float8");
39372 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39373 				}
39374     break;
39375 
39376   case 1678:
39377 /* Line 1792 of yacc.c  */
39378 #line 11295 "gram.y"
39379     {
39380 					(yyval.typnam) = SystemTypeName("numeric");
39381 					(yyval.typnam)->typmods = (yyvsp[(2) - (2)].list);
39382 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39383 				}
39384     break;
39385 
39386   case 1679:
39387 /* Line 1792 of yacc.c  */
39388 #line 11301 "gram.y"
39389     {
39390 					(yyval.typnam) = SystemTypeName("numeric");
39391 					(yyval.typnam)->typmods = (yyvsp[(2) - (2)].list);
39392 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39393 				}
39394     break;
39395 
39396   case 1680:
39397 /* Line 1792 of yacc.c  */
39398 #line 11307 "gram.y"
39399     {
39400 					(yyval.typnam) = SystemTypeName("numeric");
39401 					(yyval.typnam)->typmods = (yyvsp[(2) - (2)].list);
39402 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39403 				}
39404     break;
39405 
39406   case 1681:
39407 /* Line 1792 of yacc.c  */
39408 #line 11313 "gram.y"
39409     {
39410 					(yyval.typnam) = SystemTypeName("bool");
39411 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39412 				}
39413     break;
39414 
39415   case 1682:
39416 /* Line 1792 of yacc.c  */
39417 #line 11320 "gram.y"
39418     {
39419 					/*
39420 					 * Check FLOAT() precision limits assuming IEEE floating
39421 					 * types - thomas 1997-09-18
39422 					 */
39423 					if ((yyvsp[(2) - (3)].ival) < 1)
39424 						ereport(ERROR,
39425 								(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
39426 								 errmsg("precision for type float must be at least 1 bit"),
39427 								 parser_errposition((yylsp[(2) - (3)]))));
39428 					else if ((yyvsp[(2) - (3)].ival) <= 24)
39429 						(yyval.typnam) = SystemTypeName("float4");
39430 					else if ((yyvsp[(2) - (3)].ival) <= 53)
39431 						(yyval.typnam) = SystemTypeName("float8");
39432 					else
39433 						ereport(ERROR,
39434 								(errcode(ERRCODE_INVALID_PARAMETER_VALUE),
39435 								 errmsg("precision for type float must be less than 54 bits"),
39436 								 parser_errposition((yylsp[(2) - (3)]))));
39437 				}
39438     break;
39439 
39440   case 1683:
39441 /* Line 1792 of yacc.c  */
39442 #line 11341 "gram.y"
39443     {
39444 					(yyval.typnam) = SystemTypeName("float8");
39445 				}
39446     break;
39447 
39448   case 1684:
39449 /* Line 1792 of yacc.c  */
39450 #line 11351 "gram.y"
39451     {
39452 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39453 				}
39454     break;
39455 
39456   case 1685:
39457 /* Line 1792 of yacc.c  */
39458 #line 11355 "gram.y"
39459     {
39460 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39461 				}
39462     break;
39463 
39464   case 1686:
39465 /* Line 1792 of yacc.c  */
39466 #line 11363 "gram.y"
39467     {
39468 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39469 				}
39470     break;
39471 
39472   case 1687:
39473 /* Line 1792 of yacc.c  */
39474 #line 11367 "gram.y"
39475     {
39476 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39477 					(yyval.typnam)->typmods = NIL;
39478 				}
39479     break;
39480 
39481   case 1688:
39482 /* Line 1792 of yacc.c  */
39483 #line 11375 "gram.y"
39484     {
39485 					char *typname;
39486 
39487 					typname = (yyvsp[(2) - (5)].boolean) ? "varbit" : "bit";
39488 					(yyval.typnam) = SystemTypeName(typname);
39489 					(yyval.typnam)->typmods = (yyvsp[(4) - (5)].list);
39490 					(yyval.typnam)->location = (yylsp[(1) - (5)]);
39491 				}
39492     break;
39493 
39494   case 1689:
39495 /* Line 1792 of yacc.c  */
39496 #line 11387 "gram.y"
39497     {
39498 					/* bit defaults to bit(1), varbit to no limit */
39499 					if ((yyvsp[(2) - (2)].boolean))
39500 					{
39501 						(yyval.typnam) = SystemTypeName("varbit");
39502 					}
39503 					else
39504 					{
39505 						(yyval.typnam) = SystemTypeName("bit");
39506 						(yyval.typnam)->typmods = list_make1(makeIntConst(1, -1));
39507 					}
39508 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39509 				}
39510     break;
39511 
39512   case 1690:
39513 /* Line 1792 of yacc.c  */
39514 #line 11408 "gram.y"
39515     {
39516 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39517 				}
39518     break;
39519 
39520   case 1691:
39521 /* Line 1792 of yacc.c  */
39522 #line 11412 "gram.y"
39523     {
39524 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39525 				}
39526     break;
39527 
39528   case 1692:
39529 /* Line 1792 of yacc.c  */
39530 #line 11418 "gram.y"
39531     {
39532 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39533 				}
39534     break;
39535 
39536   case 1693:
39537 /* Line 1792 of yacc.c  */
39538 #line 11422 "gram.y"
39539     {
39540 					/* Length was not specified so allow to be unrestricted.
39541 					 * This handles problems with fixed-length (bpchar) strings
39542 					 * which in column definitions must default to a length
39543 					 * of one, but should not be constrained if the length
39544 					 * was not specified.
39545 					 */
39546 					(yyval.typnam) = (yyvsp[(1) - (1)].typnam);
39547 					(yyval.typnam)->typmods = NIL;
39548 				}
39549     break;
39550 
39551   case 1694:
39552 /* Line 1792 of yacc.c  */
39553 #line 11435 "gram.y"
39554     {
39555 					if (((yyvsp[(5) - (5)].str) != NULL) && (strcmp((yyvsp[(5) - (5)].str), "sql_text") != 0))
39556 						(yyvsp[(1) - (5)].str) = psprintf("%s_%s", (yyvsp[(1) - (5)].str), (yyvsp[(5) - (5)].str));
39557 
39558 					(yyval.typnam) = SystemTypeName((yyvsp[(1) - (5)].str));
39559 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[(3) - (5)].ival), (yylsp[(3) - (5)])));
39560 					(yyval.typnam)->location = (yylsp[(1) - (5)]);
39561 				}
39562     break;
39563 
39564   case 1695:
39565 /* Line 1792 of yacc.c  */
39566 #line 11446 "gram.y"
39567     {
39568 					if (((yyvsp[(2) - (2)].str) != NULL) && (strcmp((yyvsp[(2) - (2)].str), "sql_text") != 0))
39569 						(yyvsp[(1) - (2)].str) = psprintf("%s_%s", (yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].str));
39570 
39571 					(yyval.typnam) = SystemTypeName((yyvsp[(1) - (2)].str));
39572 
39573 					/* char defaults to char(1), varchar to no limit */
39574 					if (strcmp((yyvsp[(1) - (2)].str), "bpchar") == 0)
39575 						(yyval.typnam)->typmods = list_make1(makeIntConst(1, -1));
39576 
39577 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39578 				}
39579     break;
39580 
39581   case 1696:
39582 /* Line 1792 of yacc.c  */
39583 #line 11461 "gram.y"
39584     { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; }
39585     break;
39586 
39587   case 1697:
39588 /* Line 1792 of yacc.c  */
39589 #line 11463 "gram.y"
39590     { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; }
39591     break;
39592 
39593   case 1698:
39594 /* Line 1792 of yacc.c  */
39595 #line 11465 "gram.y"
39596     { (yyval.str) = "varchar"; }
39597     break;
39598 
39599   case 1699:
39600 /* Line 1792 of yacc.c  */
39601 #line 11467 "gram.y"
39602     { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "bpchar"; }
39603     break;
39604 
39605   case 1700:
39606 /* Line 1792 of yacc.c  */
39607 #line 11469 "gram.y"
39608     { (yyval.str) = (yyvsp[(3) - (3)].boolean) ? "varchar": "bpchar"; }
39609     break;
39610 
39611   case 1701:
39612 /* Line 1792 of yacc.c  */
39613 #line 11471 "gram.y"
39614     { (yyval.str) = (yyvsp[(2) - (2)].boolean) ? "varchar": "bpchar"; }
39615     break;
39616 
39617   case 1702:
39618 /* Line 1792 of yacc.c  */
39619 #line 11475 "gram.y"
39620     { (yyval.boolean) = TRUE; }
39621     break;
39622 
39623   case 1703:
39624 /* Line 1792 of yacc.c  */
39625 #line 11476 "gram.y"
39626     { (yyval.boolean) = FALSE; }
39627     break;
39628 
39629   case 1704:
39630 /* Line 1792 of yacc.c  */
39631 #line 11480 "gram.y"
39632     { (yyval.str) = (yyvsp[(3) - (3)].str); }
39633     break;
39634 
39635   case 1705:
39636 /* Line 1792 of yacc.c  */
39637 #line 11481 "gram.y"
39638     { (yyval.str) = NULL; }
39639     break;
39640 
39641   case 1706:
39642 /* Line 1792 of yacc.c  */
39643 #line 11489 "gram.y"
39644     {
39645 					if ((yyvsp[(5) - (5)].boolean))
39646 						(yyval.typnam) = SystemTypeName("timestamptz");
39647 					else
39648 						(yyval.typnam) = SystemTypeName("timestamp");
39649 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[(3) - (5)].ival), (yylsp[(3) - (5)])));
39650 					(yyval.typnam)->location = (yylsp[(1) - (5)]);
39651 				}
39652     break;
39653 
39654   case 1707:
39655 /* Line 1792 of yacc.c  */
39656 #line 11498 "gram.y"
39657     {
39658 					if ((yyvsp[(2) - (2)].boolean))
39659 						(yyval.typnam) = SystemTypeName("timestamptz");
39660 					else
39661 						(yyval.typnam) = SystemTypeName("timestamp");
39662 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39663 				}
39664     break;
39665 
39666   case 1708:
39667 /* Line 1792 of yacc.c  */
39668 #line 11506 "gram.y"
39669     {
39670 					if ((yyvsp[(5) - (5)].boolean))
39671 						(yyval.typnam) = SystemTypeName("timetz");
39672 					else
39673 						(yyval.typnam) = SystemTypeName("time");
39674 					(yyval.typnam)->typmods = list_make1(makeIntConst((yyvsp[(3) - (5)].ival), (yylsp[(3) - (5)])));
39675 					(yyval.typnam)->location = (yylsp[(1) - (5)]);
39676 				}
39677     break;
39678 
39679   case 1709:
39680 /* Line 1792 of yacc.c  */
39681 #line 11515 "gram.y"
39682     {
39683 					if ((yyvsp[(2) - (2)].boolean))
39684 						(yyval.typnam) = SystemTypeName("timetz");
39685 					else
39686 						(yyval.typnam) = SystemTypeName("time");
39687 					(yyval.typnam)->location = (yylsp[(1) - (2)]);
39688 				}
39689     break;
39690 
39691   case 1710:
39692 /* Line 1792 of yacc.c  */
39693 #line 11526 "gram.y"
39694     {
39695 					(yyval.typnam) = SystemTypeName("interval");
39696 					(yyval.typnam)->location = (yylsp[(1) - (1)]);
39697 				}
39698     break;
39699 
39700   case 1711:
39701 /* Line 1792 of yacc.c  */
39702 #line 11533 "gram.y"
39703     { (yyval.boolean) = TRUE; }
39704     break;
39705 
39706   case 1712:
39707 /* Line 1792 of yacc.c  */
39708 #line 11534 "gram.y"
39709     { (yyval.boolean) = FALSE; }
39710     break;
39711 
39712   case 1713:
39713 /* Line 1792 of yacc.c  */
39714 #line 11535 "gram.y"
39715     { (yyval.boolean) = FALSE; }
39716     break;
39717 
39718   case 1714:
39719 /* Line 1792 of yacc.c  */
39720 #line 11540 "gram.y"
39721     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR), (yylsp[(1) - (1)]))); }
39722     break;
39723 
39724   case 1715:
39725 /* Line 1792 of yacc.c  */
39726 #line 11542 "gram.y"
39727     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MONTH), (yylsp[(1) - (1)]))); }
39728     break;
39729 
39730   case 1716:
39731 /* Line 1792 of yacc.c  */
39732 #line 11544 "gram.y"
39733     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY), (yylsp[(1) - (1)]))); }
39734     break;
39735 
39736   case 1717:
39737 /* Line 1792 of yacc.c  */
39738 #line 11546 "gram.y"
39739     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR), (yylsp[(1) - (1)]))); }
39740     break;
39741 
39742   case 1718:
39743 /* Line 1792 of yacc.c  */
39744 #line 11548 "gram.y"
39745     { (yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(MINUTE), (yylsp[(1) - (1)]))); }
39746     break;
39747 
39748   case 1719:
39749 /* Line 1792 of yacc.c  */
39750 #line 11550 "gram.y"
39751     { (yyval.list) = (yyvsp[(1) - (1)].list); }
39752     break;
39753 
39754   case 1720:
39755 /* Line 1792 of yacc.c  */
39756 #line 11552 "gram.y"
39757     {
39758 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(YEAR) |
39759 												 INTERVAL_MASK(MONTH), (yylsp[(1) - (3)])));
39760 				}
39761     break;
39762 
39763   case 1721:
39764 /* Line 1792 of yacc.c  */
39765 #line 11557 "gram.y"
39766     {
39767 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
39768 												 INTERVAL_MASK(HOUR), (yylsp[(1) - (3)])));
39769 				}
39770     break;
39771 
39772   case 1722:
39773 /* Line 1792 of yacc.c  */
39774 #line 11562 "gram.y"
39775     {
39776 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(DAY) |
39777 												 INTERVAL_MASK(HOUR) |
39778 												 INTERVAL_MASK(MINUTE), (yylsp[(1) - (3)])));
39779 				}
39780     break;
39781 
39782   case 1723:
39783 /* Line 1792 of yacc.c  */
39784 #line 11568 "gram.y"
39785     {
39786 					(yyval.list) = (yyvsp[(3) - (3)].list);
39787 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(DAY) |
39788 												INTERVAL_MASK(HOUR) |
39789 												INTERVAL_MASK(MINUTE) |
39790 												INTERVAL_MASK(SECOND), (yylsp[(1) - (3)]));
39791 				}
39792     break;
39793 
39794   case 1724:
39795 /* Line 1792 of yacc.c  */
39796 #line 11576 "gram.y"
39797     {
39798 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(HOUR) |
39799 												 INTERVAL_MASK(MINUTE), (yylsp[(1) - (3)])));
39800 				}
39801     break;
39802 
39803   case 1725:
39804 /* Line 1792 of yacc.c  */
39805 #line 11581 "gram.y"
39806     {
39807 					(yyval.list) = (yyvsp[(3) - (3)].list);
39808 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(HOUR) |
39809 												INTERVAL_MASK(MINUTE) |
39810 												INTERVAL_MASK(SECOND), (yylsp[(1) - (3)]));
39811 				}
39812     break;
39813 
39814   case 1726:
39815 /* Line 1792 of yacc.c  */
39816 #line 11588 "gram.y"
39817     {
39818 					(yyval.list) = (yyvsp[(3) - (3)].list);
39819 					linitial((yyval.list)) = makeIntConst(INTERVAL_MASK(MINUTE) |
39820 												INTERVAL_MASK(SECOND), (yylsp[(1) - (3)]));
39821 				}
39822     break;
39823 
39824   case 1727:
39825 /* Line 1792 of yacc.c  */
39826 #line 11594 "gram.y"
39827     { (yyval.list) = NIL; }
39828     break;
39829 
39830   case 1728:
39831 /* Line 1792 of yacc.c  */
39832 #line 11599 "gram.y"
39833     {
39834 					(yyval.list) = list_make1(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[(1) - (1)])));
39835 				}
39836     break;
39837 
39838   case 1729:
39839 /* Line 1792 of yacc.c  */
39840 #line 11603 "gram.y"
39841     {
39842 					(yyval.list) = list_make2(makeIntConst(INTERVAL_MASK(SECOND), (yylsp[(1) - (4)])),
39843 									makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
39844 				}
39845     break;
39846 
39847   case 1730:
39848 /* Line 1792 of yacc.c  */
39849 #line 11638 "gram.y"
39850     { (yyval.node) = (yyvsp[(1) - (1)].node); }
39851     break;
39852 
39853   case 1731:
39854 /* Line 1792 of yacc.c  */
39855 #line 11640 "gram.y"
39856     { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam), (yylsp[(2) - (3)])); }
39857     break;
39858 
39859   case 1732:
39860 /* Line 1792 of yacc.c  */
39861 #line 11642 "gram.y"
39862     {
39863 					CollateClause *n = makeNode(CollateClause);
39864 					n->arg = (yyvsp[(1) - (3)].node);
39865 					n->collname = (yyvsp[(3) - (3)].list);
39866 					n->location = (yylsp[(2) - (3)]);
39867 					(yyval.node) = (Node *) n;
39868 				}
39869     break;
39870 
39871   case 1733:
39872 /* Line 1792 of yacc.c  */
39873 #line 11650 "gram.y"
39874     {
39875 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("timezone"),
39876 											   list_make2((yyvsp[(5) - (5)].node), (yyvsp[(1) - (5)].node)),
39877 											   (yylsp[(2) - (5)]));
39878 				}
39879     break;
39880 
39881   case 1734:
39882 /* Line 1792 of yacc.c  */
39883 #line 11665 "gram.y"
39884     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
39885     break;
39886 
39887   case 1735:
39888 /* Line 1792 of yacc.c  */
39889 #line 11667 "gram.y"
39890     { (yyval.node) = doNegate((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
39891     break;
39892 
39893   case 1736:
39894 /* Line 1792 of yacc.c  */
39895 #line 11669 "gram.y"
39896     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39897     break;
39898 
39899   case 1737:
39900 /* Line 1792 of yacc.c  */
39901 #line 11671 "gram.y"
39902     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39903     break;
39904 
39905   case 1738:
39906 /* Line 1792 of yacc.c  */
39907 #line 11673 "gram.y"
39908     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39909     break;
39910 
39911   case 1739:
39912 /* Line 1792 of yacc.c  */
39913 #line 11675 "gram.y"
39914     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39915     break;
39916 
39917   case 1740:
39918 /* Line 1792 of yacc.c  */
39919 #line 11677 "gram.y"
39920     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39921     break;
39922 
39923   case 1741:
39924 /* Line 1792 of yacc.c  */
39925 #line 11679 "gram.y"
39926     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39927     break;
39928 
39929   case 1742:
39930 /* Line 1792 of yacc.c  */
39931 #line 11681 "gram.y"
39932     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39933     break;
39934 
39935   case 1743:
39936 /* Line 1792 of yacc.c  */
39937 #line 11683 "gram.y"
39938     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39939     break;
39940 
39941   case 1744:
39942 /* Line 1792 of yacc.c  */
39943 #line 11685 "gram.y"
39944     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39945     break;
39946 
39947   case 1745:
39948 /* Line 1792 of yacc.c  */
39949 #line 11687 "gram.y"
39950     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39951     break;
39952 
39953   case 1746:
39954 /* Line 1792 of yacc.c  */
39955 #line 11689 "gram.y"
39956     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39957     break;
39958 
39959   case 1747:
39960 /* Line 1792 of yacc.c  */
39961 #line 11691 "gram.y"
39962     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39963     break;
39964 
39965   case 1748:
39966 /* Line 1792 of yacc.c  */
39967 #line 11694 "gram.y"
39968     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39969     break;
39970 
39971   case 1749:
39972 /* Line 1792 of yacc.c  */
39973 #line 11696 "gram.y"
39974     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
39975     break;
39976 
39977   case 1750:
39978 /* Line 1792 of yacc.c  */
39979 #line 11698 "gram.y"
39980     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (2)].list), (yyvsp[(1) - (2)].node), NULL, (yylsp[(2) - (2)])); }
39981     break;
39982 
39983   case 1751:
39984 /* Line 1792 of yacc.c  */
39985 #line 11701 "gram.y"
39986     { (yyval.node) = makeAndExpr((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39987     break;
39988 
39989   case 1752:
39990 /* Line 1792 of yacc.c  */
39991 #line 11703 "gram.y"
39992     { (yyval.node) = makeOrExpr((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
39993     break;
39994 
39995   case 1753:
39996 /* Line 1792 of yacc.c  */
39997 #line 11705 "gram.y"
39998     { (yyval.node) = makeNotExpr((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
39999     break;
40000 
40001   case 1754:
40002 /* Line 1792 of yacc.c  */
40003 #line 11707 "gram.y"
40004     { (yyval.node) = makeNotExpr((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
40005     break;
40006 
40007   case 1755:
40008 /* Line 1792 of yacc.c  */
40009 #line 11710 "gram.y"
40010     {
40011 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "~~",
40012 												   (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)]));
40013 				}
40014     break;
40015 
40016   case 1756:
40017 /* Line 1792 of yacc.c  */
40018 #line 11715 "gram.y"
40019     {
40020 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
40021 											   list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)),
40022 											   (yylsp[(2) - (5)]));
40023 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "~~",
40024 												   (yyvsp[(1) - (5)].node), (Node *) n, (yylsp[(2) - (5)]));
40025 				}
40026     break;
40027 
40028   case 1757:
40029 /* Line 1792 of yacc.c  */
40030 #line 11723 "gram.y"
40031     {
40032 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "!~~",
40033 												   (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), (yylsp[(2) - (4)]));
40034 				}
40035     break;
40036 
40037   case 1758:
40038 /* Line 1792 of yacc.c  */
40039 #line 11728 "gram.y"
40040     {
40041 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
40042 											   list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)),
40043 											   (yylsp[(2) - (6)]));
40044 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_LIKE, "!~~",
40045 												   (yyvsp[(1) - (6)].node), (Node *) n, (yylsp[(2) - (6)]));
40046 				}
40047     break;
40048 
40049   case 1759:
40050 /* Line 1792 of yacc.c  */
40051 #line 11736 "gram.y"
40052     {
40053 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "~~*",
40054 												   (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)]));
40055 				}
40056     break;
40057 
40058   case 1760:
40059 /* Line 1792 of yacc.c  */
40060 #line 11741 "gram.y"
40061     {
40062 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
40063 											   list_make2((yyvsp[(3) - (5)].node), (yyvsp[(5) - (5)].node)),
40064 											   (yylsp[(2) - (5)]));
40065 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "~~*",
40066 												   (yyvsp[(1) - (5)].node), (Node *) n, (yylsp[(2) - (5)]));
40067 				}
40068     break;
40069 
40070   case 1761:
40071 /* Line 1792 of yacc.c  */
40072 #line 11749 "gram.y"
40073     {
40074 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "!~~*",
40075 												   (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), (yylsp[(2) - (4)]));
40076 				}
40077     break;
40078 
40079   case 1762:
40080 /* Line 1792 of yacc.c  */
40081 #line 11754 "gram.y"
40082     {
40083 					FuncCall *n = makeFuncCall(SystemFuncName("like_escape"),
40084 											   list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)),
40085 											   (yylsp[(2) - (6)]));
40086 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_ILIKE, "!~~*",
40087 												   (yyvsp[(1) - (6)].node), (Node *) n, (yylsp[(2) - (6)]));
40088 				}
40089     break;
40090 
40091   case 1763:
40092 /* Line 1792 of yacc.c  */
40093 #line 11763 "gram.y"
40094     {
40095 					FuncCall *n = makeFuncCall(SystemFuncName("similar_escape"),
40096 											   list_make2((yyvsp[(4) - (4)].node), makeNullAConst(-1)),
40097 											   (yylsp[(2) - (4)]));
40098 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "~",
40099 												   (yyvsp[(1) - (4)].node), (Node *) n, (yylsp[(2) - (4)]));
40100 				}
40101     break;
40102 
40103   case 1764:
40104 /* Line 1792 of yacc.c  */
40105 #line 11771 "gram.y"
40106     {
40107 					FuncCall *n = makeFuncCall(SystemFuncName("similar_escape"),
40108 											   list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)),
40109 											   (yylsp[(2) - (6)]));
40110 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "~",
40111 												   (yyvsp[(1) - (6)].node), (Node *) n, (yylsp[(2) - (6)]));
40112 				}
40113     break;
40114 
40115   case 1765:
40116 /* Line 1792 of yacc.c  */
40117 #line 11779 "gram.y"
40118     {
40119 					FuncCall *n = makeFuncCall(SystemFuncName("similar_escape"),
40120 											   list_make2((yyvsp[(5) - (5)].node), makeNullAConst(-1)),
40121 											   (yylsp[(2) - (5)]));
40122 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "!~",
40123 												   (yyvsp[(1) - (5)].node), (Node *) n, (yylsp[(2) - (5)]));
40124 				}
40125     break;
40126 
40127   case 1766:
40128 /* Line 1792 of yacc.c  */
40129 #line 11787 "gram.y"
40130     {
40131 					FuncCall *n = makeFuncCall(SystemFuncName("similar_escape"),
40132 											   list_make2((yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)),
40133 											   (yylsp[(2) - (7)]));
40134 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_SIMILAR, "!~",
40135 												   (yyvsp[(1) - (7)].node), (Node *) n, (yylsp[(2) - (7)]));
40136 				}
40137     break;
40138 
40139   case 1767:
40140 /* Line 1792 of yacc.c  */
40141 #line 11805 "gram.y"
40142     {
40143 					NullTest *n = makeNode(NullTest);
40144 					n->arg = (Expr *) (yyvsp[(1) - (3)].node);
40145 					n->nulltesttype = IS_NULL;
40146 					n->location = (yylsp[(2) - (3)]);
40147 					(yyval.node) = (Node *)n;
40148 				}
40149     break;
40150 
40151   case 1768:
40152 /* Line 1792 of yacc.c  */
40153 #line 11813 "gram.y"
40154     {
40155 					NullTest *n = makeNode(NullTest);
40156 					n->arg = (Expr *) (yyvsp[(1) - (2)].node);
40157 					n->nulltesttype = IS_NULL;
40158 					n->location = (yylsp[(2) - (2)]);
40159 					(yyval.node) = (Node *)n;
40160 				}
40161     break;
40162 
40163   case 1769:
40164 /* Line 1792 of yacc.c  */
40165 #line 11821 "gram.y"
40166     {
40167 					NullTest *n = makeNode(NullTest);
40168 					n->arg = (Expr *) (yyvsp[(1) - (4)].node);
40169 					n->nulltesttype = IS_NOT_NULL;
40170 					n->location = (yylsp[(2) - (4)]);
40171 					(yyval.node) = (Node *)n;
40172 				}
40173     break;
40174 
40175   case 1770:
40176 /* Line 1792 of yacc.c  */
40177 #line 11829 "gram.y"
40178     {
40179 					NullTest *n = makeNode(NullTest);
40180 					n->arg = (Expr *) (yyvsp[(1) - (2)].node);
40181 					n->nulltesttype = IS_NOT_NULL;
40182 					n->location = (yylsp[(2) - (2)]);
40183 					(yyval.node) = (Node *)n;
40184 				}
40185     break;
40186 
40187   case 1771:
40188 /* Line 1792 of yacc.c  */
40189 #line 11837 "gram.y"
40190     {
40191 					if (list_length((yyvsp[(1) - (3)].list)) != 2)
40192 						ereport(ERROR,
40193 								(errcode(ERRCODE_SYNTAX_ERROR),
40194 								 errmsg("wrong number of parameters on left side of OVERLAPS expression"),
40195 								 parser_errposition((yylsp[(1) - (3)]))));
40196 					if (list_length((yyvsp[(3) - (3)].list)) != 2)
40197 						ereport(ERROR,
40198 								(errcode(ERRCODE_SYNTAX_ERROR),
40199 								 errmsg("wrong number of parameters on right side of OVERLAPS expression"),
40200 								 parser_errposition((yylsp[(3) - (3)]))));
40201 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("overlaps"),
40202 											   list_concat((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].list)),
40203 											   (yylsp[(2) - (3)]));
40204 				}
40205     break;
40206 
40207   case 1772:
40208 /* Line 1792 of yacc.c  */
40209 #line 11853 "gram.y"
40210     {
40211 					BooleanTest *b = makeNode(BooleanTest);
40212 					b->arg = (Expr *) (yyvsp[(1) - (3)].node);
40213 					b->booltesttype = IS_TRUE;
40214 					b->location = (yylsp[(2) - (3)]);
40215 					(yyval.node) = (Node *)b;
40216 				}
40217     break;
40218 
40219   case 1773:
40220 /* Line 1792 of yacc.c  */
40221 #line 11861 "gram.y"
40222     {
40223 					BooleanTest *b = makeNode(BooleanTest);
40224 					b->arg = (Expr *) (yyvsp[(1) - (4)].node);
40225 					b->booltesttype = IS_NOT_TRUE;
40226 					b->location = (yylsp[(2) - (4)]);
40227 					(yyval.node) = (Node *)b;
40228 				}
40229     break;
40230 
40231   case 1774:
40232 /* Line 1792 of yacc.c  */
40233 #line 11869 "gram.y"
40234     {
40235 					BooleanTest *b = makeNode(BooleanTest);
40236 					b->arg = (Expr *) (yyvsp[(1) - (3)].node);
40237 					b->booltesttype = IS_FALSE;
40238 					b->location = (yylsp[(2) - (3)]);
40239 					(yyval.node) = (Node *)b;
40240 				}
40241     break;
40242 
40243   case 1775:
40244 /* Line 1792 of yacc.c  */
40245 #line 11877 "gram.y"
40246     {
40247 					BooleanTest *b = makeNode(BooleanTest);
40248 					b->arg = (Expr *) (yyvsp[(1) - (4)].node);
40249 					b->booltesttype = IS_NOT_FALSE;
40250 					b->location = (yylsp[(2) - (4)]);
40251 					(yyval.node) = (Node *)b;
40252 				}
40253     break;
40254 
40255   case 1776:
40256 /* Line 1792 of yacc.c  */
40257 #line 11885 "gram.y"
40258     {
40259 					BooleanTest *b = makeNode(BooleanTest);
40260 					b->arg = (Expr *) (yyvsp[(1) - (3)].node);
40261 					b->booltesttype = IS_UNKNOWN;
40262 					b->location = (yylsp[(2) - (3)]);
40263 					(yyval.node) = (Node *)b;
40264 				}
40265     break;
40266 
40267   case 1777:
40268 /* Line 1792 of yacc.c  */
40269 #line 11893 "gram.y"
40270     {
40271 					BooleanTest *b = makeNode(BooleanTest);
40272 					b->arg = (Expr *) (yyvsp[(1) - (4)].node);
40273 					b->booltesttype = IS_NOT_UNKNOWN;
40274 					b->location = (yylsp[(2) - (4)]);
40275 					(yyval.node) = (Node *)b;
40276 				}
40277     break;
40278 
40279   case 1778:
40280 /* Line 1792 of yacc.c  */
40281 #line 11901 "gram.y"
40282     {
40283 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), (yylsp[(2) - (5)]));
40284 				}
40285     break;
40286 
40287   case 1779:
40288 /* Line 1792 of yacc.c  */
40289 #line 11905 "gram.y"
40290     {
40291 					(yyval.node) = makeNotExpr((Node *) makeSimpleA_Expr(AEXPR_DISTINCT,
40292 															   "=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), (yylsp[(2) - (6)])),
40293 									 (yylsp[(2) - (6)]));
40294 				}
40295     break;
40296 
40297   case 1780:
40298 /* Line 1792 of yacc.c  */
40299 #line 11911 "gram.y"
40300     {
40301 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[(1) - (6)].node), (Node *) (yyvsp[(5) - (6)].list), (yylsp[(2) - (6)]));
40302 				}
40303     break;
40304 
40305   case 1781:
40306 /* Line 1792 of yacc.c  */
40307 #line 11915 "gram.y"
40308     {
40309 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "<>", (yyvsp[(1) - (7)].node), (Node *) (yyvsp[(6) - (7)].list), (yylsp[(2) - (7)]));
40310 				}
40311     break;
40312 
40313   case 1782:
40314 /* Line 1792 of yacc.c  */
40315 #line 11919 "gram.y"
40316     {
40317 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN,
40318 												   "BETWEEN",
40319 												   (yyvsp[(1) - (6)].node),
40320 												   (Node *) list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)),
40321 												   (yylsp[(2) - (6)]));
40322 				}
40323     break;
40324 
40325   case 1783:
40326 /* Line 1792 of yacc.c  */
40327 #line 11927 "gram.y"
40328     {
40329 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN,
40330 												   "NOT BETWEEN",
40331 												   (yyvsp[(1) - (7)].node),
40332 												   (Node *) list_make2((yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)),
40333 												   (yylsp[(2) - (7)]));
40334 				}
40335     break;
40336 
40337   case 1784:
40338 /* Line 1792 of yacc.c  */
40339 #line 11935 "gram.y"
40340     {
40341 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_BETWEEN_SYM,
40342 												   "BETWEEN SYMMETRIC",
40343 												   (yyvsp[(1) - (6)].node),
40344 												   (Node *) list_make2((yyvsp[(4) - (6)].node), (yyvsp[(6) - (6)].node)),
40345 												   (yylsp[(2) - (6)]));
40346 				}
40347     break;
40348 
40349   case 1785:
40350 /* Line 1792 of yacc.c  */
40351 #line 11943 "gram.y"
40352     {
40353 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NOT_BETWEEN_SYM,
40354 												   "NOT BETWEEN SYMMETRIC",
40355 												   (yyvsp[(1) - (7)].node),
40356 												   (Node *) list_make2((yyvsp[(5) - (7)].node), (yyvsp[(7) - (7)].node)),
40357 												   (yylsp[(2) - (7)]));
40358 				}
40359     break;
40360 
40361   case 1786:
40362 /* Line 1792 of yacc.c  */
40363 #line 11951 "gram.y"
40364     {
40365 					/* in_expr returns a SubLink or a list of a_exprs */
40366 					if (IsA((yyvsp[(3) - (3)].node), SubLink))
40367 					{
40368 						/* generate foo = ANY (subquery) */
40369 						SubLink *n = (SubLink *) (yyvsp[(3) - (3)].node);
40370 						n->subLinkType = ANY_SUBLINK;
40371 						n->subLinkId = 0;
40372 						n->testexpr = (yyvsp[(1) - (3)].node);
40373 						n->operName = NIL;		/* show it's IN not = ANY */
40374 						n->location = (yylsp[(2) - (3)]);
40375 						(yyval.node) = (Node *)n;
40376 					}
40377 					else
40378 					{
40379 						/* generate scalar IN expression */
40380 						(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_IN, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)]));
40381 					}
40382 				}
40383     break;
40384 
40385   case 1787:
40386 /* Line 1792 of yacc.c  */
40387 #line 11971 "gram.y"
40388     {
40389 					/* in_expr returns a SubLink or a list of a_exprs */
40390 					if (IsA((yyvsp[(4) - (4)].node), SubLink))
40391 					{
40392 						/* generate NOT (foo = ANY (subquery)) */
40393 						/* Make an = ANY node */
40394 						SubLink *n = (SubLink *) (yyvsp[(4) - (4)].node);
40395 						n->subLinkType = ANY_SUBLINK;
40396 						n->subLinkId = 0;
40397 						n->testexpr = (yyvsp[(1) - (4)].node);
40398 						n->operName = NIL;		/* show it's IN not = ANY */
40399 						n->location = (yylsp[(2) - (4)]);
40400 						/* Stick a NOT on top; must have same parse location */
40401 						(yyval.node) = makeNotExpr((Node *) n, (yylsp[(2) - (4)]));
40402 					}
40403 					else
40404 					{
40405 						/* generate scalar NOT IN expression */
40406 						(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_IN, "<>", (yyvsp[(1) - (4)].node), (yyvsp[(4) - (4)].node), (yylsp[(2) - (4)]));
40407 					}
40408 				}
40409     break;
40410 
40411   case 1788:
40412 /* Line 1792 of yacc.c  */
40413 #line 11993 "gram.y"
40414     {
40415 					SubLink *n = makeNode(SubLink);
40416 					n->subLinkType = (yyvsp[(3) - (4)].ival);
40417 					n->subLinkId = 0;
40418 					n->testexpr = (yyvsp[(1) - (4)].node);
40419 					n->operName = (yyvsp[(2) - (4)].list);
40420 					n->subselect = (yyvsp[(4) - (4)].node);
40421 					n->location = (yylsp[(2) - (4)]);
40422 					(yyval.node) = (Node *)n;
40423 				}
40424     break;
40425 
40426   case 1789:
40427 /* Line 1792 of yacc.c  */
40428 #line 12004 "gram.y"
40429     {
40430 					if ((yyvsp[(3) - (6)].ival) == ANY_SUBLINK)
40431 						(yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ANY, (yyvsp[(2) - (6)].list), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(2) - (6)]));
40432 					else
40433 						(yyval.node) = (Node *) makeA_Expr(AEXPR_OP_ALL, (yyvsp[(2) - (6)].list), (yyvsp[(1) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(2) - (6)]));
40434 				}
40435     break;
40436 
40437   case 1790:
40438 /* Line 1792 of yacc.c  */
40439 #line 12011 "gram.y"
40440     {
40441 					/* Not sure how to get rid of the parentheses
40442 					 * but there are lots of shift/reduce errors without them.
40443 					 *
40444 					 * Should be able to implement this by plopping the entire
40445 					 * select into a node, then transforming the target expressions
40446 					 * from whatever they are into count(*), and testing the
40447 					 * entire result equal to one.
40448 					 * But, will probably implement a separate node in the executor.
40449 					 */
40450 					ereport(ERROR,
40451 							(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
40452 							 errmsg("UNIQUE predicate is not yet implemented"),
40453 							 parser_errposition((yylsp[(1) - (2)]))));
40454 				}
40455     break;
40456 
40457   case 1791:
40458 /* Line 1792 of yacc.c  */
40459 #line 12027 "gram.y"
40460     {
40461 					(yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL,
40462 									 list_make1((yyvsp[(1) - (3)].node)), (yylsp[(2) - (3)]));
40463 				}
40464     break;
40465 
40466   case 1792:
40467 /* Line 1792 of yacc.c  */
40468 #line 12032 "gram.y"
40469     {
40470 					(yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL,
40471 												 list_make1((yyvsp[(1) - (4)].node)), (yylsp[(2) - (4)])),
40472 									 (yylsp[(2) - (4)]));
40473 				}
40474     break;
40475 
40476   case 1793:
40477 /* Line 1792 of yacc.c  */
40478 #line 12049 "gram.y"
40479     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40480     break;
40481 
40482   case 1794:
40483 /* Line 1792 of yacc.c  */
40484 #line 12051 "gram.y"
40485     { (yyval.node) = makeTypeCast((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].typnam), (yylsp[(2) - (3)])); }
40486     break;
40487 
40488   case 1795:
40489 /* Line 1792 of yacc.c  */
40490 #line 12053 "gram.y"
40491     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
40492     break;
40493 
40494   case 1796:
40495 /* Line 1792 of yacc.c  */
40496 #line 12055 "gram.y"
40497     { (yyval.node) = doNegate((yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
40498     break;
40499 
40500   case 1797:
40501 /* Line 1792 of yacc.c  */
40502 #line 12057 "gram.y"
40503     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "+", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40504     break;
40505 
40506   case 1798:
40507 /* Line 1792 of yacc.c  */
40508 #line 12059 "gram.y"
40509     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "-", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40510     break;
40511 
40512   case 1799:
40513 /* Line 1792 of yacc.c  */
40514 #line 12061 "gram.y"
40515     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "*", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40516     break;
40517 
40518   case 1800:
40519 /* Line 1792 of yacc.c  */
40520 #line 12063 "gram.y"
40521     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "/", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40522     break;
40523 
40524   case 1801:
40525 /* Line 1792 of yacc.c  */
40526 #line 12065 "gram.y"
40527     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "%", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40528     break;
40529 
40530   case 1802:
40531 /* Line 1792 of yacc.c  */
40532 #line 12067 "gram.y"
40533     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "^", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40534     break;
40535 
40536   case 1803:
40537 /* Line 1792 of yacc.c  */
40538 #line 12069 "gram.y"
40539     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40540     break;
40541 
40542   case 1804:
40543 /* Line 1792 of yacc.c  */
40544 #line 12071 "gram.y"
40545     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40546     break;
40547 
40548   case 1805:
40549 /* Line 1792 of yacc.c  */
40550 #line 12073 "gram.y"
40551     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40552     break;
40553 
40554   case 1806:
40555 /* Line 1792 of yacc.c  */
40556 #line 12075 "gram.y"
40557     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40558     break;
40559 
40560   case 1807:
40561 /* Line 1792 of yacc.c  */
40562 #line 12077 "gram.y"
40563     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, ">=", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40564     break;
40565 
40566   case 1808:
40567 /* Line 1792 of yacc.c  */
40568 #line 12079 "gram.y"
40569     { (yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OP, "<>", (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40570     break;
40571 
40572   case 1809:
40573 /* Line 1792 of yacc.c  */
40574 #line 12081 "gram.y"
40575     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (3)].list), (yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yylsp[(2) - (3)])); }
40576     break;
40577 
40578   case 1810:
40579 /* Line 1792 of yacc.c  */
40580 #line 12083 "gram.y"
40581     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(1) - (2)].list), NULL, (yyvsp[(2) - (2)].node), (yylsp[(1) - (2)])); }
40582     break;
40583 
40584   case 1811:
40585 /* Line 1792 of yacc.c  */
40586 #line 12085 "gram.y"
40587     { (yyval.node) = (Node *) makeA_Expr(AEXPR_OP, (yyvsp[(2) - (2)].list), (yyvsp[(1) - (2)].node), NULL, (yylsp[(2) - (2)])); }
40588     break;
40589 
40590   case 1812:
40591 /* Line 1792 of yacc.c  */
40592 #line 12087 "gram.y"
40593     {
40594 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_DISTINCT, "=", (yyvsp[(1) - (5)].node), (yyvsp[(5) - (5)].node), (yylsp[(2) - (5)]));
40595 				}
40596     break;
40597 
40598   case 1813:
40599 /* Line 1792 of yacc.c  */
40600 #line 12091 "gram.y"
40601     {
40602 					(yyval.node) = makeNotExpr((Node *) makeSimpleA_Expr(AEXPR_DISTINCT,
40603 															   "=", (yyvsp[(1) - (6)].node), (yyvsp[(6) - (6)].node), (yylsp[(2) - (6)])),
40604 									 (yylsp[(2) - (6)]));
40605 				}
40606     break;
40607 
40608   case 1814:
40609 /* Line 1792 of yacc.c  */
40610 #line 12097 "gram.y"
40611     {
40612 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "=", (yyvsp[(1) - (6)].node), (Node *) (yyvsp[(5) - (6)].list), (yylsp[(2) - (6)]));
40613 				}
40614     break;
40615 
40616   case 1815:
40617 /* Line 1792 of yacc.c  */
40618 #line 12101 "gram.y"
40619     {
40620 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_OF, "<>", (yyvsp[(1) - (7)].node), (Node *) (yyvsp[(6) - (7)].list), (yylsp[(2) - (7)]));
40621 				}
40622     break;
40623 
40624   case 1816:
40625 /* Line 1792 of yacc.c  */
40626 #line 12105 "gram.y"
40627     {
40628 					(yyval.node) = makeXmlExpr(IS_DOCUMENT, NULL, NIL,
40629 									 list_make1((yyvsp[(1) - (3)].node)), (yylsp[(2) - (3)]));
40630 				}
40631     break;
40632 
40633   case 1817:
40634 /* Line 1792 of yacc.c  */
40635 #line 12110 "gram.y"
40636     {
40637 					(yyval.node) = makeNotExpr(makeXmlExpr(IS_DOCUMENT, NULL, NIL,
40638 												 list_make1((yyvsp[(1) - (4)].node)), (yylsp[(2) - (4)])),
40639 									 (yylsp[(2) - (4)]));
40640 				}
40641     break;
40642 
40643   case 1818:
40644 /* Line 1792 of yacc.c  */
40645 #line 12125 "gram.y"
40646     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40647     break;
40648 
40649   case 1819:
40650 /* Line 1792 of yacc.c  */
40651 #line 12126 "gram.y"
40652     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40653     break;
40654 
40655   case 1820:
40656 /* Line 1792 of yacc.c  */
40657 #line 12128 "gram.y"
40658     {
40659 					ParamRef *p = makeNode(ParamRef);
40660 					p->number = (yyvsp[(1) - (2)].ival);
40661 					p->location = (yylsp[(1) - (2)]);
40662 					if ((yyvsp[(2) - (2)].list))
40663 					{
40664 						A_Indirection *n = makeNode(A_Indirection);
40665 						n->arg = (Node *) p;
40666 						n->indirection = check_indirection((yyvsp[(2) - (2)].list), yyscanner);
40667 						(yyval.node) = (Node *) n;
40668 					}
40669 					else
40670 						(yyval.node) = (Node *) p;
40671 				}
40672     break;
40673 
40674   case 1821:
40675 /* Line 1792 of yacc.c  */
40676 #line 12143 "gram.y"
40677     {
40678 					if ((yyvsp[(4) - (4)].list))
40679 					{
40680 						A_Indirection *n = makeNode(A_Indirection);
40681 						n->arg = (yyvsp[(2) - (4)].node);
40682 						n->indirection = check_indirection((yyvsp[(4) - (4)].list), yyscanner);
40683 						(yyval.node) = (Node *)n;
40684 					}
40685 					else if (operator_precedence_warning)
40686 					{
40687 						/*
40688 						 * If precedence warnings are enabled, insert
40689 						 * AEXPR_PAREN nodes wrapping all explicitly
40690 						 * parenthesized subexpressions; this prevents bogus
40691 						 * warnings from being issued when the ordering has
40692 						 * been forced by parentheses.
40693 						 *
40694 						 * In principle we should not be relying on a GUC to
40695 						 * decide whether to insert AEXPR_PAREN nodes.
40696 						 * However, since they have no effect except to
40697 						 * suppress warnings, it's probably safe enough; and
40698 						 * we'd just as soon not waste cycles on dummy parse
40699 						 * nodes if we don't have to.
40700 						 */
40701 						(yyval.node) = (Node *) makeA_Expr(AEXPR_PAREN, NIL, (yyvsp[(2) - (4)].node), NULL, (yylsp[(1) - (4)]));
40702 					}
40703 					else
40704 						(yyval.node) = (yyvsp[(2) - (4)].node);
40705 				}
40706     break;
40707 
40708   case 1822:
40709 /* Line 1792 of yacc.c  */
40710 #line 12173 "gram.y"
40711     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40712     break;
40713 
40714   case 1823:
40715 /* Line 1792 of yacc.c  */
40716 #line 12175 "gram.y"
40717     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40718     break;
40719 
40720   case 1824:
40721 /* Line 1792 of yacc.c  */
40722 #line 12177 "gram.y"
40723     {
40724 					SubLink *n = makeNode(SubLink);
40725 					n->subLinkType = EXPR_SUBLINK;
40726 					n->subLinkId = 0;
40727 					n->testexpr = NULL;
40728 					n->operName = NIL;
40729 					n->subselect = (yyvsp[(1) - (1)].node);
40730 					n->location = (yylsp[(1) - (1)]);
40731 					(yyval.node) = (Node *)n;
40732 				}
40733     break;
40734 
40735   case 1825:
40736 /* Line 1792 of yacc.c  */
40737 #line 12188 "gram.y"
40738     {
40739 					/*
40740 					 * Because the select_with_parens nonterminal is designed
40741 					 * to "eat" as many levels of parens as possible, the
40742 					 * '(' a_expr ')' opt_indirection production above will
40743 					 * fail to match a sub-SELECT with indirection decoration;
40744 					 * the sub-SELECT won't be regarded as an a_expr as long
40745 					 * as there are parens around it.  To support applying
40746 					 * subscripting or field selection to a sub-SELECT result,
40747 					 * we need this redundant-looking production.
40748 					 */
40749 					SubLink *n = makeNode(SubLink);
40750 					A_Indirection *a = makeNode(A_Indirection);
40751 					n->subLinkType = EXPR_SUBLINK;
40752 					n->subLinkId = 0;
40753 					n->testexpr = NULL;
40754 					n->operName = NIL;
40755 					n->subselect = (yyvsp[(1) - (2)].node);
40756 					n->location = (yylsp[(1) - (2)]);
40757 					a->arg = (Node *)n;
40758 					a->indirection = check_indirection((yyvsp[(2) - (2)].list), yyscanner);
40759 					(yyval.node) = (Node *)a;
40760 				}
40761     break;
40762 
40763   case 1826:
40764 /* Line 1792 of yacc.c  */
40765 #line 12212 "gram.y"
40766     {
40767 					SubLink *n = makeNode(SubLink);
40768 					n->subLinkType = EXISTS_SUBLINK;
40769 					n->subLinkId = 0;
40770 					n->testexpr = NULL;
40771 					n->operName = NIL;
40772 					n->subselect = (yyvsp[(2) - (2)].node);
40773 					n->location = (yylsp[(1) - (2)]);
40774 					(yyval.node) = (Node *)n;
40775 				}
40776     break;
40777 
40778   case 1827:
40779 /* Line 1792 of yacc.c  */
40780 #line 12223 "gram.y"
40781     {
40782 					SubLink *n = makeNode(SubLink);
40783 					n->subLinkType = ARRAY_SUBLINK;
40784 					n->subLinkId = 0;
40785 					n->testexpr = NULL;
40786 					n->operName = NIL;
40787 					n->subselect = (yyvsp[(2) - (2)].node);
40788 					n->location = (yylsp[(1) - (2)]);
40789 					(yyval.node) = (Node *)n;
40790 				}
40791     break;
40792 
40793   case 1828:
40794 /* Line 1792 of yacc.c  */
40795 #line 12234 "gram.y"
40796     {
40797 					A_ArrayExpr *n = (A_ArrayExpr *) (yyvsp[(2) - (2)].node);
40798 					Assert(IsA(n, A_ArrayExpr));
40799 					/* point outermost A_ArrayExpr to the ARRAY keyword */
40800 					n->location = (yylsp[(1) - (2)]);
40801 					(yyval.node) = (Node *)n;
40802 				}
40803     break;
40804 
40805   case 1829:
40806 /* Line 1792 of yacc.c  */
40807 #line 12242 "gram.y"
40808     {
40809 					RowExpr *r = makeNode(RowExpr);
40810 					r->args = (yyvsp[(1) - (1)].list);
40811 					r->row_typeid = InvalidOid;	/* not analyzed yet */
40812 					r->colnames = NIL;	/* to be filled in during analysis */
40813 					r->row_format = COERCE_EXPLICIT_CALL; /* abuse */
40814 					r->location = (yylsp[(1) - (1)]);
40815 					(yyval.node) = (Node *)r;
40816 				}
40817     break;
40818 
40819   case 1830:
40820 /* Line 1792 of yacc.c  */
40821 #line 12252 "gram.y"
40822     {
40823 					RowExpr *r = makeNode(RowExpr);
40824 					r->args = (yyvsp[(1) - (1)].list);
40825 					r->row_typeid = InvalidOid;	/* not analyzed yet */
40826 					r->colnames = NIL;	/* to be filled in during analysis */
40827 					r->row_format = COERCE_IMPLICIT_CAST; /* abuse */
40828 					r->location = (yylsp[(1) - (1)]);
40829 					(yyval.node) = (Node *)r;
40830 				}
40831     break;
40832 
40833   case 1831:
40834 /* Line 1792 of yacc.c  */
40835 #line 12262 "gram.y"
40836     {
40837 				  GroupingFunc *g = makeNode(GroupingFunc);
40838 				  g->args = (yyvsp[(3) - (4)].list);
40839 				  g->location = (yylsp[(1) - (4)]);
40840 				  (yyval.node) = (Node *)g;
40841 			  }
40842     break;
40843 
40844   case 1832:
40845 /* Line 1792 of yacc.c  */
40846 #line 12271 "gram.y"
40847     {
40848 					(yyval.node) = (Node *) makeFuncCall((yyvsp[(1) - (3)].list), NIL, (yylsp[(1) - (3)]));
40849 				}
40850     break;
40851 
40852   case 1833:
40853 /* Line 1792 of yacc.c  */
40854 #line 12275 "gram.y"
40855     {
40856 					FuncCall *n = makeFuncCall((yyvsp[(1) - (5)].list), (yyvsp[(3) - (5)].list), (yylsp[(1) - (5)]));
40857 					n->agg_order = (yyvsp[(4) - (5)].list);
40858 					(yyval.node) = (Node *)n;
40859 				}
40860     break;
40861 
40862   case 1834:
40863 /* Line 1792 of yacc.c  */
40864 #line 12281 "gram.y"
40865     {
40866 					FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), list_make1((yyvsp[(4) - (6)].node)), (yylsp[(1) - (6)]));
40867 					n->func_variadic = TRUE;
40868 					n->agg_order = (yyvsp[(5) - (6)].list);
40869 					(yyval.node) = (Node *)n;
40870 				}
40871     break;
40872 
40873   case 1835:
40874 /* Line 1792 of yacc.c  */
40875 #line 12288 "gram.y"
40876     {
40877 					FuncCall *n = makeFuncCall((yyvsp[(1) - (8)].list), lappend((yyvsp[(3) - (8)].list), (yyvsp[(6) - (8)].node)), (yylsp[(1) - (8)]));
40878 					n->func_variadic = TRUE;
40879 					n->agg_order = (yyvsp[(7) - (8)].list);
40880 					(yyval.node) = (Node *)n;
40881 				}
40882     break;
40883 
40884   case 1836:
40885 /* Line 1792 of yacc.c  */
40886 #line 12295 "gram.y"
40887     {
40888 					FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), (yyvsp[(4) - (6)].list), (yylsp[(1) - (6)]));
40889 					n->agg_order = (yyvsp[(5) - (6)].list);
40890 					/* Ideally we'd mark the FuncCall node to indicate
40891 					 * "must be an aggregate", but there's no provision
40892 					 * for that in FuncCall at the moment.
40893 					 */
40894 					(yyval.node) = (Node *)n;
40895 				}
40896     break;
40897 
40898   case 1837:
40899 /* Line 1792 of yacc.c  */
40900 #line 12305 "gram.y"
40901     {
40902 					FuncCall *n = makeFuncCall((yyvsp[(1) - (6)].list), (yyvsp[(4) - (6)].list), (yylsp[(1) - (6)]));
40903 					n->agg_order = (yyvsp[(5) - (6)].list);
40904 					n->agg_distinct = TRUE;
40905 					(yyval.node) = (Node *)n;
40906 				}
40907     break;
40908 
40909   case 1838:
40910 /* Line 1792 of yacc.c  */
40911 #line 12312 "gram.y"
40912     {
40913 					/*
40914 					 * We consider AGGREGATE(*) to invoke a parameterless
40915 					 * aggregate.  This does the right thing for COUNT(*),
40916 					 * and there are no other aggregates in SQL that accept
40917 					 * '*' as parameter.
40918 					 *
40919 					 * The FuncCall node is also marked agg_star = true,
40920 					 * so that later processing can detect what the argument
40921 					 * really was.
40922 					 */
40923 					FuncCall *n = makeFuncCall((yyvsp[(1) - (4)].list), NIL, (yylsp[(1) - (4)]));
40924 					n->agg_star = TRUE;
40925 					(yyval.node) = (Node *)n;
40926 				}
40927     break;
40928 
40929   case 1839:
40930 /* Line 1792 of yacc.c  */
40931 #line 12340 "gram.y"
40932     {
40933 					FuncCall *n = (FuncCall *) (yyvsp[(1) - (4)].node);
40934 					/*
40935 					 * The order clause for WITHIN GROUP and the one for
40936 					 * plain-aggregate ORDER BY share a field, so we have to
40937 					 * check here that at most one is present.  We also check
40938 					 * for DISTINCT and VARIADIC here to give a better error
40939 					 * location.  Other consistency checks are deferred to
40940 					 * parse analysis.
40941 					 */
40942 					if ((yyvsp[(2) - (4)].list) != NIL)
40943 					{
40944 						if (n->agg_order != NIL)
40945 							ereport(ERROR,
40946 									(errcode(ERRCODE_SYNTAX_ERROR),
40947 									 errmsg("cannot use multiple ORDER BY clauses with WITHIN GROUP"),
40948 									 parser_errposition((yylsp[(2) - (4)]))));
40949 						if (n->agg_distinct)
40950 							ereport(ERROR,
40951 									(errcode(ERRCODE_SYNTAX_ERROR),
40952 									 errmsg("cannot use DISTINCT with WITHIN GROUP"),
40953 									 parser_errposition((yylsp[(2) - (4)]))));
40954 						if (n->func_variadic)
40955 							ereport(ERROR,
40956 									(errcode(ERRCODE_SYNTAX_ERROR),
40957 									 errmsg("cannot use VARIADIC with WITHIN GROUP"),
40958 									 parser_errposition((yylsp[(2) - (4)]))));
40959 						n->agg_order = (yyvsp[(2) - (4)].list);
40960 						n->agg_within_group = TRUE;
40961 					}
40962 					n->agg_filter = (yyvsp[(3) - (4)].node);
40963 					n->over = (yyvsp[(4) - (4)].windef);
40964 					(yyval.node) = (Node *) n;
40965 				}
40966     break;
40967 
40968   case 1840:
40969 /* Line 1792 of yacc.c  */
40970 #line 12375 "gram.y"
40971     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40972     break;
40973 
40974   case 1841:
40975 /* Line 1792 of yacc.c  */
40976 #line 12385 "gram.y"
40977     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40978     break;
40979 
40980   case 1842:
40981 /* Line 1792 of yacc.c  */
40982 #line 12386 "gram.y"
40983     { (yyval.node) = (yyvsp[(1) - (1)].node); }
40984     break;
40985 
40986   case 1843:
40987 /* Line 1792 of yacc.c  */
40988 #line 12394 "gram.y"
40989     {
40990 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("pg_collation_for"),
40991 											   list_make1((yyvsp[(4) - (5)].node)),
40992 											   (yylsp[(1) - (5)]));
40993 				}
40994     break;
40995 
40996   case 1844:
40997 /* Line 1792 of yacc.c  */
40998 #line 12400 "gram.y"
40999     {
41000 					/*
41001 					 * Translate as "'now'::text::date".
41002 					 *
41003 					 * We cannot use "'now'::date" because coerce_type() will
41004 					 * immediately reduce that to a constant representing
41005 					 * today's date.  We need to delay the conversion until
41006 					 * runtime, else the wrong things will happen when
41007 					 * CURRENT_DATE is used in a column default value or rule.
41008 					 *
41009 					 * This could be simplified if we had a way to generate
41010 					 * an expression tree representing runtime application
41011 					 * of type-input conversion functions.  (As of PG 7.3
41012 					 * that is actually possible, but not clear that we want
41013 					 * to rely on it.)
41014 					 *
41015 					 * The token location is attached to the run-time
41016 					 * typecast, not to the Const, for the convenience of
41017 					 * pg_stat_statements (which doesn't want these constructs
41018 					 * to appear to be replaceable constants).
41019 					 */
41020 					Node *n;
41021 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41022 					(yyval.node) = makeTypeCast(n, SystemTypeName("date"), (yylsp[(1) - (1)]));
41023 				}
41024     break;
41025 
41026   case 1845:
41027 /* Line 1792 of yacc.c  */
41028 #line 12426 "gram.y"
41029     {
41030 					/*
41031 					 * Translate as "'now'::text::timetz".
41032 					 * See comments for CURRENT_DATE.
41033 					 */
41034 					Node *n;
41035 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41036 					(yyval.node) = makeTypeCast(n, SystemTypeName("timetz"), (yylsp[(1) - (1)]));
41037 				}
41038     break;
41039 
41040   case 1846:
41041 /* Line 1792 of yacc.c  */
41042 #line 12436 "gram.y"
41043     {
41044 					/*
41045 					 * Translate as "'now'::text::timetz(n)".
41046 					 * See comments for CURRENT_DATE.
41047 					 */
41048 					Node *n;
41049 					TypeName *d;
41050 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41051 					d = SystemTypeName("timetz");
41052 					d->typmods = list_make1(makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
41053 					(yyval.node) = makeTypeCast(n, d, (yylsp[(1) - (4)]));
41054 				}
41055     break;
41056 
41057   case 1847:
41058 /* Line 1792 of yacc.c  */
41059 #line 12449 "gram.y"
41060     {
41061 					/*
41062 					 * Translate as "now()", since we have a function that
41063 					 * does exactly what is needed.
41064 					 */
41065 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("now"), NIL, (yylsp[(1) - (1)]));
41066 				}
41067     break;
41068 
41069   case 1848:
41070 /* Line 1792 of yacc.c  */
41071 #line 12457 "gram.y"
41072     {
41073 					/*
41074 					 * Translate as "'now'::text::timestamptz(n)".
41075 					 * See comments for CURRENT_DATE.
41076 					 */
41077 					Node *n;
41078 					TypeName *d;
41079 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41080 					d = SystemTypeName("timestamptz");
41081 					d->typmods = list_make1(makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
41082 					(yyval.node) = makeTypeCast(n, d, (yylsp[(1) - (4)]));
41083 				}
41084     break;
41085 
41086   case 1849:
41087 /* Line 1792 of yacc.c  */
41088 #line 12470 "gram.y"
41089     {
41090 					/*
41091 					 * Translate as "'now'::text::time".
41092 					 * See comments for CURRENT_DATE.
41093 					 */
41094 					Node *n;
41095 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41096 					(yyval.node) = makeTypeCast((Node *)n, SystemTypeName("time"), (yylsp[(1) - (1)]));
41097 				}
41098     break;
41099 
41100   case 1850:
41101 /* Line 1792 of yacc.c  */
41102 #line 12480 "gram.y"
41103     {
41104 					/*
41105 					 * Translate as "'now'::text::time(n)".
41106 					 * See comments for CURRENT_DATE.
41107 					 */
41108 					Node *n;
41109 					TypeName *d;
41110 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41111 					d = SystemTypeName("time");
41112 					d->typmods = list_make1(makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
41113 					(yyval.node) = makeTypeCast((Node *)n, d, (yylsp[(1) - (4)]));
41114 				}
41115     break;
41116 
41117   case 1851:
41118 /* Line 1792 of yacc.c  */
41119 #line 12493 "gram.y"
41120     {
41121 					/*
41122 					 * Translate as "'now'::text::timestamp".
41123 					 * See comments for CURRENT_DATE.
41124 					 */
41125 					Node *n;
41126 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41127 					(yyval.node) = makeTypeCast(n, SystemTypeName("timestamp"), (yylsp[(1) - (1)]));
41128 				}
41129     break;
41130 
41131   case 1852:
41132 /* Line 1792 of yacc.c  */
41133 #line 12503 "gram.y"
41134     {
41135 					/*
41136 					 * Translate as "'now'::text::timestamp(n)".
41137 					 * See comments for CURRENT_DATE.
41138 					 */
41139 					Node *n;
41140 					TypeName *d;
41141 					n = makeStringConstCast("now", -1, SystemTypeName("text"));
41142 					d = SystemTypeName("timestamp");
41143 					d->typmods = list_make1(makeIntConst((yyvsp[(3) - (4)].ival), (yylsp[(3) - (4)])));
41144 					(yyval.node) = makeTypeCast(n, d, (yylsp[(1) - (4)]));
41145 				}
41146     break;
41147 
41148   case 1853:
41149 /* Line 1792 of yacc.c  */
41150 #line 12516 "gram.y"
41151     {
41152 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("current_user"), NIL, (yylsp[(1) - (1)]));
41153 				}
41154     break;
41155 
41156   case 1854:
41157 /* Line 1792 of yacc.c  */
41158 #line 12520 "gram.y"
41159     {
41160 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("current_user"), NIL, (yylsp[(1) - (1)]));
41161 				}
41162     break;
41163 
41164   case 1855:
41165 /* Line 1792 of yacc.c  */
41166 #line 12524 "gram.y"
41167     {
41168 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("session_user"), NIL, (yylsp[(1) - (1)]));
41169 				}
41170     break;
41171 
41172   case 1856:
41173 /* Line 1792 of yacc.c  */
41174 #line 12528 "gram.y"
41175     {
41176 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("current_user"), NIL, (yylsp[(1) - (1)]));
41177 				}
41178     break;
41179 
41180   case 1857:
41181 /* Line 1792 of yacc.c  */
41182 #line 12532 "gram.y"
41183     {
41184 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("current_database"), NIL, (yylsp[(1) - (1)]));
41185 				}
41186     break;
41187 
41188   case 1858:
41189 /* Line 1792 of yacc.c  */
41190 #line 12536 "gram.y"
41191     {
41192 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("current_schema"), NIL, (yylsp[(1) - (1)]));
41193 				}
41194     break;
41195 
41196   case 1859:
41197 /* Line 1792 of yacc.c  */
41198 #line 12540 "gram.y"
41199     { (yyval.node) = makeTypeCast((yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].typnam), (yylsp[(1) - (6)])); }
41200     break;
41201 
41202   case 1860:
41203 /* Line 1792 of yacc.c  */
41204 #line 12542 "gram.y"
41205     {
41206 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("date_part"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41207 				}
41208     break;
41209 
41210   case 1861:
41211 /* Line 1792 of yacc.c  */
41212 #line 12546 "gram.y"
41213     {
41214 					/* overlay(A PLACING B FROM C FOR D) is converted to
41215 					 * overlay(A, B, C, D)
41216 					 * overlay(A PLACING B FROM C) is converted to
41217 					 * overlay(A, B, C)
41218 					 */
41219 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("overlay"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41220 				}
41221     break;
41222 
41223   case 1862:
41224 /* Line 1792 of yacc.c  */
41225 #line 12555 "gram.y"
41226     {
41227 					/* position(A in B) is converted to position(B, A) */
41228 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("position"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41229 				}
41230     break;
41231 
41232   case 1863:
41233 /* Line 1792 of yacc.c  */
41234 #line 12560 "gram.y"
41235     {
41236 					/* substring(A from B for C) is converted to
41237 					 * substring(A, B, C) - thomas 2000-11-28
41238 					 */
41239 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("substring"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41240 				}
41241     break;
41242 
41243   case 1864:
41244 /* Line 1792 of yacc.c  */
41245 #line 12567 "gram.y"
41246     {
41247 					/* TREAT(expr AS target) converts expr of a particular type to target,
41248 					 * which is defined to be a subtype of the original expression.
41249 					 * In SQL99, this is intended for use with structured UDTs,
41250 					 * but let's make this a generally useful form allowing stronger
41251 					 * coercions than are handled by implicit casting.
41252 					 *
41253 					 * Convert SystemTypeName() to SystemFuncName() even though
41254 					 * at the moment they result in the same thing.
41255 					 */
41256 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName(((Value *)llast((yyvsp[(5) - (6)].typnam)->names))->val.str),
41257 												list_make1((yyvsp[(3) - (6)].node)),
41258 												(yylsp[(1) - (6)]));
41259 				}
41260     break;
41261 
41262   case 1865:
41263 /* Line 1792 of yacc.c  */
41264 #line 12582 "gram.y"
41265     {
41266 					/* various trim expressions are defined in SQL
41267 					 * - thomas 1997-07-19
41268 					 */
41269 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("btrim"), (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)]));
41270 				}
41271     break;
41272 
41273   case 1866:
41274 /* Line 1792 of yacc.c  */
41275 #line 12589 "gram.y"
41276     {
41277 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("ltrim"), (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)]));
41278 				}
41279     break;
41280 
41281   case 1867:
41282 /* Line 1792 of yacc.c  */
41283 #line 12593 "gram.y"
41284     {
41285 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("rtrim"), (yyvsp[(4) - (5)].list), (yylsp[(1) - (5)]));
41286 				}
41287     break;
41288 
41289   case 1868:
41290 /* Line 1792 of yacc.c  */
41291 #line 12597 "gram.y"
41292     {
41293 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("btrim"), (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41294 				}
41295     break;
41296 
41297   case 1869:
41298 /* Line 1792 of yacc.c  */
41299 #line 12601 "gram.y"
41300     {
41301 					(yyval.node) = (Node *) makeSimpleA_Expr(AEXPR_NULLIF, "=", (yyvsp[(3) - (6)].node), (yyvsp[(5) - (6)].node), (yylsp[(1) - (6)]));
41302 				}
41303     break;
41304 
41305   case 1870:
41306 /* Line 1792 of yacc.c  */
41307 #line 12605 "gram.y"
41308     {
41309 					CoalesceExpr *c = makeNode(CoalesceExpr);
41310 					c->args = (yyvsp[(3) - (4)].list);
41311 					c->location = (yylsp[(1) - (4)]);
41312 					(yyval.node) = (Node *)c;
41313 				}
41314     break;
41315 
41316   case 1871:
41317 /* Line 1792 of yacc.c  */
41318 #line 12612 "gram.y"
41319     {
41320 					MinMaxExpr *v = makeNode(MinMaxExpr);
41321 					v->args = (yyvsp[(3) - (4)].list);
41322 					v->op = IS_GREATEST;
41323 					v->location = (yylsp[(1) - (4)]);
41324 					(yyval.node) = (Node *)v;
41325 				}
41326     break;
41327 
41328   case 1872:
41329 /* Line 1792 of yacc.c  */
41330 #line 12620 "gram.y"
41331     {
41332 					MinMaxExpr *v = makeNode(MinMaxExpr);
41333 					v->args = (yyvsp[(3) - (4)].list);
41334 					v->op = IS_LEAST;
41335 					v->location = (yylsp[(1) - (4)]);
41336 					(yyval.node) = (Node *)v;
41337 				}
41338     break;
41339 
41340   case 1873:
41341 /* Line 1792 of yacc.c  */
41342 #line 12628 "gram.y"
41343     {
41344 					(yyval.node) = makeXmlExpr(IS_XMLCONCAT, NULL, NIL, (yyvsp[(3) - (4)].list), (yylsp[(1) - (4)]));
41345 				}
41346     break;
41347 
41348   case 1874:
41349 /* Line 1792 of yacc.c  */
41350 #line 12632 "gram.y"
41351     {
41352 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (5)].str), NIL, NIL, (yylsp[(1) - (5)]));
41353 				}
41354     break;
41355 
41356   case 1875:
41357 /* Line 1792 of yacc.c  */
41358 #line 12636 "gram.y"
41359     {
41360 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (7)].str), (yyvsp[(6) - (7)].list), NIL, (yylsp[(1) - (7)]));
41361 				}
41362     break;
41363 
41364   case 1876:
41365 /* Line 1792 of yacc.c  */
41366 #line 12640 "gram.y"
41367     {
41368 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (7)].str), NIL, (yyvsp[(6) - (7)].list), (yylsp[(1) - (7)]));
41369 				}
41370     break;
41371 
41372   case 1877:
41373 /* Line 1792 of yacc.c  */
41374 #line 12644 "gram.y"
41375     {
41376 					(yyval.node) = makeXmlExpr(IS_XMLELEMENT, (yyvsp[(4) - (9)].str), (yyvsp[(6) - (9)].list), (yyvsp[(8) - (9)].list), (yylsp[(1) - (9)]));
41377 				}
41378     break;
41379 
41380   case 1878:
41381 /* Line 1792 of yacc.c  */
41382 #line 12648 "gram.y"
41383     {
41384 					/* xmlexists(A PASSING [BY REF] B [BY REF]) is
41385 					 * converted to xmlexists(A, B)*/
41386 					(yyval.node) = (Node *) makeFuncCall(SystemFuncName("xmlexists"), list_make2((yyvsp[(3) - (5)].node), (yyvsp[(4) - (5)].node)), (yylsp[(1) - (5)]));
41387 				}
41388     break;
41389 
41390   case 1879:
41391 /* Line 1792 of yacc.c  */
41392 #line 12654 "gram.y"
41393     {
41394 					(yyval.node) = makeXmlExpr(IS_XMLFOREST, NULL, (yyvsp[(3) - (4)].list), NIL, (yylsp[(1) - (4)]));
41395 				}
41396     break;
41397 
41398   case 1880:
41399 /* Line 1792 of yacc.c  */
41400 #line 12658 "gram.y"
41401     {
41402 					XmlExpr *x = (XmlExpr *)
41403 						makeXmlExpr(IS_XMLPARSE, NULL, NIL,
41404 									list_make2((yyvsp[(4) - (6)].node), makeBoolAConst((yyvsp[(5) - (6)].boolean), -1)),
41405 									(yylsp[(1) - (6)]));
41406 					x->xmloption = (yyvsp[(3) - (6)].ival);
41407 					(yyval.node) = (Node *)x;
41408 				}
41409     break;
41410 
41411   case 1881:
41412 /* Line 1792 of yacc.c  */
41413 #line 12667 "gram.y"
41414     {
41415 					(yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (5)].str), NULL, NIL, (yylsp[(1) - (5)]));
41416 				}
41417     break;
41418 
41419   case 1882:
41420 /* Line 1792 of yacc.c  */
41421 #line 12671 "gram.y"
41422     {
41423 					(yyval.node) = makeXmlExpr(IS_XMLPI, (yyvsp[(4) - (7)].str), NULL, list_make1((yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)]));
41424 				}
41425     break;
41426 
41427   case 1883:
41428 /* Line 1792 of yacc.c  */
41429 #line 12675 "gram.y"
41430     {
41431 					(yyval.node) = makeXmlExpr(IS_XMLROOT, NULL, NIL,
41432 									 list_make3((yyvsp[(3) - (7)].node), (yyvsp[(5) - (7)].node), (yyvsp[(6) - (7)].node)), (yylsp[(1) - (7)]));
41433 				}
41434     break;
41435 
41436   case 1884:
41437 /* Line 1792 of yacc.c  */
41438 #line 12680 "gram.y"
41439     {
41440 					XmlSerialize *n = makeNode(XmlSerialize);
41441 					n->xmloption = (yyvsp[(3) - (7)].ival);
41442 					n->expr = (yyvsp[(4) - (7)].node);
41443 					n->typeName = (yyvsp[(6) - (7)].typnam);
41444 					n->location = (yylsp[(1) - (7)]);
41445 					(yyval.node) = (Node *)n;
41446 				}
41447     break;
41448 
41449   case 1885:
41450 /* Line 1792 of yacc.c  */
41451 #line 12694 "gram.y"
41452     { (yyval.node) = (yyvsp[(2) - (2)].node); }
41453     break;
41454 
41455   case 1886:
41456 /* Line 1792 of yacc.c  */
41457 #line 12696 "gram.y"
41458     { (yyval.node) = makeNullAConst(-1); }
41459     break;
41460 
41461   case 1887:
41462 /* Line 1792 of yacc.c  */
41463 #line 12700 "gram.y"
41464     { (yyval.node) = makeIntConst(XML_STANDALONE_YES, -1); }
41465     break;
41466 
41467   case 1888:
41468 /* Line 1792 of yacc.c  */
41469 #line 12702 "gram.y"
41470     { (yyval.node) = makeIntConst(XML_STANDALONE_NO, -1); }
41471     break;
41472 
41473   case 1889:
41474 /* Line 1792 of yacc.c  */
41475 #line 12704 "gram.y"
41476     { (yyval.node) = makeIntConst(XML_STANDALONE_NO_VALUE, -1); }
41477     break;
41478 
41479   case 1890:
41480 /* Line 1792 of yacc.c  */
41481 #line 12706 "gram.y"
41482     { (yyval.node) = makeIntConst(XML_STANDALONE_OMITTED, -1); }
41483     break;
41484 
41485   case 1891:
41486 /* Line 1792 of yacc.c  */
41487 #line 12709 "gram.y"
41488     { (yyval.list) = (yyvsp[(3) - (4)].list); }
41489     break;
41490 
41491   case 1892:
41492 /* Line 1792 of yacc.c  */
41493 #line 12712 "gram.y"
41494     { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); }
41495     break;
41496 
41497   case 1893:
41498 /* Line 1792 of yacc.c  */
41499 #line 12713 "gram.y"
41500     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); }
41501     break;
41502 
41503   case 1894:
41504 /* Line 1792 of yacc.c  */
41505 #line 12717 "gram.y"
41506     {
41507 					(yyval.target) = makeNode(ResTarget);
41508 					(yyval.target)->name = (yyvsp[(3) - (3)].str);
41509 					(yyval.target)->indirection = NIL;
41510 					(yyval.target)->val = (Node *) (yyvsp[(1) - (3)].node);
41511 					(yyval.target)->location = (yylsp[(1) - (3)]);
41512 				}
41513     break;
41514 
41515   case 1895:
41516 /* Line 1792 of yacc.c  */
41517 #line 12725 "gram.y"
41518     {
41519 					(yyval.target) = makeNode(ResTarget);
41520 					(yyval.target)->name = NULL;
41521 					(yyval.target)->indirection = NIL;
41522 					(yyval.target)->val = (Node *) (yyvsp[(1) - (1)].node);
41523 					(yyval.target)->location = (yylsp[(1) - (1)]);
41524 				}
41525     break;
41526 
41527   case 1896:
41528 /* Line 1792 of yacc.c  */
41529 #line 12734 "gram.y"
41530     { (yyval.ival) = XMLOPTION_DOCUMENT; }
41531     break;
41532 
41533   case 1897:
41534 /* Line 1792 of yacc.c  */
41535 #line 12735 "gram.y"
41536     { (yyval.ival) = XMLOPTION_CONTENT; }
41537     break;
41538 
41539   case 1898:
41540 /* Line 1792 of yacc.c  */
41541 #line 12738 "gram.y"
41542     { (yyval.boolean) = TRUE; }
41543     break;
41544 
41545   case 1899:
41546 /* Line 1792 of yacc.c  */
41547 #line 12739 "gram.y"
41548     { (yyval.boolean) = FALSE; }
41549     break;
41550 
41551   case 1900:
41552 /* Line 1792 of yacc.c  */
41553 #line 12740 "gram.y"
41554     { (yyval.boolean) = FALSE; }
41555     break;
41556 
41557   case 1901:
41558 /* Line 1792 of yacc.c  */
41559 #line 12746 "gram.y"
41560     {
41561 					(yyval.node) = (yyvsp[(2) - (2)].node);
41562 				}
41563     break;
41564 
41565   case 1902:
41566 /* Line 1792 of yacc.c  */
41567 #line 12750 "gram.y"
41568     {
41569 					(yyval.node) = (yyvsp[(2) - (4)].node);
41570 				}
41571     break;
41572 
41573   case 1903:
41574 /* Line 1792 of yacc.c  */
41575 #line 12754 "gram.y"
41576     {
41577 					(yyval.node) = (yyvsp[(4) - (4)].node);
41578 				}
41579     break;
41580 
41581   case 1904:
41582 /* Line 1792 of yacc.c  */
41583 #line 12758 "gram.y"
41584     {
41585 					(yyval.node) = (yyvsp[(4) - (6)].node);
41586 				}
41587     break;
41588 
41589   case 1905:
41590 /* Line 1792 of yacc.c  */
41591 #line 12768 "gram.y"
41592     { (yyval.list) = (yyvsp[(4) - (5)].list); }
41593     break;
41594 
41595   case 1906:
41596 /* Line 1792 of yacc.c  */
41597 #line 12769 "gram.y"
41598     { (yyval.list) = NIL; }
41599     break;
41600 
41601   case 1907:
41602 /* Line 1792 of yacc.c  */
41603 #line 12773 "gram.y"
41604     { (yyval.node) = (yyvsp[(4) - (5)].node); }
41605     break;
41606 
41607   case 1908:
41608 /* Line 1792 of yacc.c  */
41609 #line 12774 "gram.y"
41610     { (yyval.node) = NULL; }
41611     break;
41612 
41613   case 1909:
41614 /* Line 1792 of yacc.c  */
41615 #line 12782 "gram.y"
41616     { (yyval.list) = (yyvsp[(2) - (2)].list); }
41617     break;
41618 
41619   case 1910:
41620 /* Line 1792 of yacc.c  */
41621 #line 12783 "gram.y"
41622     { (yyval.list) = NIL; }
41623     break;
41624 
41625   case 1911:
41626 /* Line 1792 of yacc.c  */
41627 #line 12787 "gram.y"
41628     { (yyval.list) = list_make1((yyvsp[(1) - (1)].windef)); }
41629     break;
41630 
41631   case 1912:
41632 /* Line 1792 of yacc.c  */
41633 #line 12789 "gram.y"
41634     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].windef)); }
41635     break;
41636 
41637   case 1913:
41638 /* Line 1792 of yacc.c  */
41639 #line 12794 "gram.y"
41640     {
41641 					WindowDef *n = (yyvsp[(3) - (3)].windef);
41642 					n->name = (yyvsp[(1) - (3)].str);
41643 					(yyval.windef) = n;
41644 				}
41645     break;
41646 
41647   case 1914:
41648 /* Line 1792 of yacc.c  */
41649 #line 12802 "gram.y"
41650     { (yyval.windef) = (yyvsp[(2) - (2)].windef); }
41651     break;
41652 
41653   case 1915:
41654 /* Line 1792 of yacc.c  */
41655 #line 12804 "gram.y"
41656     {
41657 					WindowDef *n = makeNode(WindowDef);
41658 					n->name = (yyvsp[(2) - (2)].str);
41659 					n->refname = NULL;
41660 					n->partitionClause = NIL;
41661 					n->orderClause = NIL;
41662 					n->frameOptions = FRAMEOPTION_DEFAULTS;
41663 					n->startOffset = NULL;
41664 					n->endOffset = NULL;
41665 					n->location = (yylsp[(2) - (2)]);
41666 					(yyval.windef) = n;
41667 				}
41668     break;
41669 
41670   case 1916:
41671 /* Line 1792 of yacc.c  */
41672 #line 12817 "gram.y"
41673     { (yyval.windef) = NULL; }
41674     break;
41675 
41676   case 1917:
41677 /* Line 1792 of yacc.c  */
41678 #line 12822 "gram.y"
41679     {
41680 					WindowDef *n = makeNode(WindowDef);
41681 					n->name = NULL;
41682 					n->refname = (yyvsp[(2) - (6)].str);
41683 					n->partitionClause = (yyvsp[(3) - (6)].list);
41684 					n->orderClause = (yyvsp[(4) - (6)].list);
41685 					/* copy relevant fields of opt_frame_clause */
41686 					n->frameOptions = (yyvsp[(5) - (6)].windef)->frameOptions;
41687 					n->startOffset = (yyvsp[(5) - (6)].windef)->startOffset;
41688 					n->endOffset = (yyvsp[(5) - (6)].windef)->endOffset;
41689 					n->location = (yylsp[(1) - (6)]);
41690 					(yyval.windef) = n;
41691 				}
41692     break;
41693 
41694   case 1918:
41695 /* Line 1792 of yacc.c  */
41696 #line 12847 "gram.y"
41697     { (yyval.str) = (yyvsp[(1) - (1)].str); }
41698     break;
41699 
41700   case 1919:
41701 /* Line 1792 of yacc.c  */
41702 #line 12848 "gram.y"
41703     { (yyval.str) = NULL; }
41704     break;
41705 
41706   case 1920:
41707 /* Line 1792 of yacc.c  */
41708 #line 12851 "gram.y"
41709     { (yyval.list) = (yyvsp[(3) - (3)].list); }
41710     break;
41711 
41712   case 1921:
41713 /* Line 1792 of yacc.c  */
41714 #line 12852 "gram.y"
41715     { (yyval.list) = NIL; }
41716     break;
41717 
41718   case 1922:
41719 /* Line 1792 of yacc.c  */
41720 #line 12864 "gram.y"
41721     {
41722 					WindowDef *n = (yyvsp[(2) - (2)].windef);
41723 					n->frameOptions |= FRAMEOPTION_NONDEFAULT | FRAMEOPTION_RANGE;
41724 					if (n->frameOptions & (FRAMEOPTION_START_VALUE_PRECEDING |
41725 										   FRAMEOPTION_END_VALUE_PRECEDING))
41726 						ereport(ERROR,
41727 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
41728 								 errmsg("RANGE PRECEDING is only supported with UNBOUNDED"),
41729 								 parser_errposition((yylsp[(1) - (2)]))));
41730 					if (n->frameOptions & (FRAMEOPTION_START_VALUE_FOLLOWING |
41731 										   FRAMEOPTION_END_VALUE_FOLLOWING))
41732 						ereport(ERROR,
41733 								(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
41734 								 errmsg("RANGE FOLLOWING is only supported with UNBOUNDED"),
41735 								 parser_errposition((yylsp[(1) - (2)]))));
41736 					(yyval.windef) = n;
41737 				}
41738     break;
41739 
41740   case 1923:
41741 /* Line 1792 of yacc.c  */
41742 #line 12882 "gram.y"
41743     {
41744 					WindowDef *n = (yyvsp[(2) - (2)].windef);
41745 					n->frameOptions |= FRAMEOPTION_NONDEFAULT | FRAMEOPTION_ROWS;
41746 					(yyval.windef) = n;
41747 				}
41748     break;
41749 
41750   case 1924:
41751 /* Line 1792 of yacc.c  */
41752 #line 12888 "gram.y"
41753     {
41754 					WindowDef *n = makeNode(WindowDef);
41755 					n->frameOptions = FRAMEOPTION_DEFAULTS;
41756 					n->startOffset = NULL;
41757 					n->endOffset = NULL;
41758 					(yyval.windef) = n;
41759 				}
41760     break;
41761 
41762   case 1925:
41763 /* Line 1792 of yacc.c  */
41764 #line 12898 "gram.y"
41765     {
41766 					WindowDef *n = (yyvsp[(1) - (1)].windef);
41767 					/* reject invalid cases */
41768 					if (n->frameOptions & FRAMEOPTION_START_UNBOUNDED_FOLLOWING)
41769 						ereport(ERROR,
41770 								(errcode(ERRCODE_WINDOWING_ERROR),
41771 								 errmsg("frame start cannot be UNBOUNDED FOLLOWING"),
41772 								 parser_errposition((yylsp[(1) - (1)]))));
41773 					if (n->frameOptions & FRAMEOPTION_START_VALUE_FOLLOWING)
41774 						ereport(ERROR,
41775 								(errcode(ERRCODE_WINDOWING_ERROR),
41776 								 errmsg("frame starting from following row cannot end with current row"),
41777 								 parser_errposition((yylsp[(1) - (1)]))));
41778 					n->frameOptions |= FRAMEOPTION_END_CURRENT_ROW;
41779 					(yyval.windef) = n;
41780 				}
41781     break;
41782 
41783   case 1926:
41784 /* Line 1792 of yacc.c  */
41785 #line 12915 "gram.y"
41786     {
41787 					WindowDef *n1 = (yyvsp[(2) - (4)].windef);
41788 					WindowDef *n2 = (yyvsp[(4) - (4)].windef);
41789 					/* form merged options */
41790 					int		frameOptions = n1->frameOptions;
41791 					/* shift converts START_ options to END_ options */
41792 					frameOptions |= n2->frameOptions << 1;
41793 					frameOptions |= FRAMEOPTION_BETWEEN;
41794 					/* reject invalid cases */
41795 					if (frameOptions & FRAMEOPTION_START_UNBOUNDED_FOLLOWING)
41796 						ereport(ERROR,
41797 								(errcode(ERRCODE_WINDOWING_ERROR),
41798 								 errmsg("frame start cannot be UNBOUNDED FOLLOWING"),
41799 								 parser_errposition((yylsp[(2) - (4)]))));
41800 					if (frameOptions & FRAMEOPTION_END_UNBOUNDED_PRECEDING)
41801 						ereport(ERROR,
41802 								(errcode(ERRCODE_WINDOWING_ERROR),
41803 								 errmsg("frame end cannot be UNBOUNDED PRECEDING"),
41804 								 parser_errposition((yylsp[(4) - (4)]))));
41805 					if ((frameOptions & FRAMEOPTION_START_CURRENT_ROW) &&
41806 						(frameOptions & FRAMEOPTION_END_VALUE_PRECEDING))
41807 						ereport(ERROR,
41808 								(errcode(ERRCODE_WINDOWING_ERROR),
41809 								 errmsg("frame starting from current row cannot have preceding rows"),
41810 								 parser_errposition((yylsp[(4) - (4)]))));
41811 					if ((frameOptions & FRAMEOPTION_START_VALUE_FOLLOWING) &&
41812 						(frameOptions & (FRAMEOPTION_END_VALUE_PRECEDING |
41813 										 FRAMEOPTION_END_CURRENT_ROW)))
41814 						ereport(ERROR,
41815 								(errcode(ERRCODE_WINDOWING_ERROR),
41816 								 errmsg("frame starting from following row cannot have preceding rows"),
41817 								 parser_errposition((yylsp[(4) - (4)]))));
41818 					n1->frameOptions = frameOptions;
41819 					n1->endOffset = n2->startOffset;
41820 					(yyval.windef) = n1;
41821 				}
41822     break;
41823 
41824   case 1927:
41825 /* Line 1792 of yacc.c  */
41826 #line 12960 "gram.y"
41827     {
41828 					WindowDef *n = makeNode(WindowDef);
41829 					n->frameOptions = FRAMEOPTION_START_UNBOUNDED_PRECEDING;
41830 					n->startOffset = NULL;
41831 					n->endOffset = NULL;
41832 					(yyval.windef) = n;
41833 				}
41834     break;
41835 
41836   case 1928:
41837 /* Line 1792 of yacc.c  */
41838 #line 12968 "gram.y"
41839     {
41840 					WindowDef *n = makeNode(WindowDef);
41841 					n->frameOptions = FRAMEOPTION_START_UNBOUNDED_FOLLOWING;
41842 					n->startOffset = NULL;
41843 					n->endOffset = NULL;
41844 					(yyval.windef) = n;
41845 				}
41846     break;
41847 
41848   case 1929:
41849 /* Line 1792 of yacc.c  */
41850 #line 12976 "gram.y"
41851     {
41852 					WindowDef *n = makeNode(WindowDef);
41853 					n->frameOptions = FRAMEOPTION_START_CURRENT_ROW;
41854 					n->startOffset = NULL;
41855 					n->endOffset = NULL;
41856 					(yyval.windef) = n;
41857 				}
41858     break;
41859 
41860   case 1930:
41861 /* Line 1792 of yacc.c  */
41862 #line 12984 "gram.y"
41863     {
41864 					WindowDef *n = makeNode(WindowDef);
41865 					n->frameOptions = FRAMEOPTION_START_VALUE_PRECEDING;
41866 					n->startOffset = (yyvsp[(1) - (2)].node);
41867 					n->endOffset = NULL;
41868 					(yyval.windef) = n;
41869 				}
41870     break;
41871 
41872   case 1931:
41873 /* Line 1792 of yacc.c  */
41874 #line 12992 "gram.y"
41875     {
41876 					WindowDef *n = makeNode(WindowDef);
41877 					n->frameOptions = FRAMEOPTION_START_VALUE_FOLLOWING;
41878 					n->startOffset = (yyvsp[(1) - (2)].node);
41879 					n->endOffset = NULL;
41880 					(yyval.windef) = n;
41881 				}
41882     break;
41883 
41884   case 1932:
41885 /* Line 1792 of yacc.c  */
41886 #line 13012 "gram.y"
41887     { (yyval.list) = (yyvsp[(3) - (4)].list); }
41888     break;
41889 
41890   case 1933:
41891 /* Line 1792 of yacc.c  */
41892 #line 13013 "gram.y"
41893     { (yyval.list) = NIL; }
41894     break;
41895 
41896   case 1934:
41897 /* Line 1792 of yacc.c  */
41898 #line 13014 "gram.y"
41899     { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); }
41900     break;
41901 
41902   case 1935:
41903 /* Line 1792 of yacc.c  */
41904 #line 13017 "gram.y"
41905     { (yyval.list) = (yyvsp[(3) - (4)].list); }
41906     break;
41907 
41908   case 1936:
41909 /* Line 1792 of yacc.c  */
41910 #line 13018 "gram.y"
41911     { (yyval.list) = NIL; }
41912     break;
41913 
41914   case 1937:
41915 /* Line 1792 of yacc.c  */
41916 #line 13021 "gram.y"
41917     { (yyval.list) = lappend((yyvsp[(2) - (5)].list), (yyvsp[(4) - (5)].node)); }
41918     break;
41919 
41920   case 1938:
41921 /* Line 1792 of yacc.c  */
41922 #line 13024 "gram.y"
41923     { (yyval.ival) = ANY_SUBLINK; }
41924     break;
41925 
41926   case 1939:
41927 /* Line 1792 of yacc.c  */
41928 #line 13025 "gram.y"
41929     { (yyval.ival) = ANY_SUBLINK; }
41930     break;
41931 
41932   case 1940:
41933 /* Line 1792 of yacc.c  */
41934 #line 13026 "gram.y"
41935     { (yyval.ival) = ALL_SUBLINK; }
41936     break;
41937 
41938   case 1941:
41939 /* Line 1792 of yacc.c  */
41940 #line 13029 "gram.y"
41941     { (yyval.str) = (yyvsp[(1) - (1)].str); }
41942     break;
41943 
41944   case 1942:
41945 /* Line 1792 of yacc.c  */
41946 #line 13030 "gram.y"
41947     { (yyval.str) = (yyvsp[(1) - (1)].str); }
41948     break;
41949 
41950   case 1943:
41951 /* Line 1792 of yacc.c  */
41952 #line 13033 "gram.y"
41953     { (yyval.str) = "+"; }
41954     break;
41955 
41956   case 1944:
41957 /* Line 1792 of yacc.c  */
41958 #line 13034 "gram.y"
41959     { (yyval.str) = "-"; }
41960     break;
41961 
41962   case 1945:
41963 /* Line 1792 of yacc.c  */
41964 #line 13035 "gram.y"
41965     { (yyval.str) = "*"; }
41966     break;
41967 
41968   case 1946:
41969 /* Line 1792 of yacc.c  */
41970 #line 13036 "gram.y"
41971     { (yyval.str) = "/"; }
41972     break;
41973 
41974   case 1947:
41975 /* Line 1792 of yacc.c  */
41976 #line 13037 "gram.y"
41977     { (yyval.str) = "%"; }
41978     break;
41979 
41980   case 1948:
41981 /* Line 1792 of yacc.c  */
41982 #line 13038 "gram.y"
41983     { (yyval.str) = "^"; }
41984     break;
41985 
41986   case 1949:
41987 /* Line 1792 of yacc.c  */
41988 #line 13039 "gram.y"
41989     { (yyval.str) = "<"; }
41990     break;
41991 
41992   case 1950:
41993 /* Line 1792 of yacc.c  */
41994 #line 13040 "gram.y"
41995     { (yyval.str) = ">"; }
41996     break;
41997 
41998   case 1951:
41999 /* Line 1792 of yacc.c  */
42000 #line 13041 "gram.y"
42001     { (yyval.str) = "="; }
42002     break;
42003 
42004   case 1952:
42005 /* Line 1792 of yacc.c  */
42006 #line 13042 "gram.y"
42007     { (yyval.str) = "<="; }
42008     break;
42009 
42010   case 1953:
42011 /* Line 1792 of yacc.c  */
42012 #line 13043 "gram.y"
42013     { (yyval.str) = ">="; }
42014     break;
42015 
42016   case 1954:
42017 /* Line 1792 of yacc.c  */
42018 #line 13044 "gram.y"
42019     { (yyval.str) = "<>"; }
42020     break;
42021 
42022   case 1955:
42023 /* Line 1792 of yacc.c  */
42024 #line 13048 "gram.y"
42025     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
42026     break;
42027 
42028   case 1956:
42029 /* Line 1792 of yacc.c  */
42030 #line 13050 "gram.y"
42031     { (yyval.list) = (yyvsp[(3) - (4)].list); }
42032     break;
42033 
42034   case 1957:
42035 /* Line 1792 of yacc.c  */
42036 #line 13055 "gram.y"
42037     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
42038     break;
42039 
42040   case 1958:
42041 /* Line 1792 of yacc.c  */
42042 #line 13057 "gram.y"
42043     { (yyval.list) = (yyvsp[(3) - (4)].list); }
42044     break;
42045 
42046   case 1959:
42047 /* Line 1792 of yacc.c  */
42048 #line 13062 "gram.y"
42049     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
42050     break;
42051 
42052   case 1960:
42053 /* Line 1792 of yacc.c  */
42054 #line 13064 "gram.y"
42055     { (yyval.list) = (yyvsp[(3) - (4)].list); }
42056     break;
42057 
42058   case 1961:
42059 /* Line 1792 of yacc.c  */
42060 #line 13066 "gram.y"
42061     { (yyval.list) = list_make1(makeString("~~")); }
42062     break;
42063 
42064   case 1962:
42065 /* Line 1792 of yacc.c  */
42066 #line 13068 "gram.y"
42067     { (yyval.list) = list_make1(makeString("!~~")); }
42068     break;
42069 
42070   case 1963:
42071 /* Line 1792 of yacc.c  */
42072 #line 13070 "gram.y"
42073     { (yyval.list) = list_make1(makeString("~~*")); }
42074     break;
42075 
42076   case 1964:
42077 /* Line 1792 of yacc.c  */
42078 #line 13072 "gram.y"
42079     { (yyval.list) = list_make1(makeString("!~~*")); }
42080     break;
42081 
42082   case 1965:
42083 /* Line 1792 of yacc.c  */
42084 #line 13084 "gram.y"
42085     {
42086 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
42087 				}
42088     break;
42089 
42090   case 1966:
42091 /* Line 1792 of yacc.c  */
42092 #line 13088 "gram.y"
42093     {
42094 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
42095 				}
42096     break;
42097 
42098   case 1967:
42099 /* Line 1792 of yacc.c  */
42100 #line 13095 "gram.y"
42101     {
42102 					(yyval.list) = list_make1((yyvsp[(1) - (1)].node));
42103 				}
42104     break;
42105 
42106   case 1968:
42107 /* Line 1792 of yacc.c  */
42108 #line 13099 "gram.y"
42109     {
42110 					(yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node));
42111 				}
42112     break;
42113 
42114   case 1969:
42115 /* Line 1792 of yacc.c  */
42116 #line 13105 "gram.y"
42117     {
42118 					(yyval.node) = (yyvsp[(1) - (1)].node);
42119 				}
42120     break;
42121 
42122   case 1970:
42123 /* Line 1792 of yacc.c  */
42124 #line 13109 "gram.y"
42125     {
42126 					NamedArgExpr *na = makeNode(NamedArgExpr);
42127 					na->name = (yyvsp[(1) - (3)].str);
42128 					na->arg = (Expr *) (yyvsp[(3) - (3)].node);
42129 					na->argnumber = -1;		/* until determined */
42130 					na->location = (yylsp[(1) - (3)]);
42131 					(yyval.node) = (Node *) na;
42132 				}
42133     break;
42134 
42135   case 1971:
42136 /* Line 1792 of yacc.c  */
42137 #line 13118 "gram.y"
42138     {
42139 					NamedArgExpr *na = makeNode(NamedArgExpr);
42140 					na->name = (yyvsp[(1) - (3)].str);
42141 					na->arg = (Expr *) (yyvsp[(3) - (3)].node);
42142 					na->argnumber = -1;		/* until determined */
42143 					na->location = (yylsp[(1) - (3)]);
42144 					(yyval.node) = (Node *) na;
42145 				}
42146     break;
42147 
42148   case 1972:
42149 /* Line 1792 of yacc.c  */
42150 #line 13128 "gram.y"
42151     { (yyval.list) = list_make1((yyvsp[(1) - (1)].typnam)); }
42152     break;
42153 
42154   case 1973:
42155 /* Line 1792 of yacc.c  */
42156 #line 13129 "gram.y"
42157     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].typnam)); }
42158     break;
42159 
42160   case 1974:
42161 /* Line 1792 of yacc.c  */
42162 #line 13133 "gram.y"
42163     {
42164 					(yyval.node) = makeAArrayExpr((yyvsp[(2) - (3)].list), (yylsp[(1) - (3)]));
42165 				}
42166     break;
42167 
42168   case 1975:
42169 /* Line 1792 of yacc.c  */
42170 #line 13137 "gram.y"
42171     {
42172 					(yyval.node) = makeAArrayExpr((yyvsp[(2) - (3)].list), (yylsp[(1) - (3)]));
42173 				}
42174     break;
42175 
42176   case 1976:
42177 /* Line 1792 of yacc.c  */
42178 #line 13141 "gram.y"
42179     {
42180 					(yyval.node) = makeAArrayExpr(NIL, (yylsp[(1) - (2)]));
42181 				}
42182     break;
42183 
42184   case 1977:
42185 /* Line 1792 of yacc.c  */
42186 #line 13146 "gram.y"
42187     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
42188     break;
42189 
42190   case 1978:
42191 /* Line 1792 of yacc.c  */
42192 #line 13147 "gram.y"
42193     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
42194     break;
42195 
42196   case 1979:
42197 /* Line 1792 of yacc.c  */
42198 #line 13153 "gram.y"
42199     {
42200 					(yyval.list) = list_make2(makeStringConst((yyvsp[(1) - (3)].str), (yylsp[(1) - (3)])), (yyvsp[(3) - (3)].node));
42201 				}
42202     break;
42203 
42204   case 1980:
42205 /* Line 1792 of yacc.c  */
42206 #line 13156 "gram.y"
42207     { (yyval.list) = NIL; }
42208     break;
42209 
42210   case 1981:
42211 /* Line 1792 of yacc.c  */
42212 #line 13163 "gram.y"
42213     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42214     break;
42215 
42216   case 1982:
42217 /* Line 1792 of yacc.c  */
42218 #line 13164 "gram.y"
42219     { (yyval.str) = "year"; }
42220     break;
42221 
42222   case 1983:
42223 /* Line 1792 of yacc.c  */
42224 #line 13165 "gram.y"
42225     { (yyval.str) = "month"; }
42226     break;
42227 
42228   case 1984:
42229 /* Line 1792 of yacc.c  */
42230 #line 13166 "gram.y"
42231     { (yyval.str) = "day"; }
42232     break;
42233 
42234   case 1985:
42235 /* Line 1792 of yacc.c  */
42236 #line 13167 "gram.y"
42237     { (yyval.str) = "hour"; }
42238     break;
42239 
42240   case 1986:
42241 /* Line 1792 of yacc.c  */
42242 #line 13168 "gram.y"
42243     { (yyval.str) = "minute"; }
42244     break;
42245 
42246   case 1987:
42247 /* Line 1792 of yacc.c  */
42248 #line 13169 "gram.y"
42249     { (yyval.str) = "second"; }
42250     break;
42251 
42252   case 1988:
42253 /* Line 1792 of yacc.c  */
42254 #line 13170 "gram.y"
42255     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42256     break;
42257 
42258   case 1989:
42259 /* Line 1792 of yacc.c  */
42260 #line 13181 "gram.y"
42261     {
42262 					(yyval.list) = list_make4((yyvsp[(1) - (4)].node), (yyvsp[(2) - (4)].node), (yyvsp[(3) - (4)].node), (yyvsp[(4) - (4)].node));
42263 				}
42264     break;
42265 
42266   case 1990:
42267 /* Line 1792 of yacc.c  */
42268 #line 13185 "gram.y"
42269     {
42270 					(yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
42271 				}
42272     break;
42273 
42274   case 1991:
42275 /* Line 1792 of yacc.c  */
42276 #line 13192 "gram.y"
42277     { (yyval.node) = (yyvsp[(2) - (2)].node); }
42278     break;
42279 
42280   case 1992:
42281 /* Line 1792 of yacc.c  */
42282 #line 13198 "gram.y"
42283     { (yyval.list) = list_make2((yyvsp[(3) - (3)].node), (yyvsp[(1) - (3)].node)); }
42284     break;
42285 
42286   case 1993:
42287 /* Line 1792 of yacc.c  */
42288 #line 13199 "gram.y"
42289     { (yyval.list) = NIL; }
42290     break;
42291 
42292   case 1994:
42293 /* Line 1792 of yacc.c  */
42294 #line 13216 "gram.y"
42295     {
42296 					(yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(2) - (3)].node), (yyvsp[(3) - (3)].node));
42297 				}
42298     break;
42299 
42300   case 1995:
42301 /* Line 1792 of yacc.c  */
42302 #line 13220 "gram.y"
42303     {
42304 					/* not legal per SQL99, but might as well allow it */
42305 					(yyval.list) = list_make3((yyvsp[(1) - (3)].node), (yyvsp[(3) - (3)].node), (yyvsp[(2) - (3)].node));
42306 				}
42307     break;
42308 
42309   case 1996:
42310 /* Line 1792 of yacc.c  */
42311 #line 13225 "gram.y"
42312     {
42313 					(yyval.list) = list_make2((yyvsp[(1) - (2)].node), (yyvsp[(2) - (2)].node));
42314 				}
42315     break;
42316 
42317   case 1997:
42318 /* Line 1792 of yacc.c  */
42319 #line 13229 "gram.y"
42320     {
42321 					/*
42322 					 * Since there are no cases where this syntax allows
42323 					 * a textual FOR value, we forcibly cast the argument
42324 					 * to int4.  The possible matches in pg_proc are
42325 					 * substring(text,int4) and substring(text,text),
42326 					 * and we don't want the parser to choose the latter,
42327 					 * which it is likely to do if the second argument
42328 					 * is unknown or doesn't have an implicit cast to int4.
42329 					 */
42330 					(yyval.list) = list_make3((yyvsp[(1) - (2)].node), makeIntConst(1, -1),
42331 									makeTypeCast((yyvsp[(2) - (2)].node),
42332 												 SystemTypeName("int4"), -1));
42333 				}
42334     break;
42335 
42336   case 1998:
42337 /* Line 1792 of yacc.c  */
42338 #line 13244 "gram.y"
42339     {
42340 					(yyval.list) = (yyvsp[(1) - (1)].list);
42341 				}
42342     break;
42343 
42344   case 1999:
42345 /* Line 1792 of yacc.c  */
42346 #line 13248 "gram.y"
42347     { (yyval.list) = NIL; }
42348     break;
42349 
42350   case 2000:
42351 /* Line 1792 of yacc.c  */
42352 #line 13252 "gram.y"
42353     { (yyval.node) = (yyvsp[(2) - (2)].node); }
42354     break;
42355 
42356   case 2001:
42357 /* Line 1792 of yacc.c  */
42358 #line 13255 "gram.y"
42359     { (yyval.node) = (yyvsp[(2) - (2)].node); }
42360     break;
42361 
42362   case 2002:
42363 /* Line 1792 of yacc.c  */
42364 #line 13258 "gram.y"
42365     { (yyval.list) = lappend((yyvsp[(3) - (3)].list), (yyvsp[(1) - (3)].node)); }
42366     break;
42367 
42368   case 2003:
42369 /* Line 1792 of yacc.c  */
42370 #line 13259 "gram.y"
42371     { (yyval.list) = (yyvsp[(2) - (2)].list); }
42372     break;
42373 
42374   case 2004:
42375 /* Line 1792 of yacc.c  */
42376 #line 13260 "gram.y"
42377     { (yyval.list) = (yyvsp[(1) - (1)].list); }
42378     break;
42379 
42380   case 2005:
42381 /* Line 1792 of yacc.c  */
42382 #line 13264 "gram.y"
42383     {
42384 					SubLink *n = makeNode(SubLink);
42385 					n->subselect = (yyvsp[(1) - (1)].node);
42386 					/* other fields will be filled later */
42387 					(yyval.node) = (Node *)n;
42388 				}
42389     break;
42390 
42391   case 2006:
42392 /* Line 1792 of yacc.c  */
42393 #line 13270 "gram.y"
42394     { (yyval.node) = (Node *)(yyvsp[(2) - (3)].list); }
42395     break;
42396 
42397   case 2007:
42398 /* Line 1792 of yacc.c  */
42399 #line 13281 "gram.y"
42400     {
42401 					CaseExpr *c = makeNode(CaseExpr);
42402 					c->casetype = InvalidOid; /* not analyzed yet */
42403 					c->arg = (Expr *) (yyvsp[(2) - (5)].node);
42404 					c->args = (yyvsp[(3) - (5)].list);
42405 					c->defresult = (Expr *) (yyvsp[(4) - (5)].node);
42406 					c->location = (yylsp[(1) - (5)]);
42407 					(yyval.node) = (Node *)c;
42408 				}
42409     break;
42410 
42411   case 2008:
42412 /* Line 1792 of yacc.c  */
42413 #line 13294 "gram.y"
42414     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
42415     break;
42416 
42417   case 2009:
42418 /* Line 1792 of yacc.c  */
42419 #line 13295 "gram.y"
42420     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); }
42421     break;
42422 
42423   case 2010:
42424 /* Line 1792 of yacc.c  */
42425 #line 13300 "gram.y"
42426     {
42427 					CaseWhen *w = makeNode(CaseWhen);
42428 					w->expr = (Expr *) (yyvsp[(2) - (4)].node);
42429 					w->result = (Expr *) (yyvsp[(4) - (4)].node);
42430 					w->location = (yylsp[(1) - (4)]);
42431 					(yyval.node) = (Node *)w;
42432 				}
42433     break;
42434 
42435   case 2011:
42436 /* Line 1792 of yacc.c  */
42437 #line 13310 "gram.y"
42438     { (yyval.node) = (yyvsp[(2) - (2)].node); }
42439     break;
42440 
42441   case 2012:
42442 /* Line 1792 of yacc.c  */
42443 #line 13311 "gram.y"
42444     { (yyval.node) = NULL; }
42445     break;
42446 
42447   case 2013:
42448 /* Line 1792 of yacc.c  */
42449 #line 13314 "gram.y"
42450     { (yyval.node) = (yyvsp[(1) - (1)].node); }
42451     break;
42452 
42453   case 2014:
42454 /* Line 1792 of yacc.c  */
42455 #line 13315 "gram.y"
42456     { (yyval.node) = NULL; }
42457     break;
42458 
42459   case 2015:
42460 /* Line 1792 of yacc.c  */
42461 #line 13319 "gram.y"
42462     {
42463 					(yyval.node) = makeColumnRef((yyvsp[(1) - (1)].str), NIL, (yylsp[(1) - (1)]), yyscanner);
42464 				}
42465     break;
42466 
42467   case 2016:
42468 /* Line 1792 of yacc.c  */
42469 #line 13323 "gram.y"
42470     {
42471 					(yyval.node) = makeColumnRef((yyvsp[(1) - (2)].str), (yyvsp[(2) - (2)].list), (yylsp[(1) - (2)]), yyscanner);
42472 				}
42473     break;
42474 
42475   case 2017:
42476 /* Line 1792 of yacc.c  */
42477 #line 13330 "gram.y"
42478     {
42479 					(yyval.node) = (Node *) makeString((yyvsp[(2) - (2)].str));
42480 				}
42481     break;
42482 
42483   case 2018:
42484 /* Line 1792 of yacc.c  */
42485 #line 13334 "gram.y"
42486     {
42487 					(yyval.node) = (Node *) makeNode(A_Star);
42488 				}
42489     break;
42490 
42491   case 2019:
42492 /* Line 1792 of yacc.c  */
42493 #line 13338 "gram.y"
42494     {
42495 					A_Indices *ai = makeNode(A_Indices);
42496 					ai->is_slice = false;
42497 					ai->lidx = NULL;
42498 					ai->uidx = (yyvsp[(2) - (3)].node);
42499 					(yyval.node) = (Node *) ai;
42500 				}
42501     break;
42502 
42503   case 2020:
42504 /* Line 1792 of yacc.c  */
42505 #line 13346 "gram.y"
42506     {
42507 					A_Indices *ai = makeNode(A_Indices);
42508 					ai->is_slice = true;
42509 					ai->lidx = (yyvsp[(2) - (5)].node);
42510 					ai->uidx = (yyvsp[(4) - (5)].node);
42511 					(yyval.node) = (Node *) ai;
42512 				}
42513     break;
42514 
42515   case 2021:
42516 /* Line 1792 of yacc.c  */
42517 #line 13356 "gram.y"
42518     { (yyval.node) = (yyvsp[(1) - (1)].node); }
42519     break;
42520 
42521   case 2022:
42522 /* Line 1792 of yacc.c  */
42523 #line 13357 "gram.y"
42524     { (yyval.node) = NULL; }
42525     break;
42526 
42527   case 2023:
42528 /* Line 1792 of yacc.c  */
42529 #line 13361 "gram.y"
42530     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
42531     break;
42532 
42533   case 2024:
42534 /* Line 1792 of yacc.c  */
42535 #line 13362 "gram.y"
42536     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); }
42537     break;
42538 
42539   case 2025:
42540 /* Line 1792 of yacc.c  */
42541 #line 13366 "gram.y"
42542     { (yyval.list) = NIL; }
42543     break;
42544 
42545   case 2026:
42546 /* Line 1792 of yacc.c  */
42547 #line 13367 "gram.y"
42548     { (yyval.list) = lappend((yyvsp[(1) - (2)].list), (yyvsp[(2) - (2)].node)); }
42549     break;
42550 
42551   case 2029:
42552 /* Line 1792 of yacc.c  */
42553 #line 13382 "gram.y"
42554     { (yyval.node) = (Node *) (yyvsp[(1) - (1)].node); }
42555     break;
42556 
42557   case 2030:
42558 /* Line 1792 of yacc.c  */
42559 #line 13384 "gram.y"
42560     {
42561 					SetToDefault *n = makeNode(SetToDefault);
42562 					n->location = (yylsp[(1) - (1)]);
42563 					(yyval.node) = (Node *) n;
42564 				}
42565     break;
42566 
42567   case 2031:
42568 /* Line 1792 of yacc.c  */
42569 #line 13392 "gram.y"
42570     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
42571     break;
42572 
42573   case 2032:
42574 /* Line 1792 of yacc.c  */
42575 #line 13393 "gram.y"
42576     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
42577     break;
42578 
42579   case 2033:
42580 /* Line 1792 of yacc.c  */
42581 #line 13401 "gram.y"
42582     { (yyval.list) = (yyvsp[(2) - (3)].list); }
42583     break;
42584 
42585   case 2034:
42586 /* Line 1792 of yacc.c  */
42587 #line 13411 "gram.y"
42588     { (yyval.list) = (yyvsp[(1) - (1)].list); }
42589     break;
42590 
42591   case 2035:
42592 /* Line 1792 of yacc.c  */
42593 #line 13412 "gram.y"
42594     { (yyval.list) = NIL; }
42595     break;
42596 
42597   case 2036:
42598 /* Line 1792 of yacc.c  */
42599 #line 13416 "gram.y"
42600     { (yyval.list) = list_make1((yyvsp[(1) - (1)].target)); }
42601     break;
42602 
42603   case 2037:
42604 /* Line 1792 of yacc.c  */
42605 #line 13417 "gram.y"
42606     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].target)); }
42607     break;
42608 
42609   case 2038:
42610 /* Line 1792 of yacc.c  */
42611 #line 13421 "gram.y"
42612     {
42613 					(yyval.target) = makeNode(ResTarget);
42614 					(yyval.target)->name = (yyvsp[(3) - (3)].str);
42615 					(yyval.target)->indirection = NIL;
42616 					(yyval.target)->val = (Node *)(yyvsp[(1) - (3)].node);
42617 					(yyval.target)->location = (yylsp[(1) - (3)]);
42618 				}
42619     break;
42620 
42621   case 2039:
42622 /* Line 1792 of yacc.c  */
42623 #line 13437 "gram.y"
42624     {
42625 					(yyval.target) = makeNode(ResTarget);
42626 					(yyval.target)->name = (yyvsp[(2) - (2)].str);
42627 					(yyval.target)->indirection = NIL;
42628 					(yyval.target)->val = (Node *)(yyvsp[(1) - (2)].node);
42629 					(yyval.target)->location = (yylsp[(1) - (2)]);
42630 				}
42631     break;
42632 
42633   case 2040:
42634 /* Line 1792 of yacc.c  */
42635 #line 13445 "gram.y"
42636     {
42637 					(yyval.target) = makeNode(ResTarget);
42638 					(yyval.target)->name = NULL;
42639 					(yyval.target)->indirection = NIL;
42640 					(yyval.target)->val = (Node *)(yyvsp[(1) - (1)].node);
42641 					(yyval.target)->location = (yylsp[(1) - (1)]);
42642 				}
42643     break;
42644 
42645   case 2041:
42646 /* Line 1792 of yacc.c  */
42647 #line 13453 "gram.y"
42648     {
42649 					ColumnRef *n = makeNode(ColumnRef);
42650 					n->fields = list_make1(makeNode(A_Star));
42651 					n->location = (yylsp[(1) - (1)]);
42652 
42653 					(yyval.target) = makeNode(ResTarget);
42654 					(yyval.target)->name = NULL;
42655 					(yyval.target)->indirection = NIL;
42656 					(yyval.target)->val = (Node *)n;
42657 					(yyval.target)->location = (yylsp[(1) - (1)]);
42658 				}
42659     break;
42660 
42661   case 2042:
42662 /* Line 1792 of yacc.c  */
42663 #line 13474 "gram.y"
42664     { (yyval.list) = list_make1((yyvsp[(1) - (1)].range)); }
42665     break;
42666 
42667   case 2043:
42668 /* Line 1792 of yacc.c  */
42669 #line 13475 "gram.y"
42670     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].range)); }
42671     break;
42672 
42673   case 2044:
42674 /* Line 1792 of yacc.c  */
42675 #line 13487 "gram.y"
42676     {
42677 					(yyval.range) = makeRangeVar(NULL, (yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
42678 				}
42679     break;
42680 
42681   case 2045:
42682 /* Line 1792 of yacc.c  */
42683 #line 13491 "gram.y"
42684     {
42685 					check_qualified_name((yyvsp[(2) - (2)].list), yyscanner);
42686 					(yyval.range) = makeRangeVar(NULL, NULL, (yylsp[(1) - (2)]));
42687 					switch (list_length((yyvsp[(2) - (2)].list)))
42688 					{
42689 						case 1:
42690 							(yyval.range)->catalogname = NULL;
42691 							(yyval.range)->schemaname = (yyvsp[(1) - (2)].str);
42692 							(yyval.range)->relname = strVal(linitial((yyvsp[(2) - (2)].list)));
42693 							break;
42694 						case 2:
42695 							(yyval.range)->catalogname = (yyvsp[(1) - (2)].str);
42696 							(yyval.range)->schemaname = strVal(linitial((yyvsp[(2) - (2)].list)));
42697 							(yyval.range)->relname = strVal(lsecond((yyvsp[(2) - (2)].list)));
42698 							break;
42699 						default:
42700 							ereport(ERROR,
42701 									(errcode(ERRCODE_SYNTAX_ERROR),
42702 									 errmsg("improper qualified name (too many dotted names): %s",
42703 											NameListToString(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)))),
42704 									 parser_errposition((yylsp[(1) - (2)]))));
42705 							break;
42706 					}
42707 				}
42708     break;
42709 
42710   case 2046:
42711 /* Line 1792 of yacc.c  */
42712 #line 13518 "gram.y"
42713     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
42714     break;
42715 
42716   case 2047:
42717 /* Line 1792 of yacc.c  */
42718 #line 13520 "gram.y"
42719     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), makeString((yyvsp[(3) - (3)].str))); }
42720     break;
42721 
42722   case 2048:
42723 /* Line 1792 of yacc.c  */
42724 #line 13524 "gram.y"
42725     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42726     break;
42727 
42728   case 2049:
42729 /* Line 1792 of yacc.c  */
42730 #line 13527 "gram.y"
42731     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42732     break;
42733 
42734   case 2050:
42735 /* Line 1792 of yacc.c  */
42736 #line 13530 "gram.y"
42737     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42738     break;
42739 
42740   case 2051:
42741 /* Line 1792 of yacc.c  */
42742 #line 13532 "gram.y"
42743     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42744     break;
42745 
42746   case 2052:
42747 /* Line 1792 of yacc.c  */
42748 #line 13534 "gram.y"
42749     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42750     break;
42751 
42752   case 2053:
42753 /* Line 1792 of yacc.c  */
42754 #line 13536 "gram.y"
42755     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42756     break;
42757 
42758   case 2054:
42759 /* Line 1792 of yacc.c  */
42760 #line 13547 "gram.y"
42761     { (yyval.list) = list_make1(makeString((yyvsp[(1) - (1)].str))); }
42762     break;
42763 
42764   case 2055:
42765 /* Line 1792 of yacc.c  */
42766 #line 13549 "gram.y"
42767     {
42768 						(yyval.list) = check_func_name(lcons(makeString((yyvsp[(1) - (2)].str)), (yyvsp[(2) - (2)].list)),
42769 											 yyscanner);
42770 					}
42771     break;
42772 
42773   case 2056:
42774 /* Line 1792 of yacc.c  */
42775 #line 13560 "gram.y"
42776     {
42777 					(yyval.node) = makeIntConst((yyvsp[(1) - (1)].ival), (yylsp[(1) - (1)]));
42778 				}
42779     break;
42780 
42781   case 2057:
42782 /* Line 1792 of yacc.c  */
42783 #line 13564 "gram.y"
42784     {
42785 					(yyval.node) = makeFloatConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
42786 				}
42787     break;
42788 
42789   case 2058:
42790 /* Line 1792 of yacc.c  */
42791 #line 13568 "gram.y"
42792     {
42793 					(yyval.node) = makeStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
42794 				}
42795     break;
42796 
42797   case 2059:
42798 /* Line 1792 of yacc.c  */
42799 #line 13572 "gram.y"
42800     {
42801 					(yyval.node) = makeBitStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
42802 				}
42803     break;
42804 
42805   case 2060:
42806 /* Line 1792 of yacc.c  */
42807 #line 13576 "gram.y"
42808     {
42809 					/* This is a bit constant per SQL99:
42810 					 * Without Feature F511, "BIT data type",
42811 					 * a <general literal> shall not be a
42812 					 * <bit string literal> or a <hex string literal>.
42813 					 */
42814 					(yyval.node) = makeBitStringConst((yyvsp[(1) - (1)].str), (yylsp[(1) - (1)]));
42815 				}
42816     break;
42817 
42818   case 2061:
42819 /* Line 1792 of yacc.c  */
42820 #line 13585 "gram.y"
42821     {
42822 					/* generic type 'literal' syntax */
42823 					TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (2)].list));
42824 					t->location = (yylsp[(1) - (2)]);
42825 					(yyval.node) = makeStringConstCast((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)]), t);
42826 				}
42827     break;
42828 
42829   case 2062:
42830 /* Line 1792 of yacc.c  */
42831 #line 13592 "gram.y"
42832     {
42833 					/* generic syntax with a type modifier */
42834 					TypeName *t = makeTypeNameFromNameList((yyvsp[(1) - (6)].list));
42835 					ListCell *lc;
42836 
42837 					/*
42838 					 * We must use func_arg_list and opt_sort_clause in the
42839 					 * production to avoid reduce/reduce conflicts, but we
42840 					 * don't actually wish to allow NamedArgExpr in this
42841 					 * context, nor ORDER BY.
42842 					 */
42843 					foreach(lc, (yyvsp[(3) - (6)].list))
42844 					{
42845 						NamedArgExpr *arg = (NamedArgExpr *) lfirst(lc);
42846 
42847 						if (IsA(arg, NamedArgExpr))
42848 							ereport(ERROR,
42849 									(errcode(ERRCODE_SYNTAX_ERROR),
42850 									 errmsg("type modifier cannot have parameter name"),
42851 									 parser_errposition(arg->location)));
42852 					}
42853 					if ((yyvsp[(4) - (6)].list) != NIL)
42854 							ereport(ERROR,
42855 									(errcode(ERRCODE_SYNTAX_ERROR),
42856 									 errmsg("type modifier cannot have ORDER BY"),
42857 									 parser_errposition((yylsp[(4) - (6)]))));
42858 
42859 					t->typmods = (yyvsp[(3) - (6)].list);
42860 					t->location = (yylsp[(1) - (6)]);
42861 					(yyval.node) = makeStringConstCast((yyvsp[(6) - (6)].str), (yylsp[(6) - (6)]), t);
42862 				}
42863     break;
42864 
42865   case 2063:
42866 /* Line 1792 of yacc.c  */
42867 #line 13624 "gram.y"
42868     {
42869 					(yyval.node) = makeStringConstCast((yyvsp[(2) - (2)].str), (yylsp[(2) - (2)]), (yyvsp[(1) - (2)].typnam));
42870 				}
42871     break;
42872 
42873   case 2064:
42874 /* Line 1792 of yacc.c  */
42875 #line 13628 "gram.y"
42876     {
42877 					TypeName *t = (yyvsp[(1) - (3)].typnam);
42878 					t->typmods = (yyvsp[(3) - (3)].list);
42879 					(yyval.node) = makeStringConstCast((yyvsp[(2) - (3)].str), (yylsp[(2) - (3)]), t);
42880 				}
42881     break;
42882 
42883   case 2065:
42884 /* Line 1792 of yacc.c  */
42885 #line 13634 "gram.y"
42886     {
42887 					TypeName *t = (yyvsp[(1) - (5)].typnam);
42888 					t->typmods = list_make2(makeIntConst(INTERVAL_FULL_RANGE, -1),
42889 											makeIntConst((yyvsp[(3) - (5)].ival), (yylsp[(3) - (5)])));
42890 					(yyval.node) = makeStringConstCast((yyvsp[(5) - (5)].str), (yylsp[(5) - (5)]), t);
42891 				}
42892     break;
42893 
42894   case 2066:
42895 /* Line 1792 of yacc.c  */
42896 #line 13641 "gram.y"
42897     {
42898 					(yyval.node) = makeBoolAConst(TRUE, (yylsp[(1) - (1)]));
42899 				}
42900     break;
42901 
42902   case 2067:
42903 /* Line 1792 of yacc.c  */
42904 #line 13645 "gram.y"
42905     {
42906 					(yyval.node) = makeBoolAConst(FALSE, (yylsp[(1) - (1)]));
42907 				}
42908     break;
42909 
42910   case 2068:
42911 /* Line 1792 of yacc.c  */
42912 #line 13649 "gram.y"
42913     {
42914 					(yyval.node) = makeNullAConst((yylsp[(1) - (1)]));
42915 				}
42916     break;
42917 
42918   case 2069:
42919 /* Line 1792 of yacc.c  */
42920 #line 13654 "gram.y"
42921     { (yyval.ival) = (yyvsp[(1) - (1)].ival); }
42922     break;
42923 
42924   case 2070:
42925 /* Line 1792 of yacc.c  */
42926 #line 13655 "gram.y"
42927     { (yyval.str) = (yyvsp[(1) - (1)].str); }
42928     break;
42929 
42930   case 2071:
42931 /* Line 1792 of yacc.c  */
42932 #line 13657 "gram.y"
42933     { (yyval.ival) = (yyvsp[(1) - (1)].ival); }
42934     break;
42935 
42936   case 2072:
42937 /* Line 1792 of yacc.c  */
42938 #line 13658 "gram.y"
42939     { (yyval.ival) = + (yyvsp[(2) - (2)].ival); }
42940     break;
42941 
42942   case 2073:
42943 /* Line 1792 of yacc.c  */
42944 #line 13659 "gram.y"
42945     { (yyval.ival) = - (yyvsp[(2) - (2)].ival); }
42946     break;
42947 
42948   case 2074:
42949 /* Line 1792 of yacc.c  */
42950 #line 13664 "gram.y"
42951     {
42952 					RoleSpec *spc = (RoleSpec *) (yyvsp[(1) - (1)].node);
42953 					switch (spc->roletype)
42954 					{
42955 						case ROLESPEC_CSTRING:
42956 							(yyval.str) = spc->rolename;
42957 							break;
42958 						case ROLESPEC_PUBLIC:
42959 							ereport(ERROR,
42960 									(errcode(ERRCODE_RESERVED_NAME),
42961 									 errmsg("role name \"%s\" is reserved",
42962 											"public"),
42963 									 parser_errposition((yylsp[(1) - (1)]))));
42964 						case ROLESPEC_SESSION_USER:
42965 							ereport(ERROR,
42966 									(errcode(ERRCODE_RESERVED_NAME),
42967 									 errmsg("%s cannot be used as a role name here",
42968 											"SESSION_USER"),
42969 									 parser_errposition((yylsp[(1) - (1)]))));
42970 						case ROLESPEC_CURRENT_USER:
42971 							ereport(ERROR,
42972 									(errcode(ERRCODE_RESERVED_NAME),
42973 									 errmsg("%s cannot be used as a role name here",
42974 											"CURRENT_USER"),
42975 									 parser_errposition((yylsp[(1) - (1)]))));
42976 					}
42977 				}
42978     break;
42979 
42980   case 2075:
42981 /* Line 1792 of yacc.c  */
42982 #line 13694 "gram.y"
42983     {
42984 						/*
42985 						 * "public" and "none" are not keywords, but they must
42986 						 * be treated specially here.
42987 						 */
42988 						RoleSpec *n;
42989 						if (strcmp((yyvsp[(1) - (1)].str), "public") == 0)
42990 						{
42991 							n = (RoleSpec *) makeRoleSpec(ROLESPEC_PUBLIC, (yylsp[(1) - (1)]));
42992 							n->roletype = ROLESPEC_PUBLIC;
42993 						}
42994 						else if (strcmp((yyvsp[(1) - (1)].str), "none") == 0)
42995 						{
42996 							ereport(ERROR,
42997 									(errcode(ERRCODE_RESERVED_NAME),
42998 									 errmsg("role name \"%s\" is reserved",
42999 											"none"),
43000 									 parser_errposition((yylsp[(1) - (1)]))));
43001 						}
43002 						else
43003 						{
43004 							n = (RoleSpec *) makeRoleSpec(ROLESPEC_CSTRING, (yylsp[(1) - (1)]));
43005 							n->rolename = pstrdup((yyvsp[(1) - (1)].str));
43006 						}
43007 						(yyval.node) = (Node *) n;
43008 					}
43009     break;
43010 
43011   case 2076:
43012 /* Line 1792 of yacc.c  */
43013 #line 13721 "gram.y"
43014     {
43015 						(yyval.node) = makeRoleSpec(ROLESPEC_CURRENT_USER, (yylsp[(1) - (1)]));
43016 					}
43017     break;
43018 
43019   case 2077:
43020 /* Line 1792 of yacc.c  */
43021 #line 13725 "gram.y"
43022     {
43023 						(yyval.node) = makeRoleSpec(ROLESPEC_SESSION_USER, (yylsp[(1) - (1)]));
43024 					}
43025     break;
43026 
43027   case 2078:
43028 /* Line 1792 of yacc.c  */
43029 #line 13731 "gram.y"
43030     { (yyval.list) = list_make1((yyvsp[(1) - (1)].node)); }
43031     break;
43032 
43033   case 2079:
43034 /* Line 1792 of yacc.c  */
43035 #line 13733 "gram.y"
43036     { (yyval.list) = lappend((yyvsp[(1) - (3)].list), (yyvsp[(3) - (3)].node)); }
43037     break;
43038 
43039   case 2080:
43040 /* Line 1792 of yacc.c  */
43041 #line 13749 "gram.y"
43042     { (yyval.str) = (yyvsp[(1) - (1)].str); }
43043     break;
43044 
43045   case 2081:
43046 /* Line 1792 of yacc.c  */
43047 #line 13750 "gram.y"
43048     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43049     break;
43050 
43051   case 2082:
43052 /* Line 1792 of yacc.c  */
43053 #line 13751 "gram.y"
43054     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43055     break;
43056 
43057   case 2083:
43058 /* Line 1792 of yacc.c  */
43059 #line 13756 "gram.y"
43060     { (yyval.str) = (yyvsp[(1) - (1)].str); }
43061     break;
43062 
43063   case 2084:
43064 /* Line 1792 of yacc.c  */
43065 #line 13757 "gram.y"
43066     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43067     break;
43068 
43069   case 2085:
43070 /* Line 1792 of yacc.c  */
43071 #line 13758 "gram.y"
43072     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43073     break;
43074 
43075   case 2086:
43076 /* Line 1792 of yacc.c  */
43077 #line 13763 "gram.y"
43078     { (yyval.str) = (yyvsp[(1) - (1)].str); }
43079     break;
43080 
43081   case 2087:
43082 /* Line 1792 of yacc.c  */
43083 #line 13764 "gram.y"
43084     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43085     break;
43086 
43087   case 2088:
43088 /* Line 1792 of yacc.c  */
43089 #line 13765 "gram.y"
43090     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43091     break;
43092 
43093   case 2089:
43094 /* Line 1792 of yacc.c  */
43095 #line 13766 "gram.y"
43096     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43097     break;
43098 
43099   case 2090:
43100 /* Line 1792 of yacc.c  */
43101 #line 13772 "gram.y"
43102     { (yyval.str) = (yyvsp[(1) - (1)].str); }
43103     break;
43104 
43105   case 2091:
43106 /* Line 1792 of yacc.c  */
43107 #line 13773 "gram.y"
43108     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43109     break;
43110 
43111   case 2092:
43112 /* Line 1792 of yacc.c  */
43113 #line 13774 "gram.y"
43114     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43115     break;
43116 
43117   case 2093:
43118 /* Line 1792 of yacc.c  */
43119 #line 13775 "gram.y"
43120     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43121     break;
43122 
43123   case 2094:
43124 /* Line 1792 of yacc.c  */
43125 #line 13776 "gram.y"
43126     { (yyval.str) = pstrdup((yyvsp[(1) - (1)].keyword)); }
43127     break;
43128 
43129 
43130 /* Line 1792 of yacc.c  */
43131 #line 43132 "gram.c"
43132       default: break;
43133     }
43134   /* User semantic actions sometimes alter yychar, and that requires
43135      that yytoken be updated with the new translation.  We take the
43136      approach of translating immediately before every use of yytoken.
43137      One alternative is translating here after every semantic action,
43138      but that translation would be missed if the semantic action invokes
43139      YYABORT, YYACCEPT, or YYERROR immediately after altering yychar or
43140      if it invokes YYBACKUP.  In the case of YYABORT or YYACCEPT, an
43141      incorrect destructor might then be invoked immediately.  In the
43142      case of YYERROR or YYBACKUP, subsequent parser actions might lead
43143      to an incorrect destructor call or verbose syntax error message
43144      before the lookahead is translated.  */
43145   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
43146 
43147   YYPOPSTACK (yylen);
43148   yylen = 0;
43149   YY_STACK_PRINT (yyss, yyssp);
43150 
43151   *++yyvsp = yyval;
43152   *++yylsp = yyloc;
43153 
43154   /* Now `shift' the result of the reduction.  Determine what state
43155      that goes to, based on the state we popped back to and the rule
43156      number reduced by.  */
43157 
43158   yyn = yyr1[yyn];
43159 
43160   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
43161   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
43162     yystate = yytable[yystate];
43163   else
43164     yystate = yydefgoto[yyn - YYNTOKENS];
43165 
43166   goto yynewstate;
43167 
43168 
43169 /*------------------------------------.
43170 | yyerrlab -- here on detecting error |
43171 `------------------------------------*/
43172 yyerrlab:
43173   /* Make sure we have latest lookahead translation.  See comments at
43174      user semantic actions for why this is necessary.  */
43175   yytoken = yychar == YYEMPTY ? YYEMPTY : YYTRANSLATE (yychar);
43176 
43177   /* If not already recovering from an error, report this error.  */
43178   if (!yyerrstatus)
43179     {
43180       ++yynerrs;
43181 #if ! YYERROR_VERBOSE
43182       yyerror (&yylloc, yyscanner, YY_("syntax error"));
43183 #else
43184 # define YYSYNTAX_ERROR yysyntax_error (&yymsg_alloc, &yymsg, \
43185                                         yyssp, yytoken)
43186       {
43187         char const *yymsgp = YY_("syntax error");
43188         int yysyntax_error_status;
43189         yysyntax_error_status = YYSYNTAX_ERROR;
43190         if (yysyntax_error_status == 0)
43191           yymsgp = yymsg;
43192         else if (yysyntax_error_status == 1)
43193           {
43194             if (yymsg != yymsgbuf)
43195               YYSTACK_FREE (yymsg);
43196             yymsg = (char *) YYSTACK_ALLOC (yymsg_alloc);
43197             if (!yymsg)
43198               {
43199                 yymsg = yymsgbuf;
43200                 yymsg_alloc = sizeof yymsgbuf;
43201                 yysyntax_error_status = 2;
43202               }
43203             else
43204               {
43205                 yysyntax_error_status = YYSYNTAX_ERROR;
43206                 yymsgp = yymsg;
43207               }
43208           }
43209         yyerror (&yylloc, yyscanner, yymsgp);
43210         if (yysyntax_error_status == 2)
43211           goto yyexhaustedlab;
43212       }
43213 # undef YYSYNTAX_ERROR
43214 #endif
43215     }
43216 
43217   yyerror_range[1] = yylloc;
43218 
43219   if (yyerrstatus == 3)
43220     {
43221       /* If just tried and failed to reuse lookahead token after an
43222 	 error, discard it.  */
43223 
43224       if (yychar <= YYEOF)
43225 	{
43226 	  /* Return failure if at end of input.  */
43227 	  if (yychar == YYEOF)
43228 	    YYABORT;
43229 	}
43230       else
43231 	{
43232 	  yydestruct ("Error: discarding",
43233 		      yytoken, &yylval, &yylloc, yyscanner);
43234 	  yychar = YYEMPTY;
43235 	}
43236     }
43237 
43238   /* Else will try to reuse lookahead token after shifting the error
43239      token.  */
43240   goto yyerrlab1;
43241 
43242 
43243 /*---------------------------------------------------.
43244 | yyerrorlab -- error raised explicitly by YYERROR.  |
43245 `---------------------------------------------------*/
43246 yyerrorlab:
43247 
43248   /* Pacify compilers like GCC when the user code never invokes
43249      YYERROR and the label yyerrorlab therefore never appears in user
43250      code.  */
43251   if (/*CONSTCOND*/ 0)
43252      goto yyerrorlab;
43253 
43254   yyerror_range[1] = yylsp[1-yylen];
43255   /* Do not reclaim the symbols of the rule which action triggered
43256      this YYERROR.  */
43257   YYPOPSTACK (yylen);
43258   yylen = 0;
43259   YY_STACK_PRINT (yyss, yyssp);
43260   yystate = *yyssp;
43261   goto yyerrlab1;
43262 
43263 
43264 /*-------------------------------------------------------------.
43265 | yyerrlab1 -- common code for both syntax error and YYERROR.  |
43266 `-------------------------------------------------------------*/
43267 yyerrlab1:
43268   yyerrstatus = 3;	/* Each real token shifted decrements this.  */
43269 
43270   for (;;)
43271     {
43272       yyn = yypact[yystate];
43273       if (!yypact_value_is_default (yyn))
43274 	{
43275 	  yyn += YYTERROR;
43276 	  if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
43277 	    {
43278 	      yyn = yytable[yyn];
43279 	      if (0 < yyn)
43280 		break;
43281 	    }
43282 	}
43283 
43284       /* Pop the current state because it cannot handle the error token.  */
43285       if (yyssp == yyss)
43286 	YYABORT;
43287 
43288       yyerror_range[1] = *yylsp;
43289       yydestruct ("Error: popping",
43290 		  yystos[yystate], yyvsp, yylsp, yyscanner);
43291       YYPOPSTACK (1);
43292       yystate = *yyssp;
43293       YY_STACK_PRINT (yyss, yyssp);
43294     }
43295 
43296   YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
43297   *++yyvsp = yylval;
43298   YY_IGNORE_MAYBE_UNINITIALIZED_END
43299 
43300   yyerror_range[2] = yylloc;
43301   /* Using YYLLOC is tempting, but would change the location of
43302      the lookahead.  YYLOC is available though.  */
43303   YYLLOC_DEFAULT (yyloc, yyerror_range, 2);
43304   *++yylsp = yyloc;
43305 
43306   /* Shift the error token.  */
43307   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
43308 
43309   yystate = yyn;
43310   goto yynewstate;
43311 
43312 
43313 /*-------------------------------------.
43314 | yyacceptlab -- YYACCEPT comes here.  |
43315 `-------------------------------------*/
43316 yyacceptlab:
43317   yyresult = 0;
43318   goto yyreturn;
43319 
43320 /*-----------------------------------.
43321 | yyabortlab -- YYABORT comes here.  |
43322 `-----------------------------------*/
43323 yyabortlab:
43324   yyresult = 1;
43325   goto yyreturn;
43326 
43327 #if !defined yyoverflow || YYERROR_VERBOSE
43328 /*-------------------------------------------------.
43329 | yyexhaustedlab -- memory exhaustion comes here.  |
43330 `-------------------------------------------------*/
43331 yyexhaustedlab:
43332   yyerror (&yylloc, yyscanner, YY_("memory exhausted"));
43333   yyresult = 2;
43334   /* Fall through.  */
43335 #endif
43336 
43337 yyreturn:
43338   if (yychar != YYEMPTY)
43339     {
43340       /* Make sure we have latest lookahead translation.  See comments at
43341          user semantic actions for why this is necessary.  */
43342       yytoken = YYTRANSLATE (yychar);
43343       yydestruct ("Cleanup: discarding lookahead",
43344                   yytoken, &yylval, &yylloc, yyscanner);
43345     }
43346   /* Do not reclaim the symbols of the rule which action triggered
43347      this YYABORT or YYACCEPT.  */
43348   YYPOPSTACK (yylen);
43349   YY_STACK_PRINT (yyss, yyssp);
43350   while (yyssp != yyss)
43351     {
43352       yydestruct ("Cleanup: popping",
43353 		  yystos[*yyssp], yyvsp, yylsp, yyscanner);
43354       YYPOPSTACK (1);
43355     }
43356 #ifndef yyoverflow
43357   if (yyss != yyssa)
43358     YYSTACK_FREE (yyss);
43359 #endif
43360 #if YYERROR_VERBOSE
43361   if (yymsg != yymsgbuf)
43362     YYSTACK_FREE (yymsg);
43363 #endif
43364   /* Make sure YYID is used.  */
43365   return YYID (yyresult);
43366 }
43367 
43368 
43369 /* Line 2055 of yacc.c  */
43370 #line 14252 "gram.y"
43371 
43372 
43373 /*
43374  * The signature of this function is required by bison.  However, we
43375  * ignore the passed yylloc and instead use the last token position
43376  * available from the scanner.
43377  */
43378 static void
base_yyerror(YYLTYPE * yylloc,core_yyscan_t yyscanner,const char * msg)43379 base_yyerror(YYLTYPE *yylloc, core_yyscan_t yyscanner, const char *msg)
43380 {
43381 	parser_yyerror(msg);
43382 }
43383 
43384 static Node *
makeColumnRef(char * colname,List * indirection,int location,core_yyscan_t yyscanner)43385 makeColumnRef(char *colname, List *indirection,
43386 			  int location, core_yyscan_t yyscanner)
43387 {
43388 	/*
43389 	 * Generate a ColumnRef node, with an A_Indirection node added if there
43390 	 * is any subscripting in the specified indirection list.  However,
43391 	 * any field selection at the start of the indirection list must be
43392 	 * transposed into the "fields" part of the ColumnRef node.
43393 	 */
43394 	ColumnRef  *c = makeNode(ColumnRef);
43395 	int		nfields = 0;
43396 	ListCell *l;
43397 
43398 	c->location = location;
43399 	foreach(l, indirection)
43400 	{
43401 		if (IsA(lfirst(l), A_Indices))
43402 		{
43403 			A_Indirection *i = makeNode(A_Indirection);
43404 
43405 			if (nfields == 0)
43406 			{
43407 				/* easy case - all indirection goes to A_Indirection */
43408 				c->fields = list_make1(makeString(colname));
43409 				i->indirection = check_indirection(indirection, yyscanner);
43410 			}
43411 			else
43412 			{
43413 				/* got to split the list in two */
43414 				i->indirection = check_indirection(list_copy_tail(indirection,
43415 																  nfields),
43416 												   yyscanner);
43417 				indirection = list_truncate(indirection, nfields);
43418 				c->fields = lcons(makeString(colname), indirection);
43419 			}
43420 			i->arg = (Node *) c;
43421 			return (Node *) i;
43422 		}
43423 		else if (IsA(lfirst(l), A_Star))
43424 		{
43425 			/* We only allow '*' at the end of a ColumnRef */
43426 			if (lnext(l) != NULL)
43427 				parser_yyerror("improper use of \"*\"");
43428 		}
43429 		nfields++;
43430 	}
43431 	/* No subscripting, so all indirection gets added to field list */
43432 	c->fields = lcons(makeString(colname), indirection);
43433 	return (Node *) c;
43434 }
43435 
43436 static Node *
makeTypeCast(Node * arg,TypeName * typename,int location)43437 makeTypeCast(Node *arg, TypeName *typename, int location)
43438 {
43439 	TypeCast *n = makeNode(TypeCast);
43440 	n->arg = arg;
43441 	n->typeName = typename;
43442 	n->location = location;
43443 	return (Node *) n;
43444 }
43445 
43446 static Node *
makeStringConst(char * str,int location)43447 makeStringConst(char *str, int location)
43448 {
43449 	A_Const *n = makeNode(A_Const);
43450 
43451 	n->val.type = T_String;
43452 	n->val.val.str = str;
43453 	n->location = location;
43454 
43455 	return (Node *)n;
43456 }
43457 
43458 static Node *
makeStringConstCast(char * str,int location,TypeName * typename)43459 makeStringConstCast(char *str, int location, TypeName *typename)
43460 {
43461 	Node *s = makeStringConst(str, location);
43462 
43463 	return makeTypeCast(s, typename, -1);
43464 }
43465 
43466 static Node *
makeIntConst(int val,int location)43467 makeIntConst(int val, int location)
43468 {
43469 	A_Const *n = makeNode(A_Const);
43470 
43471 	n->val.type = T_Integer;
43472 	n->val.val.ival = val;
43473 	n->location = location;
43474 
43475 	return (Node *)n;
43476 }
43477 
43478 static Node *
makeFloatConst(char * str,int location)43479 makeFloatConst(char *str, int location)
43480 {
43481 	A_Const *n = makeNode(A_Const);
43482 
43483 	n->val.type = T_Float;
43484 	n->val.val.str = str;
43485 	n->location = location;
43486 
43487 	return (Node *)n;
43488 }
43489 
43490 static Node *
makeBitStringConst(char * str,int location)43491 makeBitStringConst(char *str, int location)
43492 {
43493 	A_Const *n = makeNode(A_Const);
43494 
43495 	n->val.type = T_BitString;
43496 	n->val.val.str = str;
43497 	n->location = location;
43498 
43499 	return (Node *)n;
43500 }
43501 
43502 static Node *
makeNullAConst(int location)43503 makeNullAConst(int location)
43504 {
43505 	A_Const *n = makeNode(A_Const);
43506 
43507 	n->val.type = T_Null;
43508 	n->location = location;
43509 
43510 	return (Node *)n;
43511 }
43512 
43513 static Node *
makeAConst(Value * v,int location)43514 makeAConst(Value *v, int location)
43515 {
43516 	Node *n;
43517 
43518 	switch (v->type)
43519 	{
43520 		case T_Float:
43521 			n = makeFloatConst(v->val.str, location);
43522 			break;
43523 
43524 		case T_Integer:
43525 			n = makeIntConst(v->val.ival, location);
43526 			break;
43527 
43528 		case T_String:
43529 		default:
43530 			n = makeStringConst(v->val.str, location);
43531 			break;
43532 	}
43533 
43534 	return n;
43535 }
43536 
43537 /* makeBoolAConst()
43538  * Create an A_Const string node and put it inside a boolean cast.
43539  */
43540 static Node *
makeBoolAConst(bool state,int location)43541 makeBoolAConst(bool state, int location)
43542 {
43543 	A_Const *n = makeNode(A_Const);
43544 
43545 	n->val.type = T_String;
43546 	n->val.val.str = (state ? "t" : "f");
43547 	n->location = location;
43548 
43549 	return makeTypeCast((Node *)n, SystemTypeName("bool"), -1);
43550 }
43551 
43552 /* makeRoleSpec
43553  * Create a RoleSpec with the given type
43554  */
43555 static Node *
makeRoleSpec(RoleSpecType type,int location)43556 makeRoleSpec(RoleSpecType type, int location)
43557 {
43558 	RoleSpec *spec = makeNode(RoleSpec);
43559 
43560 	spec->roletype = type;
43561 	spec->location = location;
43562 
43563 	return (Node *) spec;
43564 }
43565 
43566 /* check_qualified_name --- check the result of qualified_name production
43567  *
43568  * It's easiest to let the grammar production for qualified_name allow
43569  * subscripts and '*', which we then must reject here.
43570  */
43571 static void
check_qualified_name(List * names,core_yyscan_t yyscanner)43572 check_qualified_name(List *names, core_yyscan_t yyscanner)
43573 {
43574 	ListCell   *i;
43575 
43576 	foreach(i, names)
43577 	{
43578 		if (!IsA(lfirst(i), String))
43579 			parser_yyerror("syntax error");
43580 	}
43581 }
43582 
43583 /* check_func_name --- check the result of func_name production
43584  *
43585  * It's easiest to let the grammar production for func_name allow subscripts
43586  * and '*', which we then must reject here.
43587  */
43588 static List *
check_func_name(List * names,core_yyscan_t yyscanner)43589 check_func_name(List *names, core_yyscan_t yyscanner)
43590 {
43591 	ListCell   *i;
43592 
43593 	foreach(i, names)
43594 	{
43595 		if (!IsA(lfirst(i), String))
43596 			parser_yyerror("syntax error");
43597 	}
43598 	return names;
43599 }
43600 
43601 /* check_indirection --- check the result of indirection production
43602  *
43603  * We only allow '*' at the end of the list, but it's hard to enforce that
43604  * in the grammar, so do it here.
43605  */
43606 static List *
check_indirection(List * indirection,core_yyscan_t yyscanner)43607 check_indirection(List *indirection, core_yyscan_t yyscanner)
43608 {
43609 	ListCell *l;
43610 
43611 	foreach(l, indirection)
43612 	{
43613 		if (IsA(lfirst(l), A_Star))
43614 		{
43615 			if (lnext(l) != NULL)
43616 				parser_yyerror("improper use of \"*\"");
43617 		}
43618 	}
43619 	return indirection;
43620 }
43621 
43622 /* extractArgTypes()
43623  * Given a list of FunctionParameter nodes, extract a list of just the
43624  * argument types (TypeNames) for input parameters only.  This is what
43625  * is needed to look up an existing function, which is what is wanted by
43626  * the productions that use this call.
43627  */
43628 static List *
extractArgTypes(List * parameters)43629 extractArgTypes(List *parameters)
43630 {
43631 	List	   *result = NIL;
43632 	ListCell   *i;
43633 
43634 	foreach(i, parameters)
43635 	{
43636 		FunctionParameter *p = (FunctionParameter *) lfirst(i);
43637 
43638 		if (p->mode != FUNC_PARAM_OUT && p->mode != FUNC_PARAM_TABLE)
43639 			result = lappend(result, p->argType);
43640 	}
43641 	return result;
43642 }
43643 
43644 /* extractAggrArgTypes()
43645  * As above, but work from the output of the aggr_args production.
43646  */
43647 static List *
extractAggrArgTypes(List * aggrargs)43648 extractAggrArgTypes(List *aggrargs)
43649 {
43650 	Assert(list_length(aggrargs) == 2);
43651 	return extractArgTypes((List *) linitial(aggrargs));
43652 }
43653 
43654 /* makeOrderedSetArgs()
43655  * Build the result of the aggr_args production (which see the comments for).
43656  * This handles only the case where both given lists are nonempty, so that
43657  * we have to deal with multiple VARIADIC arguments.
43658  */
43659 static List *
makeOrderedSetArgs(List * directargs,List * orderedargs,core_yyscan_t yyscanner)43660 makeOrderedSetArgs(List *directargs, List *orderedargs,
43661 				   core_yyscan_t yyscanner)
43662 {
43663 	FunctionParameter *lastd = (FunctionParameter *) llast(directargs);
43664 	int			ndirectargs;
43665 
43666 	/* No restriction unless last direct arg is VARIADIC */
43667 	if (lastd->mode == FUNC_PARAM_VARIADIC)
43668 	{
43669 		FunctionParameter *firsto = (FunctionParameter *) linitial(orderedargs);
43670 
43671 		/*
43672 		 * We ignore the names, though the aggr_arg production allows them;
43673 		 * it doesn't allow default values, so those need not be checked.
43674 		 */
43675 		if (list_length(orderedargs) != 1 ||
43676 			firsto->mode != FUNC_PARAM_VARIADIC)
43677 			ereport(ERROR,
43678 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
43679 					 errmsg("an ordered-set aggregate with a VARIADIC direct argument must have one VARIADIC aggregated argument of the same data type"),
43680 					 parser_errposition(exprLocation((Node *) firsto))));
43681 
43682 		/* OK, drop the duplicate VARIADIC argument from the internal form */
43683 		orderedargs = NIL;
43684 	}
43685 
43686 	/* don't merge into the next line, as list_concat changes directargs */
43687 	ndirectargs = list_length(directargs);
43688 
43689 	return list_make2(list_concat(directargs, orderedargs),
43690 					  makeInteger(ndirectargs));
43691 }
43692 
43693 /* insertSelectOptions()
43694  * Insert ORDER BY, etc into an already-constructed SelectStmt.
43695  *
43696  * This routine is just to avoid duplicating code in SelectStmt productions.
43697  */
43698 static void
insertSelectOptions(SelectStmt * stmt,List * sortClause,List * lockingClause,Node * limitOffset,Node * limitCount,WithClause * withClause,core_yyscan_t yyscanner)43699 insertSelectOptions(SelectStmt *stmt,
43700 					List *sortClause, List *lockingClause,
43701 					Node *limitOffset, Node *limitCount,
43702 					WithClause *withClause,
43703 					core_yyscan_t yyscanner)
43704 {
43705 	Assert(IsA(stmt, SelectStmt));
43706 
43707 	/*
43708 	 * Tests here are to reject constructs like
43709 	 *	(SELECT foo ORDER BY bar) ORDER BY baz
43710 	 */
43711 	if (sortClause)
43712 	{
43713 		if (stmt->sortClause)
43714 			ereport(ERROR,
43715 					(errcode(ERRCODE_SYNTAX_ERROR),
43716 					 errmsg("multiple ORDER BY clauses not allowed"),
43717 					 parser_errposition(exprLocation((Node *) sortClause))));
43718 		stmt->sortClause = sortClause;
43719 	}
43720 	/* We can handle multiple locking clauses, though */
43721 	stmt->lockingClause = list_concat(stmt->lockingClause, lockingClause);
43722 	if (limitOffset)
43723 	{
43724 		if (stmt->limitOffset)
43725 			ereport(ERROR,
43726 					(errcode(ERRCODE_SYNTAX_ERROR),
43727 					 errmsg("multiple OFFSET clauses not allowed"),
43728 					 parser_errposition(exprLocation(limitOffset))));
43729 		stmt->limitOffset = limitOffset;
43730 	}
43731 	if (limitCount)
43732 	{
43733 		if (stmt->limitCount)
43734 			ereport(ERROR,
43735 					(errcode(ERRCODE_SYNTAX_ERROR),
43736 					 errmsg("multiple LIMIT clauses not allowed"),
43737 					 parser_errposition(exprLocation(limitCount))));
43738 		stmt->limitCount = limitCount;
43739 	}
43740 	if (withClause)
43741 	{
43742 		if (stmt->withClause)
43743 			ereport(ERROR,
43744 					(errcode(ERRCODE_SYNTAX_ERROR),
43745 					 errmsg("multiple WITH clauses not allowed"),
43746 					 parser_errposition(exprLocation((Node *) withClause))));
43747 		stmt->withClause = withClause;
43748 	}
43749 }
43750 
43751 static Node *
makeSetOp(SetOperation op,bool all,Node * larg,Node * rarg)43752 makeSetOp(SetOperation op, bool all, Node *larg, Node *rarg)
43753 {
43754 	SelectStmt *n = makeNode(SelectStmt);
43755 
43756 	n->op = op;
43757 	n->all = all;
43758 	n->larg = (SelectStmt *) larg;
43759 	n->rarg = (SelectStmt *) rarg;
43760 	return (Node *) n;
43761 }
43762 
43763 /* SystemFuncName()
43764  * Build a properly-qualified reference to a built-in function.
43765  */
43766 List *
SystemFuncName(char * name)43767 SystemFuncName(char *name)
43768 {
43769 	return list_make2(makeString("pg_catalog"), makeString(name));
43770 }
43771 
43772 /* SystemTypeName()
43773  * Build a properly-qualified reference to a built-in type.
43774  *
43775  * typmod is defaulted, but may be changed afterwards by caller.
43776  * Likewise for the location.
43777  */
43778 TypeName *
SystemTypeName(char * name)43779 SystemTypeName(char *name)
43780 {
43781 	return makeTypeNameFromNameList(list_make2(makeString("pg_catalog"),
43782 											   makeString(name)));
43783 }
43784 
43785 /* doNegate()
43786  * Handle negation of a numeric constant.
43787  *
43788  * Formerly, we did this here because the optimizer couldn't cope with
43789  * indexquals that looked like "var = -4" --- it wants "var = const"
43790  * and a unary minus operator applied to a constant didn't qualify.
43791  * As of Postgres 7.0, that problem doesn't exist anymore because there
43792  * is a constant-subexpression simplifier in the optimizer.  However,
43793  * there's still a good reason for doing this here, which is that we can
43794  * postpone committing to a particular internal representation for simple
43795  * negative constants.	It's better to leave "-123.456" in string form
43796  * until we know what the desired type is.
43797  */
43798 static Node *
doNegate(Node * n,int location)43799 doNegate(Node *n, int location)
43800 {
43801 	if (IsA(n, A_Const))
43802 	{
43803 		A_Const *con = (A_Const *)n;
43804 
43805 		/* report the constant's location as that of the '-' sign */
43806 		con->location = location;
43807 
43808 		if (con->val.type == T_Integer)
43809 		{
43810 			con->val.val.ival = -con->val.val.ival;
43811 			return n;
43812 		}
43813 		if (con->val.type == T_Float)
43814 		{
43815 			doNegateFloat(&con->val);
43816 			return n;
43817 		}
43818 	}
43819 
43820 	return (Node *) makeSimpleA_Expr(AEXPR_OP, "-", NULL, n, location);
43821 }
43822 
43823 static void
doNegateFloat(Value * v)43824 doNegateFloat(Value *v)
43825 {
43826 	char   *oldval = v->val.str;
43827 
43828 	Assert(IsA(v, Float));
43829 	if (*oldval == '+')
43830 		oldval++;
43831 	if (*oldval == '-')
43832 		v->val.str = oldval+1;	/* just strip the '-' */
43833 	else
43834 		v->val.str = psprintf("-%s", oldval);
43835 }
43836 
43837 static Node *
makeAndExpr(Node * lexpr,Node * rexpr,int location)43838 makeAndExpr(Node *lexpr, Node *rexpr, int location)
43839 {
43840 	Node	   *lexp = lexpr;
43841 
43842 	/* Look through AEXPR_PAREN nodes so they don't affect flattening */
43843 	while (IsA(lexp, A_Expr) &&
43844 		   ((A_Expr *) lexp)->kind == AEXPR_PAREN)
43845 		lexp = ((A_Expr *) lexp)->lexpr;
43846 	/* Flatten "a AND b AND c ..." to a single BoolExpr on sight */
43847 	if (IsA(lexp, BoolExpr))
43848 	{
43849 		BoolExpr *blexpr = (BoolExpr *) lexp;
43850 
43851 		if (blexpr->boolop == AND_EXPR)
43852 		{
43853 			blexpr->args = lappend(blexpr->args, rexpr);
43854 			return (Node *) blexpr;
43855 		}
43856 	}
43857 	return (Node *) makeBoolExpr(AND_EXPR, list_make2(lexpr, rexpr), location);
43858 }
43859 
43860 static Node *
makeOrExpr(Node * lexpr,Node * rexpr,int location)43861 makeOrExpr(Node *lexpr, Node *rexpr, int location)
43862 {
43863 	Node	   *lexp = lexpr;
43864 
43865 	/* Look through AEXPR_PAREN nodes so they don't affect flattening */
43866 	while (IsA(lexp, A_Expr) &&
43867 		   ((A_Expr *) lexp)->kind == AEXPR_PAREN)
43868 		lexp = ((A_Expr *) lexp)->lexpr;
43869 	/* Flatten "a OR b OR c ..." to a single BoolExpr on sight */
43870 	if (IsA(lexp, BoolExpr))
43871 	{
43872 		BoolExpr *blexpr = (BoolExpr *) lexp;
43873 
43874 		if (blexpr->boolop == OR_EXPR)
43875 		{
43876 			blexpr->args = lappend(blexpr->args, rexpr);
43877 			return (Node *) blexpr;
43878 		}
43879 	}
43880 	return (Node *) makeBoolExpr(OR_EXPR, list_make2(lexpr, rexpr), location);
43881 }
43882 
43883 static Node *
makeNotExpr(Node * expr,int location)43884 makeNotExpr(Node *expr, int location)
43885 {
43886 	return (Node *) makeBoolExpr(NOT_EXPR, list_make1(expr), location);
43887 }
43888 
43889 static Node *
makeAArrayExpr(List * elements,int location)43890 makeAArrayExpr(List *elements, int location)
43891 {
43892 	A_ArrayExpr *n = makeNode(A_ArrayExpr);
43893 
43894 	n->elements = elements;
43895 	n->location = location;
43896 	return (Node *) n;
43897 }
43898 
43899 static Node *
makeXmlExpr(XmlExprOp op,char * name,List * named_args,List * args,int location)43900 makeXmlExpr(XmlExprOp op, char *name, List *named_args, List *args,
43901 			int location)
43902 {
43903 	XmlExpr		*x = makeNode(XmlExpr);
43904 
43905 	x->op = op;
43906 	x->name = name;
43907 	/*
43908 	 * named_args is a list of ResTarget; it'll be split apart into separate
43909 	 * expression and name lists in transformXmlExpr().
43910 	 */
43911 	x->named_args = named_args;
43912 	x->arg_names = NIL;
43913 	x->args = args;
43914 	/* xmloption, if relevant, must be filled in by caller */
43915 	/* type and typmod will be filled in during parse analysis */
43916 	x->type = InvalidOid;			/* marks the node as not analyzed */
43917 	x->location = location;
43918 	return (Node *) x;
43919 }
43920 
43921 /*
43922  * Merge the input and output parameters of a table function.
43923  */
43924 static List *
mergeTableFuncParameters(List * func_args,List * columns)43925 mergeTableFuncParameters(List *func_args, List *columns)
43926 {
43927 	ListCell   *lc;
43928 
43929 	/* Explicit OUT and INOUT parameters shouldn't be used in this syntax */
43930 	foreach(lc, func_args)
43931 	{
43932 		FunctionParameter *p = (FunctionParameter *) lfirst(lc);
43933 
43934 		if (p->mode != FUNC_PARAM_IN && p->mode != FUNC_PARAM_VARIADIC)
43935 			ereport(ERROR,
43936 					(errcode(ERRCODE_SYNTAX_ERROR),
43937 					 errmsg("OUT and INOUT arguments aren't allowed in TABLE functions")));
43938 	}
43939 
43940 	return list_concat(func_args, columns);
43941 }
43942 
43943 /*
43944  * Determine return type of a TABLE function.  A single result column
43945  * returns setof that column's type; otherwise return setof record.
43946  */
43947 static TypeName *
TableFuncTypeName(List * columns)43948 TableFuncTypeName(List *columns)
43949 {
43950 	TypeName *result;
43951 
43952 	if (list_length(columns) == 1)
43953 	{
43954 		FunctionParameter *p = (FunctionParameter *) linitial(columns);
43955 
43956 		result = (TypeName *) copyObject(p->argType);
43957 	}
43958 	else
43959 		result = SystemTypeName("record");
43960 
43961 	result->setof = true;
43962 
43963 	return result;
43964 }
43965 
43966 /*
43967  * Convert a list of (dotted) names to a RangeVar (like
43968  * makeRangeVarFromNameList, but with position support).  The
43969  * "AnyName" refers to the any_name production in the grammar.
43970  */
43971 static RangeVar *
makeRangeVarFromAnyName(List * names,int position,core_yyscan_t yyscanner)43972 makeRangeVarFromAnyName(List *names, int position, core_yyscan_t yyscanner)
43973 {
43974 	RangeVar *r = makeNode(RangeVar);
43975 
43976 	switch (list_length(names))
43977 	{
43978 		case 1:
43979 			r->catalogname = NULL;
43980 			r->schemaname = NULL;
43981 			r->relname = strVal(linitial(names));
43982 			break;
43983 		case 2:
43984 			r->catalogname = NULL;
43985 			r->schemaname = strVal(linitial(names));
43986 			r->relname = strVal(lsecond(names));
43987 			break;
43988 		case 3:
43989 			r->catalogname = strVal(linitial(names));
43990 			r->schemaname = strVal(lsecond(names));
43991 			r->relname = strVal(lthird(names));
43992 			break;
43993 		default:
43994 			ereport(ERROR,
43995 					(errcode(ERRCODE_SYNTAX_ERROR),
43996 					 errmsg("improper qualified name (too many dotted names): %s",
43997 							NameListToString(names)),
43998 					 parser_errposition(position)));
43999 			break;
44000 	}
44001 
44002 	r->relpersistence = RELPERSISTENCE_PERMANENT;
44003 	r->location = position;
44004 
44005 	return r;
44006 }
44007 
44008 /* Separate Constraint nodes from COLLATE clauses in a ColQualList */
44009 static void
SplitColQualList(List * qualList,List ** constraintList,CollateClause ** collClause,core_yyscan_t yyscanner)44010 SplitColQualList(List *qualList,
44011 				 List **constraintList, CollateClause **collClause,
44012 				 core_yyscan_t yyscanner)
44013 {
44014 	ListCell   *cell;
44015 	ListCell   *prev;
44016 	ListCell   *next;
44017 
44018 	*collClause = NULL;
44019 	prev = NULL;
44020 	for (cell = list_head(qualList); cell; cell = next)
44021 	{
44022 		Node   *n = (Node *) lfirst(cell);
44023 
44024 		next = lnext(cell);
44025 		if (IsA(n, Constraint))
44026 		{
44027 			/* keep it in list */
44028 			prev = cell;
44029 			continue;
44030 		}
44031 		if (IsA(n, CollateClause))
44032 		{
44033 			CollateClause *c = (CollateClause *) n;
44034 
44035 			if (*collClause)
44036 				ereport(ERROR,
44037 						(errcode(ERRCODE_SYNTAX_ERROR),
44038 						 errmsg("multiple COLLATE clauses not allowed"),
44039 						 parser_errposition(c->location)));
44040 			*collClause = c;
44041 		}
44042 		else
44043 			elog(ERROR, "unexpected node type %d", (int) n->type);
44044 		/* remove non-Constraint nodes from qualList */
44045 		qualList = list_delete_cell(qualList, cell, prev);
44046 	}
44047 	*constraintList = qualList;
44048 }
44049 
44050 /*
44051  * Process result of ConstraintAttributeSpec, and set appropriate bool flags
44052  * in the output command node.  Pass NULL for any flags the particular
44053  * command doesn't support.
44054  */
44055 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)44056 processCASbits(int cas_bits, int location, const char *constrType,
44057 			   bool *deferrable, bool *initdeferred, bool *not_valid,
44058 			   bool *no_inherit, core_yyscan_t yyscanner)
44059 {
44060 	/* defaults */
44061 	if (deferrable)
44062 		*deferrable = false;
44063 	if (initdeferred)
44064 		*initdeferred = false;
44065 	if (not_valid)
44066 		*not_valid = false;
44067 
44068 	if (cas_bits & (CAS_DEFERRABLE | CAS_INITIALLY_DEFERRED))
44069 	{
44070 		if (deferrable)
44071 			*deferrable = true;
44072 		else
44073 			ereport(ERROR,
44074 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
44075 					 /* translator: %s is CHECK, UNIQUE, or similar */
44076 					 errmsg("%s constraints cannot be marked DEFERRABLE",
44077 							constrType),
44078 					 parser_errposition(location)));
44079 	}
44080 
44081 	if (cas_bits & CAS_INITIALLY_DEFERRED)
44082 	{
44083 		if (initdeferred)
44084 			*initdeferred = true;
44085 		else
44086 			ereport(ERROR,
44087 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
44088 					 /* translator: %s is CHECK, UNIQUE, or similar */
44089 					 errmsg("%s constraints cannot be marked DEFERRABLE",
44090 							constrType),
44091 					 parser_errposition(location)));
44092 	}
44093 
44094 	if (cas_bits & CAS_NOT_VALID)
44095 	{
44096 		if (not_valid)
44097 			*not_valid = true;
44098 		else
44099 			ereport(ERROR,
44100 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
44101 					 /* translator: %s is CHECK, UNIQUE, or similar */
44102 					 errmsg("%s constraints cannot be marked NOT VALID",
44103 							constrType),
44104 					 parser_errposition(location)));
44105 	}
44106 
44107 	if (cas_bits & CAS_NO_INHERIT)
44108 	{
44109 		if (no_inherit)
44110 			*no_inherit = true;
44111 		else
44112 			ereport(ERROR,
44113 					(errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
44114 					 /* translator: %s is CHECK, UNIQUE, or similar */
44115 					 errmsg("%s constraints cannot be marked NO INHERIT",
44116 							constrType),
44117 					 parser_errposition(location)));
44118 	}
44119 }
44120 
44121 /*----------
44122  * Recursive view transformation
44123  *
44124  * Convert
44125  *
44126  *     CREATE RECURSIVE VIEW relname (aliases) AS query
44127  *
44128  * to
44129  *
44130  *     CREATE VIEW relname (aliases) AS
44131  *         WITH RECURSIVE relname (aliases) AS (query)
44132  *         SELECT aliases FROM relname
44133  *
44134  * Actually, just the WITH ... part, which is then inserted into the original
44135  * view definition as the query.
44136  * ----------
44137  */
44138 static Node *
makeRecursiveViewSelect(char * relname,List * aliases,Node * query)44139 makeRecursiveViewSelect(char *relname, List *aliases, Node *query)
44140 {
44141 	SelectStmt *s = makeNode(SelectStmt);
44142 	WithClause *w = makeNode(WithClause);
44143 	CommonTableExpr *cte = makeNode(CommonTableExpr);
44144 	List	   *tl = NIL;
44145 	ListCell   *lc;
44146 
44147 	/* create common table expression */
44148 	cte->ctename = relname;
44149 	cte->aliascolnames = aliases;
44150 	cte->ctequery = query;
44151 	cte->location = -1;
44152 
44153 	/* create WITH clause and attach CTE */
44154 	w->recursive = true;
44155 	w->ctes = list_make1(cte);
44156 	w->location = -1;
44157 
44158 	/* create target list for the new SELECT from the alias list of the
44159 	 * recursive view specification */
44160 	foreach (lc, aliases)
44161 	{
44162 		ResTarget *rt = makeNode(ResTarget);
44163 
44164 		rt->name = NULL;
44165 		rt->indirection = NIL;
44166 		rt->val = makeColumnRef(strVal(lfirst(lc)), NIL, -1, 0);
44167 		rt->location = -1;
44168 
44169 		tl = lappend(tl, rt);
44170 	}
44171 
44172 	/* create new SELECT combining WITH clause, target list, and fake FROM
44173 	 * clause */
44174 	s->withClause = w;
44175 	s->targetList = tl;
44176 	s->fromClause = list_make1(makeRangeVar(NULL, relname, -1));
44177 
44178 	return (Node *) s;
44179 }
44180 
44181 /* parser_init()
44182  * Initialize to parse one query string
44183  */
44184 void
parser_init(base_yy_extra_type * yyext)44185 parser_init(base_yy_extra_type *yyext)
44186 {
44187 	yyext->parsetree = NIL;		/* in case grammar forgets to set it */
44188 }
44189 
44190 /*
44191  * Create a DefElem setting "oids" to the specified value.
44192  */
44193 static DefElem *
defWithOids(bool value)44194 defWithOids(bool value)
44195 {
44196 	DefElem    *f = makeNode(DefElem);
44197 
44198 	f->defname = "oids";
44199 	f->arg = (Node *) makeInteger(value);
44200 	return f;
44201 }
44202