/* A Bison parser, made by GNU Bison 3.8.2.9-6571. */
/* Skeleton implementation for Bison GLR parsers in C
Copyright (C) 2002-2015, 2018-2021 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see . */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
under terms of your choice, so long as that work isn't itself a
parser generator using the skeleton or a modified version thereof
as a parser skeleton. Alternatively, if you modify or redistribute
the parser skeleton itself, you may (at your option) remove this
special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public
License without this special exception.
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* C GLR parser skeleton written by Paul Hilfinger. */
/* DO NOT RELY ON FEATURES THAT ARE NOT DOCUMENTED in the manual,
especially those whose name start with YY_ or yy_. They are
private implementation details that can be changed or removed. */
/* Identify Bison output, and Bison version. */
#define YYBISON 30802
/* Bison version string. */
#define YYBISON_VERSION "3.8.2.9-6571"
/* Skeleton name. */
#define YYSKELETON_NAME "glr.c"
/* Pure parsers. */
#define YYPURE 0
/* First part of user prologue. */
#line 2 "cplusplus.y"
#include
extern int lineno;
static void yyerror(const char *s);
extern int yylex (void);
#line 65 "cplusplus.c"
# ifndef YY_CAST
# ifdef __cplusplus
# define YY_CAST(Type, Val) static_cast (Val)
# define YY_REINTERPRET_CAST(Type, Val) reinterpret_cast (Val)
# else
# define YY_CAST(Type, Val) ((Type) (Val))
# define YY_REINTERPRET_CAST(Type, Val) ((Type) (Val))
# endif
# endif
# ifndef YY_NULLPTR
# if defined __cplusplus
# if 201103L <= __cplusplus
# define YY_NULLPTR nullptr
# else
# define YY_NULLPTR 0
# endif
# else
# define YY_NULLPTR ((void*)0)
# endif
# endif
#include "cplusplus.h"
/* Symbol kind. */
enum yysymbol_kind_t
{
YYSYMBOL_YYEMPTY = -2,
YYSYMBOL_YYEOF = 0, /* "end of file" */
YYSYMBOL_YYerror = 1, /* error */
YYSYMBOL_YYUNDEF = 2, /* "invalid token" */
YYSYMBOL_COMMA = 3, /* COMMA */
YYSYMBOL_CONSTEXPR = 4, /* CONSTEXPR */
YYSYMBOL_ELLIPSIS = 5, /* ELLIPSIS */
YYSYMBOL_EXPORT = 6, /* EXPORT */
YYSYMBOL_EXTERN = 7, /* EXTERN */
YYSYMBOL_IDENTIFIER = 8, /* IDENTIFIER */
YYSYMBOL_INLINE = 9, /* INLINE */
YYSYMBOL_NOEXCEPT = 10, /* NOEXCEPT */
YYSYMBOL_NOT = 11, /* NOT */
YYSYMBOL_SCOPE = 12, /* SCOPE */
YYSYMBOL_TEMPLATE = 13, /* TEMPLATE */
YYSYMBOL_THIS = 14, /* THIS */
YYSYMBOL_TYPENAME = 15, /* TYPENAME */
YYSYMBOL_VIRTUAL = 16, /* VIRTUAL */
YYSYMBOL_PRIVATE = 17, /* PRIVATE */
YYSYMBOL_PROTECTED = 18, /* PROTECTED */
YYSYMBOL_PUBLIC = 19, /* PUBLIC */
YYSYMBOL_PLUS = 20, /* PLUS */
YYSYMBOL_MINUS = 21, /* MINUS */
YYSYMBOL_USING = 22, /* USING */
YYSYMBOL_EQ = 23, /* EQ */
YYSYMBOL_SEMICOLON = 24, /* SEMICOLON */
YYSYMBOL_ALIGNAS = 25, /* ALIGNAS */
YYSYMBOL_OPEN_PAREN = 26, /* OPEN_PAREN */
YYSYMBOL_CLOSE_PAREN = 27, /* CLOSE_PAREN */
YYSYMBOL_AND = 28, /* AND */
YYSYMBOL_ASM = 29, /* ASM */
YYSYMBOL_MULT_EQ = 30, /* MULT_EQ */
YYSYMBOL_DIV_EQ = 31, /* DIV_EQ */
YYSYMBOL_MOD_EQ = 32, /* MOD_EQ */
YYSYMBOL_PLUS_EQ = 33, /* PLUS_EQ */
YYSYMBOL_MINUS_EQ = 34, /* MINUS_EQ */
YYSYMBOL_RSHIFT_EQ = 35, /* RSHIFT_EQ */
YYSYMBOL_LSHIFT_EQ = 36, /* LSHIFT_EQ */
YYSYMBOL_AND_EQ = 37, /* AND_EQ */
YYSYMBOL_XOR_EQ = 38, /* XOR_EQ */
YYSYMBOL_OR_EQ = 39, /* OR_EQ */
YYSYMBOL_OPEN_SQUARE = 40, /* OPEN_SQUARE */
YYSYMBOL_CLOSE_SQUARE = 41, /* CLOSE_SQUARE */
YYSYMBOL_COLON = 42, /* COLON */
YYSYMBOL_CO_AWAIT = 43, /* CO_AWAIT */
YYSYMBOL_OPEN_BRACE = 44, /* OPEN_BRACE */
YYSYMBOL_CLOSE_BRACE = 45, /* CLOSE_BRACE */
YYSYMBOL_BALANCED_TOKEN = 46, /* BALANCED_TOKEN */
YYSYMBOL_CLASS = 47, /* CLASS */
YYSYMBOL_STRUCT = 48, /* STRUCT */
YYSYMBOL_UNION = 49, /* UNION */
YYSYMBOL_FINAL = 50, /* FINAL */
YYSYMBOL_SPACESHIP = 51, /* SPACESHIP */
YYSYMBOL_CONCEPT = 52, /* CONCEPT */
YYSYMBOL_QUERY = 53, /* QUERY */
YYSYMBOL_AND_AND = 54, /* AND_AND */
YYSYMBOL_OR_OR = 55, /* OR_OR */
YYSYMBOL_OPERATOR = 56, /* OPERATOR */
YYSYMBOL_CO_RETURN = 57, /* CO_RETURN */
YYSYMBOL_CONST = 58, /* CONST */
YYSYMBOL_VOLATILE = 59, /* VOLATILE */
YYSYMBOL_FRIEND = 60, /* FRIEND */
YYSYMBOL_TYPEDEF = 61, /* TYPEDEF */
YYSYMBOL_CONSTEVAL = 62, /* CONSTEVAL */
YYSYMBOL_CONSTINIT = 63, /* CONSTINIT */
YYSYMBOL_DECLTYPE = 64, /* DECLTYPE */
YYSYMBOL_DEREF = 65, /* DEREF */
YYSYMBOL_DELETE = 66, /* DELETE */
YYSYMBOL_DOT = 67, /* DOT */
YYSYMBOL_ENUM = 68, /* ENUM */
YYSYMBOL_EQ_EQ = 69, /* EQ_EQ */
YYSYMBOL_NOT_EQ = 70, /* NOT_EQ */
YYSYMBOL_XOR = 71, /* XOR */
YYSYMBOL_LESS = 72, /* LESS */
YYSYMBOL_GREATER = 73, /* GREATER */
YYSYMBOL_EXPLICIT = 74, /* EXPLICIT */
YYSYMBOL_MULT = 75, /* MULT */
YYSYMBOL_DIV = 76, /* DIV */
YYSYMBOL_MOD = 77, /* MOD */
YYSYMBOL_OR = 78, /* OR */
YYSYMBOL_LSHIFT = 79, /* LSHIFT */
YYSYMBOL_RSHIFT = 80, /* RSHIFT */
YYSYMBOL_LESS_EQ = 81, /* LESS_EQ */
YYSYMBOL_GREATER_EQ = 82, /* GREATER_EQ */
YYSYMBOL_DOT_STAR = 83, /* DOT_STAR */
YYSYMBOL_DEREF_STAR = 84, /* DEREF_STAR */
YYSYMBOL_DEFAULT = 85, /* DEFAULT */
YYSYMBOL_TRY = 86, /* TRY */
YYSYMBOL_MODULE = 87, /* MODULE */
YYSYMBOL_CATCH = 88, /* CATCH */
YYSYMBOL_HEADER_NAME = 89, /* HEADER_NAME */
YYSYMBOL_WHILE = 90, /* WHILE */
YYSYMBOL_DO = 91, /* DO */
YYSYMBOL_FOR = 92, /* FOR */
YYSYMBOL_BREAK = 93, /* BREAK */
YYSYMBOL_CONTINUE = 94, /* CONTINUE */
YYSYMBOL_RETURN = 95, /* RETURN */
YYSYMBOL_GOTO = 96, /* GOTO */
YYSYMBOL_CASE = 97, /* CASE */
YYSYMBOL_IMPORT = 98, /* IMPORT */
YYSYMBOL_NAMESPACE = 99, /* NAMESPACE */
YYSYMBOL_REQUIRES = 100, /* REQUIRES */
YYSYMBOL_NEW = 101, /* NEW */
YYSYMBOL_COMPL = 102, /* COMPL */
YYSYMBOL_PLUS_PLUS = 103, /* PLUS_PLUS */
YYSYMBOL_MINUS_MINUS = 104, /* MINUS_MINUS */
YYSYMBOL_AUTO = 105, /* AUTO */
YYSYMBOL_DYNAMIC_CAST = 106, /* DYNAMIC_CAST */
YYSYMBOL_STATIC_CAST = 107, /* STATIC_CAST */
YYSYMBOL_REINTERPRET_CAST = 108, /* REINTERPRET_CAST */
YYSYMBOL_CONST_CAST = 109, /* CONST_CAST */
YYSYMBOL_TYPEID = 110, /* TYPEID */
YYSYMBOL_LITERAL = 111, /* LITERAL */
YYSYMBOL_IF = 112, /* IF */
YYSYMBOL_ELSE = 113, /* ELSE */
YYSYMBOL_SWITCH = 114, /* SWITCH */
YYSYMBOL_CHAR = 115, /* CHAR */
YYSYMBOL_CHAR8_T = 116, /* CHAR8_T */
YYSYMBOL_CHAR16_T = 117, /* CHAR16_T */
YYSYMBOL_CHAR32_T = 118, /* CHAR32_T */
YYSYMBOL_WCHAR_T = 119, /* WCHAR_T */
YYSYMBOL_BOOL = 120, /* BOOL */
YYSYMBOL_SHORT = 121, /* SHORT */
YYSYMBOL_INT = 122, /* INT */
YYSYMBOL_LONG = 123, /* LONG */
YYSYMBOL_SIGNED = 124, /* SIGNED */
YYSYMBOL_UNSIGNED = 125, /* UNSIGNED */
YYSYMBOL_FLOAT = 126, /* FLOAT */
YYSYMBOL_DOUBLE = 127, /* DOUBLE */
YYSYMBOL_VOID = 128, /* VOID */
YYSYMBOL_STATIC_ASSERT = 129, /* STATIC_ASSERT */
YYSYMBOL_STATIC = 130, /* STATIC */
YYSYMBOL_THREAD_LOCAL = 131, /* THREAD_LOCAL */
YYSYMBOL_MUTABLE = 132, /* MUTABLE */
YYSYMBOL_STRING_LITERAL = 133, /* STRING_LITERAL */
YYSYMBOL_THROW = 134, /* THROW */
YYSYMBOL_SIZEOF = 135, /* SIZEOF */
YYSYMBOL_ALIGNOF = 136, /* ALIGNOF */
YYSYMBOL_OVERRIDE = 137, /* OVERRIDE */
YYSYMBOL_CO_YIELD = 138, /* CO_YIELD */
YYSYMBOL_139_0_ = 139, /* '0' */
YYSYMBOL_YYACCEPT = 140, /* $accept */
YYSYMBOL_141_COMMA_opt = 141, /* COMMA-opt */
YYSYMBOL_142_CONSTEXPR_opt = 142, /* CONSTEXPR-opt */
YYSYMBOL_143_ELLIPSIS_opt = 143, /* ELLIPSIS-opt */
YYSYMBOL_144_EXPORT_opt = 144, /* EXPORT-opt */
YYSYMBOL_145_EXTERN_opt = 145, /* EXTERN-opt */
YYSYMBOL_146_IDENTIFIER_opt = 146, /* IDENTIFIER-opt */
YYSYMBOL_147_INLINE_opt = 147, /* INLINE-opt */
YYSYMBOL_148_NOEXCEPT_opt = 148, /* NOEXCEPT-opt */
YYSYMBOL_149_NOT_opt = 149, /* NOT-opt */
YYSYMBOL_150_SCOPE_opt = 150, /* SCOPE-opt */
YYSYMBOL_151_TEMPLATE_opt = 151, /* TEMPLATE-opt */
YYSYMBOL_152_THIS_opt = 152, /* THIS-opt */
YYSYMBOL_153_TYPENAME_opt = 153, /* TYPENAME-opt */
YYSYMBOL_154_VIRTUAL_opt = 154, /* VIRTUAL-opt */
YYSYMBOL_155_abstract_declarator = 155, /* abstract-declarator */
YYSYMBOL_156_abstract_declarator_opt = 156, /* abstract-declarator-opt */
YYSYMBOL_157_abstract_pack_declarator = 157, /* abstract-pack-declarator */
YYSYMBOL_158_access_specifier = 158, /* access-specifier */
YYSYMBOL_159_access_specifier_opt = 159, /* access-specifier-opt */
YYSYMBOL_160_additive_expression = 160, /* additive-expression */
YYSYMBOL_161_alias_declaration = 161, /* alias-declaration */
YYSYMBOL_162_alignment_specifier = 162, /* alignment-specifier */
YYSYMBOL_163_and_expression = 163, /* and-expression */
YYSYMBOL_164_asm_declaration = 164, /* asm-declaration */
YYSYMBOL_165_assignment_expression = 165, /* assignment-expression */
YYSYMBOL_166_assignment_expression_opt = 166, /* assignment-expression-opt */
YYSYMBOL_167_assignment_operator = 167, /* assignment-operator */
YYSYMBOL_attribute = 168, /* attribute */
YYSYMBOL_169_attribute_argument_clause = 169, /* attribute-argument-clause */
YYSYMBOL_170_attribute_argument_clause_opt = 170, /* attribute-argument-clause-opt */
YYSYMBOL_171_attribute_declaration = 171, /* attribute-declaration */
YYSYMBOL_172_attribute_list = 172, /* attribute-list */
YYSYMBOL_173_attribute_namespace = 173, /* attribute-namespace */
YYSYMBOL_174_attribute_opt = 174, /* attribute-opt */
YYSYMBOL_175_attribute_scoped_token = 175, /* attribute-scoped-token */
YYSYMBOL_176_attribute_specifier = 176, /* attribute-specifier */
YYSYMBOL_177_attribute_specifier_seq = 177, /* attribute-specifier-seq */
YYSYMBOL_178_attribute_specifier_seq_opt = 178, /* attribute-specifier-seq-opt */
YYSYMBOL_179_attribute_token = 179, /* attribute-token */
YYSYMBOL_180_attribute_using_prefix = 180, /* attribute-using-prefix */
YYSYMBOL_181_attribute_using_prefix_opt = 181, /* attribute-using-prefix-opt */
YYSYMBOL_182_await_expression = 182, /* await-expression */
YYSYMBOL_183_balanced_token = 183, /* balanced-token */
YYSYMBOL_184_balanced_token_seq = 184, /* balanced-token-seq */
YYSYMBOL_185_balanced_token_seq_opt = 185, /* balanced-token-seq-opt */
YYSYMBOL_186_base_clause = 186, /* base-clause */
YYSYMBOL_187_base_clause_opt = 187, /* base-clause-opt */
YYSYMBOL_188_base_specifier = 188, /* base-specifier */
YYSYMBOL_189_base_specifier_list = 189, /* base-specifier-list */
YYSYMBOL_190_block_declaration = 190, /* block-declaration */
YYSYMBOL_191_brace_or_equal_initializer = 191, /* brace-or-equal-initializer */
YYSYMBOL_192_brace_or_equal_initializer_opt = 192, /* brace-or-equal-initializer-opt */
YYSYMBOL_193_braced_init_list = 193, /* braced-init-list */
YYSYMBOL_capture = 194, /* capture */
YYSYMBOL_195_capture_default = 195, /* capture-default */
YYSYMBOL_196_capture_list = 196, /* capture-list */
YYSYMBOL_197_cast_expression = 197, /* cast-expression */
YYSYMBOL_198_class_head = 198, /* class-head */
YYSYMBOL_199_class_head_name = 199, /* class-head-name */
YYSYMBOL_200_class_key = 200, /* class-key */
YYSYMBOL_201_class_name = 201, /* class-name */
YYSYMBOL_202_class_or_decltype = 202, /* class-or-decltype */
YYSYMBOL_203_class_specifier = 203, /* class-specifier */
YYSYMBOL_204_class_virt_specifier = 204, /* class-virt-specifier */
YYSYMBOL_205_class_virt_specifier_opt = 205, /* class-virt-specifier-opt */
YYSYMBOL_206_compare_expression = 206, /* compare-expression */
YYSYMBOL_207_compound_requirement = 207, /* compound-requirement */
YYSYMBOL_208_compound_statement = 208, /* compound-statement */
YYSYMBOL_209_concept_definition = 209, /* concept-definition */
YYSYMBOL_210_concept_name = 210, /* concept-name */
YYSYMBOL_condition = 211, /* condition */
YYSYMBOL_212_condition_opt = 212, /* condition-opt */
YYSYMBOL_213_conditional_expression = 213, /* conditional-expression */
YYSYMBOL_214_constant_expression = 214, /* constant-expression */
YYSYMBOL_215_constant_expression_opt = 215, /* constant-expression-opt */
YYSYMBOL_216_constraint_expression = 216, /* constraint-expression */
YYSYMBOL_217_constraint_logical_and_expression = 217, /* constraint-logical-and-expression */
YYSYMBOL_218_constraint_logical_or_expression = 218, /* constraint-logical-or-expression */
YYSYMBOL_219_conversion_declarator = 219, /* conversion-declarator */
YYSYMBOL_220_conversion_declarator_opt = 220, /* conversion-declarator-opt */
YYSYMBOL_221_conversion_function_id = 221, /* conversion-function-id */
YYSYMBOL_222_conversion_type_id = 222, /* conversion-type-id */
YYSYMBOL_223_coroutine_return_statement = 223, /* coroutine-return-statement */
YYSYMBOL_224_ctor_initializer = 224, /* ctor-initializer */
YYSYMBOL_225_ctor_initializer_opt = 225, /* ctor-initializer-opt */
YYSYMBOL_226_cv_qualifier = 226, /* cv-qualifier */
YYSYMBOL_227_cv_qualifier_seq = 227, /* cv-qualifier-seq */
YYSYMBOL_228_cv_qualifier_seq_opt = 228, /* cv-qualifier-seq-opt */
YYSYMBOL_229_decl_specifier = 229, /* decl-specifier */
YYSYMBOL_230_decl_specifier_seq = 230, /* decl-specifier-seq */
YYSYMBOL_231_decl_specifier_seq_opt = 231, /* decl-specifier-seq-opt */
YYSYMBOL_declaration = 232, /* declaration */
YYSYMBOL_233_declaration_seq = 233, /* declaration-seq */
YYSYMBOL_234_declaration_seq_opt = 234, /* declaration-seq-opt */
YYSYMBOL_235_declaration_statement = 235, /* declaration-statement */
YYSYMBOL_declarator = 236, /* declarator */
YYSYMBOL_237_declarator_id = 237, /* declarator-id */
YYSYMBOL_238_decltype_specifier = 238, /* decltype-specifier */
YYSYMBOL_239_deduction_guide = 239, /* deduction-guide */
YYSYMBOL_240_defining_type_id = 240, /* defining-type-id */
YYSYMBOL_241_defining_type_specifier = 241, /* defining-type-specifier */
YYSYMBOL_242_defining_type_specifier_seq = 242, /* defining-type-specifier-seq */
YYSYMBOL_243_delete_expression = 243, /* delete-expression */
YYSYMBOL_244_designated_initializer_clause = 244, /* designated-initializer-clause */
YYSYMBOL_245_designated_initializer_list = 245, /* designated-initializer-list */
YYSYMBOL_designator = 246, /* designator */
YYSYMBOL_247_elaborated_enum_specifier = 247, /* elaborated-enum-specifier */
YYSYMBOL_248_elaborated_type_specifier = 248, /* elaborated-type-specifier */
YYSYMBOL_249_empty_declaration = 249, /* empty-declaration */
YYSYMBOL_250_enclosing_namespace_specifier = 250, /* enclosing-namespace-specifier */
YYSYMBOL_251_enum_base = 251, /* enum-base */
YYSYMBOL_252_enum_base_opt = 252, /* enum-base-opt */
YYSYMBOL_253_enum_head = 253, /* enum-head */
YYSYMBOL_254_enum_head_name = 254, /* enum-head-name */
YYSYMBOL_255_enum_head_name_opt = 255, /* enum-head-name-opt */
YYSYMBOL_256_enum_key = 256, /* enum-key */
YYSYMBOL_257_enum_name = 257, /* enum-name */
YYSYMBOL_258_enum_specifier = 258, /* enum-specifier */
YYSYMBOL_enumerator = 259, /* enumerator */
YYSYMBOL_260_enumerator_definition = 260, /* enumerator-definition */
YYSYMBOL_261_enumerator_list = 261, /* enumerator-list */
YYSYMBOL_262_enumerator_list_opt = 262, /* enumerator-list-opt */
YYSYMBOL_263_equality_expression = 263, /* equality-expression */
YYSYMBOL_264_exception_declaration = 264, /* exception-declaration */
YYSYMBOL_265_exclusive_or_expression = 265, /* exclusive-or-expression */
YYSYMBOL_266_explicit_instantiation = 266, /* explicit-instantiation */
YYSYMBOL_267_explicit_specialization = 267, /* explicit-specialization */
YYSYMBOL_268_explicit_specifier = 268, /* explicit-specifier */
YYSYMBOL_269_explicit_specifier_opt = 269, /* explicit-specifier-opt */
YYSYMBOL_270_export_declaration = 270, /* export-declaration */
YYSYMBOL_271_expr_or_braced_init_list = 271, /* expr-or-braced-init-list */
YYSYMBOL_272_expr_or_braced_init_list_opt = 272, /* expr-or-braced-init-list-opt */
YYSYMBOL_expression = 273, /* expression */
YYSYMBOL_274_expression_list = 274, /* expression-list */
YYSYMBOL_275_expression_list_opt = 275, /* expression-list-opt */
YYSYMBOL_276_expression_opt = 276, /* expression-opt */
YYSYMBOL_277_expression_statement = 277, /* expression-statement */
YYSYMBOL_278_fold_expression = 278, /* fold-expression */
YYSYMBOL_279_fold_operator = 279, /* fold-operator */
YYSYMBOL_280_for_range_declaration = 280, /* for-range-declaration */
YYSYMBOL_281_for_range_initializer = 281, /* for-range-initializer */
YYSYMBOL_282_function_body = 282, /* function-body */
YYSYMBOL_283_function_definition = 283, /* function-definition */
YYSYMBOL_284_function_specifier = 284, /* function-specifier */
YYSYMBOL_285_function_try_block = 285, /* function-try-block */
YYSYMBOL_286_global_module_fragment = 286, /* global-module-fragment */
YYSYMBOL_287_global_module_fragment_opt = 287, /* global-module-fragment-opt */
YYSYMBOL_handler = 288, /* handler */
YYSYMBOL_289_handler_seq = 289, /* handler-seq */
YYSYMBOL_290_handler_seq_opt = 290, /* handler-seq-opt */
YYSYMBOL_291_header_name = 291, /* header-name */
YYSYMBOL_292_id_expression = 292, /* id-expression */
YYSYMBOL_293_identifier_list = 293, /* identifier-list */
YYSYMBOL_294_inclusive_or_expression = 294, /* inclusive-or-expression */
YYSYMBOL_295_init_capture = 295, /* init-capture */
YYSYMBOL_296_init_declarator = 296, /* init-declarator */
YYSYMBOL_297_init_declarator_list = 297, /* init-declarator-list */
YYSYMBOL_298_init_declarator_list_opt = 298, /* init-declarator-list-opt */
YYSYMBOL_299_init_statement = 299, /* init-statement */
YYSYMBOL_300_init_statement_opt = 300, /* init-statement-opt */
YYSYMBOL_initializer = 301, /* initializer */
YYSYMBOL_302_initializer_clause = 302, /* initializer-clause */
YYSYMBOL_303_initializer_list = 303, /* initializer-list */
YYSYMBOL_304_initializer_opt = 304, /* initializer-opt */
YYSYMBOL_305_iteration_statement = 305, /* iteration-statement */
YYSYMBOL_306_jump_statement = 306, /* jump-statement */
YYSYMBOL_307_labeled_statement = 307, /* labeled-statement */
YYSYMBOL_308_lambda_capture = 308, /* lambda-capture */
YYSYMBOL_309_lambda_capture_opt = 309, /* lambda-capture-opt */
YYSYMBOL_310_lambda_declarator = 310, /* lambda-declarator */
YYSYMBOL_311_lambda_expression = 311, /* lambda-expression */
YYSYMBOL_312_lambda_introducer = 312, /* lambda-introducer */
YYSYMBOL_313_lambda_specifiers = 313, /* lambda-specifiers */
YYSYMBOL_314_linkage_specification = 314, /* linkage-specification */
YYSYMBOL_315_literal_operator_id = 315, /* literal-operator-id */
YYSYMBOL_316_logical_and_expression = 316, /* logical-and-expression */
YYSYMBOL_317_logical_or_expression = 317, /* logical-or-expression */
YYSYMBOL_318_mem_initializer = 318, /* mem-initializer */
YYSYMBOL_319_mem_initializer_id = 319, /* mem-initializer-id */
YYSYMBOL_320_mem_initializer_list = 320, /* mem-initializer-list */
YYSYMBOL_321_member_declaration = 321, /* member-declaration */
YYSYMBOL_322_member_declarator = 322, /* member-declarator */
YYSYMBOL_323_member_declarator_list = 323, /* member-declarator-list */
YYSYMBOL_324_member_declarator_list_opt = 324, /* member-declarator-list-opt */
YYSYMBOL_325_member_specification = 325, /* member-specification */
YYSYMBOL_326_member_specification_opt = 326, /* member-specification-opt */
YYSYMBOL_327_module_declaration = 327, /* module-declaration */
YYSYMBOL_328_module_import_declaration = 328, /* module-import-declaration */
YYSYMBOL_329_module_name = 329, /* module-name */
YYSYMBOL_330_module_name_qualifier = 330, /* module-name-qualifier */
YYSYMBOL_331_module_name_qualifier_opt = 331, /* module-name-qualifier-opt */
YYSYMBOL_332_module_partition = 332, /* module-partition */
YYSYMBOL_333_module_partition_opt = 333, /* module-partition-opt */
YYSYMBOL_334_multiplicative_expression = 334, /* multiplicative-expression */
YYSYMBOL_335_named_namespace_definition = 335, /* named-namespace-definition */
YYSYMBOL_336_namespace_alias = 336, /* namespace-alias */
YYSYMBOL_337_namespace_alias_definition = 337, /* namespace-alias-definition */
YYSYMBOL_338_namespace_body = 338, /* namespace-body */
YYSYMBOL_339_namespace_definition = 339, /* namespace-definition */
YYSYMBOL_340_namespace_name = 340, /* namespace-name */
YYSYMBOL_341_nested_name_specifier = 341, /* nested-name-specifier */
YYSYMBOL_342_nested_name_specifier_opt = 342, /* nested-name-specifier-opt */
YYSYMBOL_343_nested_namespace_definition = 343, /* nested-namespace-definition */
YYSYMBOL_344_nested_requirement = 344, /* nested-requirement */
YYSYMBOL_345_new_declarator = 345, /* new-declarator */
YYSYMBOL_346_new_declarator_opt = 346, /* new-declarator-opt */
YYSYMBOL_347_new_expression = 347, /* new-expression */
YYSYMBOL_348_new_initializer = 348, /* new-initializer */
YYSYMBOL_349_new_initializer_opt = 349, /* new-initializer-opt */
YYSYMBOL_350_new_placement = 350, /* new-placement */
YYSYMBOL_351_new_placement_opt = 351, /* new-placement-opt */
YYSYMBOL_352_new_type_id = 352, /* new-type-id */
YYSYMBOL_353_nodeclspec_function_declaration = 353, /* nodeclspec-function-declaration */
YYSYMBOL_354_noexcept_expression = 354, /* noexcept-expression */
YYSYMBOL_355_noexcept_specifier = 355, /* noexcept-specifier */
YYSYMBOL_356_noexcept_specifier_opt = 356, /* noexcept-specifier-opt */
YYSYMBOL_357_noptr_abstract_declarator = 357, /* noptr-abstract-declarator */
YYSYMBOL_358_noptr_abstract_declarator_opt = 358, /* noptr-abstract-declarator-opt */
YYSYMBOL_359_noptr_abstract_pack_declarator = 359, /* noptr-abstract-pack-declarator */
YYSYMBOL_360_noptr_declarator = 360, /* noptr-declarator */
YYSYMBOL_361_noptr_new_declarator = 361, /* noptr-new-declarator */
YYSYMBOL_362_opaque_enum_declaration = 362, /* opaque-enum-declaration */
YYSYMBOL_363_operator_function_id = 363, /* operator-function-id */
YYSYMBOL_364_overloadable_operator = 364, /* overloadable-operator */
YYSYMBOL_365_parameter_declaration = 365, /* parameter-declaration */
YYSYMBOL_366_parameter_declaration_clause = 366, /* parameter-declaration-clause */
YYSYMBOL_367_parameter_declaration_list = 367, /* parameter-declaration-list */
YYSYMBOL_368_parameter_declaration_list_opt = 368, /* parameter-declaration-list-opt */
YYSYMBOL_369_parameters_and_qualifiers = 369, /* parameters-and-qualifiers */
YYSYMBOL_370_placeholder_type_specifier = 370, /* placeholder-type-specifier */
YYSYMBOL_371_pm_expression = 371, /* pm-expression */
YYSYMBOL_372_postfix_expression = 372, /* postfix-expression */
YYSYMBOL_373_primary_expression = 373, /* primary-expression */
YYSYMBOL_374_private_module_fragment = 374, /* private-module-fragment */
YYSYMBOL_375_private_module_fragment_opt = 375, /* private-module-fragment-opt */
YYSYMBOL_376_ptr_abstract_declarator = 376, /* ptr-abstract-declarator */
YYSYMBOL_377_ptr_abstract_declarator_opt = 377, /* ptr-abstract-declarator-opt */
YYSYMBOL_378_ptr_declarator = 378, /* ptr-declarator */
YYSYMBOL_379_ptr_operator = 379, /* ptr-operator */
YYSYMBOL_380_pure_specifier = 380, /* pure-specifier */
YYSYMBOL_381_pure_specifier_opt = 381, /* pure-specifier-opt */
YYSYMBOL_382_qualified_id = 382, /* qualified-id */
YYSYMBOL_383_qualified_namespace_specifier = 383, /* qualified-namespace-specifier */
YYSYMBOL_384_ref_qualifier = 384, /* ref-qualifier */
YYSYMBOL_385_ref_qualifier_opt = 385, /* ref-qualifier-opt */
YYSYMBOL_386_relational_expression = 386, /* relational-expression */
YYSYMBOL_requirement = 387, /* requirement */
YYSYMBOL_388_requirement_body = 388, /* requirement-body */
YYSYMBOL_389_requirement_parameter_list = 389, /* requirement-parameter-list */
YYSYMBOL_390_requirement_parameter_list_opt = 390, /* requirement-parameter-list-opt */
YYSYMBOL_391_requirement_seq = 391, /* requirement-seq */
YYSYMBOL_392_requires_clause = 392, /* requires-clause */
YYSYMBOL_393_requires_clause_opt = 393, /* requires-clause-opt */
YYSYMBOL_394_requires_expression = 394, /* requires-expression */
YYSYMBOL_395_return_type_requirement = 395, /* return-type-requirement */
YYSYMBOL_396_return_type_requirement_opt = 396, /* return-type-requirement-opt */
YYSYMBOL_397_selection_statement = 397, /* selection-statement */
YYSYMBOL_398_shift_expression = 398, /* shift-expression */
YYSYMBOL_399_simple_capture = 399, /* simple-capture */
YYSYMBOL_400_simple_declaration = 400, /* simple-declaration */
YYSYMBOL_401_simple_requirement = 401, /* simple-requirement */
YYSYMBOL_402_simple_template_id = 402, /* simple-template-id */
YYSYMBOL_403_simple_type_specifier = 403, /* simple-type-specifier */
YYSYMBOL_statement = 404, /* statement */
YYSYMBOL_405_statement_seq = 405, /* statement-seq */
YYSYMBOL_406_statement_seq_opt = 406, /* statement-seq-opt */
YYSYMBOL_407_static_assert_declaration = 407, /* static_assert-declaration */
YYSYMBOL_408_storage_class_specifier = 408, /* storage-class-specifier */
YYSYMBOL_409_string_literal = 409, /* string-literal */
YYSYMBOL_410_template_argument = 410, /* template-argument */
YYSYMBOL_411_template_argument_list = 411, /* template-argument-list */
YYSYMBOL_412_template_argument_list_opt = 412, /* template-argument-list-opt */
YYSYMBOL_413_template_declaration = 413, /* template-declaration */
YYSYMBOL_414_template_head = 414, /* template-head */
YYSYMBOL_415_template_id = 415, /* template-id */
YYSYMBOL_416_template_name = 416, /* template-name */
YYSYMBOL_417_template_parameter = 417, /* template-parameter */
YYSYMBOL_418_template_parameter_list = 418, /* template-parameter-list */
YYSYMBOL_419_throw_expression = 419, /* throw-expression */
YYSYMBOL_420_trailing_return_type = 420, /* trailing-return-type */
YYSYMBOL_421_trailing_return_type_opt = 421, /* trailing-return-type-opt */
YYSYMBOL_422_translation_unit = 422, /* translation-unit */
YYSYMBOL_423_try_block = 423, /* try-block */
YYSYMBOL_424_type_constraint = 424, /* type-constraint */
YYSYMBOL_425_type_constraint_opt = 425, /* type-constraint-opt */
YYSYMBOL_426_type_id = 426, /* type-id */
YYSYMBOL_427_type_name = 427, /* type-name */
YYSYMBOL_428_type_parameter = 428, /* type-parameter */
YYSYMBOL_429_type_parameter_key = 429, /* type-parameter-key */
YYSYMBOL_430_type_requirement = 430, /* type-requirement */
YYSYMBOL_431_type_specifier = 431, /* type-specifier */
YYSYMBOL_432_type_specifier_seq = 432, /* type-specifier-seq */
YYSYMBOL_433_typedef_name = 433, /* typedef-name */
YYSYMBOL_434_typename_specifier = 434, /* typename-specifier */
YYSYMBOL_435_ud_suffix = 435, /* ud-suffix */
YYSYMBOL_436_unary_expression = 436, /* unary-expression */
YYSYMBOL_437_unary_operator = 437, /* unary-operator */
YYSYMBOL_438_unnamed_namespace_definition = 438, /* unnamed-namespace-definition */
YYSYMBOL_439_unqualified_id = 439, /* unqualified-id */
YYSYMBOL_440_user_defined_string_literal = 440, /* user-defined-string-literal */
YYSYMBOL_441_using_declaration = 441, /* using-declaration */
YYSYMBOL_442_using_declarator = 442, /* using-declarator */
YYSYMBOL_443_using_declarator_list = 443, /* using-declarator-list */
YYSYMBOL_444_using_directive = 444, /* using-directive */
YYSYMBOL_445_using_enum_declaration = 445, /* using-enum-declaration */
YYSYMBOL_446_virt_specifier = 446, /* virt-specifier */
YYSYMBOL_447_virt_specifier_seq = 447, /* virt-specifier-seq */
YYSYMBOL_448_virt_specifier_seq_opt = 448, /* virt-specifier-seq-opt */
YYSYMBOL_449_yield_expression = 449 /* yield-expression */
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
/* Default (constant) value used for initialization for null
right-hand sides. Unlike the standard yacc.c template, here we set
the default value of $$ to a zeroed-out value. Since the default
value is undefined, this behavior is technically correct. */
static YYSTYPE yyval_default;
#include
#include
#include
#include
#include
#ifdef short
# undef short
#endif
/* On compilers that do not define __PTRDIFF_MAX__ etc., make sure
and (if available) are included
so that the code can choose integer types of a good width. */
#ifndef __PTRDIFF_MAX__
# include /* INFRINGES ON USER NAME SPACE */
# if defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
# include /* INFRINGES ON USER NAME SPACE */
# define YY_STDINT_H
# endif
#endif
/* Narrow types that promote to a signed type and that can represent a
signed or unsigned integer of at least N bits. In tables they can
save space and decrease cache pressure. Promoting to a signed type
helps avoid bugs in integer arithmetic. */
#ifdef __INT_LEAST8_MAX__
typedef __INT_LEAST8_TYPE__ yytype_int8;
#elif defined YY_STDINT_H
typedef int_least8_t yytype_int8;
#else
typedef signed char yytype_int8;
#endif
#ifdef __INT_LEAST16_MAX__
typedef __INT_LEAST16_TYPE__ yytype_int16;
#elif defined YY_STDINT_H
typedef int_least16_t yytype_int16;
#else
typedef short yytype_int16;
#endif
/* Work around bug in HP-UX 11.23, which defines these macros
incorrectly for preprocessor constants. This workaround can likely
be removed in 2023, as HPE has promised support for HP-UX 11.23
(aka HP-UX 11i v2) only through the end of 2022; see Table 2 of
. */
#ifdef __hpux
# undef UINT_LEAST8_MAX
# undef UINT_LEAST16_MAX
# define UINT_LEAST8_MAX 255
# define UINT_LEAST16_MAX 65535
#endif
#if defined __UINT_LEAST8_MAX__ && __UINT_LEAST8_MAX__ <= __INT_MAX__
typedef __UINT_LEAST8_TYPE__ yytype_uint8;
#elif (!defined __UINT_LEAST8_MAX__ && defined YY_STDINT_H \
&& UINT_LEAST8_MAX <= INT_MAX)
typedef uint_least8_t yytype_uint8;
#elif !defined __UINT_LEAST8_MAX__ && UCHAR_MAX <= INT_MAX
typedef unsigned char yytype_uint8;
#else
typedef short yytype_uint8;
#endif
#if defined __UINT_LEAST16_MAX__ && __UINT_LEAST16_MAX__ <= __INT_MAX__
typedef __UINT_LEAST16_TYPE__ yytype_uint16;
#elif (!defined __UINT_LEAST16_MAX__ && defined YY_STDINT_H \
&& UINT_LEAST16_MAX <= INT_MAX)
typedef uint_least16_t yytype_uint16;
#elif !defined __UINT_LEAST16_MAX__ && USHRT_MAX <= INT_MAX
typedef unsigned short yytype_uint16;
#else
typedef int yytype_uint16;
#endif
#ifndef YYPTRDIFF_T
# if defined __PTRDIFF_TYPE__ && defined __PTRDIFF_MAX__
# define YYPTRDIFF_T __PTRDIFF_TYPE__
# define YYPTRDIFF_MAXIMUM __PTRDIFF_MAX__
# elif defined PTRDIFF_MAX
# ifndef ptrdiff_t
# include /* INFRINGES ON USER NAME SPACE */
# endif
# define YYPTRDIFF_T ptrdiff_t
# define YYPTRDIFF_MAXIMUM PTRDIFF_MAX
# else
# define YYPTRDIFF_T long
# define YYPTRDIFF_MAXIMUM LONG_MAX
# endif
#endif
#ifndef YYSIZE_T
# ifdef __SIZE_TYPE__
# define YYSIZE_T __SIZE_TYPE__
# elif defined size_t
# define YYSIZE_T size_t
# elif defined __STDC_VERSION__ && 199901 <= __STDC_VERSION__
# include /* INFRINGES ON USER NAME SPACE */
# define YYSIZE_T size_t
# else
# define YYSIZE_T unsigned
# endif
#endif
#define YYSIZE_MAXIMUM \
YY_CAST (YYPTRDIFF_T, \
(YYPTRDIFF_MAXIMUM < YY_CAST (YYSIZE_T, -1) \
? YYPTRDIFF_MAXIMUM \
: YY_CAST (YYSIZE_T, -1)))
#define YYSIZEOF(X) YY_CAST (YYPTRDIFF_T, sizeof (X))
#ifndef YY_
# if defined YYENABLE_NLS && YYENABLE_NLS
# if ENABLE_NLS
# include /* INFRINGES ON USER NAME SPACE */
# define YY_(Msgid) dgettext ("bison-runtime", Msgid)
# endif
# endif
# ifndef YY_
# define YY_(Msgid) Msgid
# endif
#endif
#ifndef YYFREE
# define YYFREE free
#endif
#ifndef YYMALLOC
# define YYMALLOC malloc
#endif
#ifndef YYREALLOC
# define YYREALLOC realloc
#endif
#ifdef __cplusplus
typedef bool yybool;
# define yytrue true
# define yyfalse false
#else
/* When we move to stdbool, get rid of the various casts to yybool. */
typedef signed char yybool;
# define yytrue 1
# define yyfalse 0
#endif
#ifndef YYSETJMP
# include
# define YYJMP_BUF jmp_buf
# define YYSETJMP(Env) setjmp (Env)
/* Pacify Clang and ICC. */
# define YYLONGJMP(Env, Val) \
do { \
longjmp (Env, Val); \
YY_ASSERT (0); \
} while (yyfalse)
#endif
#ifndef YY_ATTRIBUTE_PURE
# if defined __GNUC__ && 2 < __GNUC__ + (96 <= __GNUC_MINOR__)
# define YY_ATTRIBUTE_PURE __attribute__ ((__pure__))
# else
# define YY_ATTRIBUTE_PURE
# endif
#endif
#ifndef YY_ATTRIBUTE_UNUSED
# if defined __GNUC__ && 2 < __GNUC__ + (7 <= __GNUC_MINOR__)
# define YY_ATTRIBUTE_UNUSED __attribute__ ((__unused__))
# else
# define YY_ATTRIBUTE_UNUSED
# endif
#endif
/* The _Noreturn keyword of C11. */
#ifndef _Noreturn
# if (defined __cplusplus \
&& ((201103 <= __cplusplus && !(__GNUC__ == 4 && __GNUC_MINOR__ == 7)) \
|| (defined _MSC_VER && 1900 <= _MSC_VER)))
# define _Noreturn [[noreturn]]
# elif ((!defined __cplusplus || defined __clang__) \
&& (201112 <= (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) \
|| (!defined __STRICT_ANSI__ \
&& (4 < __GNUC__ + (7 <= __GNUC_MINOR__) \
|| (defined __apple_build_version__ \
? 6000000 <= __apple_build_version__ \
: 3 < __clang_major__ + (5 <= __clang_minor__))))))
/* _Noreturn works as-is. */
# elif (2 < __GNUC__ + (8 <= __GNUC_MINOR__) || defined __clang__ \
|| 0x5110 <= __SUNPRO_C)
# define _Noreturn __attribute__ ((__noreturn__))
# elif 1200 <= (defined _MSC_VER ? _MSC_VER : 0)
# define _Noreturn __declspec (noreturn)
# else
# define _Noreturn
# endif
#endif
/* Suppress unused-variable warnings by "using" E. */
#if ! defined lint || defined __GNUC__
# define YY_USE(E) ((void) (E))
#else
# define YY_USE(E) /* empty */
#endif
/* Suppress an incorrect diagnostic about yylval being uninitialized. */
#if defined __GNUC__ && ! defined __ICC && 406 <= __GNUC__ * 100 + __GNUC_MINOR__
# if __GNUC__ * 100 + __GNUC_MINOR__ < 407
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"")
# else
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuninitialized\"") \
_Pragma ("GCC diagnostic ignored \"-Wmaybe-uninitialized\"")
# endif
# define YY_IGNORE_MAYBE_UNINITIALIZED_END \
_Pragma ("GCC diagnostic pop")
#else
# define YY_INITIAL_VALUE(Value) Value
#endif
#ifndef YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
# define YY_IGNORE_MAYBE_UNINITIALIZED_END
#endif
#ifndef YY_INITIAL_VALUE
# define YY_INITIAL_VALUE(Value) /* Nothing. */
#endif
#if defined __cplusplus && defined __GNUC__ && ! defined __ICC && 6 <= __GNUC__
# define YY_IGNORE_USELESS_CAST_BEGIN \
_Pragma ("GCC diagnostic push") \
_Pragma ("GCC diagnostic ignored \"-Wuseless-cast\"")
# define YY_IGNORE_USELESS_CAST_END \
_Pragma ("GCC diagnostic pop")
#endif
#ifndef YY_IGNORE_USELESS_CAST_BEGIN
# define YY_IGNORE_USELESS_CAST_BEGIN
# define YY_IGNORE_USELESS_CAST_END
#endif
#define YY_ASSERT(E) ((void) (0 && (E)))
/* YYFINAL -- State number of the termination state. */
#define YYFINAL 208
/* YYLAST -- Last index in YYTABLE. */
#define YYLAST 17220
/* YYNTOKENS -- Number of terminals. */
#define YYNTOKENS 140
/* YYNNTS -- Number of nonterminals. */
#define YYNNTS 310
/* YYNRULES -- Number of rules. */
#define YYNRULES 776
/* YYNSTATES -- Number of states. */
#define YYNSTATES 1324
/* YYMAXRHS -- Maximum number of symbols on right-hand side of rule. */
#define YYMAXRHS 9
/* YYMAXLEFT -- Maximum number of symbols to the left of a handle
accessed by $0, $-1, etc., in any rule. */
#define YYMAXLEFT 0
/* YYMAXUTOK -- Last valid token kind. */
#define YYMAXUTOK 393
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
as returned by yylex, with out-of-bounds checking. */
#define YYTRANSLATE(YYX) \
(0 <= (YYX) && (YYX) <= YYMAXUTOK \
? YY_CAST (yysymbol_kind_t, yytranslate[YYX]) \
: YYSYMBOL_YYUNDEF)
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
as returned by yylex. */
static const yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 139, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
45, 46, 47, 48, 49, 50, 51, 52, 53, 54,
55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
65, 66, 67, 68, 69, 70, 71, 72, 73, 74,
75, 76, 77, 78, 79, 80, 81, 82, 83, 84,
85, 86, 87, 88, 89, 90, 91, 92, 93, 94,
95, 96, 97, 98, 99, 100, 101, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, 112, 113, 114,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 132, 133, 134,
135, 136, 137, 138
};
#if YYDEBUG
/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
static const yytype_int16 yyrline[] =
{
0, 149, 149, 150, 153, 154, 157, 158, 161, 162,
165, 166, 169, 170, 173, 174, 177, 178, 181, 182,
185, 186, 189, 190, 193, 194, 197, 198, 201, 202,
205, 206, 207, 210, 211, 214, 215, 218, 219, 220,
223, 224, 227, 228, 229, 232, 235, 236, 239, 240,
243, 246, 247, 248, 249, 252, 253, 256, 257, 258,
259, 260, 261, 262, 263, 264, 265, 266, 269, 272,
275, 276, 279, 282, 283, 284, 285, 288, 291, 292,
295, 298, 299, 302, 305, 306, 309, 310, 313, 316,
317, 320, 323, 324, 325, 326, 329, 330, 333, 334,
337, 340, 341, 344, 345, 346, 349, 350, 353, 354,
355, 356, 357, 358, 359, 360, 361, 364, 365, 368,
369, 372, 373, 374, 377, 378, 381, 382, 385, 386,
389, 390, 393, 394, 397, 400, 401, 402, 405, 406,
409, 410, 411, 414, 417, 420, 421, 424, 425, 428,
431, 434, 437, 440, 441, 444, 445, 448, 449, 452,
455, 456, 459, 462, 463, 466, 467, 470, 473, 474,
477, 480, 483, 486, 489, 490, 493, 494, 497, 500,
501, 504, 505, 506, 507, 508, 509, 510, 511, 512,
515, 516, 519, 520, 523, 524, 525, 526, 527, 528,
529, 530, 531, 532, 533, 534, 535, 538, 539, 542,
543, 546, 549, 550, 553, 556, 559, 562, 565, 566,
567, 570, 571, 574, 575, 578, 581, 582, 585, 588,
591, 592, 593, 594, 597, 600, 601, 604, 607, 608,
611, 614, 617, 618, 621, 622, 623, 626, 629, 630,
633, 636, 637, 640, 641, 644, 645, 648, 649, 650,
653, 654, 655, 658, 659, 662, 665, 668, 669, 672,
673, 676, 677, 678, 681, 682, 685, 686, 689, 690,
693, 696, 697, 700, 701, 704, 707, 708, 709, 712,
713, 714, 715, 716, 717, 718, 719, 720, 721, 722,
723, 724, 725, 726, 727, 728, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 739, 740, 741, 742,
743, 746, 747, 750, 753, 754, 755, 756, 759, 760,
763, 764, 767, 770, 773, 774, 777, 780, 783, 784,
787, 790, 791, 794, 795, 798, 799, 802, 803, 806,
807, 810, 811, 814, 815, 818, 819, 820, 823, 824,
827, 828, 831, 832, 835, 836, 839, 840, 843, 844,
845, 846, 849, 850, 851, 852, 853, 856, 857, 858,
861, 862, 863, 866, 867, 870, 871, 874, 875, 878,
881, 884, 885, 888, 889, 892, 893, 896, 897, 900,
901, 904, 905, 908, 909, 912, 913, 914, 915, 916,
917, 918, 919, 920, 921, 922, 925, 926, 927, 928,
931, 932, 935, 936, 939, 940, 943, 944, 947, 950,
951, 952, 955, 958, 959, 962, 963, 966, 969, 970,
973, 974, 975, 976, 979, 982, 985, 988, 991, 992,
993, 996, 997, 1000, 1001, 1002, 1003, 1004, 1005, 1008,
1009, 1012, 1015, 1018, 1019, 1022, 1023, 1026, 1027, 1030,
1031, 1034, 1035, 1038, 1041, 1042, 1045, 1048, 1051, 1054,
1055, 1058, 1059, 1062, 1063, 1064, 1067, 1068, 1071, 1072,
1073, 1076, 1077, 1078, 1079, 1082, 1083, 1086, 1089, 1090,
1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102,
1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112,
1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122,
1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132,
1133, 1134, 1135, 1136, 1139, 1140, 1141, 1142, 1145, 1146,
1149, 1150, 1153, 1154, 1157, 1160, 1161, 1164, 1165, 1166,
1169, 1170, 1171, 1172, 1173, 1174, 1175, 1176, 1177, 1178,
1179, 1180, 1181, 1182, 1183, 1184, 1185, 1188, 1189, 1190,
1191, 1192, 1193, 1194, 1197, 1200, 1201, 1204, 1205, 1208,
1209, 1212, 1213, 1216, 1217, 1218, 1219, 1222, 1225, 1226,
1229, 1232, 1235, 1236, 1239, 1240, 1243, 1244, 1245, 1246,
1247, 1250, 1251, 1252, 1253, 1256, 1259, 1262, 1263, 1266,
1267, 1270, 1273, 1274, 1277, 1280, 1283, 1284, 1287, 1288,
1289, 1290, 1291, 1294, 1295, 1296, 1299, 1300, 1301, 1302,
1305, 1306, 1307, 1310, 1313, 1316, 1317, 1318, 1319, 1320,
1321, 1322, 1323, 1324, 1325, 1326, 1327, 1328, 1329, 1330,
1331, 1332, 1333, 1334, 1337, 1338, 1339, 1340, 1341, 1342,
1343, 1344, 1347, 1348, 1351, 1352, 1355, 1356, 1359, 1360,
1361, 1362, 1365, 1368, 1369, 1370, 1373, 1374, 1377, 1378,
1381, 1382, 1385, 1388, 1389, 1390, 1393, 1396, 1397, 1400,
1401, 1404, 1407, 1410, 1411, 1414, 1415, 1418, 1421, 1422,
1425, 1426, 1429, 1432, 1433, 1434, 1437, 1438, 1439, 1440,
1441, 1442, 1445, 1446, 1449, 1452, 1453, 1454, 1455, 1458,
1459, 1462, 1463, 1466, 1467, 1470, 1473, 1474, 1475, 1476,
1477, 1478, 1479, 1480, 1481, 1482, 1483, 1484, 1487, 1488,
1489, 1490, 1491, 1492, 1495, 1498, 1499, 1500, 1501, 1502,
1503, 1504, 1507, 1510, 1513, 1516, 1517, 1520, 1523, 1526,
1527, 1530, 1531, 1534, 1535, 1538, 1539
};
#endif
#define YYPACT_NINF (-1096)
#define YYTABLE_NINF (-774)
/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
STATE-NUM. */
static const yytype_int16 yypact[] =
{
4900, -1096, 10096, 72, 194, -6, -1096, 34, 342, -1096,
204, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, 144, 421, 249, 345, 67, 288, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, 339, -1096, -1096, -1096, 379, 316, -1096, -1096, -1096,
15902, 2327, -1096, 382, 387, -1096, -1096, -1096, 16347, 1027,
-1096, 4812, -1096, 420, -1096, -1096, -1096, -1096, -1096, 394,
-1096, -1096, -1096, -1096, -1096, 440, 446, -1096, -1096, -1096,
-1096, 455, -1096, -1096, -1096, -1096, -1096, -1096, 484, 939,
459, -1096, -1096, -1096, -1096, -1096, 3522, -1096, -1096, -1096,
-1096, 10184, 447, 538, -1096, 263, 530, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, 10272, -1096, 4724, -1096, 10401, 1057,
574, 989, -1096, -1096, 416, 342, 600, 631, 88, 8238,
-1096, -1096, 1098, 625, 11474, 10489, 582, 657, -1096, -1096,
-1096, 664, 699, -1096, 727, 718, 11511, 10929, -1096, -1096,
-1096, -1096, 756, -1096, -1096, -1096, 660, 753, 1305, -1096,
759, 768, -1096, -1096, 86, -1096, -1096, 463, 1543, 794,
-1096, 94, 658, -1096, 1825, 544, -1096, 645, 1110, 817,
464, -1096, 107, -1096, 839, 848, 108, -1096, -1096, 847,
1052, -1096, 873, -1096, 822, 4988, -1096, 907, 933, 446,
3657, 897, 1004, -1096, 940, -1096, -1096, 9197, -1096, 1067,
-1096, -1096, 1060, 10577, -1096, 1025, -1096, -1096, 11017, 448,
940, -1096, 346, -1096, 100, 732, -1096, 748, 1097, -1096,
446, 558, 97, -1096, -1096, 1100, -1096, 248, 1102, -1096,
56, -1096, -1096, -1096, 4323, -1096, 831, 11640, 5330, -1096,
1109, 103, 11677, 11806, 1073, 1093, 1105, 1112, 1165, -1096,
5712, 5204, 1168, 7242, 121, 336, 1185, -1096, -1096, -1096,
1167, -1096, -1096, -1096, 648, 1149, 454, -1096, -1096, 1145,
-1096, 15744, 1155, 1176, 1986, 1134, 1123, -1096, -1096, 1161,
1058, 628, -1096, -1096, 1080, -1096, 810, 1235, 529, -1096,
-1096, 541, -1096, 11843, -1096, -1096, -1096, -1096, 1237, 941,
-1096, -1096, 1266, 816, 843, 1210, -1096, 959, 539, 1269,
498, -1096, 714, 572, 1082, 542, 9842, 853, 1260, 821,
1159, 1271, 846, 351, 140, -1096, 1177, -1096, -1096, -1096,
1258, 54, -1096, 856, -1096, 415, 11142, 1234, -1096, -1096,
-1096, -1096, 882, 1261, -1096, 15873, -1096, -1096, -1096, -1096,
-1096, -1096, 1095, -1096, 1255, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, -1096, 1254, 1297, 446, 7279, 7408, 5583, 458,
-1096, -1096, -1096, -1096, -1096, 1854, -1096, -1096, 1292, -1096,
1315, 1274, 1107, 1278, 1316, 415, 1320, 1236, -1096, -1096,
1317, 9326, -1096, 1307, 576, -1096, 206, 638, 631, 1329,
1262, -1096, 2466, 1142, 697, 1231, -1096, 1298, 1242, -1096,
-1096, 16518, 793, 1613, 1244, -1096, 1338, 1314, 1338, 1325,
1337, 2981, 259, -1096, -1096, 631, 8275, 5218, 5726, 532,
1323, 631, -1096, -1096, 1051, 1339, 1347, -1096, 1355, 1357,
-1096, -1096, 1322, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
1330, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, 1326, -1096, -1096, -1096, -1096, -1096, 1328, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, -1096, 1333, -1096, -1096, -1096, -1096, 1303, 1362,
755, -1096, 415, -1096, 1334, 3792, -1096, -1096, -1096, -1096,
16661, 16684, 16782, 16805, 5454, -1096, -1096, 1359, 4455, -1096,
16827, -1096, -1096, 11972, 1363, 12009, 12138, 12175, 12304, 12341,
12470, 12507, 8404, -1096, 12636, 415, 1623, -1096, 1371, 1351,
-1096, 9455, 12673, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, 8441, 12802, 7445, 12839, 12968, 13005,
172, 9584, 13134, 13171, 5841, 5878, 1370, 1370, -1096, -1096,
13300, 13337, 13466, 13503, 13632, 13669, 6007, -1096, 6136, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, 1383, 1373, -1096,
1391, 1159, 1376, 1360, 10665, -1096, -1096, 1383, 631, 631,
-1096, -1096, 1379, 1399, -1096, 1402, 964, -1096, -1096, 1403,
-1096, -1096, 223, -1096, 45, 223, 450, -1096, 1386, 1411,
631, -1096, 1387, 16926, -1096, 1462, 809, 1248, -1096, -1096,
708, 631, 1414, -1096, -1096, 1385, 945, -1096, -1096, 1417,
-1096, -1096, -1096, 1404, 631, 1427, -1096, 1426, -1096, 1432,
585, 1435, 4587, 1390, 1384, -1096, -1096, 876, 13798, 341,
-1096, 16948, -1096, 1416, -1096, -1096, 1419, 1406, 1407, -1096,
-1096, -1096, 1380, 13835, 1354, -1096, 9971, -1096, 935, -1096,
-1096, 895, -1096, -1096, -1096, 891, 1000, 1026, -1096, 1393,
1433, -1096, 1549, 1338, 1431, -1096, -1096, -1096, -1096, 16971,
-1096, 17069, 1437, 10314, 1735, -1096, 568, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, 13964,
1454, -1096, 14001, -1096, 631, 1461, -1096, 269, 277, 518,
-1096, -1096, -1096, 1421, 1436, 9713, 3927, -1096, -1096, -1096,
1171, 1455, 7574, -1096, 1412, 1415, 1418, 1424, 614, 1465,
1481, 1466, 1471, 366, -1096, 7611, -1096, 16639, 1134, 1134,
648, 810, 1156, 1180, 1185, -1096, 1149, 1472, 195, 1474,
-1096, -1096, 14624, -1096, 1428, 1145, 255, 1176, -1096, 1058,
1058, 1058, 1430, 1491, -1096, 1438, -1096, -1096, -1096, 1477,
1468, 86, 86, 1167, 1167, 1167, 1167, 336, 336, 1479,
1483, 1488, -1096, -1096, 1469, 1493, -1096, 10753, -1096, 1473,
1497, 1496, 1499, 1500, -1096, 1485, 1516, 1524, 303, 1519,
-1096, -1096, 1506, -1096, -1096, 329, 214, 735, 1495, -1096,
1351, -1096, -1096, -1096, -1096, -1096, 1116, 1528, -1096, -1096,
-1096, -1096, 261, -1096, 652, -1096, 1532, 1514, 1278, 1222,
1525, -1096, 574, 1192, 1538, -1096, -1096, -1096, -1096, -1096,
7740, -1096, 1486, 1513, -1096, 6173, 1517, 458, 458, -1096,
-1096, -1096, -1096, -1096, 1475, -1096, -1096, 1548, -1096, 1554,
1526, 1577, 631, 1000, 1560, 886, 11179, 1234, 11308, -1096,
-1096, -1096, -1096, -1096, 129, 1780, 1571, 1573, 1629, -1096,
86, -1096, -1096, -1096, 967, -1096, -1096, -1096, 1574, 4601,
-1096, -1096, 269, -1096, 1079, 1357, -1096, -1096, -1096, 1531,
-1096, -1096, 758, 8570, 11345, -1096, 676, -1096, -1096, 6302,
-1096, -1096, 1580, 1584, 1585, 1589, -1096, -1096, 1590, -1096,
-1096, 14130, 1595, 17092, 702, 536, 16371, 1244, 14167, 580,
1608, 16500, 2807, -1096, -1096, -1096, -1096, 14712, 1578, -1096,
8607, -1096, -1096, -1096, -1096, -1096, -1096, -1096, 10841, 1603,
1587, -1096, -1096, -1096, -1096, -1096, -1096, -1096, 1402, 1592,
1622, 972, -1096, -1096, 1631, 269, 1616, 1618, 275, -1096,
631, 761, 1640, 1351, -1096, 334, -1096, -1096, 980, 824,
-1096, -1096, 358, 393, 1544, -1096, -1096, 862, -1096, 868,
1636, -1096, 631, 631, -1096, -1096, -1096, -1096, 1591, 446,
966, 1624, -1096, -1096, -1096, -1096, -1096, 1609, -1096, 1617,
946, 7777, 7906, -1096, -1096, -1096, 14296, -1096, -1096, 1195,
1538, 176, 3121, 1625, -1096, -1096, -1096, 8736, 8773, 8902,
8939, -1096, -1096, -1096, 1632, 6431, -1096, -1096, -1096, 7943,
-1096, -1096, 1621, 1035, 1244, 16031, 1637, -1096, -1096, 727,
117, 820, 6468, 1626, 1351, 1639, 14798, 1641, 1642, 1647,
6597, 1655, 14333, 252, 1648, -1096, -1096, 334, 1670, 1651,
-1096, -1096, -1096, -1096, -1096, -1096, -1096, -1096, 1633, -1096,
-1096, 1671, -1096, -1096, -1096, 972, 972, 972, -1096, -1096,
972, 1652, -1096, 1656, -1096, -1096, -1096, 6726, -1096, 870,
1594, 1371, 14462, 23, -1096, -1096, 266, -1096, -1096, -1096,
-1096, -1096, -1096, 1660, -1096, 5076, -1096, -1096, -1096, -1096,
1661, 1665, 1680, -1096, 636, 653, 656, 663, 806, 1667,
1654, 14499, -1096, -1096, 1351, -1096, 14884, -1096, -1096, 1668,
1670, 14970, 1594, 6855, 1606, 4191, -1096, -1096, 1673, 1674,
1657, -1096, -1096, 1675, 1638, 3332, -1096, -1096, -1096, 1676,
1664, 1662, -1096, -1096, -1096, 1679, 631, 1683, 1594, -1096,
-1096, 585, -1096, -1096, 1687, -1096, -1096, 1005, 1017, -1096,
-1096, -1096, 1646, -1096, -1096, -1096, -1096, -1096, -1096, -1096,
1672, -1096, -1096, -1096, -1096, -1096, 16060, 1688, 1670, 1697,
1694, -1096, 16189, -1096, 2952, -1096, -1096, -1096, -1096, 15056,
4058, 1351, -1096, 6984, -1096, -1096, -1096, -1096, -1096, 1709,
-1096, -1096, 1033, -1096, 1586, 973, -1096, 1700, 1061, -1096,
1859, 15142, 9068, -1096, 1703, 16218, 1691, -1096, 7113, 1643,
1702, -1096, 1946, 1707, -1096, -1096, 1104, 585, -1096, 707,
8072, 1788, 8109, 1711, 15228, 15314, 1727, 1351, -1096, 1712,
1715, 1704, 1706, -1096, 1710, -1096, 1724, 15400, -1096, -1096,
-1096, -1096, -1096, -1096, 15486, 1403, 15572, 1644, -1096, 370,
-1096, 15658, -1096, -1096
};
/* YYDEFACT[STATE-NUM] -- Default reduction number in state STATE-NUM.
Performed when YYTABLE does not specify something else to do. Zero
means the default is an error. */
static const yytype_int16 yydefact[] =
{
84, 186, 84, 680, 138, 189, 453, 0, 0, 330,
26, 234, 135, 136, 137, 176, 177, 184, 185, 187,
188, 0, 244, 268, 0, 0, 0, 650, 651, 652,
653, 654, 655, 656, 657, 658, 659, 660, 661, 662,
663, 0, 678, 679, 681, 0, 0, 115, 109, 205,
85, 6, 194, 0, 84, 713, 219, 728, 84, 6,
207, 84, 705, 647, 198, 182, 233, 726, 204, 0,
84, 714, 220, 199, 200, 331, 0, 201, 196, 183,
335, 8, 202, 206, 448, 452, 110, 203, 0, 0,
0, 450, 195, 116, 648, 108, 139, 725, 114, 181,
197, 84, 0, 0, 711, 0, 0, 218, 715, 727,
449, 111, 113, 112, 84, 271, 206, 682, 84, 84,
0, 0, 84, 27, 0, 0, 0, 6, 0, 20,
245, 246, 0, 0, 20, 84, 0, 0, 340, 84,
84, 0, 0, 84, 235, 0, 20, 84, 84, 680,
189, 72, 6, 84, 331, 7, 0, 0, 6, 84,
0, 0, 84, 84, 0, 82, 83, 193, 6, 0,
84, 0, 591, 212, 6, 84, 85, 101, 0, 231,
190, 191, 366, 351, 354, 0, 0, 208, 456, 255,
242, 696, 0, 9, 0, 84, 455, 0, 23, 0,
138, 708, 649, 645, 0, 691, 690, 20, 1, 0,
555, 454, 0, 84, 392, 0, 723, 722, 84, 24,
0, 698, 0, 699, 0, 6, 697, 6, 733, 23,
0, 0, 0, 768, 765, 26, 763, 755, 0, 752,
453, 578, 750, 751, 20, 749, 383, 20, 710, 748,
617, 753, 20, 20, 0, 0, 0, 0, 0, 577,
55, 20, 0, 20, 0, 633, 263, 278, 740, 557,
606, 51, 757, 747, 48, 345, 0, 582, 580, 395,
581, 192, 758, 397, 157, 42, 22, 746, 745, 756,
440, 736, 560, 342, 257, 583, 147, 693, 0, 761,
53, 0, 130, 20, 341, 52, 229, 159, 0, 157,
333, 433, 0, 0, 0, 0, 432, 0, 0, 14,
0, 265, 0, 0, 242, 0, 20, 591, 0, 594,
0, 89, 595, 179, 0, 214, 22, 602, 603, 605,
0, 773, 477, 491, 84, 84, 20, 492, 592, 37,
38, 39, 244, 0, 413, 192, 412, 415, 84, 411,
270, 406, 84, 427, 0, 414, 409, 410, 407, 408,
84, 102, 133, 145, 0, 0, 20, 20, 20, 0,
360, 118, 367, 349, 350, 6, 640, 84, 251, 253,
256, 0, 238, 238, 0, 84, 0, 585, 457, 646,
0, 20, 152, 0, 84, 683, 580, 725, 6, 689,
0, 684, 84, 33, 727, 0, 272, 0, 84, 266,
25, 710, 6, 84, 622, 13, 12, 0, 12, 0,
734, 710, 755, 693, 764, 6, 20, 0, 557, 0,
0, 6, 638, 127, 126, 0, 0, 128, 380, 381,
125, 384, 0, 124, 91, 543, 510, 511, 512, 519,
0, 517, 522, 523, 524, 520, 521, 540, 539, 526,
525, 527, 0, 504, 534, 535, 536, 507, 501, 528,
529, 516, 530, 531, 513, 514, 515, 518, 537, 538,
532, 533, 508, 500, 509, 541, 542, 170, 498, 0,
168, 394, 84, 618, 0, 138, 760, 759, 738, 739,
710, 710, 710, 710, 20, 56, 701, 0, 20, 741,
710, 775, 776, 20, 474, 20, 20, 20, 20, 20,
20, 20, 20, 215, 20, 84, 84, 193, 481, 0,
385, 20, 20, 57, 58, 59, 60, 61, 62, 63,
64, 65, 66, 67, 20, 20, 20, 20, 20, 20,
0, 20, 20, 20, 20, 20, 22, 22, 569, 570,
20, 20, 20, 20, 20, 20, 20, 565, 20, 566,
737, 267, 437, 431, 429, 434, 430, 0, 0, 15,
0, 0, 0, 0, 84, 641, 243, 0, 6, 6,
492, 494, 0, 0, 90, 78, 179, 180, 593, 0,
770, 769, 174, 771, 774, 174, 179, 550, 0, 553,
6, 161, 0, 710, 213, 84, 12, 0, 424, 143,
0, 6, 100, 144, 146, 101, 230, 134, 139, 232,
362, 363, 117, 0, 6, 280, 123, 0, 226, 2,
0, 2, 20, 165, 621, 163, 352, 250, 20, 0,
248, 710, 239, 0, 240, 241, 0, 438, 0, 586,
706, 458, 0, 20, 0, 686, 20, 644, 729, 730,
490, 486, 34, 712, 32, 587, 0, 35, 30, 589,
0, 391, 33, 12, 0, 700, 623, 692, 718, 710,
716, 710, 0, 84, 33, 766, 0, 318, 289, 290,
309, 295, 301, 302, 303, 299, 300, 308, 307, 305,
304, 306, 316, 317, 310, 311, 294, 312, 313, 291,
292, 293, 296, 297, 298, 314, 315, 319, 320, 20,
0, 579, 20, 636, 6, 0, 639, 0, 0, 0,
389, 505, 506, 0, 0, 20, 393, 762, 169, 171,
168, 0, 20, 624, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 223, 20, 475, 710, 43, 44,
49, 148, 258, 259, 264, 279, 346, 0, 0, 480,
482, 84, 84, 387, 0, 396, 0, 398, 54, 441,
442, 443, 755, 693, 600, 0, 558, 559, 282, 0,
0, 0, 0, 607, 608, 609, 610, 634, 635, 0,
0, 445, 601, 446, 236, 0, 676, 84, 447, 0,
0, 0, 0, 0, 77, 0, 86, 79, 0, 0,
73, 87, 70, 178, 343, 0, 0, 0, 174, 175,
0, 329, 325, 772, 328, 596, 179, 84, 548, 84,
702, 425, 13, 84, 119, 420, 423, 0, 238, 40,
28, 103, 142, 0, 0, 106, 84, 132, 361, 364,
20, 228, 3, 0, 225, 20, 0, 0, 0, 252,
249, 254, 237, 497, 0, 439, 84, 0, 709, 0,
162, 0, 6, 0, 0, 486, 20, 483, 20, 488,
36, 590, 588, 556, 490, 6, 546, 544, 589, 720,
0, 719, 717, 45, 221, 222, 217, 478, 0, 0,
131, 637, 0, 347, 0, 382, 129, 503, 502, 0,
167, 616, 0, 20, 20, 613, 0, 614, 619, 20,
611, 612, 0, 0, 0, 0, 575, 576, 0, 742,
744, 20, 0, 710, 471, 465, 192, 622, 20, 703,
0, 85, 20, 211, 670, 664, 672, 84, 0, 695,
20, 694, 562, 561, 568, 567, 563, 564, 84, 0,
0, 754, 767, 47, 46, 50, 88, 75, 78, 0,
0, 98, 71, 68, 0, 0, 0, 0, 402, 401,
6, 0, 173, 0, 324, 604, 549, 551, 493, 0,
120, 418, 417, 598, 12, 405, 41, 0, 29, 0,
0, 140, 6, 6, 227, 122, 121, 164, 166, 0,
0, 0, 151, 230, 687, 483, 485, 0, 31, 0,
6, 20, 20, 721, 287, 286, 20, 348, 499, 0,
0, 0, 84, 0, 643, 615, 620, 20, 20, 20,
20, 743, 224, 473, 0, 20, 470, 472, 467, 20,
466, 476, 464, 465, 622, 192, 0, 704, 390, 0,
755, 383, 20, 0, 0, 0, 84, 0, 0, 0,
20, 0, 20, 4, 0, 666, 375, 604, 284, 0,
665, 668, 669, 667, 671, 673, 150, 158, 0, 677,
444, 79, 74, 81, 80, 98, 98, 98, 95, 96,
99, 0, 344, 0, 327, 326, 403, 20, 400, 0,
0, 481, 20, 0, 599, 416, 119, 421, 104, 105,
141, 107, 365, 0, 428, 84, 84, 84, 547, 545,
0, 0, 16, 462, 0, 0, 0, 0, 471, 0,
0, 20, 463, 386, 0, 479, 84, 275, 277, 0,
274, 84, 0, 84, 0, 20, 372, 373, 0, 0,
0, 5, 19, 0, 0, 20, 285, 461, 76, 0,
0, 0, 97, 69, 642, 0, 6, 0, 338, 332,
84, 119, 597, 417, 598, 216, 584, 484, 489, 288,
724, 17, 626, 571, 572, 573, 574, 468, 469, 84,
0, 388, 377, 172, 379, 707, 710, 0, 153, 0,
0, 357, 710, 355, 84, 84, 356, 374, 376, 84,
20, 0, 359, 84, 92, 93, 94, 399, 404, 84,
339, 337, 554, 419, 0, 0, 627, 0, 495, 84,
6, 84, 20, 156, 0, 710, 0, 378, 84, 630,
0, 262, 710, 0, 625, 149, 496, 0, 368, 0,
20, 6, 20, 0, 84, 84, 6, 0, 154, 0,
0, 84, 84, 321, 0, 323, 0, 84, 631, 632,
261, 260, 336, 369, 84, 0, 84, 628, 370, 0,
371, 84, 322, 629
};
/* YYPGOTO[NTERM-NUM]. */
static const yytype_int16 yypgoto[] =
{
-1096, 1101, -1096, 968, -1096, -1096, -187, 1439, -1096, -1096,
-1096, -102, -1096, -1096, -1096, -1096, -675, -617, -561, -1096,
613, -170, -1096, 1228, -1096, 82, -1096, -1096, 762, -1096,
-1096, -1096, -1096, 1163, 764, -1096, -1096, 31, 1420, -1096,
-1096, -1096, -1096, 640, -1096, 141, -1096, 1136, 896, -1096,
-679, -639, 562, -167, 1028, -1096, 1031, -165, -1096, -1096,
1208, 1400, -593, -1096, -1096, -1096, 852, -1096, -811, -1096,
1572, -601, -1096, 403, -93, 296, 840, 898, -1096, -1096,
1023, -1096, -1096, -1096, -1096, 947, -313, -1096, -535, -1096,
-44, -4, 225, -1096, 1, -1096, -48, -1096, 1268, -147,
-1096, -365, 1084, -1096, 912, -1096, -1096, 1787, -1096, -133,
-1096, -1096, 1405, -1096, -267, -1096, 166, -1096, -1096, -1096,
1144, -1096, -1096, 1282, -1096, 1267, -1096, -132, 25, -1096,
-1096, 513, 711, 272, -325, -530, -1006, 841, -1096, -414,
-1096, -1096, -571, -130, -1096, -1096, -1096, -1096, -1096, -629,
-1096, -1096, -67, 497, 1275, -1096, 1434, 1666, -1096, 637,
-972, -682, -346, 1443, -1096, -1096, -1096, -1096, -1096, -1096,
738, -1096, -1096, 859, -1096, -1096, 1272, 130, 687, -1096,
-1096, -1096, 805, -1096, -1096, -1096, -295, -1096, 1833, 1440,
-1096, 1708, 1172, -1096, 719, -1096, -1096, -1096, -743, -1096,
-422, 0, 4, -1096, -1096, -1096, 757, -1096, -1096, 673,
-1096, -1096, -1096, -1096, -1096, -1096, 716, -1096, -404, -1096,
-142, -1096, -126, -1096, -1096, -83, -268, -1096, -1096, -304,
-1096, 726, -1096, -358, -1096, -1096, -611, -1096, -140, -314,
-1096, -1096, -1096, -1096, -1096, -952, 729, 909, -1096, -1096,
-1096, -1096, -178, -887, -1096, -1096, -1096, -1096, 1332, -1096,
-1095, -1096, 2232, 201, -514, -1096, -1096, -120, -1096, -186,
1189, -1096, -284, -107, -59, -1096, 992, 1445, 1340, -1096,
-761, -1096, -1096, -1096, -106, -1096, 425, -80, -1096, 1650,
-1096, 1336, -236, -1096, 953, -1096, 1600, -1096, -1096, -176,
-1096, -101, 1653, -1096, -1096, -92, 1259, -1096, -800, -1096
};
/* YYDEFGOTO[NTERM-NUM]. */
static const yytype_int16 yydefgoto[] =
{
0, 883, 1193, 164, 194, 45, 863, 46, 1222, 1194,
264, 199, 421, 125, 1029, 682, 683, 684, 353, 1027,
265, 47, 165, 266, 48, 267, 516, 556, 837, 1002,
1003, 49, 838, 839, 840, 841, 166, 176, 51, 842,
604, 605, 268, 1129, 1130, 1131, 371, 372, 631, 632,
52, 380, 1021, 641, 447, 448, 449, 269, 53, 373,
54, 55, 1009, 56, 634, 635, 270, 945, 793, 205,
201, 1237, 1274, 271, 405, 622, 899, 653, 654, 758,
759, 272, 497, 1106, 849, 850, 57, 607, 608, 58,
59, 538, 60, 61, 828, 974, 182, 170, 63, 64,
702, 65, 704, 273, 648, 649, 650, 66, 67, 68,
145, 662, 663, 69, 392, 393, 70, 71, 72, 388,
389, 390, 391, 274, 1283, 275, 73, 74, 154, 76,
77, 1178, 1179, 1108, 808, 809, 1109, 1243, 277, 739,
1276, 1306, 851, 78, 79, 852, 80, 81, 1208, 1209,
1261, 139, 278, 845, 279, 450, 183, 184, 185, 1252,
1245, 382, 644, 645, 383, 1111, 1112, 975, 451, 452,
539, 280, 281, 540, 82, 282, 283, 284, 1010, 1011,
1012, 362, 865, 866, 867, 363, 364, 195, 83, 140,
141, 142, 143, 896, 285, 84, 85, 86, 829, 87,
88, 286, 90, 91, 947, 1080, 1081, 287, 1077, 1078,
776, 777, 964, 92, 288, 790, 791, 685, 903, 687,
172, 1082, 93, 289, 498, 617, 761, 619, 620, 347,
94, 290, 291, 292, 669, 670, 688, 912, 173, 174,
1144, 1145, 293, 588, 339, 340, 294, 948, 763, 503,
504, 949, 696, 697, 295, 1266, 1267, 1113, 296, 453,
95, 950, 96, 298, 976, 977, 978, 98, 99, 118,
408, 409, 410, 100, 101, 299, 102, 223, 224, 300,
624, 1088, 103, 1114, 104, 105, 411, 106, 226, 227,
951, 107, 413, 108, 301, 757, 302, 303, 110, 304,
501, 111, 127, 128, 112, 113, 613, 614, 615, 305
};
/* YYTABLE[YYPACT[STATE-NUM]] -- What to do in state STATE-NUM. If
positive, shift that token. If negative, reduce the rule whose
number is the opposite. If YYTABLE_NINF, syntax error. */
static const yytype_int16 yytable[] =
{
89, 62, 89, 169, 384, 354, 152, 167, 121, 686,
203, 884, 500, 225, 181, 381, 327, 916, 328, 230,
606, 655, 132, 600, 740, 75, 133, 75, 356, 926,
642, 50, 327, 50, 348, 810, 221, 871, 427, 1014,
429, 308, 357, 359, 854, 361, 819, 168, 820, 365,
89, 171, 643, 320, 178, 366, 434, 596, 89, 186,
222, 89, 499, 1141, 1023, 933, 703, 628, 367, 870,
904, 843, 910, 1170, 368, 136, 375, 618, 911, 438,
1085, 855, 454, 369, 990, -11, 75, 508, 509, 1006,
1246, 235, 50, -15, 237, 610, 522, 335, 6, 689,
1246, 89, 197, 423, 610, 432, 119, 198, 1007, 137,
229, 505, 236, 973, 89, 212, 197, 672, 89, 132,
341, 229, -21, 220, 132, 232, 75, 666, 133, -138,
376, 577, 50, 377, 579, 89, 310, -7, 580, 75,
406, -7, 248, 75, 602, 50, 1048, 89, 505, 50,
21, 378, 186, 248, 379, 1246, 138, -21, 186, 1176,
75, 1105, 1212, 612, 336, 822, 50, 21, 186, 344,
129, 507, 75, 424, 186, 830, 679, 132, 50, 532,
802, 374, 611, 344, 560, -7, 760, 523, 334, -696,
132, 611, 354, -7, 394, 89, 397, 1173, 423, 334,
360, 97, 1140, 97, 21, 117, -138, 379, 1087, -580,
798, -580, 122, 89, 417, 356, 153, 153, 89, 123,
75, 1162, 524, 1253, 153, 1020, 50, 115, 248, 357,
359, -7, 361, 598, 560, 694, 365, 537, 75, 698,
577, 700, 366, 75, 50, 1118, 846, 579, 89, 50,
1057, 97, 97, 621, 507, 367, 1191, 794, 532, 97,
-138, 368, 97, 1192, 309, 847, -696, 787, 967, -119,
369, 398, 124, -138, 334, 134, 309, 805, 1278, -580,
1006, 89, 155, 1182, 1300, 441, 187, -138, 686, 376,
-119, 442, 376, 606, 911, 377, 144, 980, 973, 1007,
686, 910, 97, 606, 904, 934, 998, 911, 1026, 848,
378, 537, 225, 378, -18, 97, 610, 225, 132, 97,
-696, 1015, 587, 1133, 132, 132, 206, 209, 394, 597,
861, -696, 1004, -696, 406, 221, 97, 309, 703, 1304,
221, 358, 515, 214, 999, 521, 1214, -696, 97, 387,
4, 626, 445, 438, 6, 89, 525, 526, 774, 222,
868, 216, 337, 1231, 222, 146, 379, 905, 210, 135,
1005, 155, 321, 1004, 441, 689, 157, 692, 918, 336,
442, 846, 907, 909, 804, 186, 890, 360, 338, 443,
689, 161, 147, 217, 444, 4, 97, 806, 807, 6,
847, 276, -174, 611, 178, 825, 21, 961, 407, 15,
16, 1322, 89, 186, 97, 148, 1143, 973, 132, 97,
-552, 89, 220, 132, 4, 892, 175, 220, 6, 4,
225, 89, 188, 6, 1148, 847, 1149, -174, 189, 911,
1279, 445, -552, 419, 848, 407, 760, 153, -270, 97,
962, 21, 854, 221, 191, 354, 309, 532, 640, 640,
640, 193, 420, 1115, 811, 812, 237, 200, 130, 131,
6, 939, 241, 157, 406, 157, 309, 222, 356, 848,
21, 533, 97, 381, 652, 21, 1312, 438, 161, 157,
161, 337, 357, 359, 406, 361, 196, 973, 246, 365,
186, 591, 973, -604, 161, 366, 919, 1020, 15, 16,
89, 89, 89, 89, 248, 1056, 439, 338, 367, 207,
89, 153, 21, 155, 368, 592, 441, 407, 358, 1037,
655, 309, 442, 369, 1033, 532, 132, 307, 208, 1033,
220, 965, 211, 606, 4, 1169, 934, 4, 6, 307,
4, 6, -84, 1235, 6, 576, 97, 7, 250, 741,
334, 349, 350, 351, 159, 889, 10, 578, 11, 259,
973, 532, 1020, 378, 928, 385, 1079, 930, 864, 1260,
381, 431, 1184, 157, 4, 378, 188, 153, 6, -426,
162, 905, 973, 445, 89, 927, 595, 153, 161, 1045,
21, 1050, 407, 21, 918, 157, 21, 1205, 376, 406,
307, 163, 352, 97, 785, 973, 973, 532, 23, 75,
161, 1310, 97, 89, 233, 50, 186, 132, 973, 378,
873, 394, 97, 306, 874, 973, 155, 973, 640, 532,
21, 956, 973, 1273, 917, 623, 640, 640, 1298, 311,
360, 1083, 1280, 4, 564, -119, 532, 6, 640, 532,
640, 89, 1232, 1223, 576, 136, 532, 1234, 565, 440,
157, 309, 315, 41, 132, 376, -119, 1293, 901, 532,
1224, 186, 378, 1225, 345, 161, 1022, 370, 406, 186,
1226, 309, 186, 566, -773, 567, 378, 381, 346, 89,
1064, 89, 610, 89, 186, 1158, 1159, 316, 706, 21,
532, 97, 97, 97, 97, 407, 4, 529, 530, 407,
6, 97, 593, 578, 869, 349, 350, 351, 1075, 307,
319, 568, 569, 157, 1299, 1277, 1050, 155, -773, 157,
425, 378, 407, 1008, 984, 985, 378, 6, 161, 307,
318, 599, 379, 155, 161, -12, 425, 1288, 594, 325,
186, 155, 407, 4, 4, 381, 4, 6, 6, 1083,
6, -12, 21, 327, 1017, 328, 327, 89, 348, 326,
1308, 1309, 158, 159, 159, 330, 768, 1137, 309, 611,
439, 358, 89, 1317, 1031, 97, 1072, 1076, 155, 21,
1318, 425, 1320, 900, 307, 378, 309, 1323, 331, 162,
162, 336, 336, 621, 155, 621, -12, 862, 342, 21,
21, 6, 21, 971, 97, 155, 796, 89, 441, -139,
163, 163, 1075, -422, 442, 158, 155, 159, 381, 441,
583, 157, 385, 443, 1138, 442, 157, 873, 444, 157,
378, 874, 75, 1053, 443, 387, 161, 640, 50, 444,
331, 161, 97, 162, 161, -6, 1142, 584, 157, 153,
4, 157, 386, 21, 6, 1086, 4, 407, 1008, 345,
6, 157, 6, 161, 163, 309, 161, 336, 336, 574,
575, 1160, 686, 346, 4, 445, 161, 438, 6, 395,
97, 157, 97, 4, 97, 186, 445, 6, 327, 396,
348, -6, 681, -589, 159, 186, 161, -487, 186, 398,
336, 681, 537, 159, 439, 1177, 21, 152, 1107, 130,
131, -487, 21, 1177, 21, 764, 765, 766, 767, 769,
162, 191, 1059, 771, 307, 772, 1060, 197, 402, 162,
21, 155, 198, 109, 4, 109, 407, 230, 6, 21,
157, 163, 640, 89, 307, 186, 89, 640, 1213, 401,
163, 89, 915, -589, 159, 161, 1146, 89, 97, 381,
1161, 4, 918, 586, 157, 6, -486, -138, 89, -138,
1154, 157, 157, 97, 554, -138, 555, 228, 1125, 161,
162, 1076, 229, 109, 109, 157, 161, 161, 971, 1190,
21, 109, 1126, 75, 109, 1241, 1127, -696, 1128, 50,
161, 163, 15, 16, 186, 1241, 345, 873, 97, 873,
157, 874, 155, 874, 946, 4, 309, 21, 309, 6,
906, 537, 157, 4, 381, 161, 1296, 6, 860, 1211,
186, -353, 345, 158, 109, 159, 155, 161, 157, 744,
4, 307, 1117, 159, 6, 4, 908, 109, 192, 6,
215, 109, 216, 161, 900, 1079, 207, 157, 1230, 307,
1241, 162, 202, 186, 155, 89, 157, 744, 109, 162,
4, 21, 161, 415, 6, 234, 89, 418, 309, 21,
109, 161, 163, -84, 217, 416, 197, 157, 7, 398,
163, 229, 349, 350, 351, 123, 21, 10, 197, 11,
381, 21, 161, 229, 921, 1177, 922, 971, 436, 157,
218, 197, 153, 640, 640, 502, 198, 153, 153, 873,
-426, 562, 563, 874, 161, 510, 21, 680, 109, 661,
4, -243, 570, 571, 6, 89, 1216, 640, 307, 1284,
414, 572, 573, 352, 97, 511, 109, 97, 681, 23,
159, 109, 97, 407, 15, 16, 89, 512, 97, 4,
75, 89, -486, 6, 513, 197, 50, 817, 818, 97,
229, 514, 1270, 426, 520, 428, 162, 414, 1107, 159,
197, 109, 1047, 228, 1049, 1030, 21, 971, 229, 557,
558, 559, 971, 527, 446, 1061, 971, 163, 528, 640,
531, 946, 1287, 534, 41, 162, 971, 541, 570, 571,
542, 1291, 309, 561, 109, 21, 89, 572, 573, 349,
350, 351, 89, 1303, 778, 779, 163, -139, 1311, 89,
4, 153, 570, 571, 6, 215, 4, 216, 782, 783,
6, 572, 573, 407, 581, 132, 1199, 1200, 1201, 220,
186, 89, 309, 157, 582, 89, 120, 585, 589, 414,
971, 971, 89, 799, 800, 801, 97, 601, 161, 217,
120, 186, 117, 603, 89, 89, 186, 97, 609, 623,
629, 309, 971, 625, 633, 636, 21, 89, 109, 307,
155, 307, 21, 4, 89, 658, 89, 6, 659, 660,
661, 89, 120, 668, 665, 971, 971, 120, 136, 671,
673, 158, 676, 159, 439, 677, 690, 699, 971, 1164,
1165, 1166, 1167, 691, 379, 971, 425, 971, 701, 671,
742, 153, 971, 746, 414, 747, 97, 751, 748, 162,
749, 153, 4, 750, 1180, 109, 6, 752, 753, 21,
756, 307, 1180, 754, 109, 755, 675, 97, 762, 157,
163, 789, 97, 229, 109, 770, 407, 120, 1074, 775,
693, 821, 120, 120, 161, 792, 407, 823, 680, 824,
826, 4, 153, 705, 827, 6, 833, 834, 153, 743,
836, 844, 745, 856, 857, 404, 153, 876, 21, 681,
120, 159, 813, 814, 815, 816, 120, 370, 859, 671,
880, 878, 120, -486, 881, 882, 120, 97, 885, 888,
893, 153, 120, 97, 887, 120, 894, 162, 137, 897,
97, 407, 404, 898, 920, 1238, 404, 21, 120, 929,
913, 923, 937, 109, 109, 109, 109, 414, 163, 932,
-84, 414, 97, 109, 177, 7, 97, 938, 180, 349,
350, 351, 941, 97, 10, 952, 11, 440, 953, 958,
190, 954, 957, 959, 414, 97, 97, 955, 960, 966,
968, 979, -696, 671, 982, 307, 986, -426, 97, 983,
987, 981, -445, 988, 414, 97, 1238, 97, 991, 506,
989, 992, 97, 993, 995, 1238, 994, 996, -77, 997,
352, 1000, 1001, 1016, 404, 1024, 23, 847, 1025, 219,
1039, 1028, 231, 412, 1289, 307, 505, 109, 155, 155,
1238, 4, 862, 647, 914, 6, 6, 4, 1035, 313,
314, 6, 1036, 317, 1180, 1041, 831, 832, 322, 158,
158, 159, 159, 324, 307, 915, 109, 159, 1042, 329,
412, 555, 332, 333, 412, 1043, 120, 1046, 858, -486,
343, 41, 120, 120, 1051, 355, 1052, 162, 162, 875,
-6, 1054, 506, 162, 1058, -6, 1067, 21, 21, 404,
1068, 1069, 879, 21, 109, 1070, 1089, 1071, 163, 163,
404, 4, 1073, 1116, 163, 6, 215, 1119, 216, 414,
1124, 4, 1120, 1123, 914, 6, 215, 4, 216, 1132,
1134, 6, 1135, 1139, 191, 887, -6, 120, 1155, 1163,
1156, -6, 109, 120, 109, 915, 109, 159, 1157, 1168,
217, 1171, 412, 1189, 1175, 1183, 1186, 1185, 1181, -486,
217, 1187, 120, 532, 1195, 1196, 1198, 21, 1197, 1203,
1204, 120, 1207, 162, 1215, -6, 120, 21, 1219, 1220,
1221, 120, 1233, 21, 1228, 1229, 1239, 1247, 1248, 1249,
1251, 1250, 122, 1254, 163, 1255, 1257, 1256, 414, 1259,
1264, 1265, 931, 1269, 1281, 1271, 446, 446, 404, 404,
404, 404, 404, 1272, 1285, 1212, 404, 1290, 404, 1295,
109, -6, 914, 1292, 1297, 4, 1313, 412, 1307, 6,
680, 446, 1314, 4, -84, 109, -84, 6, 412, 404,
1315, 1316, 886, 915, -33, 159, 1294, 1321, 590, 784,
1121, 681, 1122, 159, 616, 219, 835, -486, 120, 404,
1202, 877, 1032, 1263, 637, -486, 403, 936, 627, 935,
109, 162, 355, 940, 1063, 155, 1038, 925, 4, 162,
630, 21, 6, 155, 1034, 1013, 4, 126, 664, 21,
6, 786, 163, 891, 120, 1305, 915, 657, 159, 780,
163, 1188, 1319, 1110, 158, 219, 1301, 795, 323, 656,
-486, 651, 1244, 1174, 674, 1084, 1206, 797, -604, 1147,
155, 404, 678, 4, 162, 116, 667, 6, 219, 895,
1172, 1227, 1302, 219, 21, 312, 412, 412, 412, 412,
412, 158, 21, 159, 412, 163, 412, 1210, 1066, 155,
781, 519, 4, 163, 155, 902, 6, 4, 695, 404,
1044, 6, 422, 853, 0, 0, 788, 412, 0, 162,
158, 0, 159, 0, 404, 158, 0, 159, 435, 21,
0, 0, 0, 0, 120, 120, 0, 412, 872, 0,
163, 0, 745, 0, 0, 0, 0, 404, 162, 404,
0, 0, 0, 162, 0, 0, 109, 0, 21, 109,
0, 0, 219, 21, 109, 414, 0, 0, 0, 163,
109, 0, 0, 0, 163, 0, 0, 0, 0, 0,
0, 109, 120, 0, 0, 0, 0, 0, 0, 120,
0, 0, 0, 0, 4, 219, 219, 120, 6, 412,
120, 8, 0, 404, 0, 0, 0, 0, 0, 0,
0, 157, 120, 0, 0, 0, 0, 0, 1136, 0,
0, 0, 0, 0, 0, 404, 161, 0, 0, 0,
0, 0, 0, 12, 13, 14, 0, 412, 0, 0,
1151, 1152, 0, 0, 15, 16, 0, 0, 0, 543,
21, 0, 412, 0, 124, 414, 544, 545, 546, 547,
548, 549, 550, 551, 552, 553, 0, 0, 120, 0,
0, 0, 0, 0, 0, 412, 0, 412, 109, 554,
0, 555, 0, 0, 0, 355, 0, 0, 0, 109,
0, 0, 0, 0, 0, 0, 0, 0, 0, 446,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 120,
120, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 412, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 109, 0,
0, 0, 0, 412, 0, 872, 0, 0, 0, 0,
0, 0, 0, 924, 0, 0, 0, 0, 0, 109,
0, 0, 0, 0, 109, 0, 0, 0, 414, 0,
0, 0, 0, 0, 0, 0, 0, 0, 414, 0,
0, 0, 0, 0, 0, 120, 120, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 404, 0, 120, 1258, 0, 0, 0, 0, 0,
0, 0, 0, 120, 0, 0, 120, 0, 120, 109,
0, 0, 0, 0, 0, 109, 0, 0, 0, 0,
0, 0, 109, 414, 0, 0, 0, 0, 0, 0,
120, 969, 972, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 109, 0, 0, 0, 109, 0,
0, 0, 0, 120, 0, 109, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 109, 109, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
109, 0, 0, 0, 0, 0, 0, 109, 0, 109,
404, 0, 0, 0, 109, 0, 0, 219, 0, 1018,
0, 0, 0, 1019, 0, 0, 179, 0, 0, 0,
0, 0, 120, 0, 0, 872, 630, 872, 0, 412,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1040, 0, 120, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 155, 0, 149, 4, 150, 0, 0, 6,
0, 0, 8, 9, 0, 0, 0, 0, 0, 156,
0, 120, 157, 158, 0, 159, 160, 0, 0, 0,
0, 297, 0, 0, 0, 0, 297, 161, 0, 0,
0, 0, 0, 0, 12, 13, 14, 0, 297, 0,
0, 162, 0, -6, 0, 15, 16, 17, 18, 19,
20, 21, 0, 0, 0, 22, 297, 972, 412, 0,
0, 23, 163, 0, 0, 0, 0, 872, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -6,
399, 400, -710, 0, 0, 0, 0, 0, 0, 297,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 42, 43, 44,
0, 0, 430, 0, 433, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4, 0, 297, 0, 6, 297,
0, 8, 219, 0, 297, 297, 0, 0, 0, 0,
404, 0, 297, 297, 0, 297, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 12, 13, 14, 972, 0, 0, 0,
0, 0, 0, 0, 15, 16, 0, 0, 0, 0,
21, 0, 0, 120, 124, 297, 0, 0, 120, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 297, 120,
0, 0, 0, 0, 120, 0, 0, 0, 0, 0,
0, -84, 0, 0, 0, 0, 1217, 1218, 297, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 972, 0, 0, 0,
0, 972, 0, 1236, 0, 1242, 638, 639, 297, 297,
297, 297, 0, 0, 0, 1242, 0, 0, 412, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1262, 0, 0, 297, 0, 0, 179, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1268,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1236, 1275, 0, 0, 297, 972,
1242, 0, 0, 1236, 0, 0, 0, 0, 0, 1282,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1286,
0, 972, 0, 0, 0, 0, 0, 0, 1236, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 972, 972, 0, 0, 0, 0,
0, 329, 332, 0, 0, 0, 0, 972, 0, 0,
0, 0, 0, 0, 972, 0, 972, 0, 0, 0,
0, 972, 0, 0, 0, 0, 297, 0, 0, 0,
297, 0, 0, 0, 0, 297, 0, 297, 297, 297,
297, 297, 297, 297, 297, 0, 297, 0, 0, 0,
0, 0, 0, 297, 297, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 297, 297, 297, 297,
297, 297, 803, 297, 297, 297, 297, 297, 0, 0,
0, 0, 297, 297, 297, 297, 297, 297, 297, 0,
297, 1, 0, 0, 149, 1090, 150, 238, 239, 240,
0, 241, 8, 9, 0, 0, 0, 242, 243, 156,
0, -283, 157, 244, 0, 245, 160, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1091, 0, 0,
247, 792, 0, 0, 12, 13, 14, 0, 0, 0,
0, 0, 0, 248, 1092, 15, 16, 17, 18, 19,
20, 21, 0, 0, 0, 22, 0, 0, 0, 0,
0, 23, 249, 0, 297, 0, 0, 0, 0, 0,
297, 0, 1093, 1094, 0, 0, 0, 1095, 1096, 1097,
1098, 1099, 1100, 1101, 1102, 297, 0, 250, 297, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 1103,
0, 1104, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 42, 43, 44,
0, 260, 261, 262, 0, 263, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -84, 0, 0, -84,
237, -84, 238, 239, 240, 0, 241, 8, -84, 0,
0, 297, 242, 243, 297, 0, -155, -84, 244, 0,
245, 0, 0, 0, 0, 0, 0, 297, 0, 4,
0, 0, 246, 6, 297, 247, 8, 0, 0, -84,
-84, -84, 0, 0, 0, 0, 0, 297, 248, 0,
-84, -84, -84, -84, -84, -84, 21, 0, -20, 0,
-84, 0, 0, 0, 0, 0, -84, 249, 12, 13,
14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
16, 0, 0, 297, 297, 21, 0, 0, 0, 22,
0, 0, 250, -20, 251, 252, 253, -84, 254, 255,
256, 257, 258, 259, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, -84, -84, -84, 0, 260, 261, 262, 0,
263, 0, 0, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 297, 0, 0, 0, 0, 297, 0, 297,
297, 0, 0, 0, 0, 0, 437, 0, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 297, 0,
297, 242, 243, 0, 0, 0, 0, 244, -552, 245,
0, 0, 297, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 0, 247, 0, 0, 0, 12, 13,
14, 0, 0, 0, 0, 297, 297, 248, 0, 15,
16, 297, 0, 0, 0, 21, 0, -20, 0, 124,
0, 0, 0, 297, 0, 0, 249, 0, 0, 0,
297, 0, 0, 0, 297, 0, 0, 0, 0, 0,
0, 0, 297, 0, 0, 0, 0, 0, 0, 0,
0, 250, -20, 251, 252, 253, -84, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 260, 261, 262, 0, 263,
0, 0, 1150, 0, 0, 0, 0, 0, 0, 0,
0, 1153, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 297, 297, 0, 0, 0, 297, 0,
0, 0, 0, 0, 297, 0, 0, 0, 0, 297,
297, 297, 297, 0, 0, 0, 0, 297, 0, 0,
0, 297, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 297, 0, 0, 0, 0, 0,
0, 0, 297, 0, 297, 0, 1, 0, 0, 149,
237, 150, 238, 239, 240, 0, 241, 8, 9, 0,
0, 0, 242, 243, 1240, 0, -283, -84, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 297,
0, 0, 246, 0, 297, 247, 0, 0, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 248, 0,
15, 16, 17, 18, 19, 20, 21, 0, -20, 0,
22, 0, 0, 297, 0, 0, 23, 249, 0, 0,
0, 0, 0, 0, 0, 297, 0, 297, 0, 0,
0, 0, 0, 0, 0, 0, 0, 297, 0, 0,
0, 0, 250, -20, 251, 252, 253, -84, 254, 255,
256, 257, 258, 259, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 42, 43, 44, 0, 260, 261, 262, 0,
263, 0, 0, 0, 0, 0, 297, 0, 0, 0,
0, 0, 297, 0, 0, 297, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 297, 0, 0, 0, 0, 0,
297, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 297, 0, 297, -139, -139, -139, -139, -139,
-139, -139, -139, 0, -139, -139, 0, -139, -139, 0,
0, 0, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, 0, -139, -139, 0, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, 0,
-139, -139, -139, -139, -139, -139, -139, -139, 0, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, 0, -139, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-139, -139, -139, 0, -139, -139, -139, -139, 0, 0,
0, 0, 0, 0, 0, 0, 0, -139, -139, -139,
-139, -139, -139, -139, -139, -139, -139, -139, -139, -139,
-139, -139, -139, -139, -139, 0, 0, 0, 0, -139,
-138, -138, -138, -138, -138, -138, -138, -138, 0, -138,
-138, 0, -138, -138, 0, 0, 0, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
0, -138, -138, 0, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, 0, -138, -138, -138, -138, -138,
-138, -138, -138, 0, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, 0, -138, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -138, -138, -138, 0, -138,
-138, -138, -138, 0, 0, 0, 0, 0, 0, 0,
0, 0, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
0, 0, 0, 0, -138, -138, -138, -138, -138, -138,
-138, -138, -138, 0, -138, -138, 0, -138, -138, 0,
0, 0, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, 0, -138, -138, 0, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, 0,
-138, -138, -138, -138, -138, -138, -138, -138, 0, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, 0, -138, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-138, -138, -138, 0, -138, -138, -138, -138, 0, 0,
0, 0, 0, 0, 0, 0, 0, -138, -138, -138,
-138, -138, -138, -138, -138, -138, -138, -138, -138, -138,
-138, -138, -138, -138, -138, 0, 0, 0, 0, -138,
-393, -393, -393, -393, -393, -393, -393, -393, 0, -393,
-393, 0, -393, -393, 0, 0, 0, -393, -393, -393,
-393, -393, -393, -393, -393, -393, -393, -393, -393, -393,
-393, -393, -393, -393, -393, -393, -393, -393, -393, -393,
0, -393, -393, 0, -393, -393, -393, -393, -393, -393,
-393, -393, -393, -393, 0, -393, -393, -393, -393, -393,
-393, -393, -393, 0, -393, -393, -393, -393, -393, -393,
-393, -393, -393, -393, -393, -393, -393, -393, -393, -393,
-393, -393, 0, -393, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -393, -393, -393, 0, -393,
-393, -393, -393, 0, 0, 0, 0, 0, 0, 0,
0, 0, -393, -393, -393, -393, -393, -393, -393, -393,
-393, -393, -393, -393, -393, -393, -393, -393, -393, -393,
0, 0, 1, 0, -393, 149, 237, 150, 238, 239,
240, 0, 241, 8, 9, 0, 0, 0, 242, 243,
1240, 0, -283, -84, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 0, 0, 12, 13, 14, 0, 0,
0, 0, 0, 0, 248, 0, 15, 16, 17, 18,
19, 20, 21, 0, -20, 0, 22, 0, 0, 0,
0, 0, 23, 249, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 250, -20,
251, 252, 253, -84, 254, 255, 256, 257, 258, 259,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 42, 43,
44, 0, 260, 261, 262, 1, 263, 0, 149, 237,
150, 238, 239, 240, 0, 241, 8, 9, 0, 0,
0, 242, 243, 1240, 0, -283, -84, 244, 0, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 0, 247, 0, 0, 0, 12, 13,
14, 0, 0, 0, 0, 0, 0, 248, 0, 15,
16, 17, 18, 19, 20, 21, 0, 0, 0, 22,
0, 0, 0, 0, 0, 23, 249, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 250, 0, 251, 252, 253, -84, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 42, 43, 44, 0, 260, 261, 262, 437, 263,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 0, 242, 243, 0, 0, 0, 0, 244,
0, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 246, 0, 0, 247, 0, 0, 0,
12, 13, 14, 0, 0, 0, 0, 0, 0, 248,
0, 15, 16, 0, 0, 0, 0, 21, 0, 0,
0, 124, 0, 0, 0, 0, 0, 0, 249, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
437, 263, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 0, 242, 243, 0, 0, 0,
0, 244, 0, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 246, 0, 0, 247, 0,
0, 0, 12, 13, 14, 0, 0, 0, 0, 0,
0, 248, 0, 15, 16, 0, 0, 0, 0, 21,
0, 0, 0, 124, 0, 0, 0, 0, 0, 0,
249, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 260,
261, 262, 437, 263, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 707, 0, 0, 242, 243, 0,
0, 0, 0, 244, 0, 245, 0, 0, 0, 0,
0, 708, 709, 0, 710, 0, 0, 246, 1055, 711,
247, 712, 713, 714, 715, 716, 717, 718, 719, 720,
721, 0, 0, 248, 0, 0, 0, 0, 0, 0,
0, 21, 0, 0, 0, 722, 723, 0, 0, 0,
0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
724, 725, 726, 727, 728, 0, 729, 730, 731, 732,
733, 734, 735, 736, 737, 738, 0, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 260, 261, 262, -206, 263, 0, 0, -206, -206,
-206, -206, -206, -206, 0, 0, -206, -206, 0, -206,
-206, -206, -206, -206, 0, 0, -206, 0, -206, -206,
-206, 0, -206, -206, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, -206, 0, -206, 0, 0, -206,
0, -206, -206, -206, 0, 0, 0, 0, -206, 0,
-206, 0, -206, -206, -206, -206, -206, -206, -206, 0,
0, 0, -206, 0, 0, 0, 0, 0, -206, -206,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, -206, -210, 0, 0, 0, 1, 0, 2, 3,
4, 5, -206, -206, 6, 7, -206, 8, 9, -206,
0, 0, 0, 0, 10, 0, 11, 0, 0, -206,
-206, -206, -206, -206, -206, -206, -206, -206, -206, -206,
-206, -206, -206, -206, -206, -206, -206, -210, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -210,
-209, 0, 0, 0, 1, 0, 2, 3, 4, 5,
25, 26, 6, 7, 0, 8, 9, -84, 0, 0,
0, 0, 10, 0, 11, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 0, 0, 12, 13, 14,
0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
17, 18, 19, 20, 21, 0, 0, 0, 22, 0,
0, 0, 0, 0, 23, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 24, -209, 0,
0, 0, 1, 0, 2, 3, 4, 5, 25, 26,
6, 7, 0, 8, 9, -84, 0, 0, 0, 0,
10, 0, 11, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 0, 0, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -209, -209, 0, 0, 0,
1, 0, 2, 3, 4, 5, 25, 26, 6, 7,
0, 8, 9, -84, 0, 0, 0, 0, 10, 0,
11, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 0, 0, 12, 13, 14, 0, 0, 0, 0,
0, 0, 0, 0, 15, 16, 17, 18, 19, 20,
21, 0, 0, 0, 22, 0, 0, 0, 0, 0,
23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 25, 26, 0, 0, 0, 0,
0, -84, 0, 0, 0, 0, 0, 0, 0, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 41, 42, 43, 44, 517,
0, 0, 237, 0, 238, 239, 240, 0, 241, 8,
0, 707, 0, 0, 242, 243, 0, 0, 0, 0,
518, 0, 245, 0, 0, 0, 0, 0, 708, 709,
0, 710, 0, 0, 246, 0, 711, 247, 712, 713,
714, 715, 716, 717, 718, 719, 720, 721, 0, 0,
248, 0, 0, 0, 0, 0, 0, 0, 21, 0,
0, 0, 722, 723, 0, 0, 0, 0, 0, 249,
0, 0, 0, 0, 0, 0, 0, 724, 725, 726,
727, 728, 0, 729, 730, 731, 732, 733, 734, 735,
736, 737, 738, 0, 250, 0, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 455, 0, 0, 0, 0, 4, 261,
262, 456, 6, 0, 0, 8, 0, 0, 0, 0,
457, 458, 0, 459, 0, 0, 460, 0, 461, 0,
462, 463, 464, 465, 466, 467, 468, 469, 470, 471,
472, 0, 0, 473, 0, 0, 0, 12, 13, 14,
0, 474, 0, 0, 475, 476, 0, 0, 15, 16,
0, 0, 0, 0, 21, 477, 478, 0, 124, 479,
480, 481, 482, 483, 0, 484, 485, 486, 487, 488,
489, 490, 491, 0, 492, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 493, 494, 495, 496, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 237, 117, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 0,
0, 12, 13, 14, 0, 0, 0, 0, 0, 0,
248, 0, 15, 16, 0, 0, 0, 0, 21, 0,
0, 0, 124, 0, 0, 0, 0, 0, 0, 249,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 250, 0, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 260, 261,
262, 237, 263, 238, 239, 240, 0, 241, 8, 0,
0, 0, 0, 242, 243, 0, 0, 0, 0, 244,
0, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 246, 0, 0, 247, 378, 646, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 0, 21, 0, 0,
647, 0, 0, 0, 0, 0, 0, 0, 249, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
237, 263, 238, 239, 240, 0, 241, 8, 0, 707,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 708, 709, 0, 710,
0, 0, 246, 0, 711, 247, 712, 713, 714, 715,
716, 717, 718, 719, 720, 721, 0, 0, 248, 0,
0, 0, 0, 0, 0, 0, 21, 0, -20, 0,
722, 723, 0, 0, 0, 0, 0, 249, 0, 0,
0, 0, 0, 0, 0, 724, 725, 726, 727, 728,
0, 729, 730, 731, 732, 733, 734, 735, 736, 737,
738, 0, 250, -20, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 260, 261, 262, 237,
263, 238, 239, 240, 0, 241, 8, 0, 0, 0,
0, 242, 243, 0, 0, 0, 0, 244, -281, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 0, 247, 378, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 248, 242, 243,
0, 0, 0, 0, 244, 21, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 249, 0, 246, -281,
0, 247, 378, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 248, 0, 0, 0, 0, 0,
0, 250, 21, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 249, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 260, 261, 262, 250, 263,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 260, 261, 262, 237, 263, 238, 239, 240,
0, 241, 8, 0, 0, 0, 0, 242, 243, 0,
0, 0, 0, 244, -281, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 246, 0, 0,
247, 378, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
0, 21, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 260, 261, 262, 237, 263, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, -281, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
378, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 378, -3, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
260, 261, 262, 250, 263, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
237, 263, 238, 239, 240, 0, 241, 942, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 943, 1065, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 248, 0,
0, 0, 0, 0, 0, 0, 21, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 944, 0, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 260, 261, 262, 237,
263, 238, 239, 240, 0, 241, 8, 0, 0, 0,
0, 242, 243, 0, 0, 0, 0, 244, -281, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 0, 247, 378, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 248, 242, 243,
0, 0, -276, 0, 244, 21, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 249, 0, 246, 0,
0, 247, 378, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 248, 0, 0, 0, 0, 0,
0, 250, 21, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 249, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 260, 261, 262, 250, 263,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 260, 261, 262, 237, 263, 238, 239, 240,
0, 241, 8, 0, 0, 0, 0, 242, 243, 0,
0, -276, 0, 244, 0, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 246, 0, 0,
247, 378, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
0, 21, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 249, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 260, 261, 262, 237, 263, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, -281, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
378, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 248, 0, 0, 0, 0, 0, 0, 0,
21, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 250, 0, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 0, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
260, 261, 262, 237, 263, 238, 239, 240, 0, 241,
8, 0, 0, 0, 0, 242, 243, 0, 0, 0,
0, 244, 0, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 246, 0, 0, 247, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 0, 21,
0, -20, 0, 0, 0, 0, 0, 0, 0, 0,
249, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 250, -20, 251, 252, 253,
-84, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 260,
261, 262, 237, 263, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
248, 0, 0, 0, 0, 0, 0, 0, 21, 0,
-20, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 250, -20, 251, 252, 253, -84,
254, 255, 256, 257, 258, 259, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 260, 261,
262, 237, 263, 238, 239, 240, 0, 241, 8, 0,
0, 0, 0, 242, 243, 0, 0, 0, 0, 244,
0, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 0, 21, 0, -20,
0, 0, 0, 0, 0, 0, 0, 0, 249, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 250, -20, 251, 252, 253, -84, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
237, 263, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 378, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 378, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 260, 261, 262, 250,
263, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 260, 261, 262, 237, 263, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 378, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 244, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, 378,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 260, 261, 262, 250, 263, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 260,
261, 262, 237, 263, 238, 239, 240, 0, 241, 942,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 943, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 378, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 944, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 260, 261,
262, 250, 263, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 260, 261, 262, 237, 263,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 378, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 378, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 260, 261, 262, 250, 263, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 260, 261, 262, 237, 263, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
378, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, -283, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
260, 261, 262, 250, 263, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
237, 263, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, -283,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 378, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 260, 261, 262, 250,
263, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 260, 261, 262, 237, 263, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 244, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 260, 261, 262, 250, 263, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 260,
261, 262, 237, 263, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 250, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 260, 261,
262, 250, 263, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 260, 261, 262, 237, 263,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 260, 261, 262, 250, 263, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 260, 261, 262, 237, 263, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
260, 261, 262, 250, 263, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 260, 261, 262,
237, 263, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 260, 261, 262, 250,
263, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 260, 261, 262, 237, 263, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 248, 0, 0, 0, 0, 0,
0, 0, 21, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 250, 0,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 260, 261, 262, 237, 263, 238, 239, 240,
0, 241, 8, 0, 0, 0, 0, 242, 243, 0,
0, 0, 0, 244, 0, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 246, 0, 0,
247, 0, 0, 0, 12, 13, 14, 0, 0, 0,
0, 0, 0, 248, 0, 15, 16, 0, 0, 0,
0, 21, 0, 0, 0, 124, 0, 0, 0, 0,
-688, 0, 249, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 0, 261, 262, 237, 0, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 0, 0, 12, 13, 14, 0, 0, 0, 0,
0, 0, 248, 0, 15, 16, 0, 0, 0, 0,
21, 0, 0, 0, 124, 0, 0, 0, 0, -688,
0, 249, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 250, 0, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 0, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 261, 262, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 0, 242, 243, 0, 0, 0,
0, 244, 0, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 246, 0, 0, 247, 0,
0, 0, 12, 13, 14, 0, 0, 0, 0, 0,
0, 248, 0, 15, 16, 0, 0, 0, 0, 21,
0, 0, 0, 124, 0, 0, 0, 0, -688, 0,
249, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
261, 262, 237, 0, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 0,
0, 12, 13, 14, 0, 0, 0, 0, 0, 0,
248, 0, 15, 16, 0, 0, 0, 0, 21, 0,
0, 0, 124, 0, 0, 0, 0, -688, 0, 249,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 250, 0, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 0, 261,
262, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 0, 242, 243, 0, 0, 0, 0, 244,
0, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 246, 0, 0, 247, 0, 0, 0,
12, 13, 14, 0, 0, 0, 0, 0, 0, 248,
0, 15, 16, 0, 0, 0, 0, 21, 0, 0,
0, 124, 0, 0, 0, 0, -688, 0, 249, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 0, 261, 262,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 0, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 248, 0,
15, 16, 0, 0, 0, 0, 21, 0, 0, 0,
124, 0, 0, 0, 0, 0, 0, 249, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 250, 0, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
0, 242, 243, 0, 0, 0, 0, 244, 0, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 246, 0, 0, 247, 0, 0, 0, 12, 13,
14, 0, 0, 0, 0, 0, 0, 248, 0, 15,
16, 0, 0, 0, 0, 21, 0, 0, 0, 124,
0, 0, 0, 0, 0, 0, 249, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 250, 0, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
1, 0, 2, 3, 4, 5, 261, 262, 6, 7,
0, 8, 9, 0, 0, 0, 0, 0, 10, 0,
11, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
114, 0, 0, 12, 13, 14, 0, 0, 0, 0,
0, 0, 0, 0, 15, 16, 17, 18, 19, 20,
21, 0, 0, 0, 22, 0, 0, 0, 0, 0,
23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
2, 3, 4, 5, 25, 26, 6, 7, 0, 8,
9, -84, 0, 0, 0, 0, 10, 0, 11, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 41, 42, 43, 44, 0,
0, 12, 13, 14, 0, 0, 204, 0, 0, 0,
0, 0, 15, 16, 17, 18, 19, 20, 21, 0,
0, 0, 22, 0, 0, 0, 0, 0, 23, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0, 2, 3,
4, 5, 25, 26, 6, 7, 0, 8, 9, -84,
0, 0, 0, 0, 10, 0, 11, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, -209, 0, 12,
13, 14, 4, 0, 0, 0, 6, 0, 0, 8,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 12, 13, 14, 0, 0, 0, 0, 0, 0,
25, 26, 15, 16, 0, 0, 0, -84, 21, 0,
0, 0, 22, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 1, 0, 2, 3, 4,
5, 0, 0, 6, 7, 0, 8, 9, 0, -710,
0, 0, 0, 10, 0, 11, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 213, 0, 0, 12, 13,
14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
16, 17, 18, 19, 20, 21, 0, 0, 0, 22,
0, 0, 0, 0, 0, 23, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 0, 2, 3, 4, 5, 25,
26, 6, 7, 0, 8, 9, -84, 0, 0, 0,
0, 10, 0, 11, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 0, 0, 12, 13, 14, 0,
0, 0, 0, 0, 0, 0, 0, 15, 16, 17,
18, 19, 20, 21, 0, 0, 0, 22, 0, 0,
0, 0, 0, 23, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, -209, 0, 0, 0,
0, 1, 0, 2, 3, 4, 5, 25, 26, 6,
7, 0, 8, 9, -84, 0, 0, 0, 0, 10,
0, 11, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
43, 44, -209, 0, 12, 13, 14, 0, 0, 0,
0, 0, 0, 0, 0, 15, 16, 17, 18, 19,
20, 21, 0, 0, 0, 22, 0, 0, 0, 0,
0, 23, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1,
0, 2, 3, 4, 5, 25, 26, 6, 7, 0,
8, 9, -84, 0, 0, 0, 0, 10, 0, 11,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
-209, 0, 12, 13, 14, 0, 0, 0, 0, 0,
0, 0, 0, 15, 16, 17, 18, 19, 20, 21,
0, 0, 0, 22, 0, 0, 0, 0, 0, 23,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1, 0, 2,
3, 4, 5, 25, 26, 6, 7, 0, 8, 9,
-84, 0, 0, 0, 0, 10, 0, 11, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 41, 42, 43, 44, -209, 0,
12, 13, 14, 0, 0, 0, 0, 0, 0, 0,
0, 15, 16, 17, 18, 19, 20, 21, 0, 0,
0, 22, 0, 0, 0, 0, 0, 23, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 2, 3, 4,
5, 25, 26, 6, 7, 0, 8, 9, -84, 0,
0, 0, 0, 10, 0, 11, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 41, 42, 43, 44, -209, 0, 12, 13,
14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
16, 17, 18, 19, 20, 21, 0, 0, 0, 22,
0, 0, 0, 0, 0, 23, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1, 0, 2, 3, 4, 5, 25,
26, 6, 7, 0, 8, 9, -84, 0, 0, 0,
0, 10, 0, 11, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
41, 42, 43, 44, 0, 0, 12, 13, 14, 0,
0, 0, 0, 0, 0, 0, 0, 15, 16, 17,
18, 19, 20, 21, 0, 0, 0, 22, 0, 0,
0, 0, 0, 23, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1, 0, 2, 3, 4, 5, 25, 26, 6,
7, 0, 8, 9, -84, 0, 0, 0, 0, 10,
0, 11, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
43, 44, 0, 0, 12, 13, 14, 0, 0, 0,
0, 0, 0, 0, 0, 15, 16, 17, 18, 19,
20, 21, 0, 0, 0, 22, 0, 0, 0, 0,
0, 23, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 25, 26, 0, 0, 0,
0, 0, -84, 0, 0, 0, 0, 0, 0, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 41, 42, 43, 44,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, -160, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
-160, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 250,
0, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 261, 262, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, -160,
0, 247, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 1062, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, -617,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 0, 261, 262, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
261, 262, 237, 0, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 250, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 0, 261,
262, 250, 0, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 0, 261, 262, 237, 0,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 0, 261, 262, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 0, 261, 262, 237, 0, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 261, 262, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 0, 261, 262,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 773, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 250,
0, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 261, 262, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 244, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 0, 261, 262, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
261, 262, 237, 0, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 250, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 0, 261,
262, 250, 0, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 0, 261, 262, 237, 0,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 0, 261, 262, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 0, 261, 262, 237, 0, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 261, 262, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 0, 261, 262,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 250,
0, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 261, 262, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 244, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 0, 261, 262, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
261, 262, 237, 0, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 250, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 0, 261,
262, 250, 0, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 0, 261, 262, 237, 0,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 0, 261, 262, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 0, 261, 262, 237, 0, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 261, 262, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 0, 261, 262,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 250,
0, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 261, 262, 237, 0, 238, 239,
240, 0, 241, 8, 0, 0, 0, 0, 242, 243,
0, 0, 0, 0, 244, 0, 245, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 246, 0,
0, 247, 0, 237, 0, 238, 239, 240, 0, 241,
8, 0, 0, 0, 248, 242, 243, 0, 0, 0,
0, 244, 21, 245, 0, 0, 0, 0, 0, 0,
0, 0, 0, 249, 0, 246, 0, 0, 247, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 248, 0, 0, 0, 0, 0, 0, 250, 21,
251, 252, 253, -710, 254, 255, 256, 257, 258, 259,
249, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 0, 0,
0, 0, 0, 261, 262, 250, 0, 251, 252, 253,
-710, 254, 255, 256, 257, 258, 259, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 0, 0, 0, 0, 0, 0,
261, 262, 237, 0, 238, 239, 240, 0, 241, 8,
0, 0, 0, 0, 242, 243, 0, 0, 0, 0,
244, 0, 245, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 246, 0, 0, 247, 0, 237,
0, 238, 239, 240, 0, 241, 8, 0, 0, 0,
248, 242, 243, 0, 0, 0, 0, 244, 21, 245,
0, 0, 0, 0, 0, 0, 0, 0, 0, 249,
0, 246, 0, 0, 247, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 248, 0, 0,
0, 0, 0, 0, 250, 21, 251, 252, 253, -710,
254, 255, 256, 257, 258, 259, 249, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 0, 0, 0, 0, 0, 261,
262, 250, 0, 251, 252, 253, -710, 254, 255, 256,
257, 258, 259, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 0, 0, 0, 0, 0, 261, 262, 237, 0,
238, 239, 240, 0, 241, 8, 0, 0, 0, 0,
242, 243, 0, 0, 0, 0, 244, 0, 245, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
246, 0, 0, 247, 0, 237, 0, 238, 239, 240,
0, 241, 8, 0, 0, 0, 248, 242, 243, 0,
0, 0, 0, 244, 21, 245, 0, 0, 0, 0,
0, 0, 0, 0, 0, 249, 0, 246, 0, 0,
247, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 248, 0, 0, 0, 0, 0, 0,
250, 21, 251, 252, 253, -710, 254, 255, 256, 257,
258, 259, 249, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
0, 0, 0, 0, 0, 261, 262, 250, 0, 251,
252, 253, -710, 254, 255, 256, 257, 258, 259, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 0, 0, 0, 0,
0, 0, 261, 262, 237, 0, 238, 239, 240, 0,
241, 8, 0, 0, 0, 0, 242, 243, 0, 0,
0, 0, 244, 0, 245, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 246, 0, 0, 247,
0, 237, 0, 238, 239, 240, 0, 241, 8, 0,
0, 0, 248, 242, 243, 0, 0, 0, 0, 244,
21, 245, 0, 0, 0, 0, 0, 0, 0, 0,
0, 249, 0, 246, 0, 0, 247, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 248,
0, 0, 0, 0, 0, 0, 250, 21, 251, 252,
253, -710, 254, 255, 256, 257, 258, 259, 249, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 261, 262, 250, 0, 251, 252, 253, -710, 254,
255, 256, 257, 258, 259, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 0, 0, 0, 0, 0, 261, 262,
237, 0, 238, 239, 240, 0, 241, 8, 0, 0,
0, 0, 242, 243, 0, 0, 0, 0, 244, 0,
245, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 246, 0, 0, 247, 0, 237, 0, 238,
239, 240, 0, 241, 8, 0, 0, 0, 248, 242,
243, 0, 0, 0, 0, 244, 21, 245, 0, 0,
0, 0, 0, 0, 0, 0, 0, 249, 0, 246,
0, 0, 247, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 248, 0, 0, 0, 0,
0, 0, 250, 21, 251, 252, 253, -710, 254, 255,
256, 257, 258, 259, 249, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 261, 262, 250,
0, 251, 252, 253, -710, 254, 255, 256, 257, 258,
259, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 1, 0,
0, 149, 4, 150, 261, 262, 6, 0, 0, 8,
9, 0, 0, 0, 0, 0, 10, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -674,
0, 12, 13, 14, 0, 0, 0, 0, 0, 0,
0, 0, 15, 16, 17, 18, 19, 20, 21, 0,
0, 0, 22, 0, 0, 0, 0, 0, 23, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0, 0, 149,
4, 150, 0, 970, 6, 0, 0, 8, 9, -84,
0, 0, 0, 0, 10, 0, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, -675, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 149, 4, 150, 0, 0,
6, 970, 0, 8, 9, 0, 0, -84, 0, 0,
10, 0, 0, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 149, 4, 150, 0, 0, 6, 970, 0, 8,
9, 0, 0, -84, 0, 0, 10, 0, 0, 0,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 12, 13, 14, 0, 0, 0, 0, 0, 0,
0, 0, 15, 16, 17, 18, 19, 20, 21, 0,
0, 0, 22, 0, 0, 0, 0, 0, 23, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 149, 4, 150,
0, 0, 6, 970, 0, 8, 9, 0, 0, -84,
0, 0, 10, 0, 0, 0, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, 12, 13, 14,
0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
17, 18, 19, 20, 21, 0, 0, 0, 22, 0,
0, 0, 0, 0, 23, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 149, 4, 150, 0, 0, 6, 970,
0, 8, 9, 0, 0, -84, 0, 0, 10, 0,
0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 12, 13, 14, 0, 0, 0, 0,
0, 0, 0, 0, 15, 16, 17, 18, 19, 20,
21, 0, 0, 0, 22, 0, 0, 0, 0, 0,
23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0, 0, 149,
4, 150, 0, 0, 6, 970, 0, 8, 9, 0,
0, -84, 0, 0, 10, 0, 0, 0, 0, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 41, 42, 43, 44, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 149, 4, 150, 0, 0,
6, 970, 0, 8, 9, 0, 0, -84, 0, 0,
10, 0, 0, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 149, 4, 150, 0, 0, 6, 970, 0, 8,
9, 0, 0, -84, 0, 0, 10, 0, 0, 0,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 12, 13, 14, 0, 0, 0, 0, 0, 0,
0, 0, 15, 16, 17, 18, 19, 20, 21, 0,
0, 0, 22, 0, 0, 0, 0, 0, 23, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 0, 149, 4, 150,
0, 0, 6, 970, 0, 8, 9, 0, 0, -84,
0, 0, 10, 0, 0, 0, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, 43, 44, 12, 13, 14,
0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
17, 18, 19, 20, 21, 0, 0, 0, 22, 0,
0, 0, 0, 0, 23, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1, 0, 0, 149, 4, 150, 0, 0, 6, 970,
0, 8, 9, 0, 0, -84, 0, 0, 10, 0,
0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 41,
42, 43, 44, 12, 13, 14, 0, 0, 0, 0,
0, 0, 0, 0, 15, 16, 17, 18, 19, 20,
21, 0, 0, 0, 22, 0, 0, 0, 0, 0,
23, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1, 0, 0, 149,
4, 150, 0, 0, 6, 970, 0, 8, 9, 0,
0, -84, 0, 0, 10, 0, 0, 0, 0, 0,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 41, 42, 43, 44, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 149, 4, 150, 0, 0,
6, 970, 0, 8, 9, 0, 0, -84, 0, 0,
10, 0, 0, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 41, 42, 43, 44, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1, 0,
0, 149, 4, 150, 0, 0, 6, 970, 0, 8,
9, 0, 0, -84, 0, 0, 0, 0, 0, 0,
535, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 41, 42, 43,
44, 12, 13, 14, 0, 0, 0, 0, 0, 0,
0, 0, 15, 16, 17, 18, 19, 20, 21, 0,
0, 0, 22, 0, 0, 0, 536, 0, 23, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, -710,
0, 0, 0, 0, 0, 0, 0, 0, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 0, 42, 43, 44, 1, 0, 0,
149, 4, 150, 0, 0, 6, 0, 0, 8, 9,
0, 0, 0, 0, 0, 0, 0, 0, 157, 0,
0, 0, 0, 0, 0, 0, 1, 0, 0, 149,
4, 150, 0, 161, 6, 0, 0, 8, 9, 0,
12, 13, 14, 0, 0, 0, 151, 0, 0, 0,
0, 15, 16, 17, 18, 19, 20, 21, 0, 0,
0, 22, 0, 0, 0, 0, 0, 23, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 17, 18, 19, 20, 21, 0, 0, 0,
22, 0, 0, 0, 0, 0, 23, 0, -710, 0,
0, 0, 0, 0, 0, 0, 0, 0, 27, 28,
29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, 40, 0, 42, 43, 44, 0, -85, 0, 0,
0, 0, 0, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 42, 43, 44, 1, 0, 0, 149, 4,
150, 0, 0, 6, 0, 0, 8, 9, 0, 0,
0, 0, 0, 0, 0, 0, 0, 535, 0, 0,
0, 0, 0, 0, 1, 0, 0, 149, 4, 150,
0, 0, 6, 0, 0, 8, 9, 0, 12, 13,
14, 0, 0, 0, 0, 157, 0, 0, 0, 15,
16, 17, 18, 19, 20, 21, 0, 0, 0, 22,
161, 0, 0, 0, 0, 23, 0, 12, 13, 14,
0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
17, 18, 19, 20, 21, 0, 0, 0, 22, 0,
0, 0, 0, 0, 23, 0, -710, 0, 0, 0,
0, 0, 0, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 42, 43, 44, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
42, 43, 44, 1, 0, 0, 149, 4, 150, 0,
0, 6, 0, 0, 8, 9, 0, 0, 0, 0,
0, 0, 0, 0, 157, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 149, 4, 150, 0, 161,
6, 0, 0, 8, 9, 0, 12, 13, 14, 0,
0, 0, 0, 157, 0, 0, 0, 15, 16, 17,
18, 19, 20, 21, 0, 0, 0, 22, 161, 0,
0, 0, 0, 23, 0, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 42,
43, 44, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 0, 42, 43,
44, 1, 0, 0, 149, 4, 150, 0, 0, 6,
0, 0, 8, 9, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0, 149, 4,
150, 0, 0, 6, 0, 0, 8, 9, 0, 0,
0, 0, 0, 0, 12, 13, 14, 0, 0, 0,
0, 0, 0, 0, 0, 15, 16, 17, 18, 19,
20, 21, 0, 0, 0, 22, 0, 0, 12, 13,
14, 23, 0, 0, 0, 0, 0, 0, 0, 15,
16, 17, 18, 19, 20, 21, 0, 0, 0, 22,
0, 0, 0, 0, 0, 23, 0, 0, 0, 0,
0, 0, -710, 0, 0, 0, 0, 0, 0, 0,
0, 0, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, -710, 42, 43, 44,
0, 0, 0, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
0, 42, 43, 44, 1, 0, 0, 149, 4, 150,
0, 0, 6, 0, 0, 8, 9, 0, 0, 0,
0, 0, 1, 0, 0, 149, 4, 150, 0, 0,
6, 0, 0, 8, 9, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 12, 13, 14,
0, 0, 0, 0, 0, 0, 0, 0, 15, 16,
17, 18, 19, 20, 21, 12, 13, 14, 22, 0,
0, 0, 0, 0, 23, 0, 15, 16, 17, 18,
19, 20, 21, 0, 0, 0, 22, 0, 0, 0,
0, 0, 23, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, -85, 0, 0, 0, 0,
0, 0, 0, 0, 0, 27, 28, 29, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, 40, 0,
42, 43, 44, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 4, 42, 43,
44, 6, 0, 0, 8, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 963, 0, 0, 0, 4,
0, 0, 0, 6, 0, 0, 8, 0, 0, 0,
0, 0, 0, 0, 0, 0, 12, 13, 14, 0,
0, 0, 4, 0, 0, 0, 6, 15, 16, 8,
0, 0, 0, 21, 0, 0, 0, 124, 12, 13,
14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
16, 0, 0, 0, 0, 21, 0, 0, 0, 124,
0, 12, 13, 14, 0, 0, 0, 0, 0, 0,
0, 0, 15, 16, 0, 0, 0, 0, 21, 0,
0, 0, 124, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 0, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
4, 0, 0, 0, 6, 0, 0, 8, 0, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 4, 0, 0, 0, 6, 0, 0,
8, 0, 0, 0, 0, 0, 0, 0, 0, 12,
13, 14, 0, 0, 0, 4, 0, 0, 0, 6,
15, 16, 8, 0, 0, 0, 21, 0, 0, 0,
124, 0, 12, 13, 14, 0, 0, 0, 0, 0,
0, 0, 0, 15, 16, 0, 0, 0, 0, 21,
0, 0, 0, 124, 12, 13, 14, 0, 0, 0,
0, 0, 0, 0, 0, 15, 16, 0, 0, 0,
0, 21, 0, 0, 0, 124, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, 0, 0, 0, 0, 0, 0, 0, 0, 0,
27, 28, 29, 30, 31, 32, 33, 34, 35, 36,
37, 38, 39, 40, 4, 0, 0, 0, 6, 0,
0, 8, 27, 28, 29, 30, 31, 32, 33, 34,
35, 36, 37, 38, 39, 40, 4, 0, 0, 0,
6, 0, 0, 8, 0, 0, 0, 0, 0, 0,
0, 0, 0, 12, 13, 14, 0, 0, 0, 4,
0, 0, 0, 6, 15, 16, 8, 0, 0, 0,
21, 0, 0, 0, 124, 12, 13, 14, 0, 0,
0, 0, 0, 0, 0, 0, 15, 16, 0, 0,
0, 0, 21, 0, 0, 0, 124, 0, 12, 13,
14, 0, 0, 0, 0, 0, 0, 0, 0, 15,
16, 0, 0, 0, 0, 21, 0, 0, 0, 124,
0, 27, 28, 29, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 40, 0, 0, 0, 0, 0,
0, 0, 0, 27, 28, 29, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, 40, 4, 0, 0,
0, 6, 0, 0, 8, 0, 27, 28, 29, 30,
31, 32, 33, 34, 35, 36, 37, 38, 39, 40,
4, 0, 0, 0, 6, 0, 0, 8, 0, 0,
0, 0, 0, 0, 0, 0, 12, 13, 14, 0,
0, 0, 0, 0, 0, 0, 0, 15, 16, 0,
0, 0, 0, 21, 0, 0, 0, 124, 0, 12,
13, 14, 0, 0, 0, 0, 0, 0, 0, 0,
15, 16, 0, 0, 0, 0, 21, 0, 0, 0,
124, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 0, 0,
0, 0, 0, 0, 0, 0, 0, 27, 28, 29,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40
};
static const yytype_int16 yycheck[] =
{
0, 0, 2, 51, 182, 175, 50, 51, 8, 413,
90, 650, 248, 119, 58, 182, 158, 692, 158, 121,
333, 379, 22, 327, 438, 0, 22, 2, 175, 704,
376, 0, 174, 2, 174, 565, 119, 630, 225, 850,
227, 134, 175, 175, 615, 175, 576, 51, 578, 175,
50, 51, 377, 146, 54, 175, 232, 324, 58, 59,
119, 61, 248, 1015, 864, 747, 431, 362, 175, 630,
681, 606, 689, 1079, 175, 8, 178, 345, 689, 244,
967, 616, 247, 175, 827, 13, 61, 252, 253, 66,
1185, 3, 61, 99, 8, 50, 263, 164, 12, 413,
1195, 101, 8, 3, 50, 8, 72, 13, 85, 42,
13, 8, 24, 792, 114, 114, 8, 401, 118, 119,
168, 13, 66, 119, 124, 125, 101, 395, 124, 12,
23, 298, 101, 26, 301, 135, 135, 8, 303, 114,
207, 12, 56, 118, 330, 114, 907, 147, 8, 118,
64, 44, 152, 56, 100, 1250, 89, 101, 158, 42,
135, 972, 139, 341, 164, 587, 135, 64, 168, 75,
26, 251, 147, 73, 174, 597, 412, 177, 147, 3,
8, 177, 137, 75, 286, 56, 500, 66, 102, 72,
190, 137, 362, 64, 190, 195, 195, 1084, 3, 102,
175, 0, 1013, 2, 64, 133, 12, 100, 969, 3,
556, 5, 8, 213, 213, 362, 50, 51, 218, 15,
195, 45, 101, 1195, 58, 864, 195, 2, 56, 362,
362, 102, 362, 326, 336, 422, 362, 281, 213, 426,
407, 428, 362, 218, 213, 988, 23, 414, 248, 218,
932, 50, 51, 346, 334, 362, 4, 541, 3, 58,
12, 362, 61, 11, 134, 42, 72, 535, 73, 3,
362, 12, 68, 12, 102, 26, 146, 561, 1250, 73,
66, 281, 5, 1094, 1290, 8, 61, 12, 692, 23,
24, 14, 23, 606, 905, 26, 8, 42, 977, 85,
704, 918, 101, 616, 915, 28, 3, 918, 869, 86,
44, 355, 418, 44, 62, 114, 50, 423, 318, 118,
72, 856, 318, 1005, 324, 325, 101, 64, 324, 325,
625, 72, 3, 72, 401, 418, 135, 207, 703, 1291,
423, 175, 260, 118, 41, 263, 1146, 72, 147, 8,
8, 355, 75, 518, 12, 355, 20, 21, 523, 418,
627, 15, 28, 1174, 423, 26, 100, 681, 105, 24,
41, 5, 147, 3, 8, 689, 25, 421, 692, 379,
14, 23, 686, 687, 560, 385, 45, 362, 54, 23,
704, 40, 13, 47, 28, 8, 195, 562, 563, 12,
42, 129, 44, 137, 404, 591, 64, 41, 207, 58,
59, 41, 412, 413, 213, 99, 23, 1096, 418, 218,
5, 421, 418, 423, 8, 661, 44, 423, 12, 8,
536, 431, 12, 12, 1027, 42, 1029, 44, 44, 1050,
1251, 75, 27, 218, 86, 244, 760, 281, 8, 248,
775, 64, 1023, 536, 8, 625, 326, 3, 376, 377,
378, 6, 14, 977, 566, 567, 8, 8, 47, 48,
12, 755, 14, 25, 541, 25, 346, 536, 625, 86,
64, 27, 281, 650, 26, 64, 1297, 652, 40, 25,
40, 28, 625, 625, 561, 625, 12, 1176, 40, 625,
500, 3, 1181, 40, 40, 625, 693, 1146, 58, 59,
510, 511, 512, 513, 56, 929, 244, 54, 625, 72,
520, 355, 64, 5, 625, 27, 8, 326, 362, 887,
888, 401, 14, 625, 880, 3, 536, 134, 0, 885,
536, 777, 12, 856, 8, 1075, 28, 8, 12, 146,
8, 12, 8, 1182, 12, 26, 355, 13, 100, 27,
102, 17, 18, 19, 28, 658, 22, 26, 24, 111,
1249, 3, 1211, 44, 739, 3, 40, 742, 626, 1208,
747, 23, 1096, 25, 8, 44, 12, 421, 12, 45,
54, 905, 1271, 75, 594, 27, 24, 431, 40, 903,
64, 915, 401, 64, 918, 25, 64, 1137, 23, 676,
207, 75, 68, 412, 532, 1294, 1295, 3, 74, 594,
40, 1296, 421, 623, 24, 594, 626, 627, 1307, 44,
630, 627, 431, 8, 630, 1314, 5, 1316, 556, 3,
64, 27, 1321, 1244, 692, 65, 564, 565, 1287, 67,
625, 965, 1253, 8, 26, 3, 3, 12, 576, 3,
578, 661, 1176, 27, 26, 8, 3, 1181, 40, 244,
25, 541, 8, 129, 674, 23, 24, 1278, 674, 3,
27, 681, 44, 27, 26, 40, 864, 42, 755, 689,
27, 561, 692, 65, 42, 67, 44, 864, 40, 699,
24, 701, 50, 703, 704, 1051, 1052, 8, 436, 64,
3, 510, 511, 512, 513, 514, 8, 69, 70, 518,
12, 520, 8, 26, 16, 17, 18, 19, 26, 326,
12, 103, 104, 25, 27, 1249, 1050, 5, 86, 25,
8, 44, 541, 8, 811, 812, 44, 12, 40, 346,
23, 326, 100, 5, 40, 23, 8, 1271, 44, 99,
760, 5, 561, 8, 8, 932, 8, 12, 12, 1083,
12, 23, 64, 915, 857, 915, 918, 777, 918, 26,
1294, 1295, 26, 28, 28, 26, 514, 26, 658, 137,
518, 625, 792, 1307, 874, 594, 961, 964, 5, 64,
1314, 8, 1316, 673, 401, 44, 676, 1321, 40, 54,
54, 811, 812, 906, 5, 908, 23, 8, 24, 64,
64, 12, 64, 792, 623, 5, 554, 827, 8, 12,
75, 75, 26, 24, 14, 26, 5, 28, 1005, 8,
24, 25, 3, 23, 1011, 14, 25, 847, 28, 25,
44, 847, 827, 920, 23, 8, 40, 775, 827, 28,
40, 40, 661, 54, 40, 56, 42, 24, 25, 703,
8, 25, 24, 64, 12, 968, 8, 676, 8, 26,
12, 25, 12, 40, 75, 755, 40, 887, 888, 79,
80, 1056, 1296, 40, 8, 75, 40, 1062, 12, 26,
699, 25, 701, 8, 703, 905, 75, 12, 1050, 87,
1050, 102, 26, 27, 28, 915, 40, 26, 918, 12,
920, 26, 966, 28, 652, 1092, 64, 971, 972, 47,
48, 40, 64, 1100, 64, 510, 511, 512, 513, 514,
54, 8, 942, 518, 541, 520, 942, 8, 8, 54,
64, 5, 13, 0, 8, 2, 755, 1059, 12, 64,
25, 75, 880, 963, 561, 965, 966, 885, 1146, 72,
75, 971, 26, 27, 28, 40, 1024, 977, 777, 1146,
1060, 8, 1296, 24, 25, 12, 40, 42, 988, 44,
24, 25, 25, 792, 53, 50, 55, 8, 26, 40,
54, 1168, 13, 50, 51, 25, 40, 40, 977, 1102,
64, 58, 40, 988, 61, 1185, 44, 72, 46, 988,
40, 75, 58, 59, 1024, 1195, 26, 1027, 827, 1029,
25, 1027, 5, 1029, 762, 8, 906, 64, 908, 12,
40, 1085, 25, 8, 1211, 40, 1282, 12, 623, 1142,
1050, 24, 26, 26, 101, 28, 5, 40, 25, 8,
8, 658, 980, 28, 12, 8, 40, 114, 76, 12,
13, 118, 15, 40, 944, 40, 72, 25, 1171, 676,
1250, 54, 90, 1083, 5, 1085, 25, 8, 135, 54,
8, 64, 40, 26, 12, 127, 1096, 72, 968, 64,
147, 40, 75, 8, 47, 45, 8, 25, 13, 12,
75, 13, 17, 18, 19, 15, 64, 22, 8, 24,
1287, 64, 40, 13, 699, 1292, 701, 1096, 26, 25,
73, 8, 966, 1051, 1052, 26, 13, 971, 972, 1139,
45, 83, 84, 1139, 40, 72, 64, 5, 195, 42,
8, 44, 72, 73, 12, 1155, 1155, 1075, 755, 1265,
207, 81, 82, 68, 963, 72, 213, 966, 26, 74,
28, 218, 971, 972, 58, 59, 1176, 72, 977, 8,
1155, 1181, 40, 12, 72, 8, 1155, 574, 575, 988,
13, 26, 1236, 225, 26, 227, 54, 244, 1242, 28,
8, 248, 906, 8, 908, 13, 64, 1176, 13, 75,
76, 77, 1181, 28, 246, 943, 1185, 75, 51, 1137,
71, 949, 1270, 78, 129, 54, 1195, 72, 72, 73,
54, 1275, 1102, 72, 281, 64, 1236, 81, 82, 17,
18, 19, 1242, 1291, 525, 526, 75, 12, 1296, 1249,
8, 1085, 72, 73, 12, 13, 8, 15, 529, 530,
12, 81, 82, 1062, 27, 1265, 1125, 1126, 1127, 1265,
1270, 1271, 1142, 25, 8, 1275, 8, 67, 9, 326,
1249, 1250, 1282, 557, 558, 559, 1085, 27, 40, 47,
22, 1291, 133, 22, 1294, 1295, 1296, 1096, 40, 65,
45, 1171, 1271, 42, 50, 8, 64, 1307, 355, 906,
5, 908, 64, 8, 1314, 23, 1316, 12, 3, 45,
42, 1321, 54, 87, 8, 1294, 1295, 59, 8, 12,
23, 26, 3, 28, 1062, 73, 105, 23, 1307, 1067,
1068, 1069, 1070, 45, 100, 1314, 8, 1316, 23, 12,
27, 1185, 1321, 14, 401, 8, 1155, 27, 3, 54,
3, 1195, 8, 41, 1092, 412, 12, 41, 40, 64,
8, 968, 1100, 40, 421, 72, 408, 1176, 44, 25,
75, 10, 1181, 13, 431, 26, 1185, 119, 963, 26,
422, 8, 124, 125, 40, 44, 1195, 24, 5, 8,
24, 8, 1236, 435, 44, 12, 27, 8, 1242, 441,
8, 8, 444, 27, 3, 207, 1250, 3, 64, 26,
152, 28, 570, 571, 572, 573, 158, 42, 41, 12,
3, 27, 164, 40, 8, 3, 168, 1236, 3, 55,
24, 1275, 174, 1242, 54, 177, 27, 54, 42, 42,
1249, 1250, 244, 73, 23, 1183, 248, 64, 190, 5,
27, 24, 41, 510, 511, 512, 513, 514, 75, 8,
8, 518, 1271, 520, 54, 13, 1275, 41, 58, 17,
18, 19, 27, 1282, 22, 73, 24, 1062, 73, 8,
70, 73, 27, 27, 541, 1294, 1295, 73, 27, 27,
26, 73, 72, 12, 27, 1102, 27, 45, 1307, 41,
27, 73, 24, 44, 561, 1314, 1244, 1316, 45, 251,
27, 24, 1321, 27, 24, 1253, 27, 42, 12, 5,
68, 12, 26, 5, 326, 3, 74, 42, 24, 119,
65, 16, 122, 207, 1272, 1142, 8, 594, 5, 5,
1278, 8, 8, 67, 5, 12, 12, 8, 45, 139,
140, 12, 45, 143, 1292, 17, 598, 599, 148, 26,
26, 28, 28, 153, 1171, 26, 623, 28, 24, 159,
244, 55, 162, 163, 248, 8, 318, 27, 620, 40,
170, 129, 324, 325, 23, 175, 23, 54, 54, 631,
56, 27, 334, 54, 73, 56, 26, 64, 64, 401,
26, 26, 644, 64, 661, 26, 8, 27, 75, 75,
412, 8, 27, 45, 75, 12, 13, 24, 15, 676,
8, 8, 45, 41, 5, 12, 13, 8, 15, 8,
24, 12, 24, 3, 8, 54, 102, 379, 24, 24,
41, 102, 699, 385, 701, 26, 703, 28, 41, 27,
47, 40, 326, 8, 27, 26, 24, 26, 42, 40,
47, 24, 404, 3, 26, 24, 5, 64, 45, 27,
24, 413, 88, 54, 24, 56, 418, 64, 27, 24,
10, 423, 24, 64, 27, 41, 90, 24, 24, 42,
62, 26, 8, 27, 75, 41, 27, 45, 755, 26,
23, 65, 744, 41, 5, 27, 748, 749, 510, 511,
512, 513, 514, 26, 24, 139, 518, 24, 520, 27,
777, 102, 5, 42, 27, 8, 24, 401, 27, 12,
5, 773, 27, 8, 40, 792, 40, 12, 412, 541,
40, 27, 651, 26, 27, 28, 113, 113, 319, 531,
998, 26, 998, 28, 344, 345, 603, 40, 500, 561,
1130, 635, 876, 1211, 374, 40, 204, 749, 358, 748,
827, 54, 362, 760, 944, 5, 888, 703, 8, 54,
370, 64, 12, 5, 882, 848, 8, 10, 393, 64,
12, 534, 75, 659, 536, 1292, 26, 387, 28, 527,
75, 1100, 1315, 972, 26, 395, 28, 542, 152, 385,
40, 378, 1185, 1085, 404, 966, 1139, 555, 40, 1024,
5, 623, 412, 8, 54, 2, 396, 12, 418, 667,
1083, 1168, 54, 423, 64, 137, 510, 511, 512, 513,
514, 26, 64, 28, 518, 75, 520, 1141, 949, 5,
528, 261, 8, 75, 5, 676, 12, 8, 423, 661,
902, 12, 222, 614, -1, -1, 536, 541, -1, 54,
26, -1, 28, -1, 676, 26, -1, 28, 235, 64,
-1, -1, -1, -1, 626, 627, -1, 561, 630, -1,
75, -1, 934, -1, -1, -1, -1, 699, 54, 701,
-1, -1, -1, 54, -1, -1, 963, -1, 64, 966,
-1, -1, 502, 64, 971, 972, -1, -1, -1, 75,
977, -1, -1, -1, 75, -1, -1, -1, -1, -1,
-1, 988, 674, -1, -1, -1, -1, -1, -1, 681,
-1, -1, -1, -1, 8, 535, 536, 689, 12, 623,
692, 15, -1, 755, -1, -1, -1, -1, -1, -1,
-1, 25, 704, -1, -1, -1, -1, -1, 1010, -1,
-1, -1, -1, -1, -1, 777, 40, -1, -1, -1,
-1, -1, -1, 47, 48, 49, -1, 661, -1, -1,
1032, 1033, -1, -1, 58, 59, -1, -1, -1, 23,
64, -1, 676, -1, 68, 1062, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, -1, -1, 760, -1,
-1, -1, -1, -1, -1, 699, -1, 701, 1085, 53,
-1, 55, -1, -1, -1, 625, -1, -1, -1, 1096,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1091,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, 811,
812, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 755, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1155, -1,
-1, -1, -1, 777, -1, 847, -1, -1, -1, -1,
-1, -1, -1, 703, -1, -1, -1, -1, -1, 1176,
-1, -1, -1, -1, 1181, -1, -1, -1, 1185, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 1195, -1,
-1, -1, -1, -1, -1, 887, 888, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 963, -1, 905, 1206, -1, -1, -1, -1, -1,
-1, -1, -1, 915, -1, -1, 918, -1, 920, 1236,
-1, -1, -1, -1, -1, 1242, -1, -1, -1, -1,
-1, -1, 1249, 1250, -1, -1, -1, -1, -1, -1,
942, 791, 792, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1271, -1, -1, -1, 1275, -1,
-1, -1, -1, 965, -1, 1282, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1294, 1295, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1307, -1, -1, -1, -1, -1, -1, 1314, -1, 1316,
1062, -1, -1, -1, 1321, -1, -1, 857, -1, 859,
-1, -1, -1, 863, -1, -1, 54, -1, -1, -1,
-1, -1, 1024, -1, -1, 1027, 876, 1029, -1, 963,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 896, -1, 1050, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4, 5, -1, 7, 8, 9, -1, -1, 12,
-1, -1, 15, 16, -1, -1, -1, -1, -1, 22,
-1, 1083, 25, 26, -1, 28, 29, -1, -1, -1,
-1, 129, -1, -1, -1, -1, 134, 40, -1, -1,
-1, -1, -1, -1, 47, 48, 49, -1, 146, -1,
-1, 54, -1, 56, -1, 58, 59, 60, 61, 62,
63, 64, -1, -1, -1, 68, 164, 977, 1062, -1,
-1, 74, 75, -1, -1, -1, -1, 1139, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 102,
198, 199, 105, -1, -1, -1, -1, -1, -1, 207,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, 130, 131, 132,
-1, -1, 230, -1, 232, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 8, -1, 244, -1, 12, 247,
-1, 15, 1062, -1, 252, 253, -1, -1, -1, -1,
1282, -1, 260, 261, -1, 263, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 47, 48, 49, 1096, -1, -1, -1,
-1, -1, -1, -1, 58, 59, -1, -1, -1, -1,
64, -1, -1, 1265, 68, 303, -1, -1, 1270, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 326, 1291,
-1, -1, -1, -1, 1296, -1, -1, -1, -1, -1,
-1, 105, -1, -1, -1, -1, 1156, 1157, 346, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, 1176, -1, -1, -1,
-1, 1181, -1, 1183, -1, 1185, 374, 375, 376, 377,
378, 379, -1, -1, -1, 1195, -1, -1, 1282, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
1210, -1, -1, 401, -1, -1, 404, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1229,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1244, 1245, -1, -1, 436, 1249,
1250, -1, -1, 1253, -1, -1, -1, -1, -1, 1259,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 1269,
-1, 1271, -1, -1, -1, -1, -1, -1, 1278, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1294, 1295, -1, -1, -1, -1,
-1, 1301, 1302, -1, -1, -1, -1, 1307, -1, -1,
-1, -1, -1, -1, 1314, -1, 1316, -1, -1, -1,
-1, 1321, -1, -1, -1, -1, 514, -1, -1, -1,
518, -1, -1, -1, -1, 523, -1, 525, 526, 527,
528, 529, 530, 531, 532, -1, 534, -1, -1, -1,
-1, -1, -1, 541, 542, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 554, 555, 556, 557,
558, 559, 560, 561, 562, 563, 564, 565, -1, -1,
-1, -1, 570, 571, 572, 573, 574, 575, 576, -1,
578, 4, -1, -1, 7, 8, 9, 10, 11, 12,
-1, 14, 15, 16, -1, -1, -1, 20, 21, 22,
-1, 24, 25, 26, -1, 28, 29, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
43, 44, -1, -1, 47, 48, 49, -1, -1, -1,
-1, -1, -1, 56, 57, 58, 59, 60, 61, 62,
63, 64, -1, -1, -1, 68, -1, -1, -1, -1,
-1, 74, 75, -1, 652, -1, -1, -1, -1, -1,
658, -1, 85, 86, -1, -1, -1, 90, 91, 92,
93, 94, 95, 96, 97, 673, -1, 100, 676, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, 112,
-1, 114, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, 130, 131, 132,
-1, 134, 135, 136, -1, 138, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4, -1, -1, 7,
8, 9, 10, 11, 12, -1, 14, 15, 16, -1,
-1, 739, 20, 21, 742, -1, 24, 25, 26, -1,
28, -1, -1, -1, -1, -1, -1, 755, -1, 8,
-1, -1, 40, 12, 762, 43, 15, -1, -1, 47,
48, 49, -1, -1, -1, -1, -1, 775, 56, -1,
58, 59, 60, 61, 62, 63, 64, -1, 66, -1,
68, -1, -1, -1, -1, -1, 74, 75, 47, 48,
49, -1, -1, -1, -1, -1, -1, -1, -1, 58,
59, -1, -1, 811, 812, 64, -1, -1, -1, 68,
-1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, 130, 131, 132, -1, 134, 135, 136, -1,
138, -1, -1, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, 880, -1, -1, -1, -1, 885, -1, 887,
888, -1, -1, -1, -1, -1, 5, -1, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, 906, -1,
908, 20, 21, -1, -1, -1, -1, 26, 27, 28,
-1, -1, 920, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, 43, -1, -1, -1, 47, 48,
49, -1, -1, -1, -1, 943, 944, 56, -1, 58,
59, 949, -1, -1, -1, 64, -1, 66, -1, 68,
-1, -1, -1, 961, -1, -1, 75, -1, -1, -1,
968, -1, -1, -1, 972, -1, -1, -1, -1, -1,
-1, -1, 980, -1, -1, -1, -1, -1, -1, -1,
-1, 100, 101, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, 134, 135, 136, -1, 138,
-1, -1, 1030, -1, -1, -1, -1, -1, -1, -1,
-1, 1039, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 1051, 1052, -1, -1, -1, 1056, -1,
-1, -1, -1, -1, 1062, -1, -1, -1, -1, 1067,
1068, 1069, 1070, -1, -1, -1, -1, 1075, -1, -1,
-1, 1079, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1092, -1, -1, -1, -1, -1,
-1, -1, 1100, -1, 1102, -1, 4, -1, -1, 7,
8, 9, 10, 11, 12, -1, 14, 15, 16, -1,
-1, -1, 20, 21, 22, -1, 24, 25, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, 1137,
-1, -1, 40, -1, 1142, 43, -1, -1, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, 56, -1,
58, 59, 60, 61, 62, 63, 64, -1, 66, -1,
68, -1, -1, 1171, -1, -1, 74, 75, -1, -1,
-1, -1, -1, -1, -1, 1183, -1, 1185, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 1195, -1, -1,
-1, -1, 100, 101, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, 130, 131, 132, -1, 134, 135, 136, -1,
138, -1, -1, -1, -1, -1, 1244, -1, -1, -1,
-1, -1, 1250, -1, -1, 1253, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 1272, -1, -1, -1, -1, -1,
1278, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 1290, -1, 1292, 3, 4, 5, 6, 7,
8, 9, 10, -1, 12, 13, -1, 15, 16, -1,
-1, -1, 20, 21, 22, 23, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, -1, 44, 45, -1, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
58, 59, 60, 61, 62, 63, 64, 65, -1, 67,
68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
98, 99, 100, -1, 102, 103, 104, 105, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, -1, -1, -1, -1, 137,
3, 4, 5, 6, 7, 8, 9, 10, -1, 12,
13, -1, 15, 16, -1, -1, -1, 20, 21, 22,
23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
-1, 44, 45, -1, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, -1, 58, 59, 60, 61, 62,
63, 64, 65, -1, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
83, 84, -1, 86, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 98, 99, 100, -1, 102,
103, 104, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
-1, -1, -1, -1, 137, 3, 4, 5, 6, 7,
8, 9, 10, -1, 12, 13, -1, 15, 16, -1,
-1, -1, 20, 21, 22, 23, 24, 25, 26, 27,
28, 29, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 41, 42, -1, 44, 45, -1, 47,
48, 49, 50, 51, 52, 53, 54, 55, 56, -1,
58, 59, 60, 61, 62, 63, 64, 65, -1, 67,
68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
78, 79, 80, 81, 82, 83, 84, -1, 86, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
98, 99, 100, -1, 102, 103, 104, 105, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, -1, -1, -1, -1, 137,
3, 4, 5, 6, 7, 8, 9, 10, -1, 12,
13, -1, 15, 16, -1, -1, -1, 20, 21, 22,
23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
33, 34, 35, 36, 37, 38, 39, 40, 41, 42,
-1, 44, 45, -1, 47, 48, 49, 50, 51, 52,
53, 54, 55, 56, -1, 58, 59, 60, 61, 62,
63, 64, 65, -1, 67, 68, 69, 70, 71, 72,
73, 74, 75, 76, 77, 78, 79, 80, 81, 82,
83, 84, -1, 86, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 98, 99, 100, -1, 102,
103, 104, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
-1, -1, 4, -1, 137, 7, 8, 9, 10, 11,
12, -1, 14, 15, 16, -1, -1, -1, 20, 21,
22, -1, 24, 25, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, -1, -1, 47, 48, 49, -1, -1,
-1, -1, -1, -1, 56, -1, 58, 59, 60, 61,
62, 63, 64, -1, 66, -1, 68, -1, -1, -1,
-1, -1, 74, 75, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 100, 101,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, 130, 131,
132, -1, 134, 135, 136, 4, 138, -1, 7, 8,
9, 10, 11, 12, -1, 14, 15, 16, -1, -1,
-1, 20, 21, 22, -1, 24, 25, 26, -1, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, 43, -1, -1, -1, 47, 48,
49, -1, -1, -1, -1, -1, -1, 56, -1, 58,
59, 60, 61, 62, 63, 64, -1, -1, -1, 68,
-1, -1, -1, -1, -1, 74, 75, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, 130, 131, 132, -1, 134, 135, 136, 5, 138,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, -1, 20, 21, -1, -1, -1, -1, 26,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 40, -1, -1, 43, -1, -1, -1,
47, 48, 49, -1, -1, -1, -1, -1, -1, 56,
-1, 58, 59, -1, -1, -1, -1, 64, -1, -1,
-1, 68, -1, -1, -1, -1, -1, -1, 75, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
5, 138, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, -1, 20, 21, -1, -1, -1,
-1, 26, -1, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
-1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
-1, 56, -1, 58, 59, -1, -1, -1, -1, 64,
-1, -1, -1, 68, -1, -1, -1, -1, -1, -1,
75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, 134,
135, 136, 5, 138, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, 3, -1, -1, 20, 21, -1,
-1, -1, -1, 26, -1, 28, -1, -1, -1, -1,
-1, 20, 21, -1, 23, -1, -1, 40, 27, 28,
43, 30, 31, 32, 33, 34, 35, 36, 37, 38,
39, -1, -1, 56, -1, -1, -1, -1, -1, -1,
-1, 64, -1, -1, -1, 54, 55, -1, -1, -1,
-1, -1, 75, -1, -1, -1, -1, -1, -1, -1,
69, 70, 71, 72, 73, -1, 75, 76, 77, 78,
79, 80, 81, 82, 83, 84, -1, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, 134, 135, 136, 0, 138, -1, -1, 4, 5,
6, 7, 8, 9, -1, -1, 12, 13, -1, 15,
16, 17, 18, 19, -1, -1, 22, -1, 24, 25,
26, -1, 28, 29, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, 42, -1, -1, 45,
-1, 47, 48, 49, -1, -1, -1, -1, 54, -1,
56, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, 74, 75,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 87, 0, -1, -1, -1, 4, -1, 6, 7,
8, 9, 98, 99, 12, 13, 102, 15, 16, 105,
-1, -1, -1, -1, 22, -1, 24, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 45, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 87,
0, -1, -1, -1, 4, -1, 6, 7, 8, 9,
98, 99, 12, 13, -1, 15, 16, 105, -1, -1,
-1, -1, 22, -1, 24, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, -1, -1, 47, 48, 49,
-1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
60, 61, 62, 63, 64, -1, -1, -1, 68, -1,
-1, -1, -1, -1, 74, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 87, 0, -1,
-1, -1, 4, -1, 6, 7, 8, 9, 98, 99,
12, 13, -1, 15, 16, 105, -1, -1, -1, -1,
22, -1, 24, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 132, -1, -1, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 87, 0, -1, -1, -1,
4, -1, 6, 7, 8, 9, 98, 99, 12, 13,
-1, 15, 16, 105, -1, -1, -1, -1, 22, -1,
24, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, -1, -1, 47, 48, 49, -1, -1, -1, -1,
-1, -1, -1, -1, 58, 59, 60, 61, 62, 63,
64, -1, -1, -1, 68, -1, -1, -1, -1, -1,
74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 98, 99, -1, -1, -1, -1,
-1, 105, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 132, 5,
-1, -1, 8, -1, 10, 11, 12, -1, 14, 15,
-1, 3, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, 20, 21,
-1, 23, -1, -1, 40, -1, 28, 43, 30, 31,
32, 33, 34, 35, 36, 37, 38, 39, -1, -1,
56, -1, -1, -1, -1, -1, -1, -1, 64, -1,
-1, -1, 54, 55, -1, -1, -1, -1, -1, 75,
-1, -1, -1, -1, -1, -1, -1, 69, 70, 71,
72, 73, -1, 75, 76, 77, 78, 79, 80, 81,
82, 83, 84, -1, 100, -1, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 3, -1, -1, -1, -1, 8, 135,
136, 11, 12, -1, -1, 15, -1, -1, -1, -1,
20, 21, -1, 23, -1, -1, 26, -1, 28, -1,
30, 31, 32, 33, 34, 35, 36, 37, 38, 39,
40, -1, -1, 43, -1, -1, -1, 47, 48, 49,
-1, 51, -1, -1, 54, 55, -1, -1, 58, 59,
-1, -1, -1, -1, 64, 65, 66, -1, 68, 69,
70, 71, 72, 73, -1, 75, 76, 77, 78, 79,
80, 81, 82, -1, 84, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 101, 102, 103, 104, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, 8, 133, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, -1,
-1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
56, -1, 58, 59, -1, -1, -1, -1, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, -1, 75,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 100, -1, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, 134, 135,
136, 8, 138, 10, 11, 12, -1, 14, 15, -1,
-1, -1, -1, 20, 21, -1, -1, -1, -1, 26,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 40, -1, -1, 43, 44, 45, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, -1, 64, -1, -1,
67, -1, -1, -1, -1, -1, -1, -1, 75, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
8, 138, 10, 11, 12, -1, 14, 15, -1, 3,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, 20, 21, -1, 23,
-1, -1, 40, -1, 28, 43, 30, 31, 32, 33,
34, 35, 36, 37, 38, 39, -1, -1, 56, -1,
-1, -1, -1, -1, -1, -1, 64, -1, 66, -1,
54, 55, -1, -1, -1, -1, -1, 75, -1, -1,
-1, -1, -1, -1, -1, 69, 70, 71, 72, 73,
-1, 75, 76, 77, 78, 79, 80, 81, 82, 83,
84, -1, 100, 101, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, 134, 135, 136, 8,
138, 10, 11, 12, -1, 14, 15, -1, -1, -1,
-1, 20, 21, -1, -1, -1, -1, 26, 27, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, 43, 44, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, 56, 20, 21,
-1, -1, -1, -1, 26, 64, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 75, -1, 40, 41,
-1, 43, 44, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 56, -1, -1, -1, -1, -1,
-1, 100, 64, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, 75, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, 134, 135, 136, 100, 138,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, 134, 135, 136, 8, 138, 10, 11, 12,
-1, 14, 15, -1, -1, -1, -1, 20, 21, -1,
-1, -1, -1, 26, 27, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
43, 44, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
-1, 64, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 75, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, 134, 135, 136, 8, 138, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, 27, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
44, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, 44, 45, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
134, 135, 136, 100, 138, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
8, 138, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, 44, 45, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 56, -1,
-1, -1, -1, -1, -1, -1, 64, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 100, -1, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, 134, 135, 136, 8,
138, 10, 11, 12, -1, 14, 15, -1, -1, -1,
-1, 20, 21, -1, -1, -1, -1, 26, 27, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, 43, 44, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, 56, 20, 21,
-1, -1, 24, -1, 26, 64, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 75, -1, 40, -1,
-1, 43, 44, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 56, -1, -1, -1, -1, -1,
-1, 100, 64, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, 75, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, 134, 135, 136, 100, 138,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, 134, 135, 136, 8, 138, 10, 11, 12,
-1, 14, 15, -1, -1, -1, -1, 20, 21, -1,
-1, 24, -1, 26, -1, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
43, 44, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
-1, 64, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 75, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, 134, 135, 136, 8, 138, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, 27, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
44, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 56, -1, -1, -1, -1, -1, -1, -1,
64, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, -1, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
134, 135, 136, 8, 138, 10, 11, 12, -1, 14,
15, -1, -1, -1, -1, 20, 21, -1, -1, -1,
-1, 26, -1, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, -1, 64,
-1, 66, -1, -1, -1, -1, -1, -1, -1, -1,
75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 100, 101, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, 134,
135, 136, 8, 138, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
56, -1, -1, -1, -1, -1, -1, -1, 64, -1,
66, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 100, 101, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, 134, 135,
136, 8, 138, 10, 11, 12, -1, 14, 15, -1,
-1, -1, -1, 20, 21, -1, -1, -1, -1, 26,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, -1, 64, -1, 66,
-1, -1, -1, -1, -1, -1, -1, -1, 75, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 100, 101, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
8, 138, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, 44, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, 44, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, 134, 135, 136, 100,
138, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, 134, 135, 136, 8, 138, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, 44, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, 44,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, 134, 135, 136, 100, 138, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, 134,
135, 136, 8, 138, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, 44, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, 44, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, 134, 135,
136, 100, 138, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, 134, 135, 136, 8, 138,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, 44, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, 44, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, 134, 135, 136, 100, 138, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, 134, 135, 136, 8, 138, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
44, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, 41, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
134, 135, 136, 100, 138, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
8, 138, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, 27,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, 44, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, 134, 135, 136, 100,
138, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, 134, 135, 136, 8, 138, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, 134, 135, 136, 100, 138, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, 134,
135, 136, 8, 138, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, 134, 135,
136, 100, 138, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, 134, 135, 136, 8, 138,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, 134, 135, 136, 100, 138, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, 134, 135, 136, 8, 138, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
134, 135, 136, 100, 138, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, 134, 135, 136,
8, 138, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, 134, 135, 136, 100,
138, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, 134, 135, 136, 8, 138, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 56, -1, -1, -1, -1, -1,
-1, -1, 64, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 100, -1,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, 134, 135, 136, 8, 138, 10, 11, 12,
-1, 14, 15, -1, -1, -1, -1, 20, 21, -1,
-1, -1, -1, 26, -1, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 40, -1, -1,
43, -1, -1, -1, 47, 48, 49, -1, -1, -1,
-1, -1, -1, 56, -1, 58, 59, -1, -1, -1,
-1, 64, -1, -1, -1, 68, -1, -1, -1, -1,
73, -1, 75, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, -1, 135, 136, 8, -1, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, -1, -1, 47, 48, 49, -1, -1, -1, -1,
-1, -1, 56, -1, 58, 59, -1, -1, -1, -1,
64, -1, -1, -1, 68, -1, -1, -1, -1, 73,
-1, 75, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 100, -1, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, -1, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, 135, 136, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, -1, 20, 21, -1, -1, -1,
-1, 26, -1, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 40, -1, -1, 43, -1,
-1, -1, 47, 48, 49, -1, -1, -1, -1, -1,
-1, 56, -1, 58, 59, -1, -1, -1, -1, 64,
-1, -1, -1, 68, -1, -1, -1, -1, 73, -1,
75, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
135, 136, 8, -1, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, -1,
-1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
56, -1, 58, 59, -1, -1, -1, -1, 64, -1,
-1, -1, 68, -1, -1, -1, -1, 73, -1, 75,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 100, -1, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, -1, 135,
136, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, -1, 20, 21, -1, -1, -1, -1, 26,
-1, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 40, -1, -1, 43, -1, -1, -1,
47, 48, 49, -1, -1, -1, -1, -1, -1, 56,
-1, 58, 59, -1, -1, -1, -1, 64, -1, -1,
-1, 68, -1, -1, -1, -1, 73, -1, 75, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, -1, 135, 136,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, -1, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, 56, -1,
58, 59, -1, -1, -1, -1, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, -1, 75, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 100, -1, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
-1, 20, 21, -1, -1, -1, -1, 26, -1, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 40, -1, -1, 43, -1, -1, -1, 47, 48,
49, -1, -1, -1, -1, -1, -1, 56, -1, 58,
59, -1, -1, -1, -1, 64, -1, -1, -1, 68,
-1, -1, -1, -1, -1, -1, 75, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
4, -1, 6, 7, 8, 9, 135, 136, 12, 13,
-1, 15, 16, -1, -1, -1, -1, -1, 22, -1,
24, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
44, -1, -1, 47, 48, 49, -1, -1, -1, -1,
-1, -1, -1, -1, 58, 59, 60, 61, 62, 63,
64, -1, -1, -1, 68, -1, -1, -1, -1, -1,
74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4, -1,
6, 7, 8, 9, 98, 99, 12, 13, -1, 15,
16, 105, -1, -1, -1, -1, 22, -1, 24, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 132, -1,
-1, 47, 48, 49, -1, -1, 52, -1, -1, -1,
-1, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4, -1, 6, 7,
8, 9, 98, 99, 12, 13, -1, 15, 16, 105,
-1, -1, -1, -1, 22, -1, 24, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 45, -1, 47,
48, 49, 8, -1, -1, -1, 12, -1, -1, 15,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
98, 99, 58, 59, -1, -1, -1, 105, 64, -1,
-1, -1, 68, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 4, -1, 6, 7, 8,
9, -1, -1, 12, 13, -1, 15, 16, -1, 105,
-1, -1, -1, 22, -1, 24, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, 44, -1, -1, 47, 48,
49, -1, -1, -1, -1, -1, -1, -1, -1, 58,
59, 60, 61, 62, 63, 64, -1, -1, -1, 68,
-1, -1, -1, -1, -1, 74, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4, -1, 6, 7, 8, 9, 98,
99, 12, 13, -1, 15, 16, 105, -1, -1, -1,
-1, 22, -1, 24, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 131, 132, -1, -1, 47, 48, 49, -1,
-1, -1, -1, -1, -1, -1, -1, 58, 59, 60,
61, 62, 63, 64, -1, -1, -1, 68, -1, -1,
-1, -1, -1, 74, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 87, -1, -1, -1,
-1, 4, -1, 6, 7, 8, 9, 98, 99, 12,
13, -1, 15, 16, 105, -1, -1, -1, -1, 22,
-1, 24, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
131, 132, 45, -1, 47, 48, 49, -1, -1, -1,
-1, -1, -1, -1, -1, 58, 59, 60, 61, 62,
63, 64, -1, -1, -1, 68, -1, -1, -1, -1,
-1, 74, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 4,
-1, 6, 7, 8, 9, 98, 99, 12, 13, -1,
15, 16, 105, -1, -1, -1, -1, 22, -1, 24,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
45, -1, 47, 48, 49, -1, -1, -1, -1, -1,
-1, -1, -1, 58, 59, 60, 61, 62, 63, 64,
-1, -1, -1, 68, -1, -1, -1, -1, -1, 74,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 4, -1, 6,
7, 8, 9, 98, 99, 12, 13, -1, 15, 16,
105, -1, -1, -1, -1, 22, -1, 24, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, 129, 130, 131, 132, 45, -1,
47, 48, 49, -1, -1, -1, -1, -1, -1, -1,
-1, 58, 59, 60, 61, 62, 63, 64, -1, -1,
-1, 68, -1, -1, -1, -1, -1, 74, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4, -1, 6, 7, 8,
9, 98, 99, 12, 13, -1, 15, 16, 105, -1,
-1, -1, -1, 22, -1, 24, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, 129, 130, 131, 132, 45, -1, 47, 48,
49, -1, -1, -1, -1, -1, -1, -1, -1, 58,
59, 60, 61, 62, 63, 64, -1, -1, -1, 68,
-1, -1, -1, -1, -1, 74, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 4, -1, 6, 7, 8, 9, 98,
99, 12, 13, -1, 15, 16, 105, -1, -1, -1,
-1, 22, -1, 24, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
129, 130, 131, 132, -1, -1, 47, 48, 49, -1,
-1, -1, -1, -1, -1, -1, -1, 58, 59, 60,
61, 62, 63, 64, -1, -1, -1, 68, -1, -1,
-1, -1, -1, 74, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 4, -1, 6, 7, 8, 9, 98, 99, 12,
13, -1, 15, 16, 105, -1, -1, -1, -1, 22,
-1, 24, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, 129, 130,
131, 132, -1, -1, 47, 48, 49, -1, -1, -1,
-1, -1, -1, -1, -1, 58, 59, 60, 61, 62,
63, 64, -1, -1, -1, 68, -1, -1, -1, -1,
-1, 74, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 98, 99, -1, -1, -1,
-1, -1, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 129, 130, 131, 132,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, 41, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
41, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 100,
-1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, 135, 136, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, 41,
-1, 43, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, 44,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, -1, 135, 136, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
135, 136, 8, -1, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, -1, 135,
136, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, -1, 135, 136, 8, -1,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, -1, 135, 136, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, -1, 135, 136, 8, -1, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, 135, 136, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, -1, 135, 136,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 100,
-1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, 135, 136, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, -1, 135, 136, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
135, 136, 8, -1, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, -1, 135,
136, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, -1, 135, 136, 8, -1,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, -1, 135, 136, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, -1, 135, 136, 8, -1, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, 135, 136, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, -1, 135, 136,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 100,
-1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, 135, 136, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, -1, 135, 136, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
135, 136, 8, -1, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, -1, 135,
136, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, -1, 135, 136, 8, -1,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, -1, 135, 136, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, -1, 135, 136, 8, -1, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, 135, 136, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, -1, 135, 136,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 100,
-1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, 135, 136, 8, -1, 10, 11,
12, -1, 14, 15, -1, -1, -1, -1, 20, 21,
-1, -1, -1, -1, 26, -1, 28, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 40, -1,
-1, 43, -1, 8, -1, 10, 11, 12, -1, 14,
15, -1, -1, -1, 56, 20, 21, -1, -1, -1,
-1, 26, 64, 28, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 75, -1, 40, -1, -1, 43, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 56, -1, -1, -1, -1, -1, -1, 100, 64,
102, 103, 104, 105, 106, 107, 108, 109, 110, 111,
75, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, -1, -1,
-1, -1, -1, 135, 136, 100, -1, 102, 103, 104,
105, 106, 107, 108, 109, 110, 111, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, -1, -1, -1, -1, -1, -1,
135, 136, 8, -1, 10, 11, 12, -1, 14, 15,
-1, -1, -1, -1, 20, 21, -1, -1, -1, -1,
26, -1, 28, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 40, -1, -1, 43, -1, 8,
-1, 10, 11, 12, -1, 14, 15, -1, -1, -1,
56, 20, 21, -1, -1, -1, -1, 26, 64, 28,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 75,
-1, 40, -1, -1, 43, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 56, -1, -1,
-1, -1, -1, -1, 100, 64, 102, 103, 104, 105,
106, 107, 108, 109, 110, 111, 75, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, -1, -1, -1, -1, -1, 135,
136, 100, -1, 102, 103, 104, 105, 106, 107, 108,
109, 110, 111, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, -1, -1, -1, -1, -1, 135, 136, 8, -1,
10, 11, 12, -1, 14, 15, -1, -1, -1, -1,
20, 21, -1, -1, -1, -1, 26, -1, 28, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
40, -1, -1, 43, -1, 8, -1, 10, 11, 12,
-1, 14, 15, -1, -1, -1, 56, 20, 21, -1,
-1, -1, -1, 26, 64, 28, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 75, -1, 40, -1, -1,
43, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 56, -1, -1, -1, -1, -1, -1,
100, 64, 102, 103, 104, 105, 106, 107, 108, 109,
110, 111, 75, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
-1, -1, -1, -1, -1, 135, 136, 100, -1, 102,
103, 104, 105, 106, 107, 108, 109, 110, 111, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, -1, -1, -1, -1,
-1, -1, 135, 136, 8, -1, 10, 11, 12, -1,
14, 15, -1, -1, -1, -1, 20, 21, -1, -1,
-1, -1, 26, -1, 28, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 40, -1, -1, 43,
-1, 8, -1, 10, 11, 12, -1, 14, 15, -1,
-1, -1, 56, 20, 21, -1, -1, -1, -1, 26,
64, 28, -1, -1, -1, -1, -1, -1, -1, -1,
-1, 75, -1, 40, -1, -1, 43, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 56,
-1, -1, -1, -1, -1, -1, 100, 64, 102, 103,
104, 105, 106, 107, 108, 109, 110, 111, 75, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, 135, 136, 100, -1, 102, 103, 104, 105, 106,
107, 108, 109, 110, 111, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, -1, -1, -1, -1, -1, 135, 136,
8, -1, 10, 11, 12, -1, 14, 15, -1, -1,
-1, -1, 20, 21, -1, -1, -1, -1, 26, -1,
28, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 40, -1, -1, 43, -1, 8, -1, 10,
11, 12, -1, 14, 15, -1, -1, -1, 56, 20,
21, -1, -1, -1, -1, 26, 64, 28, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 75, -1, 40,
-1, -1, 43, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 56, -1, -1, -1, -1,
-1, -1, 100, 64, 102, 103, 104, 105, 106, 107,
108, 109, 110, 111, 75, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, 135, 136, 100,
-1, 102, 103, 104, 105, 106, 107, 108, 109, 110,
111, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, 4, -1,
-1, 7, 8, 9, 135, 136, 12, -1, -1, 15,
16, -1, -1, -1, -1, -1, 22, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 45,
-1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
-1, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4, -1, -1, 7,
8, 9, -1, 99, 12, -1, -1, 15, 16, 105,
-1, -1, -1, -1, 22, -1, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 45, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4, -1, -1, 7, 8, 9, -1, -1,
12, 99, -1, 15, 16, -1, -1, 105, -1, -1,
22, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4, -1,
-1, 7, 8, 9, -1, -1, 12, 99, -1, 15,
16, -1, -1, 105, -1, -1, 22, -1, -1, -1,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, 47, 48, 49, -1, -1, -1, -1, -1, -1,
-1, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4, -1, -1, 7, 8, 9,
-1, -1, 12, 99, -1, 15, 16, -1, -1, 105,
-1, -1, 22, -1, -1, -1, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 47, 48, 49,
-1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
60, 61, 62, 63, 64, -1, -1, -1, 68, -1,
-1, -1, -1, -1, 74, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4, -1, -1, 7, 8, 9, -1, -1, 12, 99,
-1, 15, 16, -1, -1, 105, -1, -1, 22, -1,
-1, -1, -1, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 132, 47, 48, 49, -1, -1, -1, -1,
-1, -1, -1, -1, 58, 59, 60, 61, 62, 63,
64, -1, -1, -1, 68, -1, -1, -1, -1, -1,
74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4, -1, -1, 7,
8, 9, -1, -1, 12, 99, -1, 15, 16, -1,
-1, 105, -1, -1, 22, -1, -1, -1, -1, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 132, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4, -1, -1, 7, 8, 9, -1, -1,
12, 99, -1, 15, 16, -1, -1, 105, -1, -1,
22, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4, -1,
-1, 7, 8, 9, -1, -1, 12, 99, -1, 15,
16, -1, -1, 105, -1, -1, 22, -1, -1, -1,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, 47, 48, 49, -1, -1, -1, -1, -1, -1,
-1, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, -1, -1, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 4, -1, -1, 7, 8, 9,
-1, -1, 12, 99, -1, 15, 16, -1, -1, 105,
-1, -1, 22, -1, -1, -1, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 129, 130, 131, 132, 47, 48, 49,
-1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
60, 61, 62, 63, 64, -1, -1, -1, 68, -1,
-1, -1, -1, -1, 74, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
4, -1, -1, 7, 8, 9, -1, -1, 12, 99,
-1, 15, 16, -1, -1, 105, -1, -1, 22, -1,
-1, -1, -1, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
130, 131, 132, 47, 48, 49, -1, -1, -1, -1,
-1, -1, -1, -1, 58, 59, 60, 61, 62, 63,
64, -1, -1, -1, 68, -1, -1, -1, -1, -1,
74, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 4, -1, -1, 7,
8, 9, -1, -1, 12, 99, -1, 15, 16, -1,
-1, 105, -1, -1, 22, -1, -1, -1, -1, -1,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, 129, 130, 131, 132, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 4, -1, -1, 7, 8, 9, -1, -1,
12, 99, -1, 15, 16, -1, -1, 105, -1, -1,
22, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 4, -1,
-1, 7, 8, 9, -1, -1, 12, 99, -1, 15,
16, -1, -1, 105, -1, -1, -1, -1, -1, -1,
26, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 129, 130, 131,
132, 47, 48, 49, -1, -1, -1, -1, -1, -1,
-1, -1, 58, 59, 60, 61, 62, 63, 64, -1,
-1, -1, 68, -1, -1, -1, 72, -1, 74, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 105,
-1, -1, -1, -1, -1, -1, -1, -1, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, -1, 130, 131, 132, 4, -1, -1,
7, 8, 9, -1, -1, 12, -1, -1, 15, 16,
-1, -1, -1, -1, -1, -1, -1, -1, 25, -1,
-1, -1, -1, -1, -1, -1, 4, -1, -1, 7,
8, 9, -1, 40, 12, -1, -1, 15, 16, -1,
47, 48, 49, -1, -1, -1, 24, -1, -1, -1,
-1, 58, 59, 60, 61, 62, 63, 64, -1, -1,
-1, 68, -1, -1, -1, -1, -1, 74, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, 60, 61, 62, 63, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, 74, -1, 105, -1,
-1, -1, -1, -1, -1, -1, -1, -1, 115, 116,
117, 118, 119, 120, 121, 122, 123, 124, 125, 126,
127, 128, -1, 130, 131, 132, -1, 105, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, 130, 131, 132, 4, -1, -1, 7, 8,
9, -1, -1, 12, -1, -1, 15, 16, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 26, -1, -1,
-1, -1, -1, -1, 4, -1, -1, 7, 8, 9,
-1, -1, 12, -1, -1, 15, 16, -1, 47, 48,
49, -1, -1, -1, -1, 25, -1, -1, -1, 58,
59, 60, 61, 62, 63, 64, -1, -1, -1, 68,
40, -1, -1, -1, -1, 74, -1, 47, 48, 49,
-1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
60, 61, 62, 63, 64, -1, -1, -1, 68, -1,
-1, -1, -1, -1, 74, -1, 105, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, 130, 131, 132, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
130, 131, 132, 4, -1, -1, 7, 8, 9, -1,
-1, 12, -1, -1, 15, 16, -1, -1, -1, -1,
-1, -1, -1, -1, 25, -1, -1, -1, -1, -1,
-1, -1, 4, -1, -1, 7, 8, 9, -1, 40,
12, -1, -1, 15, 16, -1, 47, 48, 49, -1,
-1, -1, -1, 25, -1, -1, -1, 58, 59, 60,
61, 62, 63, 64, -1, -1, -1, 68, 40, -1,
-1, -1, -1, 74, -1, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, 130,
131, 132, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, -1, 130, 131,
132, 4, -1, -1, 7, 8, 9, -1, -1, 12,
-1, -1, 15, 16, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 4, -1, -1, 7, 8,
9, -1, -1, 12, -1, -1, 15, 16, -1, -1,
-1, -1, -1, -1, 47, 48, 49, -1, -1, -1,
-1, -1, -1, -1, -1, 58, 59, 60, 61, 62,
63, 64, -1, -1, -1, 68, -1, -1, 47, 48,
49, 74, -1, -1, -1, -1, -1, -1, -1, 58,
59, 60, 61, 62, 63, 64, -1, -1, -1, 68,
-1, -1, -1, -1, -1, 74, -1, -1, -1, -1,
-1, -1, 105, -1, -1, -1, -1, -1, -1, -1,
-1, -1, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 105, 130, 131, 132,
-1, -1, -1, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
-1, 130, 131, 132, 4, -1, -1, 7, 8, 9,
-1, -1, 12, -1, -1, 15, 16, -1, -1, -1,
-1, -1, 4, -1, -1, 7, 8, 9, -1, -1,
12, -1, -1, 15, 16, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 47, 48, 49,
-1, -1, -1, -1, -1, -1, -1, -1, 58, 59,
60, 61, 62, 63, 64, 47, 48, 49, 68, -1,
-1, -1, -1, -1, 74, -1, 58, 59, 60, 61,
62, 63, 64, -1, -1, -1, 68, -1, -1, -1,
-1, -1, 74, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 105, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 115, 116, 117, 118, 119,
120, 121, 122, 123, 124, 125, 126, 127, 128, -1,
130, 131, 132, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 8, 130, 131,
132, 12, -1, -1, 15, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, 26, -1, -1, -1, 8,
-1, -1, -1, 12, -1, -1, 15, -1, -1, -1,
-1, -1, -1, -1, -1, -1, 47, 48, 49, -1,
-1, -1, 8, -1, -1, -1, 12, 58, 59, 15,
-1, -1, -1, 64, -1, -1, -1, 68, 47, 48,
49, -1, -1, -1, -1, -1, -1, -1, -1, 58,
59, -1, -1, -1, -1, 64, -1, -1, -1, 68,
-1, 47, 48, 49, -1, -1, -1, -1, -1, -1,
-1, -1, 58, 59, -1, -1, -1, -1, 64, -1,
-1, -1, 68, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, -1, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
8, -1, -1, -1, 12, -1, -1, 15, -1, 115,
116, 117, 118, 119, 120, 121, 122, 123, 124, 125,
126, 127, 128, 8, -1, -1, -1, 12, -1, -1,
15, -1, -1, -1, -1, -1, -1, -1, -1, 47,
48, 49, -1, -1, -1, 8, -1, -1, -1, 12,
58, 59, 15, -1, -1, -1, 64, -1, -1, -1,
68, -1, 47, 48, 49, -1, -1, -1, -1, -1,
-1, -1, -1, 58, 59, -1, -1, -1, -1, 64,
-1, -1, -1, 68, 47, 48, 49, -1, -1, -1,
-1, -1, -1, -1, -1, 58, 59, -1, -1, -1,
-1, 64, -1, -1, -1, 68, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, -1, -1, -1, -1, -1, -1, -1, -1, -1,
115, 116, 117, 118, 119, 120, 121, 122, 123, 124,
125, 126, 127, 128, 8, -1, -1, -1, 12, -1,
-1, 15, 115, 116, 117, 118, 119, 120, 121, 122,
123, 124, 125, 126, 127, 128, 8, -1, -1, -1,
12, -1, -1, 15, -1, -1, -1, -1, -1, -1,
-1, -1, -1, 47, 48, 49, -1, -1, -1, 8,
-1, -1, -1, 12, 58, 59, 15, -1, -1, -1,
64, -1, -1, -1, 68, 47, 48, 49, -1, -1,
-1, -1, -1, -1, -1, -1, 58, 59, -1, -1,
-1, -1, 64, -1, -1, -1, 68, -1, 47, 48,
49, -1, -1, -1, -1, -1, -1, -1, -1, 58,
59, -1, -1, -1, -1, 64, -1, -1, -1, 68,
-1, 115, 116, 117, 118, 119, 120, 121, 122, 123,
124, 125, 126, 127, 128, -1, -1, -1, -1, -1,
-1, -1, -1, 115, 116, 117, 118, 119, 120, 121,
122, 123, 124, 125, 126, 127, 128, 8, -1, -1,
-1, 12, -1, -1, 15, -1, 115, 116, 117, 118,
119, 120, 121, 122, 123, 124, 125, 126, 127, 128,
8, -1, -1, -1, 12, -1, -1, 15, -1, -1,
-1, -1, -1, -1, -1, -1, 47, 48, 49, -1,
-1, -1, -1, -1, -1, -1, -1, 58, 59, -1,
-1, -1, -1, 64, -1, -1, -1, 68, -1, 47,
48, 49, -1, -1, -1, -1, -1, -1, -1, -1,
58, 59, -1, -1, -1, -1, 64, -1, -1, -1,
68, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, 115, 116, 117, 118, 119, 120,
121, 122, 123, 124, 125, 126, 127, 128, -1, -1,
-1, -1, -1, -1, -1, -1, -1, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128
};
/* YYSTOS[STATE-NUM] -- The symbol kind of the accessing symbol of
state STATE-NUM. */
static const yytype_int16 yystos[] =
{
0, 4, 6, 7, 8, 9, 12, 13, 15, 16,
22, 24, 47, 48, 49, 58, 59, 60, 61, 62,
63, 64, 68, 74, 87, 98, 99, 115, 116, 117,
118, 119, 120, 121, 122, 123, 124, 125, 126, 127,
128, 129, 130, 131, 132, 145, 147, 161, 164, 171,
177, 178, 190, 198, 200, 201, 203, 226, 229, 230,
232, 233, 234, 238, 239, 241, 247, 248, 249, 253,
256, 257, 258, 266, 267, 268, 269, 270, 283, 284,
286, 287, 314, 328, 335, 336, 337, 339, 340, 341,
342, 343, 353, 362, 370, 400, 402, 403, 407, 408,
413, 414, 416, 422, 424, 425, 427, 431, 433, 434,
438, 441, 444, 445, 44, 232, 328, 133, 409, 72,
238, 341, 8, 15, 68, 153, 247, 442, 443, 26,
47, 48, 341, 342, 26, 24, 8, 42, 89, 291,
329, 330, 331, 332, 8, 250, 26, 13, 99, 7,
9, 24, 230, 256, 268, 5, 22, 25, 26, 28,
29, 40, 54, 75, 143, 162, 176, 230, 231, 236,
237, 341, 360, 378, 379, 44, 177, 178, 341, 402,
178, 230, 236, 296, 297, 298, 341, 232, 12, 44,
178, 8, 416, 6, 144, 327, 12, 8, 13, 151,
8, 210, 416, 427, 52, 209, 232, 72, 0, 64,
105, 12, 234, 44, 232, 13, 15, 47, 73, 178,
342, 365, 414, 417, 418, 424, 428, 429, 8, 13,
151, 178, 341, 24, 143, 3, 24, 8, 10, 11,
12, 14, 20, 21, 26, 28, 40, 43, 56, 75,
100, 102, 103, 104, 106, 107, 108, 109, 110, 111,
134, 135, 136, 138, 150, 160, 163, 165, 182, 197,
206, 213, 221, 243, 263, 265, 273, 278, 292, 294,
311, 312, 315, 316, 317, 334, 341, 347, 354, 363,
371, 372, 373, 382, 386, 394, 398, 402, 403, 415,
419, 434, 436, 437, 439, 449, 8, 213, 214, 317,
234, 67, 331, 178, 178, 8, 8, 178, 23, 12,
214, 232, 178, 297, 178, 99, 26, 360, 378, 178,
26, 40, 178, 178, 102, 292, 341, 28, 54, 384,
385, 236, 24, 178, 75, 26, 40, 369, 378, 17,
18, 19, 68, 158, 161, 178, 239, 249, 256, 267,
268, 283, 321, 325, 326, 362, 407, 413, 441, 445,
42, 186, 187, 199, 342, 151, 23, 26, 44, 100,
191, 193, 301, 304, 392, 3, 24, 8, 259, 260,
261, 262, 254, 255, 342, 26, 87, 234, 12, 402,
402, 72, 8, 210, 200, 214, 292, 403, 410, 411,
412, 426, 431, 432, 434, 26, 45, 234, 72, 232,
14, 152, 429, 3, 73, 8, 143, 146, 143, 146,
402, 23, 8, 402, 439, 442, 26, 5, 197, 273,
426, 8, 14, 23, 28, 75, 143, 194, 195, 196,
295, 308, 309, 399, 197, 3, 11, 20, 21, 23,
26, 28, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 40, 43, 51, 54, 55, 65, 66, 69,
70, 71, 72, 73, 75, 76, 77, 78, 79, 80,
81, 82, 84, 101, 102, 103, 104, 222, 364, 409,
432, 440, 26, 389, 390, 8, 238, 427, 197, 197,
72, 72, 72, 72, 26, 165, 166, 5, 26, 436,
26, 165, 193, 66, 101, 20, 21, 28, 51, 69,
70, 71, 3, 27, 78, 26, 72, 230, 231, 310,
313, 72, 54, 23, 30, 31, 32, 33, 34, 35,
36, 37, 38, 39, 53, 55, 167, 75, 76, 77,
151, 72, 83, 84, 26, 40, 65, 67, 103, 104,
72, 73, 81, 82, 79, 80, 26, 193, 26, 193,
197, 27, 8, 24, 24, 67, 24, 342, 383, 9,
147, 3, 27, 8, 44, 24, 254, 342, 214, 426,
369, 27, 409, 22, 180, 181, 226, 227, 228, 40,
50, 137, 392, 446, 447, 448, 178, 365, 366, 367,
368, 214, 215, 65, 420, 42, 231, 178, 326, 45,
178, 188, 189, 50, 204, 205, 8, 201, 402, 402,
165, 193, 302, 274, 302, 303, 45, 67, 244, 245,
246, 303, 26, 217, 218, 373, 296, 178, 23, 3,
45, 42, 251, 252, 252, 8, 366, 329, 87, 374,
375, 12, 412, 23, 178, 143, 3, 73, 178, 432,
5, 26, 155, 156, 157, 357, 358, 359, 376, 379,
105, 45, 230, 143, 146, 417, 392, 393, 146, 23,
146, 23, 240, 241, 242, 143, 273, 3, 20, 21,
23, 28, 30, 31, 32, 33, 34, 35, 36, 37,
38, 39, 54, 55, 69, 70, 71, 72, 73, 75,
76, 77, 78, 79, 80, 81, 82, 83, 84, 279,
279, 27, 27, 143, 8, 143, 14, 8, 3, 3,
41, 27, 41, 40, 40, 72, 8, 435, 219, 220,
379, 366, 44, 388, 426, 426, 426, 426, 273, 426,
26, 426, 426, 40, 197, 26, 350, 351, 334, 334,
263, 398, 386, 386, 163, 165, 265, 366, 418, 10,
355, 356, 44, 208, 412, 294, 273, 316, 302, 371,
371, 371, 8, 402, 439, 412, 197, 197, 274, 275,
275, 151, 151, 206, 206, 206, 206, 160, 160, 275,
275, 8, 340, 24, 8, 409, 24, 44, 234, 338,
340, 143, 143, 27, 8, 173, 8, 168, 172, 173,
174, 175, 179, 228, 8, 293, 23, 42, 86, 224,
225, 282, 285, 446, 282, 228, 27, 3, 143, 41,
426, 326, 8, 146, 236, 322, 323, 324, 254, 16,
158, 202, 238, 341, 342, 143, 3, 187, 27, 143,
3, 8, 3, 141, 191, 3, 141, 54, 55, 214,
45, 260, 432, 24, 27, 332, 333, 42, 73, 216,
317, 342, 410, 358, 376, 379, 40, 369, 40, 369,
157, 376, 377, 27, 5, 26, 156, 236, 379, 146,
23, 426, 426, 24, 178, 242, 156, 27, 197, 5,
197, 143, 8, 301, 28, 196, 194, 41, 41, 412,
220, 27, 15, 44, 100, 207, 273, 344, 387, 391,
401, 430, 73, 73, 73, 73, 27, 27, 8, 27,
27, 41, 274, 26, 352, 432, 27, 73, 26, 178,
99, 177, 178, 190, 235, 307, 404, 405, 406, 73,
42, 73, 27, 41, 292, 292, 27, 27, 44, 27,
338, 45, 24, 27, 27, 24, 42, 5, 3, 41,
12, 26, 169, 170, 3, 41, 66, 85, 8, 202,
318, 319, 320, 225, 208, 228, 5, 365, 178, 178,
191, 192, 392, 448, 3, 24, 158, 159, 16, 154,
13, 427, 188, 302, 244, 45, 45, 373, 217, 65,
178, 17, 24, 8, 143, 369, 27, 215, 420, 215,
379, 23, 23, 292, 27, 27, 279, 301, 73, 341,
342, 273, 26, 216, 24, 45, 387, 26, 26, 26,
26, 27, 197, 27, 426, 26, 193, 348, 349, 40,
345, 346, 361, 379, 313, 393, 214, 420, 421, 8,
8, 40, 57, 85, 86, 90, 91, 92, 93, 94,
95, 96, 97, 112, 114, 208, 223, 230, 273, 276,
277, 305, 306, 397, 423, 404, 45, 165, 338, 24,
45, 168, 174, 41, 8, 26, 40, 44, 46, 183,
184, 185, 8, 301, 24, 24, 143, 26, 193, 3,
208, 385, 42, 23, 380, 381, 236, 322, 202, 202,
402, 143, 143, 402, 24, 24, 41, 41, 302, 302,
197, 427, 45, 24, 273, 273, 273, 273, 27, 275,
276, 40, 346, 393, 310, 27, 42, 193, 271, 272,
273, 42, 208, 26, 404, 26, 24, 24, 272, 8,
214, 4, 11, 142, 149, 26, 24, 45, 5, 185,
185, 185, 183, 27, 24, 275, 318, 88, 288, 289,
356, 214, 139, 392, 448, 24, 234, 178, 178, 27,
24, 10, 148, 27, 27, 27, 27, 349, 27, 41,
214, 208, 404, 24, 404, 289, 178, 211, 273, 90,
22, 161, 178, 277, 299, 300, 400, 24, 24, 42,
26, 62, 299, 300, 27, 41, 45, 27, 143, 26,
289, 290, 178, 192, 23, 65, 395, 396, 178, 41,
230, 27, 26, 211, 212, 178, 280, 404, 300, 208,
211, 5, 178, 264, 424, 24, 178, 236, 404, 273,
24, 230, 42, 211, 113, 27, 432, 27, 191, 27,
276, 28, 54, 236, 385, 271, 281, 27, 404, 404,
156, 236, 208, 24, 27, 40, 27, 404, 404, 293,
404, 113, 41, 404
};
/* YYR1[RULE-NUM] -- Symbol kind of the left-hand side of rule RULE-NUM. */
static const yytype_int16 yyr1[] =
{
0, 140, 141, 141, 142, 142, 143, 143, 144, 144,
145, 145, 146, 146, 147, 147, 148, 148, 149, 149,
150, 150, 151, 151, 152, 152, 153, 153, 154, 154,
155, 155, 155, 156, 156, 157, 157, 158, 158, 158,
159, 159, 160, 160, 160, 161, 162, 162, 163, 163,
164, 165, 165, 165, 165, 166, 166, 167, 167, 167,
167, 167, 167, 167, 167, 167, 167, 167, 168, 169,
170, 170, 171, 172, 172, 172, 172, 173, 174, 174,
175, 176, 176, 177, 178, 178, 179, 179, 180, 181,
181, 182, 183, 183, 183, 183, 184, 184, 185, 185,
186, 187, 187, 188, 188, 188, 189, 189, 190, 190,
190, 190, 190, 190, 190, 190, 190, 191, 191, 192,
192, 193, 193, 193, 194, 194, 195, 195, 196, 196,
197, 197, 198, 198, 199, 200, 200, 200, 201, 201,
202, 202, 202, 203, 204, 205, 205, 206, 206, 207,
208, 209, 210, 211, 211, 212, 212, 213, 213, 214,
215, 215, 216, 217, 217, 218, 218, 219, 220, 220,
221, 222, 223, 224, 225, 225, 226, 226, 227, 228,
228, 229, 229, 229, 229, 229, 229, 229, 229, 229,
230, 230, 231, 231, 232, 232, 232, 232, 232, 232,
232, 232, 232, 232, 232, 232, 232, 233, 233, 234,
234, 235, 236, 236, 237, 238, 239, 240, 241, 241,
241, 242, 242, 243, 243, 244, 245, 245, 246, 247,
248, 248, 248, 248, 249, 250, 250, 251, 252, 252,
253, 254, 255, 255, 256, 256, 256, 257, 258, 258,
259, 260, 260, 261, 261, 262, 262, 263, 263, 263,
264, 264, 264, 265, 265, 266, 267, 268, 268, 269,
269, 270, 270, 270, 271, 271, 272, 272, 273, 273,
274, 275, 275, 276, 276, 277, 278, 278, 278, 279,
279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
279, 279, 279, 279, 279, 279, 279, 279, 279, 279,
279, 280, 280, 281, 282, 282, 282, 282, 283, 283,
284, 284, 285, 286, 287, 287, 288, 289, 290, 290,
291, 292, 292, 293, 293, 294, 294, 295, 295, 296,
296, 297, 297, 298, 298, 299, 299, 299, 300, 300,
301, 301, 302, 302, 303, 303, 304, 304, 305, 305,
305, 305, 306, 306, 306, 306, 306, 307, 307, 307,
308, 308, 308, 309, 309, 310, 310, 311, 311, 312,
313, 314, 314, 315, 315, 316, 316, 317, 317, 318,
318, 319, 319, 320, 320, 321, 321, 321, 321, 321,
321, 321, 321, 321, 321, 321, 322, 322, 322, 322,
323, 323, 324, 324, 325, 325, 326, 326, 327, 328,
328, 328, 329, 330, 330, 331, 331, 332, 333, 333,
334, 334, 334, 334, 335, 336, 337, 338, 339, 339,
339, 340, 340, 341, 341, 341, 341, 341, 341, 342,
342, 343, 344, 345, 345, 346, 346, 347, 347, 348,
348, 349, 349, 350, 351, 351, 352, 353, 354, 355,
355, 356, 356, 357, 357, 357, 358, 358, 359, 359,
359, 360, 360, 360, 360, 361, 361, 362, 363, 363,
364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
364, 364, 364, 364, 364, 364, 364, 364, 364, 364,
364, 364, 364, 364, 365, 365, 365, 365, 366, 366,
367, 367, 368, 368, 369, 370, 370, 371, 371, 371,
372, 372, 372, 372, 372, 372, 372, 372, 372, 372,
372, 372, 372, 372, 372, 372, 372, 373, 373, 373,
373, 373, 373, 373, 374, 375, 375, 376, 376, 377,
377, 378, 378, 379, 379, 379, 379, 380, 381, 381,
382, 383, 384, 384, 385, 385, 386, 386, 386, 386,
386, 387, 387, 387, 387, 388, 389, 390, 390, 391,
391, 392, 393, 393, 394, 395, 396, 396, 397, 397,
397, 397, 397, 398, 398, 398, 399, 399, 399, 399,
400, 400, 400, 401, 402, 403, 403, 403, 403, 403,
403, 403, 403, 403, 403, 403, 403, 403, 403, 403,
403, 403, 403, 403, 404, 404, 404, 404, 404, 404,
404, 404, 405, 405, 406, 406, 407, 407, 408, 408,
408, 408, 409, 410, 410, 410, 411, 411, 412, 412,
413, 413, 414, 415, 415, 415, 416, 417, 417, 418,
418, 419, 420, 421, 421, 422, 422, 423, 424, 424,
425, 425, 426, 427, 427, 427, 428, 428, 428, 428,
428, 428, 429, 429, 430, 431, 431, 431, 431, 432,
432, 433, 433, 434, 434, 435, 436, 436, 436, 436,
436, 436, 436, 436, 436, 436, 436, 436, 437, 437,
437, 437, 437, 437, 438, 439, 439, 439, 439, 439,
439, 439, 440, 441, 442, 443, 443, 444, 445, 446,
446, 447, 447, 448, 448, 449, 449
};
/* YYR2[RULE-NUM] -- Number of symbols on the right-hand side of rule RULE-NUM. */
static const yytype_int8 yyr2[] =
{
0, 2, 0, 1, 0, 1, 0, 1, 0, 1,
0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
1, 3, 1, 0, 1, 1, 2, 1, 1, 1,
0, 1, 1, 3, 3, 6, 5, 5, 1, 3,
6, 1, 1, 1, 3, 0, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 3,
0, 1, 2, 1, 3, 2, 4, 1, 0, 1,
3, 6, 1, 2, 0, 1, 1, 1, 3, 0,
1, 2, 3, 3, 3, 1, 1, 2, 0, 1,
2, 0, 1, 2, 4, 4, 2, 4, 1, 1,
1, 1, 1, 1, 1, 1, 1, 2, 1, 0,
1, 4, 4, 2, 1, 1, 1, 1, 1, 3,
1, 4, 5, 3, 2, 1, 1, 1, 1, 1,
2, 3, 1, 4, 1, 0, 1, 1, 3, 6,
3, 5, 1, 1, 4, 0, 1, 1, 5, 1,
0, 1, 1, 1, 3, 1, 3, 2, 0, 1,
2, 2, 3, 2, 0, 1, 1, 1, 2, 0,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
2, 2, 0, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 2, 0,
1, 1, 1, 3, 2, 4, 8, 2, 1, 1,
1, 2, 2, 3, 5, 2, 1, 3, 2, 3,
4, 2, 4, 1, 1, 1, 4, 2, 0, 1,
4, 2, 0, 1, 1, 2, 2, 1, 4, 5,
2, 1, 3, 1, 3, 0, 1, 1, 3, 3,
3, 3, 1, 1, 3, 3, 4, 4, 1, 0,
1, 2, 4, 2, 1, 1, 0, 1, 1, 3,
1, 0, 1, 0, 1, 2, 5, 5, 7, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 3, 6, 1, 2, 1, 3, 3, 5, 5,
1, 1, 4, 3, 0, 1, 5, 2, 0, 1,
1, 1, 1, 1, 3, 1, 3, 3, 4, 2,
2, 1, 3, 0, 1, 1, 1, 1, 0, 1,
1, 3, 1, 1, 2, 4, 0, 1, 5, 7,
8, 8, 2, 2, 3, 1, 3, 4, 5, 4,
1, 1, 3, 0, 1, 1, 5, 3, 7, 3,
4, 5, 3, 3, 2, 1, 3, 1, 3, 4,
2, 1, 1, 2, 4, 4, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 3, 2, 2, 5,
1, 3, 0, 1, 2, 3, 0, 1, 6, 4,
4, 4, 2, 2, 3, 0, 1, 3, 0, 1,
1, 3, 3, 3, 7, 1, 5, 1, 1, 1,
1, 1, 1, 1, 2, 2, 2, 3, 4, 0,
1, 8, 3, 2, 1, 0, 1, 5, 7, 3,
1, 0, 1, 3, 0, 1, 2, 3, 4, 4,
1, 0, 1, 2, 5, 3, 0, 1, 2, 5,
1, 2, 2, 5, 3, 4, 5, 5, 2, 5,
1, 1, 3, 3, 1, 2, 2, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 4, 6, 4, 6, 2, 3,
1, 3, 0, 1, 7, 2, 5, 1, 3, 3,
1, 4, 4, 4, 4, 2, 2, 4, 4, 2,
2, 7, 7, 7, 7, 4, 4, 1, 1, 3,
1, 1, 1, 1, 5, 0, 1, 1, 2, 0,
1, 1, 2, 3, 2, 2, 4, 2, 0, 1,
3, 2, 1, 1, 0, 1, 1, 3, 3, 3,
3, 1, 1, 1, 1, 3, 3, 0, 1, 1,
2, 2, 0, 1, 3, 2, 0, 1, 7, 9,
4, 6, 6, 1, 3, 3, 2, 3, 1, 2,
3, 4, 8, 2, 4, 2, 3, 1, 1, 2,
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 1, 1, 1, 1, 2, 2, 2, 2, 2,
1, 2, 1, 2, 0, 1, 5, 7, 1, 1,
1, 1, 1, 1, 1, 1, 2, 4, 0, 1,
2, 2, 5, 1, 4, 4, 1, 1, 1, 1,
3, 2, 2, 0, 1, 1, 4, 3, 2, 5,
0, 1, 2, 1, 1, 1, 3, 4, 3, 4,
4, 5, 1, 1, 4, 1, 1, 1, 1, 2,
2, 1, 1, 3, 4, 1, 1, 2, 2, 2,
1, 2, 4, 5, 4, 1, 1, 1, 1, 1,
1, 1, 1, 1, 6, 1, 1, 1, 1, 2,
2, 1, 2, 3, 3, 2, 4, 6, 3, 1,
1, 1, 2, 0, 1, 2, 2
};
/* YYDPREC[RULE-NUM] -- Dynamic precedence of rule #RULE-NUM (0 if none). */
static const yytype_int8 yydprec[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0
};
/* YYMERGER[RULE-NUM] -- Index of merging function for rule #RULE-NUM. */
static const yytype_int8 yymerger[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0
};
/* YYIMMEDIATE[RULE-NUM] -- True iff rule #RULE-NUM is not to be deferred, as
in the case of predicates. */
static const yybool yyimmediate[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0
};
/* YYCONFLP[YYPACT[STATE-NUM]] -- Pointer into YYCONFL of start of
list of conflicting reductions corresponding to action entry for
state STATE-NUM in yytable. 0 means no conflicts. The list in
yyconfl is terminated by a rule number of 0. */
static const yytype_int16 yyconflp[] =
{
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 187, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1197, 0, 0, 1897, 0, 0, 0, 0,
0, 1921, 0, 0, 0, 0, 1227, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3794,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1923, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3799,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 171, 0, 0, 2055,
0, 2057, 176, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1899, 0, 0, 0, 0, 0, 0, 0, 0, 3903,
0, 0, 0, 3319, 0, 185, 0, 0, 0, 2059,
0, 0, 0, 0, 0, 2908, 0, 3658, 0, 3905,
3907, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1905, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3132, 0, 1987, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1989, 0, 0, 0, 290, 0, 0, 0, 292,
0, 0, 0, 0, 0, 0, 0, 3134, 0, 1991,
1993, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 986, 0, 0, 0, 0, 178,
0, 0, 395, 181, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 397, 0,
0, 294, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2797, 0, 0, 0, 0,
0, 0, 0, 0, 0, 183, 0, 0, 0, 1223,
2799, 1187, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1225, 0, 0, 0, 2801, 2803,
0, 0, 0, 0, 0, 0, 0, 1189, 0, 0,
0, 0, 0, 0, 0, 0, 2910, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1967, 0, 0,
1971, 0, 1208, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3399, 0, 0, 0, 1210, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2049, 0, 0, 0, 2051, 0,
3401, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3403, 1212, 0, 0, 0, 0, 0, 1214, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2053, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1216, 0, 3324, 0, 0, 0, 0,
0, 0, 0, 0, 2061, 1084, 0, 0, 0, 0,
0, 0, 1086, 0, 0, 3326, 3328, 0, 0, 0,
0, 0, 0, 0, 1200, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3330, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2825, 0, 0, 0,
0, 0, 0, 2120, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1891, 0, 0, 3317, 0, 0, 3397, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1893, 0, 0, 0,
0, 0, 0, 2232, 1175, 0, 3375, 2234, 1177, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2236, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2137, 0, 0, 0, 0, 0, 0, 0, 2238,
0, 0, 0, 0, 0, 0, 0, 2817, 0, 2240,
1179, 2819, 0, 0, 0, 0, 0, 0, 3801, 1220,
2242, 0, 0, 0, 0, 0, 0, 0, 0, 1911,
0, 0, 0, 0, 0, 0, 1979, 0, 0, 0,
3992, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1981, 0, 0, 0, 0, 0, 0, 0, 0,
3671, 1983, 0, 2821, 0, 0, 3673, 0, 3897, 1977,
0, 0, 0, 0, 0, 0, 1985, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1997, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3343, 0, 0, 0, 0, 2863, 0, 0,
0, 2861, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1314, 0, 0, 0, 0, 0, 399, 0, 0,
0, 0, 0, 0, 3679, 0, 0, 0, 3681, 0,
2857, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3683, 0, 0, 2859, 0, 0, 0, 0,
0, 4888, 0, 0, 0, 0, 0, 2827, 0, 2829,
0, 0, 0, 0, 0, 0, 0, 984, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3371, 0, 0,
3685, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3663, 0, 2793, 2795, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 304, 0, 0, 0, 306,
0, 0, 0, 0, 0, 4484, 0, 0, 0, 0,
0, 0, 2865, 0, 0, 0, 0, 4486, 0, 2224,
1229, 0, 0, 3784, 0, 973, 0, 0, 0, 976,
0, 0, 978, 4886, 0, 0, 1719, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3373, 0, 3786,
1969, 308, 0, 0, 0, 0, 0, 0, 0, 0,
0, 4890, 0, 2015, 980, 0, 992, 0, 0, 1895,
3788, 0, 0, 0, 0, 0, 0, 0, 1218, 2017,
0, 982, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1953, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5032, 0, 0, 2115, 0, 2041,
0, 0, 0, 1958, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2019, 0, 0, 0, 0, 2117, 2021,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3116,
0, 0, 0, 3118, 0, 1995, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3120,
3332, 0, 0, 3699, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3122, 0, 1949, 0, 3144,
0, 0, 0, 1956, 0, 3124, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3126, 1960, 0, 0,
2122, 0, 0, 3146, 2125, 0, 2823, 2127, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2129,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2131, 0, 0, 0,
0, 0, 0, 1181, 0, 0, 0, 1183, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2043, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2150,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2851, 0, 0, 0, 0, 0, 2226, 1185,
0, 0, 0, 2228, 0, 2230, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2577,
0, 0, 0, 0, 0, 0, 0, 0, 2867, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2869,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2831,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2837, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2809, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2811, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3148, 0, 3228, 3230, 0, 0, 0, 0, 0, 0,
0, 0, 3232, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2813, 0, 0, 0, 0, 0, 2815, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1191, 3665, 0, 2872, 1193, 3667, 2874, 0, 0,
0, 2876, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2878, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1195, 3669, 0,
0, 0, 0, 2880, 0, 0, 0, 0, 0, 0,
0, 2139, 0, 0, 0, 2142, 0, 0, 2144, 0,
0, 2615, 0, 0, 3361, 2618, 0, 3363, 2620, 0,
0, 3365, 0, 0, 3675, 3677, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3367, 0, 0, 0, 0,
2146, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2622, 0, 0, 0, 0, 0, 0, 2148, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2624, 0, 0,
0, 0, 0, 3369, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 5204, 0, 0, 0, 5206,
0, 0, 0, 0, 5212, 0, 5214, 0, 0, 0,
0, 0, 0, 5208, 0, 0, 5026, 5450, 0, 0,
0, 2898, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3353, 0,
0, 5210, 3355, 0, 0, 0, 5038, 0, 0, 0,
5040, 0, 0, 0, 0, 0, 3357, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1202, 0, 0, 0, 1204, 0, 0,
0, 0, 0, 0, 3359, 0, 0, 0, 0, 0,
0, 0, 5042, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2035, 0, 0, 0, 2037, 4892, 0, 0,
0, 4894, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1206,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2039, 0,
0, 0, 0, 4896, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5028, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1951,
5030, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 265, 0, 0, 267, 0, 0, 0, 271,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 274, 0, 276, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 278, 0, 280, 0, 0, 0, 0, 0, 0,
0, 282, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 286, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 288,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2063, 0, 0, 0, 2066, 0,
0, 2068, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2070, 2072, 2074, 0, 0, 0, 0,
0, 0, 0, 0, 2076, 2078, 0, 0, 0, 0,
2080, 0, 0, 0, 2083, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2085, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2087, 2089, 2091, 2093, 2095, 2097, 2099, 2101, 2103,
2105, 2107, 2109, 2111, 2113, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3489, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3491, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4496, 0, 0, 4498,
4500, 4504, 0, 0, 4506, 0, 0, 4509, 4512, 0,
0, 0, 0, 0, 0, 0, 0, 4514, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2152,
0, 0, 4516, 0, 0, 0, 0, 0, 0, 4519,
4521, 4523, 0, 0, 0, 0, 0, 0, 0, 0,
4525, 4527, 4529, 4531, 4533, 4535, 4537, 0, 0, 0,
4541, 0, 0, 0, 0, 0, 4543, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2154, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4545, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4548, 4551, 4554,
4557, 4560, 4563, 4566, 4569, 4572, 4575, 4578, 4581, 4584,
4587, 0, 4590, 4592, 4594, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3702, 0, 0, 3704,
0, 0, 0, 3707, 0, 3709, 3711, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3713, 0, 0, 0, 0, 0, 0, 3715, 3717,
3719, 0, 0, 0, 0, 0, 0, 0, 0, 3721,
3723, 0, 0, 0, 0, 3725, 0, 0, 0, 3728,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3730, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3732, 3734, 3736, 3738,
3740, 3742, 3744, 3746, 3748, 3750, 3752, 3754, 3756, 3758,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4314, 0, 0, 4317,
4320, 4324, 4327, 4329, 4331, 0, 4334, 4336, 4339, 0,
0, 0, 4342, 4344, 0, 0, 0, 4346, 4348, 0,
4350, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4352, 0, 0, 4355, 0, 0, 0, 4357,
4360, 4363, 0, 0, 0, 0, 0, 0, 4366, 0,
4368, 4371, 4374, 4377, 4380, 4383, 4386, 0, 4390, 0,
4392, 0, 0, 0, 0, 0, 4395, 4398, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4400, 4402, 4404, 4406, 4408, 4410, 4413, 4415,
4417, 4419, 4421, 4423, 0, 0, 0, 4425, 4428, 4431,
4434, 4437, 4440, 4443, 4446, 4449, 4452, 4455, 4458, 4461,
4464, 0, 4467, 4470, 4473, 0, 4476, 4478, 4480, 0,
4482, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 402, 404, 406, 408, 410,
412, 414, 416, 0, 418, 420, 0, 422, 424, 0,
0, 0, 426, 428, 430, 432, 434, 436, 438, 440,
442, 444, 446, 448, 450, 452, 454, 456, 458, 460,
462, 464, 466, 468, 470, 0, 472, 474, 0, 476,
478, 480, 482, 484, 486, 488, 490, 492, 494, 0,
496, 498, 500, 502, 504, 506, 508, 510, 0, 512,
514, 516, 518, 520, 522, 524, 526, 528, 530, 532,
534, 536, 538, 540, 542, 544, 546, 0, 548, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
550, 552, 554, 0, 556, 558, 560, 562, 0, 0,
0, 0, 0, 0, 0, 0, 0, 564, 566, 568,
570, 572, 574, 576, 578, 580, 582, 584, 586, 588,
590, 592, 594, 596, 598, 0, 0, 0, 0, 600,
1316, 1320, 1324, 1328, 1332, 1336, 1340, 1344, 0, 1348,
1352, 0, 1356, 1360, 0, 0, 0, 1364, 1368, 1372,
1376, 1380, 1384, 1388, 1392, 1396, 1400, 1404, 1408, 1412,
1416, 1420, 1424, 1428, 1432, 1436, 1440, 1444, 1448, 1452,
0, 1456, 1460, 0, 1464, 1468, 1472, 1476, 1480, 1484,
1488, 1492, 1496, 1500, 0, 1504, 1508, 1512, 1516, 1520,
1524, 1528, 1533, 0, 1537, 1541, 1545, 1549, 1553, 1557,
1562, 1566, 1570, 1574, 1578, 1582, 1586, 1590, 1594, 1598,
1602, 1606, 0, 1610, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1614, 1618, 1622, 0, 1626,
1630, 1634, 1638, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1643, 1647, 1651, 1655, 1659, 1663, 1667, 1671,
1675, 1679, 1683, 1687, 1691, 1695, 1699, 1703, 1707, 1711,
0, 0, 0, 0, 1715, 2244, 2247, 2250, 2253, 2256,
2259, 2262, 2265, 0, 2268, 2271, 0, 2274, 2277, 0,
0, 0, 2280, 2283, 2286, 2289, 2292, 2295, 2298, 2301,
2304, 2307, 2310, 2313, 2316, 2319, 2322, 2325, 2328, 2331,
2334, 2337, 2340, 2343, 2346, 0, 2349, 2352, 0, 2355,
2358, 2361, 2364, 2367, 2370, 2373, 2376, 2379, 2382, 0,
2385, 2388, 2391, 2394, 2397, 2400, 2403, 2406, 0, 2409,
2412, 2415, 2418, 2421, 2424, 2428, 2431, 2434, 2437, 2440,
2443, 2446, 2449, 2452, 2455, 2458, 2461, 0, 2464, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2467, 2470, 2473, 0, 2476, 2479, 2482, 2485, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2488, 2491, 2494,
2497, 2500, 2503, 2506, 2509, 2512, 2515, 2518, 2521, 2524,
2527, 2530, 2533, 2536, 2539, 0, 0, 0, 0, 2542,
2916, 2918, 2920, 2922, 2924, 2926, 2928, 2930, 0, 2932,
2934, 0, 2936, 2938, 0, 0, 0, 2940, 2942, 2944,
2946, 2948, 2950, 2952, 2954, 2956, 2958, 2960, 2962, 2964,
2966, 2968, 2970, 2972, 2974, 2976, 2978, 2980, 2982, 2984,
0, 2986, 2988, 0, 2990, 2992, 2994, 2996, 2998, 3000,
3002, 3004, 3006, 3008, 0, 3010, 3012, 3014, 3016, 3018,
3020, 3022, 3024, 0, 3026, 3028, 3030, 3032, 3034, 3036,
3038, 3040, 3042, 3044, 3046, 3048, 3050, 3052, 3054, 3056,
3058, 3060, 0, 3062, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3064, 3066, 3068, 0, 3070,
3072, 3074, 3076, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3078, 3080, 3082, 3084, 3086, 3088, 3090, 3092,
3094, 3096, 3098, 3100, 3102, 3104, 3106, 3108, 3110, 3112,
0, 0, 4674, 0, 3114, 4677, 4680, 4684, 4687, 4689,
4691, 0, 4694, 4696, 4699, 0, 0, 0, 4702, 4704,
0, 0, 0, 4706, 4708, 0, 4710, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4712, 0,
0, 4715, 0, 0, 0, 4717, 4720, 4723, 0, 0,
0, 0, 0, 0, 4726, 0, 4728, 4731, 4734, 4737,
4740, 4743, 4746, 0, 4750, 0, 4752, 0, 0, 0,
0, 0, 4755, 4758, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4760, 4762,
4764, 4766, 4768, 4770, 4773, 4775, 4777, 4779, 4781, 4783,
0, 0, 0, 4785, 4788, 4791, 4794, 4797, 4800, 4803,
4806, 4809, 4812, 4815, 4818, 4821, 4824, 0, 4827, 4830,
4833, 0, 4836, 4838, 4840, 4196, 4842, 0, 4199, 4202,
4206, 0, 0, 4209, 0, 0, 4212, 4215, 0, 0,
0, 0, 0, 0, 0, 0, 4218, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 4220, 0, 0, 0, 0, 0, 0, 4223, 4226,
4229, 0, 0, 0, 0, 0, 0, 0, 0, 4232,
4235, 4238, 4241, 4244, 4247, 4250, 0, 0, 0, 4254,
0, 0, 0, 0, 0, 4257, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4260, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4263, 4266, 4269, 4272,
4275, 4278, 4281, 4284, 4287, 4290, 4293, 4296, 4299, 4302,
0, 4305, 4308, 4311, 0, 0, 0, 0, 0, 0,
0, 1907, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1909, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2565, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2567,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2833, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2835, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 768, 0, 0, 0, 770, 772,
774, 776, 778, 780, 0, 0, 782, 784, 0, 786,
788, 790, 792, 794, 0, 0, 796, 0, 798, 800,
802, 0, 804, 806, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 808, 0, 810, 0, 0, 812,
0, 814, 816, 818, 0, 0, 0, 0, 820, 0,
822, 0, 824, 826, 828, 830, 832, 834, 836, 0,
0, 0, 838, 0, 0, 0, 0, 0, 840, 842,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 844, 0, 0, 0, 0, 310, 0, 312, 314,
316, 320, 846, 848, 322, 324, 850, 326, 328, 852,
0, 0, 0, 0, 330, 0, 0, 0, 0, 854,
856, 858, 860, 862, 864, 866, 868, 870, 872, 874,
876, 878, 880, 882, 884, 886, 888, 0, 0, 332,
334, 336, 0, 0, 0, 0, 0, 0, 0, 0,
338, 340, 342, 344, 346, 348, 350, 0, 0, 0,
353, 0, 0, 0, 0, 0, 355, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1, 0, 3, 5, 7, 11,
0, 357, 13, 15, 0, 17, 19, 359, 0, 0,
0, 0, 21, 0, 0, 0, 0, 361, 363, 365,
367, 369, 371, 373, 375, 377, 379, 381, 383, 385,
387, 0, 389, 391, 393, 0, 0, 23, 25, 27,
0, 0, 0, 0, 0, 0, 0, 0, 29, 31,
33, 35, 37, 39, 41, 0, 0, 0, 44, 0,
0, 0, 0, 0, 46, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 48, 0, 0,
0, 0, 1231, 0, 0, 1233, 1235, 1239, 0, 50,
1241, 1243, 0, 1245, 1247, 52, 0, 0, 0, 0,
1249, 0, 0, 0, 0, 54, 56, 58, 60, 62,
64, 66, 68, 70, 72, 74, 76, 78, 80, 0,
82, 84, 86, 0, 0, 1251, 1253, 1255, 0, 0,
0, 0, 0, 0, 0, 0, 1257, 1259, 1261, 1263,
1265, 1267, 1269, 0, 0, 0, 1272, 0, 0, 0,
0, 0, 1274, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3909, 0, 0, 3911, 3913, 3917, 0, 1276, 3919, 3921,
0, 3923, 3925, 1278, 0, 0, 0, 0, 3927, 0,
0, 0, 0, 1280, 1282, 1284, 1286, 1288, 1290, 1292,
1294, 1296, 1298, 1300, 1302, 1304, 1306, 0, 1308, 1310,
1312, 0, 0, 3929, 3931, 3933, 0, 0, 0, 0,
0, 0, 0, 0, 3935, 3937, 3939, 3941, 3943, 3945,
3947, 0, 0, 0, 3950, 0, 0, 0, 0, 0,
3952, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3954, 0, 0, 0, 0,
0, 3956, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3958, 3960, 3962, 3964, 3966, 3968, 3970, 3972, 3974,
3976, 3978, 3980, 3982, 3984, 0, 3986, 3988, 3990, 0,
0, 0, 1937, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1939, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1917, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1919, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2561, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2563, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2031, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2033, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1933, 0, 0, 0, 0, 0, 0, 0, 0, 2160,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2162, 2164, 0, 2166,
0, 0, 0, 0, 2168, 0, 2170, 2172, 2174, 2176,
2178, 2180, 2182, 2184, 2186, 2188, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1935, 0, 0, 0,
2190, 2192, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2194, 2196, 2198, 2200, 2202,
0, 2204, 2206, 2208, 2210, 2212, 2214, 2216, 2218, 2220,
2222, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2670,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2674, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2672, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2676, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2702, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2704, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2706, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3339, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2708, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3341, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3385, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3387, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3776,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3803, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3778, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3805, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3885, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3887, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3893, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3895, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4154, 0, 0, 0, 4157, 0, 0,
4159, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 4161, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 4163,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4166, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4168, 4170, 4172, 4174, 4176, 4178, 4180, 4182, 4184, 4186,
4188, 4190, 4192, 4194, 0, 0, 0, 0, 0, 0,
0, 0, 4844, 0, 0, 0, 4847, 0, 0, 4849,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4851, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4853, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 4856,
0, 0, 0, 0, 0, 0, 0, 0, 0, 4858,
4860, 4862, 4864, 4866, 4868, 4870, 4872, 4874, 4876, 4878,
4880, 4882, 4884, 0, 0, 0, 0, 0, 0, 0,
0, 4984, 0, 0, 0, 4987, 0, 0, 4989, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4991, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4993, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4996, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4998, 5000,
5002, 5004, 5006, 5008, 5010, 5012, 5014, 5016, 5018, 5020,
5022, 5024, 0, 0, 0, 0, 0, 0, 0, 0,
1941, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2023, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1943, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2025, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2027, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2642, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2029, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2644,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3128, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3136,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3130, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3138, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3335, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3687, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3337, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3689, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3691, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3780, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3693, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3782, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5034, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 5044, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 5036, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5046, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 988, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2156, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 990, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2158,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2607, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2634,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2609, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2636, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3377, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3571, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3379, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3573, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3760, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3764, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3762, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3766, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3768, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3772, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3770, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3774, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4976, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4978, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1721, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1723, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2045, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2047, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2626, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2628,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2658, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2660, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2912, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2914, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1973, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1975, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2853,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2855, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
88, 0, 0, 90, 92, 96, 0, 0, 98, 100,
0, 102, 104, 0, 0, 0, 0, 0, 106, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 108, 110, 112, 0, 0, 0, 0,
0, 0, 0, 0, 114, 116, 118, 120, 122, 124,
126, 0, 0, 0, 129, 0, 0, 0, 0, 0,
131, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 602, 0,
0, 604, 606, 610, 0, 133, 612, 614, 0, 616,
618, 135, 0, 0, 0, 0, 620, 0, 0, 0,
0, 137, 139, 141, 143, 145, 147, 149, 151, 153,
155, 157, 159, 161, 163, 0, 165, 167, 169, 0,
0, 622, 624, 626, 0, 0, 0, 0, 0, 0,
0, 0, 628, 630, 632, 634, 636, 638, 640, 0,
0, 0, 643, 0, 0, 0, 0, 0, 645, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 685, 0, 0, 687,
689, 693, 0, 647, 695, 697, 0, 699, 701, 649,
0, 0, 0, 0, 703, 0, 0, 0, 0, 651,
653, 655, 657, 659, 661, 663, 665, 667, 669, 671,
673, 675, 677, 0, 679, 681, 683, 0, 0, 705,
707, 709, 2890, 0, 0, 0, 2893, 0, 0, 0,
711, 713, 715, 717, 719, 721, 723, 0, 0, 0,
726, 0, 0, 0, 0, 0, 728, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 730, 0, 0, 0, 0, 0, 732, 2895, 0,
0, 0, 0, 0, 0, 0, 0, 734, 736, 738,
740, 742, 744, 746, 748, 750, 752, 754, 756, 758,
760, 0, 762, 764, 766, 890, 0, 0, 892, 894,
898, 0, 0, 900, 902, 0, 904, 906, 0, 0,
0, 0, 0, 908, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 910, 912,
914, 0, 0, 0, 0, 0, 0, 0, 0, 916,
918, 920, 922, 924, 926, 928, 0, 0, 0, 931,
0, 0, 0, 0, 0, 933, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 999, 0, 1001, 1003, 1005, 1009, 0,
935, 1011, 1013, 0, 1015, 1017, 937, 0, 0, 0,
0, 1019, 0, 0, 0, 0, 939, 941, 943, 945,
947, 949, 951, 953, 955, 957, 959, 961, 963, 965,
0, 967, 969, 971, 0, 0, 1021, 1023, 1025, 0,
0, 0, 0, 0, 0, 0, 0, 1027, 1029, 1031,
1033, 1035, 1037, 1039, 0, 0, 0, 1042, 0, 0,
0, 0, 0, 1044, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1725, 0, 0, 1727, 1729, 1733, 0, 1046, 1735,
1737, 0, 1739, 1741, 1048, 0, 0, 0, 0, 1743,
0, 0, 0, 0, 1050, 1052, 1054, 1056, 1058, 1060,
1062, 1064, 1066, 1068, 1070, 1072, 1074, 1076, 0, 1078,
1080, 1082, 0, 0, 1745, 1747, 1749, 0, 0, 0,
0, 0, 0, 0, 0, 1751, 1753, 1755, 1757, 1759,
1761, 1763, 0, 0, 0, 1766, 0, 0, 0, 0,
0, 1768, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2710,
0, 0, 2712, 2714, 2718, 0, 1770, 2720, 2722, 0,
2724, 2726, 1772, 0, 0, 0, 0, 2728, 0, 0,
0, 0, 1774, 1776, 1778, 1780, 1782, 1784, 1786, 1788,
1790, 1792, 1794, 1796, 1798, 1800, 0, 1802, 1804, 1806,
0, 0, 2730, 2732, 2734, 0, 0, 0, 0, 0,
0, 0, 0, 2736, 2738, 2740, 2742, 2744, 2746, 2748,
0, 0, 0, 2751, 0, 0, 0, 0, 0, 2753,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3234, 0, 0,
3236, 3238, 3242, 0, 2755, 3244, 3246, 0, 3248, 3250,
2757, 0, 0, 0, 0, 3252, 0, 0, 0, 0,
2759, 2761, 2763, 2765, 2767, 2769, 2771, 2773, 2775, 2777,
2779, 2781, 2783, 2785, 0, 2787, 2789, 2791, 0, 0,
3254, 3256, 3258, 0, 0, 0, 0, 0, 0, 0,
0, 3260, 3262, 3264, 3266, 3268, 3270, 3272, 0, 0,
0, 3275, 0, 0, 0, 0, 0, 3277, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3575, 0, 0, 3577, 3579,
3583, 0, 3279, 3585, 3587, 0, 3589, 3591, 3281, 0,
0, 0, 0, 3593, 0, 0, 0, 0, 3283, 3285,
3287, 3289, 3291, 3293, 3295, 3297, 3299, 3301, 3303, 3305,
3307, 3309, 0, 3311, 3313, 3315, 0, 0, 3595, 3597,
3599, 0, 0, 0, 0, 0, 0, 0, 0, 3601,
3603, 3605, 3607, 3609, 3611, 3613, 0, 0, 0, 3616,
0, 0, 0, 0, 0, 3618, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 1092, 0, 0, 1094, 1096, 1100, 0,
3620, 1102, 1104, 0, 1106, 1108, 3622, 0, 0, 0,
0, 1110, 0, 0, 0, 0, 3624, 3626, 3628, 3630,
3632, 3634, 3636, 3638, 3640, 3642, 3644, 3646, 3648, 3650,
0, 3652, 3654, 3656, 0, 0, 1112, 1114, 1116, 0,
0, 0, 0, 0, 0, 0, 0, 1118, 1120, 1122,
1124, 1126, 1128, 1130, 0, 0, 0, 1133, 0, 0,
0, 0, 0, 1135, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1808, 0, 0, 1810, 1812, 1816, 0, 1137, 1818,
1820, 0, 1822, 1824, 1139, 0, 0, 0, 0, 1826,
0, 0, 0, 0, 1141, 1143, 1145, 1147, 1149, 1151,
1153, 1155, 1157, 1159, 1161, 1163, 1165, 1167, 0, 1169,
1171, 1173, 0, 0, 1828, 1830, 1832, 0, 0, 0,
0, 0, 0, 0, 0, 1834, 1836, 1838, 1840, 1842,
1844, 1846, 0, 0, 0, 1849, 0, 0, 0, 0,
0, 1851, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 1853, 0, 0, 0,
0, 0, 1855, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1857, 1859, 1861, 1863, 1865, 1867, 1869, 1871,
1873, 1875, 1877, 1879, 1881, 1883, 0, 1885, 1887, 1889,
1999, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3345, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2001, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3347, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3349, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3381, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3351, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3383,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 995, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 1088,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 997, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1090, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1913, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1925, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1915, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1927, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 1929, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 1963, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
1931, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 1965, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2573, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2579, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2575, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2581, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2583, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2587, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2585, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2589,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2591, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2595,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2593, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2597, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2599, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2603, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2601, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2605, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2611, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2630, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2613, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2632, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2638, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2646, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2640, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2648, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2650, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2654, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2652, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2656,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2662, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2666,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2664, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2668, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2678, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2682, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2680, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2684, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2686, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2690, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2688, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2692, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2694, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2698, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2696, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2700, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2839, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2847, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2841, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2849,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2900, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2904,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2902, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2906, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3389, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3409, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3391, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3411, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3695, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3889, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3697, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3891, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3899, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3994, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3901, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3996, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3150, 0,
0, 3152, 3154, 3157, 0, 0, 3159, 0, 0, 3161,
3163, 0, 0, 0, 0, 0, 3165, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 3167, 3169, 3171, 0, 0, 0, 0, 0, 0,
0, 0, 3173, 3175, 3177, 3179, 3181, 3183, 3185, 0,
0, 0, 3188, 0, 0, 0, 0, 0, 3190, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3493, 0, 0, 3495,
3497, 3500, 0, 0, 3502, 0, 0, 3504, 3506, 3192,
0, 0, 0, 0, 3508, 0, 0, 0, 0, 3194,
3196, 3198, 3200, 3202, 3204, 3206, 3208, 3210, 3212, 3214,
3216, 3218, 3220, 0, 3222, 3224, 3226, 0, 0, 3510,
3512, 3514, 0, 0, 0, 0, 0, 0, 0, 0,
3516, 3518, 3520, 3522, 3524, 3526, 3528, 0, 0, 0,
3531, 0, 0, 0, 0, 0, 3533, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 3807, 0, 0, 3809, 3811, 3814, 0, 0,
3816, 0, 0, 3818, 3820, 0, 0, 3535, 0, 0,
3822, 0, 0, 0, 0, 0, 0, 3537, 3539, 3541,
3543, 3545, 3547, 3549, 3551, 3553, 3555, 3557, 3559, 3561,
3563, 0, 3565, 3567, 3569, 3824, 3826, 3828, 0, 0,
0, 0, 0, 0, 0, 0, 3830, 3832, 3834, 3836,
3838, 3840, 3842, 0, 0, 0, 3845, 0, 0, 0,
0, 0, 3847, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 3998, 0,
0, 4000, 4002, 4005, 0, 0, 4007, 0, 0, 4009,
4011, 0, 0, 3849, 0, 0, 4013, 0, 0, 0,
0, 0, 0, 3851, 3853, 3855, 3857, 3859, 3861, 3863,
3865, 3867, 3869, 3871, 3873, 3875, 3877, 0, 3879, 3881,
3883, 4015, 4017, 4019, 0, 0, 0, 0, 0, 0,
0, 0, 4021, 4023, 4025, 4027, 4029, 4031, 4033, 0,
0, 0, 4036, 0, 0, 0, 0, 0, 4038, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4076, 0, 0, 4078, 4080, 4083,
0, 0, 4085, 0, 0, 4087, 4089, 0, 0, 4040,
0, 0, 4091, 0, 0, 0, 0, 0, 0, 4042,
4044, 4046, 4048, 4050, 4052, 4054, 4056, 4058, 4060, 4062,
4064, 4066, 4068, 0, 4070, 4072, 4074, 4093, 4095, 4097,
0, 0, 0, 0, 0, 0, 0, 0, 4099, 4101,
4103, 4105, 4107, 4109, 4111, 0, 0, 0, 4114, 0,
0, 0, 0, 0, 4116, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4596, 0, 0, 4598, 4600, 4603, 0, 0, 4605, 0,
0, 4607, 4609, 0, 0, 4118, 0, 0, 4611, 0,
0, 0, 0, 0, 0, 4120, 4122, 4124, 4126, 4128,
4130, 4132, 4134, 4136, 4138, 4140, 4142, 4144, 4146, 0,
4148, 4150, 4152, 4613, 4615, 4617, 0, 0, 0, 0,
0, 0, 0, 0, 4619, 4621, 4623, 4625, 4627, 4629,
4631, 0, 0, 0, 4634, 0, 0, 0, 0, 0,
4636, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4898, 0, 0, 4900,
4902, 4905, 0, 0, 4907, 0, 0, 4909, 4911, 0,
0, 4638, 0, 0, 4913, 0, 0, 0, 0, 0,
0, 4640, 4642, 4644, 4646, 4648, 4650, 4652, 4654, 4656,
4658, 4660, 4662, 4664, 4666, 0, 4668, 4670, 4672, 4915,
4917, 4919, 0, 0, 0, 0, 0, 0, 0, 0,
4921, 4923, 4925, 4927, 4929, 4931, 4933, 0, 0, 0,
4936, 0, 0, 0, 0, 0, 4938, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5048, 0, 0, 5050, 5052, 5055, 0, 0,
5057, 0, 0, 5059, 5061, 0, 0, 4940, 0, 0,
5063, 0, 0, 0, 0, 0, 0, 4942, 4944, 4946,
4948, 4950, 4952, 4954, 4956, 4958, 4960, 4962, 4964, 4966,
4968, 0, 4970, 4972, 4974, 5065, 5067, 5069, 0, 0,
0, 0, 0, 0, 0, 0, 5071, 5073, 5075, 5077,
5079, 5081, 5083, 0, 0, 0, 5086, 0, 0, 0,
0, 0, 5088, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 5126, 0,
0, 5128, 5130, 5133, 0, 0, 5135, 0, 0, 5137,
5139, 0, 0, 5090, 0, 0, 5141, 0, 0, 0,
0, 0, 0, 5092, 5094, 5096, 5098, 5100, 5102, 5104,
5106, 5108, 5110, 5112, 5114, 5116, 5118, 0, 5120, 5122,
5124, 5143, 5145, 5147, 0, 0, 0, 0, 0, 0,
0, 0, 5149, 5151, 5153, 5155, 5157, 5159, 5161, 0,
0, 0, 5164, 0, 0, 0, 0, 0, 5166, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 5216, 0, 0, 5218, 5220, 5223,
0, 0, 5225, 0, 0, 5227, 5229, 0, 0, 5168,
0, 0, 5231, 0, 0, 0, 0, 0, 0, 5170,
5172, 5174, 5176, 5178, 5180, 5182, 5184, 5186, 5188, 5190,
5192, 5194, 5196, 0, 5198, 5200, 5202, 5233, 5235, 5237,
0, 0, 0, 0, 0, 0, 0, 0, 5239, 5241,
5243, 5245, 5247, 5249, 5251, 0, 0, 0, 5254, 0,
0, 0, 0, 0, 5256, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
5294, 0, 0, 5296, 5298, 5301, 0, 0, 5303, 0,
0, 5305, 5307, 0, 0, 5258, 0, 0, 5309, 0,
0, 0, 0, 0, 0, 5260, 5262, 5264, 5266, 5268,
5270, 5272, 5274, 5276, 5278, 5280, 5282, 5284, 5286, 0,
5288, 5290, 5292, 5311, 5313, 5315, 0, 0, 0, 0,
0, 0, 0, 0, 5317, 5319, 5321, 5323, 5325, 5327,
5329, 0, 0, 0, 5332, 0, 0, 0, 0, 0,
5334, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 5372, 0, 0, 5374,
5376, 5379, 0, 0, 5381, 0, 0, 5383, 5385, 0,
0, 5336, 0, 0, 5387, 0, 0, 0, 0, 0,
0, 5338, 5340, 5342, 5344, 5346, 5348, 5350, 5352, 5354,
5356, 5358, 5360, 5362, 5364, 0, 5366, 5368, 5370, 5389,
5391, 5393, 0, 0, 0, 0, 0, 0, 0, 0,
5395, 5397, 5399, 5401, 5403, 5405, 5407, 0, 0, 0,
5410, 0, 0, 0, 0, 0, 5412, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 5452, 0, 0, 5454, 5456, 5459, 0, 0,
5461, 0, 0, 5463, 5465, 0, 0, 5414, 0, 0,
5467, 0, 0, 0, 0, 0, 0, 5416, 5418, 5420,
5422, 5424, 5426, 5428, 5430, 5432, 5434, 5436, 5438, 5440,
5442, 0, 5444, 5446, 5448, 5469, 5471, 5473, 0, 0,
0, 0, 0, 0, 0, 0, 5475, 5477, 5479, 5481,
5483, 5485, 5487, 0, 0, 0, 5490, 0, 0, 0,
0, 0, 5492, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1945, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5494, 0, 0, 0, 0, 0, 0,
0, 0, 0, 5496, 5498, 5500, 5502, 5504, 5506, 5508,
5510, 5512, 5514, 5516, 5518, 5520, 5522, 0, 5524, 5526,
5528, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 1947, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2003, 0, 0, 0, 2006, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2008, 0,
0, 0, 0, 0, 0, 0, 189, 0, 0, 191,
193, 196, 0, 2010, 198, 0, 0, 200, 202, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2012, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 204,
206, 208, 0, 0, 0, 0, 0, 0, 0, 0,
210, 212, 214, 216, 218, 220, 222, 0, 0, 0,
225, 0, 0, 0, 0, 0, 227, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 229, 0, 0,
0, 0, 0, 0, 0, 0, 0, 231, 233, 235,
237, 239, 241, 243, 245, 247, 249, 251, 253, 255,
257, 0, 259, 261, 263, 0, 0, 0, 0, 3790,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 4488, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3792, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 4490, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 4492, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 4980, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 4494, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 4982, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 296, 0, 0, 0, 299,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 3405,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 301, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3407, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 3413, 0, 0, 3415, 3417, 3420,
0, 0, 3422, 0, 0, 3424, 3426, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2133, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3428, 3430, 3432,
0, 0, 0, 0, 0, 0, 0, 0, 3434, 3436,
3438, 3440, 3442, 3444, 3446, 0, 0, 0, 3449, 0,
0, 0, 0, 0, 3451, 0, 0, 0, 0, 0,
0, 0, 2135, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3453, 0, 0, 0, 0,
0, 0, 0, 0, 0, 3455, 3457, 3459, 3461, 3463,
3465, 3467, 3469, 3471, 3473, 3475, 3477, 3479, 3481, 0,
3483, 3485, 3487, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 3140, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2545,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2549, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 3142, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2547, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 2551, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2553, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2557, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2569, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2555, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2559,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 2571, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 2805, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 2843, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 2882,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
2807, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 2845, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 2884, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 2886, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
3393, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 2888, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 3395, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0
};
/* YYCONFL[I] -- lists of conflicting rule numbers, each terminated by
0, pointed into by YYCONFLP. */
static const short yyconfl[] =
{
0, 84, 0, 334, 0, 84, 0, 84, 269, 459,
0, 84, 0, 84, 0, 10, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 710, 0, 84, 0, 84, 0, 334, 0,
14, 0, 710, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 269, 459, 0, 84, 0, 84, 0,
10, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 710, 0, 84,
0, 84, 0, 14, 0, 710, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 247, 445, 451, 731, 0, 26, 0, 244, 459,
0, 244, 0, 244, 0, 268, 0, 435, 0, 85,
0, 85, 0, 85, 459, 0, 85, 0, 85, 0,
85, 0, 85, 0, 85, 0, 85, 0, 85, 0,
85, 0, 85, 0, 85, 0, 85, 0, 85, 0,
85, 0, 85, 710, 0, 85, 0, 85, 0, 710,
0, 85, 0, 85, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 192, 0, 6, 192, 459,
0, 6, 192, 0, 192, 0, 192, 0, 192, 0,
192, 0, 6, 192, 710, 0, 192, 0, 192, 0,
84, 0, 84, 0, 84, 0, 84, 459, 0, 84,
0, 84, 710, 0, 6, 0, 6, 0, 6, 0,
84, 0, 210, 0, 84, 0, 84, 269, 459, 0,
84, 0, 84, 0, 10, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 710, 0, 84, 0, 84, 0, 14, 0, 710,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 647, 0, 331, 0, 22,
460, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 732, 0, 732, 0, 732, 0, 732, 0,
732, 0, 84, 0, 84, 0, 84, 269, 459, 0,
84, 0, 84, 0, 10, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 710, 0, 84, 0, 84, 0, 14, 0, 710,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
269, 459, 0, 84, 0, 84, 0, 10, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
14, 0, 710, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
273, 0, 273, 0, 273, 0, 273, 0, 273, 0,
84, 0, 84, 0, 84, 269, 459, 0, 84, 0,
84, 0, 10, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 710,
0, 84, 0, 84, 0, 14, 0, 710, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 459, 0, 84, 0, 84, 0,
84, 0, 84, 0, 22, 0, 459, 0, 459, 0,
710, 0, 22, 460, 0, 459, 0, 710, 0, 84,
0, 209, 0, 84, 0, 84, 269, 459, 0, 84,
0, 84, 0, 10, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
710, 0, 84, 0, 84, 0, 14, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 435, 0, 436, 0, 459, 0,
710, 0, 84, 0, 84, 0, 84, 269, 459, 0,
84, 0, 84, 0, 10, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 710, 0, 84, 0, 84, 0, 14, 0, 710,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 6, 0, 6, 0, 6,
0, 6, 0, 6, 0, 6, 0, 193, 0, 193,
0, 6, 0, 6, 0, 6, 0, 22, 460, 0,
591, 0, 6, 0, 6, 0, 6, 0, 269, 0,
84, 0, 84, 0, 84, 0, 459, 0, 22, 0,
231, 732, 0, 190, 0, 190, 0, 22, 0, 459,
0, 84, 0, 84, 0, 84, 269, 459, 0, 84,
0, 84, 0, 10, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
710, 0, 84, 0, 84, 0, 14, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 23, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 152, 247,
696, 731, 0, 247, 696, 731, 0, 247, 696, 731,
0, 247, 696, 731, 0, 247, 696, 731, 0, 247,
696, 731, 0, 247, 696, 731, 0, 152, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 247, 696,
731, 0, 247, 696, 731, 0, 247, 696, 731, 0,
247, 696, 731, 0, 247, 696, 731, 0, 152, 247,
696, 731, 0, 247, 696, 731, 0, 247, 696, 731,
0, 247, 696, 731, 0, 247, 696, 731, 0, 247,
696, 731, 0, 247, 696, 731, 0, 247, 696, 731,
0, 247, 696, 731, 0, 247, 696, 731, 0, 247,
696, 731, 0, 247, 696, 731, 0, 247, 696, 731,
0, 247, 696, 731, 0, 247, 696, 731, 0, 247,
696, 731, 0, 247, 696, 731, 0, 247, 696, 731,
0, 247, 696, 731, 0, 247, 696, 731, 0, 649,
0, 459, 0, 710, 0, 84, 0, 84, 0, 84,
269, 459, 0, 84, 0, 84, 0, 10, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
14, 0, 710, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 269, 459, 0, 84, 0, 84, 0,
10, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 710, 0, 84,
0, 84, 0, 14, 0, 710, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 6, 0, 6, 0, 733, 0, 22, 0, 247,
445, 451, 731, 755, 0, 755, 0, 459, 0, 710,
0, 6, 0, 459, 0, 710, 0, 459, 0, 710,
0, 753, 0, 753, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 710, 0, 459, 0, 710, 0, 758,
0, 157, 0, 22, 460, 0, 756, 0, 257, 0,
693, 732, 0, 459, 0, 710, 0, 459, 0, 459,
0, 459, 0, 459, 0, 710, 0, 591, 0, 594,
0, 594, 0, 595, 0, 595, 0, 179, 0, 179,
0, 179, 0, 179, 0, 22, 0, 491, 0, 459,
0, 710, 0, 192, 459, 0, 192, 0, 192, 0,
192, 0, 192, 710, 0, 269, 0, 84, 0, 84,
0, 84, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 710, 0, 6, 0, 6, 0, 6,
0, 243, 0, 435, 0, 459, 0, 710, 0, 84,
0, 84, 0, 84, 0, 685, 0, 685, 0, 685,
0, 725, 0, 84, 459, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 710, 0, 84, 0, 710, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 33, 0, 33, 486, 0,
727, 0, 84, 459, 0, 84, 0, 84, 0, 84,
0, 84, 0, 459, 0, 710, 0, 6, 0, 84,
459, 0, 84, 0, 84, 0, 84, 0, 84, 0,
734, 0, 459, 0, 710, 0, 459, 0, 710, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 557, 0, 557, 0, 557, 0,
557, 0, 557, 0, 6, 0, 501, 0, 500, 0,
498, 0, 168, 0, 168, 0, 168, 0, 168, 0,
168, 0, 168, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 696, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 247, 731, 0, 247, 731,
0, 247, 731, 0, 247, 731, 0, 247, 731, 0,
247, 731, 0, 247, 731, 0, 247, 731, 0, 247,
731, 0, 247, 731, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 710, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 474, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 710, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 710, 0, 84, 459, 0, 84, 0,
84, 0, 84, 0, 84, 0, 459, 0, 710, 0,
459, 0, 710, 0, 459, 0, 710, 0, 459, 0,
710, 0, 459, 0, 710, 0, 459, 0, 710, 0,
459, 0, 710, 0, 459, 0, 710, 0, 459, 0,
710, 0, 459, 0, 710, 0, 459, 0, 710, 0,
459, 0, 710, 0, 459, 0, 710, 0, 459, 0,
710, 0, 459, 0, 710, 0, 459, 0, 710, 0,
459, 0, 710, 0, 459, 0, 710, 0, 459, 0,
710, 0, 459, 0, 710, 0, 459, 0, 710, 0,
84, 0, 84, 0, 84, 269, 459, 0, 84, 0,
84, 0, 10, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 710,
0, 84, 0, 84, 0, 14, 0, 710, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 179, 0, 179, 0, 179, 0, 179,
0, 179, 0, 179, 0, 459, 0, 710, 0, 269,
0, 84, 0, 84, 0, 84, 0, 6, 0, 6,
0, 6, 0, 459, 0, 459, 0, 230, 0, 230,
0, 232, 0, 459, 0, 710, 0, 165, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 710,
0, 459, 0, 459, 0, 710, 0, 729, 0, 729,
0, 486, 0, 587, 0, 35, 0, 589, 0, 486,
589, 0, 33, 0, 6, 0, 6, 0, 486, 0,
6, 0, 459, 0, 710, 0, 459, 0, 710, 0,
84, 459, 0, 84, 0, 84, 710, 0, 486, 0,
459, 0, 710, 0, 459, 0, 710, 0, 6, 0,
6, 0, 459, 0, 710, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 735, 0, 735, 0,
735, 0, 735, 0, 735, 0, 168, 0, 168, 0,
168, 0, 168, 0, 168, 0, 168, 0, 459, 0,
710, 0, 6, 0, 383, 0, 459, 0, 710, 0,
459, 0, 710, 0, 258, 0, 259, 0, 480, 0,
84, 0, 84, 0, 84, 459, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 710, 0, 84, 0,
84, 0, 710, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 755, 0,
693, 0, 451, 0, 84, 0, 84, 0, 84, 269,
459, 0, 84, 0, 84, 0, 10, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 710, 0, 84, 0, 84, 0, 14,
0, 710, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 459, 0, 247,
445, 451, 731, 0, 773, 0, 773, 0, 773, 0,
773, 0, 22, 460, 0, 459, 0, 710, 0, 459,
0, 710, 0, 486, 0, 459, 0, 710, 0, 459,
0, 710, 0, 6, 0, 6, 0, 486, 0, 6,
0, 589, 0, 6, 0, 6, 0, 486, 0, 6,
0, 221, 0, 6, 0, 459, 0, 459, 0, 710,
0, 459, 0, 710, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 471, 0, 465,
0, 465, 0, 465, 0, 459, 0, 710, 0, 459,
0, 710, 0, 85, 0, 85, 0, 85, 459, 0,
85, 0, 85, 0, 85, 0, 85, 0, 85, 0,
85, 0, 85, 0, 85, 0, 85, 0, 85, 0,
85, 0, 85, 0, 85, 0, 85, 710, 0, 85,
0, 85, 0, 710, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 85, 0, 85, 0, 85,
0, 85, 0, 85, 0, 85, 0, 85, 0, 459,
0, 710, 0, 84, 0, 84, 0, 84, 459, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 710,
0, 84, 0, 84, 0, 710, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 459, 0, 710, 0, 84, 0, 84, 0, 84,
269, 459, 0, 84, 0, 84, 0, 10, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
14, 0, 710, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 247, 445,
451, 731, 0, 493, 0, 6, 0, 6, 0, 6,
0, 459, 0, 459, 0, 23, 0, 166, 0, 6,
0, 6, 0, 486, 0, 6, 0, 459, 0, 710,
0, 459, 0, 710, 0, 459, 0, 710, 0, 22,
460, 0, 552, 0, 84, 459, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 710, 0, 84, 0,
710, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
459, 0, 710, 0, 459, 0, 710, 0, 459, 0,
710, 0, 459, 0, 710, 0, 459, 0, 710, 0,
459, 0, 710, 0, 465, 0, 465, 0, 465, 0,
459, 0, 710, 0, 247, 445, 451, 731, 0, 755,
0, 6, 0, 459, 0, 710, 0, 84, 0, 84,
0, 84, 459, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 710, 0, 84, 0, 84, 0, 710,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 459, 0, 710, 0, 459,
0, 710, 0, 459, 0, 710, 0, 459, 0, 459,
0, 710, 0, 773, 0, 773, 0, 773, 0, 84,
0, 84, 0, 84, 269, 459, 0, 84, 0, 84,
0, 10, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 710, 0,
84, 0, 84, 0, 14, 0, 710, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 471, 0, 459, 0, 710, 0, 84, 0,
84, 0, 84, 459, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
710, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 459, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 710, 0, 84, 0, 84, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 459, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 710, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 358, 0, 84,
358, 0, 84, 358, 459, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 710, 0, 84, 358, 0, 84, 358, 0,
358, 710, 0, 84, 358, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 459, 0, 84, 358, 0, 358, 0, 358,
0, 84, 358, 0, 358, 0, 84, 358, 0, 84,
358, 0, 358, 0, 358, 0, 358, 0, 358, 0,
358, 0, 84, 358, 0, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 710, 0,
358, 0, 84, 358, 0, 84, 358, 0, 358, 0,
358, 0, 358, 0, 358, 0, 358, 0, 358, 0,
358, 710, 0, 358, 0, 358, 0, 358, 0, 358,
0, 358, 0, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 358, 0, 358, 0,
358, 0, 358, 0, 484, 0, 489, 0, 459, 0,
710, 0, 459, 0, 710, 0, 359, 0, 359, 0,
84, 359, 459, 0, 359, 0, 84, 359, 0, 84,
359, 0, 359, 0, 359, 0, 84, 359, 0, 359,
0, 359, 0, 359, 0, 359, 0, 359, 0, 359,
0, 359, 0, 359, 0, 359, 0, 84, 359, 710,
0, 359, 0, 359, 0, 359, 710, 0, 84, 359,
0, 84, 359, 0, 84, 359, 0, 84, 359, 0,
84, 359, 0, 84, 359, 0, 84, 359, 0, 84,
359, 0, 84, 359, 0, 84, 359, 0, 84, 359,
0, 84, 359, 0, 84, 359, 0, 84, 359, 0,
359, 0, 359, 0, 359, 0, 84, 0, 84, 0,
84, 459, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 710, 0, 84, 0, 84, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 358, 0, 84, 358, 0,
84, 358, 459, 0, 84, 358, 0, 358, 0, 358,
0, 84, 358, 0, 358, 0, 84, 358, 0, 84,
358, 0, 358, 0, 358, 0, 358, 0, 358, 0,
358, 0, 84, 358, 0, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 710, 0,
358, 0, 84, 358, 0, 84, 358, 0, 358, 0,
358, 0, 358, 0, 358, 0, 358, 0, 358, 0,
358, 710, 0, 358, 0, 358, 0, 358, 0, 358,
0, 358, 0, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 84, 358, 0, 84,
358, 0, 84, 358, 0, 84, 358, 0, 84, 358,
0, 84, 358, 0, 84, 358, 0, 84, 358, 0,
84, 358, 0, 84, 358, 0, 358, 0, 358, 0,
358, 0, 358, 0, 84, 459, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 710, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 554, 0, 459, 0,
495, 0, 6, 0, 6, 0, 6, 0, 84, 0,
84, 0, 84, 459, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
710, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 459, 0, 710, 0,
459, 0, 710, 0, 84, 459, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 710, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 630, 0, 459, 0,
710, 0, 496, 0, 459, 0, 710, 0, 6, 0,
6, 0, 6, 0, 459, 0, 710, 0, 84, 0,
84, 0, 84, 459, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 710, 0, 84, 0, 84, 0,
710, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 459, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 710, 0, 84, 0, 84, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 6, 0, 6, 0, 486, 0,
6, 0, 602, 0, 603, 0, 84, 0, 84, 0,
84, 459, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 710, 0, 84, 0, 84, 0, 710, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 459,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
710, 0, 84, 0, 84, 0, 710, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 459, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 710, 0,
84, 0, 84, 0, 710, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
628, 0, 84, 0, 84, 0, 84, 459, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 0, 84,
0, 84, 0, 84, 0, 84, 0, 84, 710, 0,
84, 0, 84, 0, 710, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0,
84, 0, 84, 0, 84, 0, 84, 0, 84, 0
};
YYSTYPE yylval;
int yynerrs;
int yychar;
enum { YYENOMEM = -2 };
typedef enum { yyok, yyaccept, yyabort, yyerr, yynomem } YYRESULTTAG;
#define YYCHK(YYE) \
do { \
YYRESULTTAG yychk_flag = YYE; \
if (yychk_flag != yyok) \
return yychk_flag; \
} while (0)
/* YYINITDEPTH -- initial size of the parser's stacks. */
#ifndef YYINITDEPTH
# define YYINITDEPTH 200
#endif
/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
if the built-in stack extension method is used).
Do not make this value too large; the results are undefined if
SIZE_MAX < YYMAXDEPTH * sizeof (GLRStackItem)
evaluated with infinite-precision integer arithmetic. */
#ifndef YYMAXDEPTH
# define YYMAXDEPTH 10000
#endif
/* Minimum number of free items on the stack allowed after an
allocation. This is to allow allocation and initialization
to be completed by functions that call yyexpandGLRStack before the
stack is expanded, thus insuring that all necessary pointers get
properly redirected to new data. */
#define YYHEADROOM 2
#ifndef YYSTACKEXPANDABLE
# define YYSTACKEXPANDABLE 1
#endif
#if YYSTACKEXPANDABLE
# define YY_RESERVE_GLRSTACK(Yystack) \
do { \
if (Yystack->yyspaceLeft < YYHEADROOM) \
yyexpandGLRStack (Yystack); \
} while (0)
#else
# define YY_RESERVE_GLRSTACK(Yystack) \
do { \
if (Yystack->yyspaceLeft < YYHEADROOM) \
yyMemoryExhausted (Yystack); \
} while (0)
#endif
/** State numbers. */
typedef int yy_state_t;
/** Rule numbers. */
typedef int yyRuleNum;
/** Item references. */
typedef short yyItemNum;
typedef struct yyGLRState yyGLRState;
typedef struct yyGLRStateSet yyGLRStateSet;
typedef struct yySemanticOption yySemanticOption;
typedef union yyGLRStackItem yyGLRStackItem;
typedef struct yyGLRStack yyGLRStack;
struct yyGLRState
{
/** Type tag: always true. */
yybool yyisState;
/** Type tag for yysemantics. If true, yyval applies, otherwise
* yyfirstVal applies. */
yybool yyresolved;
/** Number of corresponding LALR(1) machine state. */
yy_state_t yylrState;
/** Preceding state in this stack */
yyGLRState* yypred;
/** Source position of the last token produced by my symbol */
YYPTRDIFF_T yyposn;
union {
/** First in a chain of alternative reductions producing the
* nonterminal corresponding to this state, threaded through
* yynext. */
yySemanticOption* yyfirstVal;
/** Semantic value for this state. */
YYSTYPE yyval;
} yysemantics;
};
struct yyGLRStateSet
{
yyGLRState** yystates;
/** During nondeterministic operation, yylookaheadNeeds tracks which
* stacks have actually needed the current lookahead. During deterministic
* operation, yylookaheadNeeds[0] is not maintained since it would merely
* duplicate yychar != YYEMPTY. */
yybool* yylookaheadNeeds;
YYPTRDIFF_T yysize;
YYPTRDIFF_T yycapacity;
};
struct yySemanticOption
{
/** Type tag: always false. */
yybool yyisState;
/** Rule number for this reduction */
yyRuleNum yyrule;
/** The last RHS state in the list of states to be reduced. */
yyGLRState* yystate;
/** The lookahead for this reduction. */
int yyrawchar;
YYSTYPE yyval;
/** Next sibling in chain of options. To facilitate merging,
* options are chained in decreasing order by address. */
yySemanticOption* yynext;
};
/** Type of the items in the GLR stack. The yyisState field
* indicates which item of the union is valid. */
union yyGLRStackItem {
yyGLRState yystate;
yySemanticOption yyoption;
};
struct yyGLRStack {
int yyerrState;
YYJMP_BUF yyexception_buffer;
yyGLRStackItem* yyitems;
yyGLRStackItem* yynextFree;
YYPTRDIFF_T yyspaceLeft;
yyGLRState* yysplitPoint;
yyGLRState* yylastDeleted;
yyGLRStateSet yytops;
};
#if YYSTACKEXPANDABLE
static void yyexpandGLRStack (yyGLRStack* yystackp);
#endif
_Noreturn static void
yyFail (yyGLRStack* yystackp, const char* yymsg)
{
if (yymsg != YY_NULLPTR)
yyerror (yymsg);
YYLONGJMP (yystackp->yyexception_buffer, 1);
}
_Noreturn static void
yyMemoryExhausted (yyGLRStack* yystackp)
{
YYLONGJMP (yystackp->yyexception_buffer, 2);
}
/** Accessing symbol of state YYSTATE. */
static inline yysymbol_kind_t
yy_accessing_symbol (yy_state_t yystate)
{
return YY_CAST (yysymbol_kind_t, yystos[yystate]);
}
#if YYDEBUG || 0
/* The user-facing name of the symbol whose (internal) number is
YYSYMBOL. No bounds checking. */
static const char *yysymbol_name (yysymbol_kind_t yysymbol) YY_ATTRIBUTE_UNUSED;
/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
First, the terminals, then, starting at YYNTOKENS, nonterminals. */
static const char *const yytname[] =
{
"\"end of file\"", "error", "\"invalid token\"", "COMMA", "CONSTEXPR",
"ELLIPSIS", "EXPORT", "EXTERN", "IDENTIFIER", "INLINE", "NOEXCEPT",
"NOT", "SCOPE", "TEMPLATE", "THIS", "TYPENAME", "VIRTUAL", "PRIVATE",
"PROTECTED", "PUBLIC", "PLUS", "MINUS", "USING", "EQ", "SEMICOLON",
"ALIGNAS", "OPEN_PAREN", "CLOSE_PAREN", "AND", "ASM", "MULT_EQ",
"DIV_EQ", "MOD_EQ", "PLUS_EQ", "MINUS_EQ", "RSHIFT_EQ", "LSHIFT_EQ",
"AND_EQ", "XOR_EQ", "OR_EQ", "OPEN_SQUARE", "CLOSE_SQUARE", "COLON",
"CO_AWAIT", "OPEN_BRACE", "CLOSE_BRACE", "BALANCED_TOKEN", "CLASS",
"STRUCT", "UNION", "FINAL", "SPACESHIP", "CONCEPT", "QUERY", "AND_AND",
"OR_OR", "OPERATOR", "CO_RETURN", "CONST", "VOLATILE", "FRIEND",
"TYPEDEF", "CONSTEVAL", "CONSTINIT", "DECLTYPE", "DEREF", "DELETE",
"DOT", "ENUM", "EQ_EQ", "NOT_EQ", "XOR", "LESS", "GREATER", "EXPLICIT",
"MULT", "DIV", "MOD", "OR", "LSHIFT", "RSHIFT", "LESS_EQ", "GREATER_EQ",
"DOT_STAR", "DEREF_STAR", "DEFAULT", "TRY", "MODULE", "CATCH",
"HEADER_NAME", "WHILE", "DO", "FOR", "BREAK", "CONTINUE", "RETURN",
"GOTO", "CASE", "IMPORT", "NAMESPACE", "REQUIRES", "NEW", "COMPL",
"PLUS_PLUS", "MINUS_MINUS", "AUTO", "DYNAMIC_CAST", "STATIC_CAST",
"REINTERPRET_CAST", "CONST_CAST", "TYPEID", "LITERAL", "IF", "ELSE",
"SWITCH", "CHAR", "CHAR8_T", "CHAR16_T", "CHAR32_T", "WCHAR_T", "BOOL",
"SHORT", "INT", "LONG", "SIGNED", "UNSIGNED", "FLOAT", "DOUBLE", "VOID",
"STATIC_ASSERT", "STATIC", "THREAD_LOCAL", "MUTABLE", "STRING_LITERAL",
"THROW", "SIZEOF", "ALIGNOF", "OVERRIDE", "CO_YIELD", "'0'", "$accept",
"COMMA-opt", "CONSTEXPR-opt", "ELLIPSIS-opt", "EXPORT-opt", "EXTERN-opt",
"IDENTIFIER-opt", "INLINE-opt", "NOEXCEPT-opt", "NOT-opt", "SCOPE-opt",
"TEMPLATE-opt", "THIS-opt", "TYPENAME-opt", "VIRTUAL-opt",
"abstract-declarator", "abstract-declarator-opt",
"abstract-pack-declarator", "access-specifier", "access-specifier-opt",
"additive-expression", "alias-declaration", "alignment-specifier",
"and-expression", "asm-declaration", "assignment-expression",
"assignment-expression-opt", "assignment-operator", "attribute",
"attribute-argument-clause", "attribute-argument-clause-opt",
"attribute-declaration", "attribute-list", "attribute-namespace",
"attribute-opt", "attribute-scoped-token", "attribute-specifier",
"attribute-specifier-seq", "attribute-specifier-seq-opt",
"attribute-token", "attribute-using-prefix",
"attribute-using-prefix-opt", "await-expression", "balanced-token",
"balanced-token-seq", "balanced-token-seq-opt", "base-clause",
"base-clause-opt", "base-specifier", "base-specifier-list",
"block-declaration", "brace-or-equal-initializer",
"brace-or-equal-initializer-opt", "braced-init-list", "capture",
"capture-default", "capture-list", "cast-expression", "class-head",
"class-head-name", "class-key", "class-name", "class-or-decltype",
"class-specifier", "class-virt-specifier", "class-virt-specifier-opt",
"compare-expression", "compound-requirement", "compound-statement",
"concept-definition", "concept-name", "condition", "condition-opt",
"conditional-expression", "constant-expression",
"constant-expression-opt", "constraint-expression",
"constraint-logical-and-expression", "constraint-logical-or-expression",
"conversion-declarator", "conversion-declarator-opt",
"conversion-function-id", "conversion-type-id",
"coroutine-return-statement", "ctor-initializer", "ctor-initializer-opt",
"cv-qualifier", "cv-qualifier-seq", "cv-qualifier-seq-opt",
"decl-specifier", "decl-specifier-seq", "decl-specifier-seq-opt",
"declaration", "declaration-seq", "declaration-seq-opt",
"declaration-statement", "declarator", "declarator-id",
"decltype-specifier", "deduction-guide", "defining-type-id",
"defining-type-specifier", "defining-type-specifier-seq",
"delete-expression", "designated-initializer-clause",
"designated-initializer-list", "designator", "elaborated-enum-specifier",
"elaborated-type-specifier", "empty-declaration",
"enclosing-namespace-specifier", "enum-base", "enum-base-opt",
"enum-head", "enum-head-name", "enum-head-name-opt", "enum-key",
"enum-name", "enum-specifier", "enumerator", "enumerator-definition",
"enumerator-list", "enumerator-list-opt", "equality-expression",
"exception-declaration", "exclusive-or-expression",
"explicit-instantiation", "explicit-specialization",
"explicit-specifier", "explicit-specifier-opt", "export-declaration",
"expr-or-braced-init-list", "expr-or-braced-init-list-opt", "expression",
"expression-list", "expression-list-opt", "expression-opt",
"expression-statement", "fold-expression", "fold-operator",
"for-range-declaration", "for-range-initializer", "function-body",
"function-definition", "function-specifier", "function-try-block",
"global-module-fragment", "global-module-fragment-opt", "handler",
"handler-seq", "handler-seq-opt", "header-name", "id-expression",
"identifier-list", "inclusive-or-expression", "init-capture",
"init-declarator", "init-declarator-list", "init-declarator-list-opt",
"init-statement", "init-statement-opt", "initializer",
"initializer-clause", "initializer-list", "initializer-opt",
"iteration-statement", "jump-statement", "labeled-statement",
"lambda-capture", "lambda-capture-opt", "lambda-declarator",
"lambda-expression", "lambda-introducer", "lambda-specifiers",
"linkage-specification", "literal-operator-id", "logical-and-expression",
"logical-or-expression", "mem-initializer", "mem-initializer-id",
"mem-initializer-list", "member-declaration", "member-declarator",
"member-declarator-list", "member-declarator-list-opt",
"member-specification", "member-specification-opt", "module-declaration",
"module-import-declaration", "module-name", "module-name-qualifier",
"module-name-qualifier-opt", "module-partition", "module-partition-opt",
"multiplicative-expression", "named-namespace-definition",
"namespace-alias", "namespace-alias-definition", "namespace-body",
"namespace-definition", "namespace-name", "nested-name-specifier",
"nested-name-specifier-opt", "nested-namespace-definition",
"nested-requirement", "new-declarator", "new-declarator-opt",
"new-expression", "new-initializer", "new-initializer-opt",
"new-placement", "new-placement-opt", "new-type-id",
"nodeclspec-function-declaration", "noexcept-expression",
"noexcept-specifier", "noexcept-specifier-opt",
"noptr-abstract-declarator", "noptr-abstract-declarator-opt",
"noptr-abstract-pack-declarator", "noptr-declarator",
"noptr-new-declarator", "opaque-enum-declaration",
"operator-function-id", "overloadable-operator", "parameter-declaration",
"parameter-declaration-clause", "parameter-declaration-list",
"parameter-declaration-list-opt", "parameters-and-qualifiers",
"placeholder-type-specifier", "pm-expression", "postfix-expression",
"primary-expression", "private-module-fragment",
"private-module-fragment-opt", "ptr-abstract-declarator",
"ptr-abstract-declarator-opt", "ptr-declarator", "ptr-operator",
"pure-specifier", "pure-specifier-opt", "qualified-id",
"qualified-namespace-specifier", "ref-qualifier", "ref-qualifier-opt",
"relational-expression", "requirement", "requirement-body",
"requirement-parameter-list", "requirement-parameter-list-opt",
"requirement-seq", "requires-clause", "requires-clause-opt",
"requires-expression", "return-type-requirement",
"return-type-requirement-opt", "selection-statement", "shift-expression",
"simple-capture", "simple-declaration", "simple-requirement",
"simple-template-id", "simple-type-specifier", "statement",
"statement-seq", "statement-seq-opt", "static_assert-declaration",
"storage-class-specifier", "string-literal", "template-argument",
"template-argument-list", "template-argument-list-opt",
"template-declaration", "template-head", "template-id", "template-name",
"template-parameter", "template-parameter-list", "throw-expression",
"trailing-return-type", "trailing-return-type-opt", "translation-unit",
"try-block", "type-constraint", "type-constraint-opt", "type-id",
"type-name", "type-parameter", "type-parameter-key", "type-requirement",
"type-specifier", "type-specifier-seq", "typedef-name",
"typename-specifier", "ud-suffix", "unary-expression", "unary-operator",
"unnamed-namespace-definition", "unqualified-id",
"user-defined-string-literal", "using-declaration", "using-declarator",
"using-declarator-list", "using-directive", "using-enum-declaration",
"virt-specifier", "virt-specifier-seq", "virt-specifier-seq-opt",
"yield-expression", YY_NULLPTR
};
static const char *
yysymbol_name (yysymbol_kind_t yysymbol)
{
return yytname[yysymbol];
}
#endif
/** Left-hand-side symbol for rule #YYRULE. */
static inline yysymbol_kind_t
yylhsNonterm (yyRuleNum yyrule)
{
return YY_CAST (yysymbol_kind_t, yyr1[yyrule]);
}
#if YYDEBUG
# ifndef YYFPRINTF
# define YYFPRINTF fprintf
# endif
# define YY_FPRINTF \
YY_IGNORE_USELESS_CAST_BEGIN YY_FPRINTF_
# define YY_FPRINTF_(Args) \
do { \
YYFPRINTF Args; \
YY_IGNORE_USELESS_CAST_END \
} while (0)
# define YY_DPRINTF \
YY_IGNORE_USELESS_CAST_BEGIN YY_DPRINTF_
# define YY_DPRINTF_(Args) \
do { \
if (yydebug) \
YYFPRINTF Args; \
YY_IGNORE_USELESS_CAST_END \
} while (0)
/*-----------------------------------.
| Print this symbol's value on YYO. |
`-----------------------------------*/
static void
yy_symbol_value_print (FILE *yyo,
yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
{
FILE *yyoutput = yyo;
YY_USE (yyoutput);
if (!yyvaluep)
return;
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YY_USE (yykind);
YY_IGNORE_MAYBE_UNINITIALIZED_END
}
/*---------------------------.
| Print this symbol on YYO. |
`---------------------------*/
static void
yy_symbol_print (FILE *yyo,
yysymbol_kind_t yykind, YYSTYPE const * const yyvaluep)
{
YYFPRINTF (yyo, "%s %s (",
yykind < YYNTOKENS ? "token" : "nterm", yysymbol_name (yykind));
yy_symbol_value_print (yyo, yykind, yyvaluep);
YYFPRINTF (yyo, ")");
}
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location) \
do { \
if (yydebug) \
{ \
YY_FPRINTF ((stderr, "%s ", Title)); \
yy_symbol_print (stderr, Kind, Value); \
YY_FPRINTF ((stderr, "\n")); \
} \
} while (0)
static inline void
yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk,
yyRuleNum yyrule);
# define YY_REDUCE_PRINT(Args) \
do { \
if (yydebug) \
yy_reduce_print Args; \
} while (0)
/* Nonzero means print parse trace. It is left uninitialized so that
multiple parsers can coexist. */
int yydebug;
static void yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk)
YY_ATTRIBUTE_UNUSED;
static void yypdumpstack (yyGLRStack* yystackp)
YY_ATTRIBUTE_UNUSED;
#else /* !YYDEBUG */
# define YY_DPRINTF(Args) do {} while (yyfalse)
# define YY_SYMBOL_PRINT(Title, Kind, Value, Location)
# define YY_REDUCE_PRINT(Args)
#endif /* !YYDEBUG */
/** Fill in YYVSP[YYLOW1 .. YYLOW0-1] from the chain of states starting
* at YYVSP[YYLOW0].yystate.yypred. Leaves YYVSP[YYLOW1].yystate.yypred
* containing the pointer to the next state in the chain. */
static void yyfillin (yyGLRStackItem *, int, int) YY_ATTRIBUTE_UNUSED;
static void
yyfillin (yyGLRStackItem *yyvsp, int yylow0, int yylow1)
{
int i;
yyGLRState *s = yyvsp[yylow0].yystate.yypred;
for (i = yylow0-1; i >= yylow1; i -= 1)
{
#if YYDEBUG
yyvsp[i].yystate.yylrState = s->yylrState;
#endif
yyvsp[i].yystate.yyresolved = s->yyresolved;
if (s->yyresolved)
yyvsp[i].yystate.yysemantics.yyval = s->yysemantics.yyval;
else
/* The effect of using yyval or yyloc (in an immediate rule) is
* undefined. */
yyvsp[i].yystate.yysemantics.yyfirstVal = YY_NULLPTR;
s = yyvsp[i].yystate.yypred = s->yypred;
}
}
/** If yychar is empty, fetch the next token. */
static inline yysymbol_kind_t
yygetToken (int *yycharp)
{
yysymbol_kind_t yytoken;
if (*yycharp == YYEMPTY)
{
YY_DPRINTF ((stderr, "Reading a token\n"));
*yycharp = yylex ();
}
if (*yycharp <= YYEOF)
{
*yycharp = YYEOF;
yytoken = YYSYMBOL_YYEOF;
YY_DPRINTF ((stderr, "Now at end of input.\n"));
}
else
{
yytoken = YYTRANSLATE (*yycharp);
YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
}
return yytoken;
}
/* Do nothing if YYNORMAL or if *YYLOW <= YYLOW1. Otherwise, fill in
* YYVSP[YYLOW1 .. *YYLOW-1] as in yyfillin and set *YYLOW = YYLOW1.
* For convenience, always return YYLOW1. */
static inline int yyfill (yyGLRStackItem *, int *, int, yybool)
YY_ATTRIBUTE_UNUSED;
static inline int
yyfill (yyGLRStackItem *yyvsp, int *yylow, int yylow1, yybool yynormal)
{
if (!yynormal && yylow1 < *yylow)
{
yyfillin (yyvsp, *yylow, yylow1);
*yylow = yylow1;
}
return yylow1;
}
/** Perform user action for rule number YYN, with RHS length YYRHSLEN,
* and top stack item YYVSP. YYLVALP points to place to put semantic
* value ($$), and yylocp points to place for location information
* (@$). Returns yyok for normal return, yyaccept for YYACCEPT,
* yyerr for YYERROR, yyabort for YYABORT, yynomem for YYNOMEM. */
static YYRESULTTAG
yyuserAction (yyRuleNum yyrule, int yyrhslen, yyGLRStackItem* yyvsp,
yyGLRStack* yystackp, YYPTRDIFF_T yyk,
YYSTYPE* yyvalp)
{
const yybool yynormal YY_ATTRIBUTE_UNUSED = yystackp->yysplitPoint == YY_NULLPTR;
int yylow = 1;
YY_USE (yyvalp);
YY_USE (yyk);
YY_USE (yyrhslen);
# undef yyerrok
# define yyerrok (yystackp->yyerrState = 0)
# undef YYACCEPT
# define YYACCEPT return yyaccept
# undef YYABORT
# define YYABORT return yyabort
# undef YYNOMEM
# define YYNOMEM return yynomem
# undef YYERROR
# define YYERROR return yyerrok, yyerr
# undef YYRECOVERING
# define YYRECOVERING() (yystackp->yyerrState != 0)
# undef yyclearin
# define yyclearin (yychar = YYEMPTY)
# undef YYFILL
# define YYFILL(N) yyfill (yyvsp, &yylow, (N), yynormal)
# undef YYBACKUP
# define YYBACKUP(Token, Value) \
return yyerror (YY_("syntax error: cannot back up")), \
yyerrok, yyerr
if (yyrhslen == 0)
*yyvalp = yyval_default;
else
*yyvalp = yyvsp[YYFILL (1-yyrhslen)].yystate.yysemantics.yyval;
/* If yyk == -1, we are running a deferred action on a temporary
stack. In that case, YY_REDUCE_PRINT must not play with YYFILL,
so pretend the stack is "normal". */
YY_REDUCE_PRINT ((yynormal || yyk == -1, yyvsp, yyk, yyrule));
switch (yyrule)
{
#line 8160 "cplusplus.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yylhsNonterm (yyrule), yyvalp, yylocp);
return yyok;
# undef yyerrok
# undef YYABORT
# undef YYACCEPT
# undef YYNOMEM
# undef YYERROR
# undef YYBACKUP
# undef yyclearin
# undef YYRECOVERING
}
static void
yyuserMerge (int yyn, YYSTYPE* yy0, YYSTYPE* yy1)
{
YY_USE (yy0);
YY_USE (yy1);
switch (yyn)
{
default: break;
}
}
/* Bison grammar-table manipulation. */
/*-----------------------------------------------.
| Release the memory associated to this symbol. |
`-----------------------------------------------*/
static void
yydestruct (const char *yymsg,
yysymbol_kind_t yykind, YYSTYPE *yyvaluep)
{
YY_USE (yyvaluep);
if (!yymsg)
yymsg = "Deleting";
YY_SYMBOL_PRINT (yymsg, yykind, yyvaluep, yylocationp);
YY_IGNORE_MAYBE_UNINITIALIZED_BEGIN
YY_USE (yykind);
YY_IGNORE_MAYBE_UNINITIALIZED_END
}
/** Number of symbols composing the right hand side of rule #RULE. */
static inline int
yyrhsLength (yyRuleNum yyrule)
{
return yyr2[yyrule];
}
static void
yydestroyGLRState (char const *yymsg, yyGLRState *yys)
{
if (yys->yyresolved)
yydestruct (yymsg, yy_accessing_symbol (yys->yylrState),
&yys->yysemantics.yyval);
else
{
#if YYDEBUG
if (yydebug)
{
if (yys->yysemantics.yyfirstVal)
YY_FPRINTF ((stderr, "%s unresolved", yymsg));
else
YY_FPRINTF ((stderr, "%s incomplete", yymsg));
YY_SYMBOL_PRINT ("", yy_accessing_symbol (yys->yylrState), YY_NULLPTR, &yys->yyloc);
}
#endif
if (yys->yysemantics.yyfirstVal)
{
yySemanticOption *yyoption = yys->yysemantics.yyfirstVal;
yyGLRState *yyrh;
int yyn;
for (yyrh = yyoption->yystate, yyn = yyrhsLength (yyoption->yyrule);
yyn > 0;
yyrh = yyrh->yypred, yyn -= 1)
yydestroyGLRState (yymsg, yyrh);
}
}
}
#define yypact_value_is_default(Yyn) \
((Yyn) == YYPACT_NINF)
/** True iff LR state YYSTATE has only a default reduction (regardless
* of token). */
static inline yybool
yyisDefaultedState (yy_state_t yystate)
{
return yypact_value_is_default (yypact[yystate]);
}
/** The default reduction for YYSTATE, assuming it has one. */
static inline yyRuleNum
yydefaultAction (yy_state_t yystate)
{
return yydefact[yystate];
}
#define yytable_value_is_error(Yyn) \
0
/** The action to take in YYSTATE on seeing YYTOKEN.
* Result R means
* R < 0: Reduce on rule -R.
* R = 0: Error.
* R > 0: Shift to state R.
* Set *YYCONFLICTS to a pointer into yyconfl to a 0-terminated list
* of conflicting reductions.
*/
static inline int
yygetLRActions (yy_state_t yystate, yysymbol_kind_t yytoken, const short** yyconflicts)
{
int yyindex = yypact[yystate] + yytoken;
if (yytoken == YYSYMBOL_YYerror)
{
// This is the error token.
*yyconflicts = yyconfl;
return 0;
}
else if (yyisDefaultedState (yystate)
|| yyindex < 0 || YYLAST < yyindex || yycheck[yyindex] != yytoken)
{
*yyconflicts = yyconfl;
return -yydefact[yystate];
}
else if (! yytable_value_is_error (yytable[yyindex]))
{
*yyconflicts = yyconfl + yyconflp[yyindex];
return yytable[yyindex];
}
else
{
*yyconflicts = yyconfl + yyconflp[yyindex];
return 0;
}
}
/** Compute post-reduction state.
* \param yystate the current state
* \param yysym the nonterminal to push on the stack
*/
static inline yy_state_t
yyLRgotoState (yy_state_t yystate, yysymbol_kind_t yysym)
{
int yyr = yypgoto[yysym - YYNTOKENS] + yystate;
if (0 <= yyr && yyr <= YYLAST && yycheck[yyr] == yystate)
return yytable[yyr];
else
return yydefgoto[yysym - YYNTOKENS];
}
static inline yybool
yyisShiftAction (int yyaction)
{
return 0 < yyaction;
}
static inline yybool
yyisErrorAction (int yyaction)
{
return yyaction == 0;
}
/* GLRStates */
/** Return a fresh GLRStackItem in YYSTACKP. The item is an LR state
* if YYISSTATE, and otherwise a semantic option. Callers should call
* YY_RESERVE_GLRSTACK afterwards to make sure there is sufficient
* headroom. */
static inline yyGLRStackItem*
yynewGLRStackItem (yyGLRStack* yystackp, yybool yyisState)
{
yyGLRStackItem* yynewItem = yystackp->yynextFree;
yystackp->yyspaceLeft -= 1;
yystackp->yynextFree += 1;
yynewItem->yystate.yyisState = yyisState;
return yynewItem;
}
/** Add a new semantic action that will execute the action for rule
* YYRULE on the semantic values in YYRHS to the list of
* alternative actions for YYSTATE. Assumes that YYRHS comes from
* stack #YYK of *YYSTACKP. */
static void
yyaddDeferredAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyGLRState* yystate,
yyGLRState* yyrhs, yyRuleNum yyrule)
{
yySemanticOption* yynewOption =
&yynewGLRStackItem (yystackp, yyfalse)->yyoption;
YY_ASSERT (!yynewOption->yyisState);
yynewOption->yystate = yyrhs;
yynewOption->yyrule = yyrule;
if (yystackp->yytops.yylookaheadNeeds[yyk])
{
yynewOption->yyrawchar = yychar;
yynewOption->yyval = yylval;
}
else
yynewOption->yyrawchar = YYEMPTY;
yynewOption->yynext = yystate->yysemantics.yyfirstVal;
yystate->yysemantics.yyfirstVal = yynewOption;
YY_RESERVE_GLRSTACK (yystackp);
}
/* GLRStacks */
/** Initialize YYSET to a singleton set containing an empty stack. */
static yybool
yyinitStateSet (yyGLRStateSet* yyset)
{
yyset->yysize = 1;
yyset->yycapacity = 16;
yyset->yystates
= YY_CAST (yyGLRState**,
YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity)
* sizeof yyset->yystates[0]));
if (! yyset->yystates)
return yyfalse;
yyset->yystates[0] = YY_NULLPTR;
yyset->yylookaheadNeeds
= YY_CAST (yybool*,
YYMALLOC (YY_CAST (YYSIZE_T, yyset->yycapacity)
* sizeof yyset->yylookaheadNeeds[0]));
if (! yyset->yylookaheadNeeds)
{
YYFREE (yyset->yystates);
return yyfalse;
}
memset (yyset->yylookaheadNeeds,
0,
YY_CAST (YYSIZE_T, yyset->yycapacity) * sizeof yyset->yylookaheadNeeds[0]);
return yytrue;
}
static void yyfreeStateSet (yyGLRStateSet* yyset)
{
YYFREE (yyset->yystates);
YYFREE (yyset->yylookaheadNeeds);
}
/** Initialize *YYSTACKP to a single empty stack, with total maximum
* capacity for all stacks of YYSIZE. */
static yybool
yyinitGLRStack (yyGLRStack* yystackp, YYPTRDIFF_T yysize)
{
yystackp->yyerrState = 0;
yynerrs = 0;
yystackp->yyspaceLeft = yysize;
yystackp->yyitems
= YY_CAST (yyGLRStackItem*,
YYMALLOC (YY_CAST (YYSIZE_T, yysize)
* sizeof yystackp->yynextFree[0]));
if (!yystackp->yyitems)
return yyfalse;
yystackp->yynextFree = yystackp->yyitems;
yystackp->yysplitPoint = YY_NULLPTR;
yystackp->yylastDeleted = YY_NULLPTR;
return yyinitStateSet (&yystackp->yytops);
}
#if YYSTACKEXPANDABLE
# define YYRELOC(YYFROMITEMS, YYTOITEMS, YYX, YYTYPE) \
&((YYTOITEMS) \
- ((YYFROMITEMS) - YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX))))->YYTYPE
/** If *YYSTACKP is expandable, extend it. WARNING: Pointers into the
stack from outside should be considered invalid after this call.
We always expand when there are 1 or fewer items left AFTER an
allocation, so that we can avoid having external pointers exist
across an allocation. */
static void
yyexpandGLRStack (yyGLRStack* yystackp)
{
yyGLRStackItem* yynewItems;
yyGLRStackItem* yyp0, *yyp1;
YYPTRDIFF_T yynewSize;
YYPTRDIFF_T yyn;
YYPTRDIFF_T yysize = yystackp->yynextFree - yystackp->yyitems;
if (YYMAXDEPTH - YYHEADROOM < yysize)
yyMemoryExhausted (yystackp);
yynewSize = 2*yysize;
if (YYMAXDEPTH < yynewSize)
yynewSize = YYMAXDEPTH;
yynewItems
= YY_CAST (yyGLRStackItem*,
YYMALLOC (YY_CAST (YYSIZE_T, yynewSize)
* sizeof yynewItems[0]));
if (! yynewItems)
yyMemoryExhausted (yystackp);
for (yyp0 = yystackp->yyitems, yyp1 = yynewItems, yyn = yysize;
0 < yyn;
yyn -= 1, yyp0 += 1, yyp1 += 1)
{
*yyp1 = *yyp0;
if (*YY_REINTERPRET_CAST (yybool *, yyp0))
{
yyGLRState* yys0 = &yyp0->yystate;
yyGLRState* yys1 = &yyp1->yystate;
if (yys0->yypred != YY_NULLPTR)
yys1->yypred =
YYRELOC (yyp0, yyp1, yys0->yypred, yystate);
if (! yys0->yyresolved && yys0->yysemantics.yyfirstVal != YY_NULLPTR)
yys1->yysemantics.yyfirstVal =
YYRELOC (yyp0, yyp1, yys0->yysemantics.yyfirstVal, yyoption);
}
else
{
yySemanticOption* yyv0 = &yyp0->yyoption;
yySemanticOption* yyv1 = &yyp1->yyoption;
if (yyv0->yystate != YY_NULLPTR)
yyv1->yystate = YYRELOC (yyp0, yyp1, yyv0->yystate, yystate);
if (yyv0->yynext != YY_NULLPTR)
yyv1->yynext = YYRELOC (yyp0, yyp1, yyv0->yynext, yyoption);
}
}
if (yystackp->yysplitPoint != YY_NULLPTR)
yystackp->yysplitPoint = YYRELOC (yystackp->yyitems, yynewItems,
yystackp->yysplitPoint, yystate);
for (yyn = 0; yyn < yystackp->yytops.yysize; yyn += 1)
if (yystackp->yytops.yystates[yyn] != YY_NULLPTR)
yystackp->yytops.yystates[yyn] =
YYRELOC (yystackp->yyitems, yynewItems,
yystackp->yytops.yystates[yyn], yystate);
YYFREE (yystackp->yyitems);
yystackp->yyitems = yynewItems;
yystackp->yynextFree = yynewItems + yysize;
yystackp->yyspaceLeft = yynewSize - yysize;
}
#endif
static void
yyfreeGLRStack (yyGLRStack* yystackp)
{
YYFREE (yystackp->yyitems);
yyfreeStateSet (&yystackp->yytops);
}
/** Assuming that YYS is a GLRState somewhere on *YYSTACKP, update the
* splitpoint of *YYSTACKP, if needed, so that it is at least as deep as
* YYS. */
static inline void
yyupdateSplit (yyGLRStack* yystackp, yyGLRState* yys)
{
if (yystackp->yysplitPoint != YY_NULLPTR && yystackp->yysplitPoint > yys)
yystackp->yysplitPoint = yys;
}
/** Invalidate stack #YYK in *YYSTACKP. */
static inline void
yymarkStackDeleted (yyGLRStack* yystackp, YYPTRDIFF_T yyk)
{
if (yystackp->yytops.yystates[yyk] != YY_NULLPTR)
yystackp->yylastDeleted = yystackp->yytops.yystates[yyk];
yystackp->yytops.yystates[yyk] = YY_NULLPTR;
}
/** Undelete the last stack in *YYSTACKP that was marked as deleted. Can
only be done once after a deletion, and only when all other stacks have
been deleted. */
static void
yyundeleteLastStack (yyGLRStack* yystackp)
{
if (yystackp->yylastDeleted == YY_NULLPTR || yystackp->yytops.yysize != 0)
return;
yystackp->yytops.yystates[0] = yystackp->yylastDeleted;
yystackp->yytops.yysize = 1;
YY_DPRINTF ((stderr, "Restoring last deleted stack as stack #0.\n"));
yystackp->yylastDeleted = YY_NULLPTR;
}
static inline void
yyremoveDeletes (yyGLRStack* yystackp)
{
YYPTRDIFF_T yyi, yyj;
yyi = yyj = 0;
while (yyj < yystackp->yytops.yysize)
{
if (yystackp->yytops.yystates[yyi] == YY_NULLPTR)
{
if (yyi == yyj)
YY_DPRINTF ((stderr, "Removing dead stacks.\n"));
yystackp->yytops.yysize -= 1;
}
else
{
yystackp->yytops.yystates[yyj] = yystackp->yytops.yystates[yyi];
/* In the current implementation, it's unnecessary to copy
yystackp->yytops.yylookaheadNeeds[yyi] since, after
yyremoveDeletes returns, the parser immediately either enters
deterministic operation or shifts a token. However, it doesn't
hurt, and the code might evolve to need it. */
yystackp->yytops.yylookaheadNeeds[yyj] =
yystackp->yytops.yylookaheadNeeds[yyi];
if (yyj != yyi)
YY_DPRINTF ((stderr, "Rename stack %ld -> %ld.\n",
YY_CAST (long, yyi), YY_CAST (long, yyj)));
yyj += 1;
}
yyi += 1;
}
}
/** Shift to a new state on stack #YYK of *YYSTACKP, corresponding to LR
* state YYLRSTATE, at input position YYPOSN, with (resolved) semantic
* value *YYVALP and source location *YYLOCP. */
static inline void
yyglrShift (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState,
YYPTRDIFF_T yyposn,
YYSTYPE* yyvalp)
{
yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate;
yynewState->yylrState = yylrState;
yynewState->yyposn = yyposn;
yynewState->yyresolved = yytrue;
yynewState->yypred = yystackp->yytops.yystates[yyk];
yynewState->yysemantics.yyval = *yyvalp;
yystackp->yytops.yystates[yyk] = yynewState;
YY_RESERVE_GLRSTACK (yystackp);
}
/** Shift stack #YYK of *YYSTACKP, to a new state corresponding to LR
* state YYLRSTATE, at input position YYPOSN, with the (unresolved)
* semantic value of YYRHS under the action for YYRULE. */
static inline void
yyglrShiftDefer (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yy_state_t yylrState,
YYPTRDIFF_T yyposn, yyGLRState* yyrhs, yyRuleNum yyrule)
{
yyGLRState* yynewState = &yynewGLRStackItem (yystackp, yytrue)->yystate;
YY_ASSERT (yynewState->yyisState);
yynewState->yylrState = yylrState;
yynewState->yyposn = yyposn;
yynewState->yyresolved = yyfalse;
yynewState->yypred = yystackp->yytops.yystates[yyk];
yynewState->yysemantics.yyfirstVal = YY_NULLPTR;
yystackp->yytops.yystates[yyk] = yynewState;
/* Invokes YY_RESERVE_GLRSTACK. */
yyaddDeferredAction (yystackp, yyk, yynewState, yyrhs, yyrule);
}
#if YYDEBUG
/*----------------------------------------------------------------------.
| Report that stack #YYK of *YYSTACKP is going to be reduced by YYRULE. |
`----------------------------------------------------------------------*/
static inline void
yy_reduce_print (yybool yynormal, yyGLRStackItem* yyvsp, YYPTRDIFF_T yyk,
yyRuleNum yyrule)
{
int yynrhs = yyrhsLength (yyrule);
int yyi;
YY_FPRINTF ((stderr, "Reducing stack %ld by rule %d (line %d):\n",
YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule]));
if (! yynormal)
yyfillin (yyvsp, 1, -yynrhs);
/* The symbols being reduced. */
for (yyi = 0; yyi < yynrhs; yyi++)
{
YY_FPRINTF ((stderr, " $%d = ", yyi + 1));
yy_symbol_print (stderr,
yy_accessing_symbol (yyvsp[yyi - yynrhs + 1].yystate.yylrState),
&yyvsp[yyi - yynrhs + 1].yystate.yysemantics.yyval );
if (!yyvsp[yyi - yynrhs + 1].yystate.yyresolved)
YY_FPRINTF ((stderr, " (unresolved)"));
YY_FPRINTF ((stderr, "\n"));
}
}
#endif
/** Pop the symbols consumed by reduction #YYRULE from the top of stack
* #YYK of *YYSTACKP, and perform the appropriate semantic action on their
* semantic values. Assumes that all ambiguities in semantic values
* have been previously resolved. Set *YYVALP to the resulting value,
* and *YYLOCP to the computed location (if any). Return value is as
* for userAction. */
static inline YYRESULTTAG
yydoAction (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule,
YYSTYPE* yyvalp)
{
int yynrhs = yyrhsLength (yyrule);
if (yystackp->yysplitPoint == YY_NULLPTR)
{
/* Standard special case: single stack. */
yyGLRStackItem* yyrhs
= YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yytops.yystates[yyk]);
YY_ASSERT (yyk == 0);
yystackp->yynextFree -= yynrhs;
yystackp->yyspaceLeft += yynrhs;
yystackp->yytops.yystates[0] = & yystackp->yynextFree[-1].yystate;
return yyuserAction (yyrule, yynrhs, yyrhs, yystackp, yyk,
yyvalp);
}
else
{
yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1];
yyGLRState* yys = yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred
= yystackp->yytops.yystates[yyk];
int yyi;
for (yyi = 0; yyi < yynrhs; yyi += 1)
{
yys = yys->yypred;
YY_ASSERT (yys);
}
yyupdateSplit (yystackp, yys);
yystackp->yytops.yystates[yyk] = yys;
return yyuserAction (yyrule, yynrhs, yyrhsVals + YYMAXRHS + YYMAXLEFT - 1,
yystackp, yyk, yyvalp);
}
}
/** Pop items off stack #YYK of *YYSTACKP according to grammar rule YYRULE,
* and push back on the resulting nonterminal symbol. Perform the
* semantic action associated with YYRULE and store its value with the
* newly pushed state, if YYFORCEEVAL or if *YYSTACKP is currently
* unambiguous. Otherwise, store the deferred semantic action with
* the new state. If the new state would have an identical input
* position, LR state, and predecessor to an existing state on the stack,
* it is identified with that existing state, eliminating stack #YYK from
* *YYSTACKP. In this case, the semantic value is
* added to the options for the existing state's semantic value.
*/
static inline YYRESULTTAG
yyglrReduce (yyGLRStack* yystackp, YYPTRDIFF_T yyk, yyRuleNum yyrule,
yybool yyforceEval)
{
YYPTRDIFF_T yyposn = yystackp->yytops.yystates[yyk]->yyposn;
if (yyforceEval || yystackp->yysplitPoint == YY_NULLPTR)
{
YYSTYPE yyval;
YYRESULTTAG yyflag = yydoAction (yystackp, yyk, yyrule, &yyval);
if (yyflag == yyerr && yystackp->yysplitPoint != YY_NULLPTR)
YY_DPRINTF ((stderr,
"Parse on stack %ld rejected by rule %d (line %d).\n",
YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule]));
if (yyflag != yyok)
return yyflag;
yyglrShift (yystackp, yyk,
yyLRgotoState (yystackp->yytops.yystates[yyk]->yylrState,
yylhsNonterm (yyrule)),
yyposn, &yyval);
}
else
{
YYPTRDIFF_T yyi;
int yyn;
yyGLRState* yys, *yys0 = yystackp->yytops.yystates[yyk];
yy_state_t yynewLRState;
for (yys = yystackp->yytops.yystates[yyk], yyn = yyrhsLength (yyrule);
0 < yyn; yyn -= 1)
{
yys = yys->yypred;
YY_ASSERT (yys);
}
yyupdateSplit (yystackp, yys);
yynewLRState = yyLRgotoState (yys->yylrState, yylhsNonterm (yyrule));
YY_DPRINTF ((stderr,
"Reduced stack %ld by rule %d (line %d); action deferred. "
"Now in state %d.\n",
YY_CAST (long, yyk), yyrule - 1, yyrline[yyrule],
yynewLRState));
for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1)
if (yyi != yyk && yystackp->yytops.yystates[yyi] != YY_NULLPTR)
{
yyGLRState *yysplit = yystackp->yysplitPoint;
yyGLRState *yyp = yystackp->yytops.yystates[yyi];
while (yyp != yys && yyp != yysplit && yyp->yyposn >= yyposn)
{
if (yyp->yylrState == yynewLRState && yyp->yypred == yys)
{
yyaddDeferredAction (yystackp, yyk, yyp, yys0, yyrule);
yymarkStackDeleted (yystackp, yyk);
YY_DPRINTF ((stderr, "Merging stack %ld into stack %ld.\n",
YY_CAST (long, yyk), YY_CAST (long, yyi)));
return yyok;
}
yyp = yyp->yypred;
}
}
yystackp->yytops.yystates[yyk] = yys;
yyglrShiftDefer (yystackp, yyk, yynewLRState, yyposn, yys0, yyrule);
}
return yyok;
}
static YYPTRDIFF_T
yysplitStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk)
{
if (yystackp->yysplitPoint == YY_NULLPTR)
{
YY_ASSERT (yyk == 0);
yystackp->yysplitPoint = yystackp->yytops.yystates[yyk];
}
if (yystackp->yytops.yycapacity <= yystackp->yytops.yysize)
{
YYPTRDIFF_T state_size = YYSIZEOF (yystackp->yytops.yystates[0]);
YYPTRDIFF_T half_max_capacity = YYSIZE_MAXIMUM / 2 / state_size;
if (half_max_capacity < yystackp->yytops.yycapacity)
yyMemoryExhausted (yystackp);
yystackp->yytops.yycapacity *= 2;
{
yyGLRState** yynewStates
= YY_CAST (yyGLRState**,
YYREALLOC (yystackp->yytops.yystates,
(YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity)
* sizeof yynewStates[0])));
if (yynewStates == YY_NULLPTR)
yyMemoryExhausted (yystackp);
yystackp->yytops.yystates = yynewStates;
}
{
yybool* yynewLookaheadNeeds
= YY_CAST (yybool*,
YYREALLOC (yystackp->yytops.yylookaheadNeeds,
(YY_CAST (YYSIZE_T, yystackp->yytops.yycapacity)
* sizeof yynewLookaheadNeeds[0])));
if (yynewLookaheadNeeds == YY_NULLPTR)
yyMemoryExhausted (yystackp);
yystackp->yytops.yylookaheadNeeds = yynewLookaheadNeeds;
}
}
yystackp->yytops.yystates[yystackp->yytops.yysize]
= yystackp->yytops.yystates[yyk];
yystackp->yytops.yylookaheadNeeds[yystackp->yytops.yysize]
= yystackp->yytops.yylookaheadNeeds[yyk];
yystackp->yytops.yysize += 1;
return yystackp->yytops.yysize - 1;
}
/** True iff YYY0 and YYY1 represent identical options at the top level.
* That is, they represent the same rule applied to RHS symbols
* that produce the same terminal symbols. */
static yybool
yyidenticalOptions (yySemanticOption* yyy0, yySemanticOption* yyy1)
{
if (yyy0->yyrule == yyy1->yyrule)
{
yyGLRState *yys0, *yys1;
int yyn;
for (yys0 = yyy0->yystate, yys1 = yyy1->yystate,
yyn = yyrhsLength (yyy0->yyrule);
yyn > 0;
yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1)
if (yys0->yyposn != yys1->yyposn)
return yyfalse;
return yytrue;
}
else
return yyfalse;
}
/** Assuming identicalOptions (YYY0,YYY1), destructively merge the
* alternative semantic values for the RHS-symbols of YYY1 and YYY0. */
static void
yymergeOptionSets (yySemanticOption* yyy0, yySemanticOption* yyy1)
{
yyGLRState *yys0, *yys1;
int yyn;
for (yys0 = yyy0->yystate, yys1 = yyy1->yystate,
yyn = yyrhsLength (yyy0->yyrule);
0 < yyn;
yys0 = yys0->yypred, yys1 = yys1->yypred, yyn -= 1)
{
if (yys0 == yys1)
break;
else if (yys0->yyresolved)
{
yys1->yyresolved = yytrue;
yys1->yysemantics.yyval = yys0->yysemantics.yyval;
}
else if (yys1->yyresolved)
{
yys0->yyresolved = yytrue;
yys0->yysemantics.yyval = yys1->yysemantics.yyval;
}
else
{
yySemanticOption** yyz0p = &yys0->yysemantics.yyfirstVal;
yySemanticOption* yyz1 = yys1->yysemantics.yyfirstVal;
while (yytrue)
{
if (yyz1 == *yyz0p || yyz1 == YY_NULLPTR)
break;
else if (*yyz0p == YY_NULLPTR)
{
*yyz0p = yyz1;
break;
}
else if (*yyz0p < yyz1)
{
yySemanticOption* yyz = *yyz0p;
*yyz0p = yyz1;
yyz1 = yyz1->yynext;
(*yyz0p)->yynext = yyz;
}
yyz0p = &(*yyz0p)->yynext;
}
yys1->yysemantics.yyfirstVal = yys0->yysemantics.yyfirstVal;
}
}
}
/** Y0 and Y1 represent two possible actions to take in a given
* parsing state; return 0 if no combination is possible,
* 1 if user-mergeable, 2 if Y0 is preferred, 3 if Y1 is preferred. */
static int
yypreference (yySemanticOption* y0, yySemanticOption* y1)
{
yyRuleNum r0 = y0->yyrule, r1 = y1->yyrule;
int p0 = yydprec[r0], p1 = yydprec[r1];
if (p0 == p1)
{
if (yymerger[r0] == 0 || yymerger[r0] != yymerger[r1])
return 0;
else
return 1;
}
if (p0 == 0 || p1 == 0)
return 0;
if (p0 < p1)
return 3;
if (p1 < p0)
return 2;
return 0;
}
static YYRESULTTAG
yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp);
/** Resolve the previous YYN states starting at and including state YYS
* on *YYSTACKP. If result != yyok, some states may have been left
* unresolved possibly with empty semantic option chains. Regardless
* of whether result = yyok, each state has been left with consistent
* data so that yydestroyGLRState can be invoked if necessary. */
static YYRESULTTAG
yyresolveStates (yyGLRState* yys, int yyn,
yyGLRStack* yystackp)
{
if (0 < yyn)
{
YY_ASSERT (yys->yypred);
YYCHK (yyresolveStates (yys->yypred, yyn-1, yystackp));
if (! yys->yyresolved)
YYCHK (yyresolveValue (yys, yystackp));
}
return yyok;
}
/** Resolve the states for the RHS of YYOPT on *YYSTACKP, perform its
* user action, and return the semantic value and location in *YYVALP
* and *YYLOCP. Regardless of whether result = yyok, all RHS states
* have been destroyed (assuming the user action destroys all RHS
* semantic values if invoked). */
static YYRESULTTAG
yyresolveAction (yySemanticOption* yyopt, yyGLRStack* yystackp,
YYSTYPE* yyvalp)
{
yyGLRStackItem yyrhsVals[YYMAXRHS + YYMAXLEFT + 1];
int yynrhs = yyrhsLength (yyopt->yyrule);
YYRESULTTAG yyflag =
yyresolveStates (yyopt->yystate, yynrhs, yystackp);
if (yyflag != yyok)
{
yyGLRState *yys;
for (yys = yyopt->yystate; yynrhs > 0; yys = yys->yypred, yynrhs -= 1)
yydestroyGLRState ("Cleanup: popping", yys);
return yyflag;
}
yyrhsVals[YYMAXRHS + YYMAXLEFT].yystate.yypred = yyopt->yystate;
{
int yychar_current = yychar;
YYSTYPE yylval_current = yylval;
yychar = yyopt->yyrawchar;
yylval = yyopt->yyval;
yyflag = yyuserAction (yyopt->yyrule, yynrhs,
yyrhsVals + YYMAXRHS + YYMAXLEFT - 1,
yystackp, -1, yyvalp);
yychar = yychar_current;
yylval = yylval_current;
}
return yyflag;
}
#if YYDEBUG
static void
yyreportTree (yySemanticOption* yyx, int yyindent)
{
int yynrhs = yyrhsLength (yyx->yyrule);
int yyi;
yyGLRState* yys;
yyGLRState* yystates[1 + YYMAXRHS];
yyGLRState yyleftmost_state;
for (yyi = yynrhs, yys = yyx->yystate; 0 < yyi; yyi -= 1, yys = yys->yypred)
yystates[yyi] = yys;
if (yys == YY_NULLPTR)
{
yyleftmost_state.yyposn = 0;
yystates[0] = &yyleftmost_state;
}
else
yystates[0] = yys;
if (yyx->yystate->yyposn < yys->yyposn + 1)
YY_FPRINTF ((stderr, "%*s%s -> \n",
yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)),
yyx->yyrule - 1));
else
YY_FPRINTF ((stderr, "%*s%s -> \n",
yyindent, "", yysymbol_name (yylhsNonterm (yyx->yyrule)),
yyx->yyrule - 1, YY_CAST (long, yys->yyposn + 1),
YY_CAST (long, yyx->yystate->yyposn)));
for (yyi = 1; yyi <= yynrhs; yyi += 1)
{
if (yystates[yyi]->yyresolved)
{
if (yystates[yyi-1]->yyposn+1 > yystates[yyi]->yyposn)
YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "",
yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState))));
else
YY_FPRINTF ((stderr, "%*s%s \n", yyindent+2, "",
yysymbol_name (yy_accessing_symbol (yystates[yyi]->yylrState)),
YY_CAST (long, yystates[yyi-1]->yyposn + 1),
YY_CAST (long, yystates[yyi]->yyposn)));
}
else
yyreportTree (yystates[yyi]->yysemantics.yyfirstVal, yyindent+2);
}
}
#endif
static YYRESULTTAG
yyreportAmbiguity (yySemanticOption* yyx0,
yySemanticOption* yyx1)
{
YY_USE (yyx0);
YY_USE (yyx1);
#if YYDEBUG
YY_FPRINTF ((stderr, "Ambiguity detected.\n"));
YY_FPRINTF ((stderr, "Option 1,\n"));
yyreportTree (yyx0, 2);
YY_FPRINTF ((stderr, "\nOption 2,\n"));
yyreportTree (yyx1, 2);
YY_FPRINTF ((stderr, "\n"));
#endif
yyerror (YY_("syntax is ambiguous"));
return yyabort;
}
/** Resolve the ambiguity represented in state YYS in *YYSTACKP,
* perform the indicated actions, and set the semantic value of YYS.
* If result != yyok, the chain of semantic options in YYS has been
* cleared instead or it has been left unmodified except that
* redundant options may have been removed. Regardless of whether
* result = yyok, YYS has been left with consistent data so that
* yydestroyGLRState can be invoked if necessary. */
static YYRESULTTAG
yyresolveValue (yyGLRState* yys, yyGLRStack* yystackp)
{
yySemanticOption* yyoptionList = yys->yysemantics.yyfirstVal;
yySemanticOption* yybest = yyoptionList;
yySemanticOption** yypp;
yybool yymerge = yyfalse;
YYSTYPE yyval;
YYRESULTTAG yyflag;
for (yypp = &yyoptionList->yynext; *yypp != YY_NULLPTR; )
{
yySemanticOption* yyp = *yypp;
if (yyidenticalOptions (yybest, yyp))
{
yymergeOptionSets (yybest, yyp);
*yypp = yyp->yynext;
}
else
{
switch (yypreference (yybest, yyp))
{
case 0:
return yyreportAmbiguity (yybest, yyp);
break;
case 1:
yymerge = yytrue;
break;
case 2:
break;
case 3:
yybest = yyp;
yymerge = yyfalse;
break;
default:
/* This cannot happen so it is not worth a YY_ASSERT (yyfalse),
but some compilers complain if the default case is
omitted. */
break;
}
yypp = &yyp->yynext;
}
}
if (yymerge)
{
yySemanticOption* yyp;
int yyprec = yydprec[yybest->yyrule];
yyflag = yyresolveAction (yybest, yystackp, &yyval);
if (yyflag == yyok)
for (yyp = yybest->yynext; yyp != YY_NULLPTR; yyp = yyp->yynext)
{
if (yyprec == yydprec[yyp->yyrule])
{
YYSTYPE yyval_other;
yyflag = yyresolveAction (yyp, yystackp, &yyval_other);
if (yyflag != yyok)
{
yydestruct ("Cleanup: discarding incompletely merged value for",
yy_accessing_symbol (yys->yylrState),
&yyval);
break;
}
yyuserMerge (yymerger[yyp->yyrule], &yyval, &yyval_other);
}
}
}
else
yyflag = yyresolveAction (yybest, yystackp, &yyval);
if (yyflag == yyok)
{
yys->yyresolved = yytrue;
yys->yysemantics.yyval = yyval;
}
else
yys->yysemantics.yyfirstVal = YY_NULLPTR;
return yyflag;
}
static YYRESULTTAG
yyresolveStack (yyGLRStack* yystackp)
{
if (yystackp->yysplitPoint != YY_NULLPTR)
{
yyGLRState* yys;
int yyn;
for (yyn = 0, yys = yystackp->yytops.yystates[0];
yys != yystackp->yysplitPoint;
yys = yys->yypred, yyn += 1)
continue;
YYCHK (yyresolveStates (yystackp->yytops.yystates[0], yyn, yystackp
));
}
return yyok;
}
/** Called when returning to deterministic operation to clean up the extra
* stacks. */
static void
yycompressStack (yyGLRStack* yystackp)
{
/* yyr is the state after the split point. */
yyGLRState *yyr;
if (yystackp->yytops.yysize != 1 || yystackp->yysplitPoint == YY_NULLPTR)
return;
{
yyGLRState *yyp, *yyq;
for (yyp = yystackp->yytops.yystates[0], yyq = yyp->yypred, yyr = YY_NULLPTR;
yyp != yystackp->yysplitPoint;
yyr = yyp, yyp = yyq, yyq = yyp->yypred)
yyp->yypred = yyr;
}
yystackp->yyspaceLeft += yystackp->yynextFree - yystackp->yyitems;
yystackp->yynextFree = YY_REINTERPRET_CAST (yyGLRStackItem*, yystackp->yysplitPoint) + 1;
yystackp->yyspaceLeft -= yystackp->yynextFree - yystackp->yyitems;
yystackp->yysplitPoint = YY_NULLPTR;
yystackp->yylastDeleted = YY_NULLPTR;
while (yyr != YY_NULLPTR)
{
yystackp->yynextFree->yystate = *yyr;
yyr = yyr->yypred;
yystackp->yynextFree->yystate.yypred = &yystackp->yynextFree[-1].yystate;
yystackp->yytops.yystates[0] = &yystackp->yynextFree->yystate;
yystackp->yynextFree += 1;
yystackp->yyspaceLeft -= 1;
}
}
static YYRESULTTAG
yyprocessOneStack (yyGLRStack* yystackp, YYPTRDIFF_T yyk,
YYPTRDIFF_T yyposn)
{
while (yystackp->yytops.yystates[yyk] != YY_NULLPTR)
{
yy_state_t yystate = yystackp->yytops.yystates[yyk]->yylrState;
YY_DPRINTF ((stderr, "Stack %ld Entering state %d\n",
YY_CAST (long, yyk), yystate));
YY_ASSERT (yystate != YYFINAL);
if (yyisDefaultedState (yystate))
{
YYRESULTTAG yyflag;
yyRuleNum yyrule = yydefaultAction (yystate);
if (yyrule == 0)
{
YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk)));
yymarkStackDeleted (yystackp, yyk);
return yyok;
}
yyflag = yyglrReduce (yystackp, yyk, yyrule, yyimmediate[yyrule]);
if (yyflag == yyerr)
{
YY_DPRINTF ((stderr,
"Stack %ld dies "
"(predicate failure or explicit user error).\n",
YY_CAST (long, yyk)));
yymarkStackDeleted (yystackp, yyk);
return yyok;
}
if (yyflag != yyok)
return yyflag;
}
else
{
yysymbol_kind_t yytoken = yygetToken (&yychar);
const short* yyconflicts;
const int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts);
yystackp->yytops.yylookaheadNeeds[yyk] = yytrue;
for (/* nothing */; *yyconflicts; yyconflicts += 1)
{
YYRESULTTAG yyflag;
YYPTRDIFF_T yynewStack = yysplitStack (yystackp, yyk);
YY_DPRINTF ((stderr, "Splitting off stack %ld from %ld.\n",
YY_CAST (long, yynewStack), YY_CAST (long, yyk)));
yyflag = yyglrReduce (yystackp, yynewStack,
*yyconflicts,
yyimmediate[*yyconflicts]);
if (yyflag == yyok)
YYCHK (yyprocessOneStack (yystackp, yynewStack,
yyposn));
else if (yyflag == yyerr)
{
YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yynewStack)));
yymarkStackDeleted (yystackp, yynewStack);
}
else
return yyflag;
}
if (yyisShiftAction (yyaction))
break;
else if (yyisErrorAction (yyaction))
{
YY_DPRINTF ((stderr, "Stack %ld dies.\n", YY_CAST (long, yyk)));
yymarkStackDeleted (yystackp, yyk);
break;
}
else
{
YYRESULTTAG yyflag = yyglrReduce (yystackp, yyk, -yyaction,
yyimmediate[-yyaction]);
if (yyflag == yyerr)
{
YY_DPRINTF ((stderr,
"Stack %ld dies "
"(predicate failure or explicit user error).\n",
YY_CAST (long, yyk)));
yymarkStackDeleted (yystackp, yyk);
break;
}
else if (yyflag != yyok)
return yyflag;
}
}
}
return yyok;
}
static void
yyreportSyntaxError (yyGLRStack* yystackp)
{
if (yystackp->yyerrState != 0)
return;
yyerror (YY_("syntax error"));
yynerrs += 1;
}
/* Recover from a syntax error on *YYSTACKP, assuming that *YYSTACKP->YYTOKENP,
yylval, and yylloc are the syntactic category, semantic value, and location
of the lookahead. */
static void
yyrecoverSyntaxError (yyGLRStack* yystackp)
{
if (yystackp->yyerrState == 3)
/* We just shifted the error token and (perhaps) took some
reductions. Skip tokens until we can proceed. */
while (yytrue)
{
yysymbol_kind_t yytoken;
int yyj;
if (yychar == YYEOF)
yyFail (yystackp, YY_NULLPTR);
if (yychar != YYEMPTY)
{
yytoken = YYTRANSLATE (yychar);
yydestruct ("Error: discarding",
yytoken, &yylval);
yychar = YYEMPTY;
}
yytoken = yygetToken (&yychar);
yyj = yypact[yystackp->yytops.yystates[0]->yylrState];
if (yypact_value_is_default (yyj))
return;
yyj += yytoken;
if (yyj < 0 || YYLAST < yyj || yycheck[yyj] != yytoken)
{
if (yydefact[yystackp->yytops.yystates[0]->yylrState] != 0)
return;
}
else if (! yytable_value_is_error (yytable[yyj]))
return;
}
/* Reduce to one stack. */
{
YYPTRDIFF_T yyk;
for (yyk = 0; yyk < yystackp->yytops.yysize; yyk += 1)
if (yystackp->yytops.yystates[yyk] != YY_NULLPTR)
break;
if (yyk >= yystackp->yytops.yysize)
yyFail (yystackp, YY_NULLPTR);
for (yyk += 1; yyk < yystackp->yytops.yysize; yyk += 1)
yymarkStackDeleted (yystackp, yyk);
yyremoveDeletes (yystackp);
yycompressStack (yystackp);
}
/* Pop stack until we find a state that shifts the error token. */
yystackp->yyerrState = 3;
while (yystackp->yytops.yystates[0] != YY_NULLPTR)
{
yyGLRState *yys = yystackp->yytops.yystates[0];
int yyj = yypact[yys->yylrState];
if (! yypact_value_is_default (yyj))
{
yyj += YYSYMBOL_YYerror;
if (0 <= yyj && yyj <= YYLAST && yycheck[yyj] == YYSYMBOL_YYerror
&& yyisShiftAction (yytable[yyj]))
{
/* Shift the error token. */
int yyaction = yytable[yyj];
YY_SYMBOL_PRINT ("Shifting", yy_accessing_symbol (yyaction),
&yylval, &yyerrloc);
yyglrShift (yystackp, 0, yyaction,
yys->yyposn, &yylval);
yys = yystackp->yytops.yystates[0];
break;
}
}
if (yys->yypred != YY_NULLPTR)
yydestroyGLRState ("Error: popping", yys);
yystackp->yytops.yystates[0] = yys->yypred;
yystackp->yynextFree -= 1;
yystackp->yyspaceLeft += 1;
}
if (yystackp->yytops.yystates[0] == YY_NULLPTR)
yyFail (yystackp, YY_NULLPTR);
}
#define YYCHK1(YYE) \
do { \
switch (YYE) { \
case yyok: break; \
case yyabort: goto yyabortlab; \
case yyaccept: goto yyacceptlab; \
case yyerr: goto yyuser_error; \
case yynomem: goto yyexhaustedlab; \
default: goto yybuglab; \
} \
} while (0)
/*----------.
| yyparse. |
`----------*/
int
yyparse (void)
{
int yyresult;
yyGLRStack yystack;
yyGLRStack* const yystackp = &yystack;
YYPTRDIFF_T yyposn;
YY_DPRINTF ((stderr, "Starting parse\n"));
yychar = YYEMPTY;
yylval = yyval_default;
if (! yyinitGLRStack (yystackp, YYINITDEPTH))
goto yyexhaustedlab;
switch (YYSETJMP (yystack.yyexception_buffer))
{
case 0: break;
case 1: goto yyabortlab;
case 2: goto yyexhaustedlab;
default: goto yybuglab;
}
yyglrShift (&yystack, 0, 0, 0, &yylval);
yyposn = 0;
while (yytrue)
{
/* For efficiency, we have two loops, the first of which is
specialized to deterministic operation (single stack, no
potential ambiguity). */
/* Standard mode. */
while (yytrue)
{
yy_state_t yystate = yystack.yytops.yystates[0]->yylrState;
YY_DPRINTF ((stderr, "Entering state %d\n", yystate));
if (yystate == YYFINAL)
goto yyacceptlab;
if (yyisDefaultedState (yystate))
{
yyRuleNum yyrule = yydefaultAction (yystate);
if (yyrule == 0)
{
yyreportSyntaxError (&yystack);
goto yyuser_error;
}
YYCHK1 (yyglrReduce (&yystack, 0, yyrule, yytrue));
}
else
{
yysymbol_kind_t yytoken = yygetToken (&yychar);
const short* yyconflicts;
int yyaction = yygetLRActions (yystate, yytoken, &yyconflicts);
if (*yyconflicts)
/* Enter nondeterministic mode. */
break;
if (yyisShiftAction (yyaction))
{
YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
yychar = YYEMPTY;
yyposn += 1;
yyglrShift (&yystack, 0, yyaction, yyposn, &yylval);
if (0 < yystack.yyerrState)
yystack.yyerrState -= 1;
}
else if (yyisErrorAction (yyaction))
{
/* Issue an error message unless the scanner already
did. */
if (yychar != YYerror)
yyreportSyntaxError (&yystack);
goto yyuser_error;
}
else
YYCHK1 (yyglrReduce (&yystack, 0, -yyaction, yytrue));
}
}
/* Nondeterministic mode. */
while (yytrue)
{
yysymbol_kind_t yytoken_to_shift;
YYPTRDIFF_T yys;
for (yys = 0; yys < yystack.yytops.yysize; yys += 1)
yystackp->yytops.yylookaheadNeeds[yys] = yychar != YYEMPTY;
/* yyprocessOneStack returns one of three things:
- An error flag. If the caller is yyprocessOneStack, it
immediately returns as well. When the caller is finally
yyparse, it jumps to an error label via YYCHK1.
- yyok, but yyprocessOneStack has invoked yymarkStackDeleted
(&yystack, yys), which sets the top state of yys to NULL. Thus,
yyparse's following invocation of yyremoveDeletes will remove
the stack.
- yyok, when ready to shift a token.
Except in the first case, yyparse will invoke yyremoveDeletes and
then shift the next token onto all remaining stacks. This
synchronization of the shift (that is, after all preceding
reductions on all stacks) helps prevent double destructor calls
on yylval in the event of memory exhaustion. */
for (yys = 0; yys < yystack.yytops.yysize; yys += 1)
YYCHK1 (yyprocessOneStack (&yystack, yys, yyposn));
yyremoveDeletes (&yystack);
if (yystack.yytops.yysize == 0)
{
yyundeleteLastStack (&yystack);
if (yystack.yytops.yysize == 0)
yyFail (&yystack, YY_("syntax error"));
YYCHK1 (yyresolveStack (&yystack));
YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));
yyreportSyntaxError (&yystack);
goto yyuser_error;
}
/* If any yyglrShift call fails, it will fail after shifting. Thus,
a copy of yylval will already be on stack 0 in the event of a
failure in the following loop. Thus, yychar is set to YYEMPTY
before the loop to make sure the user destructor for yylval isn't
called twice. */
yytoken_to_shift = YYTRANSLATE (yychar);
yychar = YYEMPTY;
yyposn += 1;
for (yys = 0; yys < yystack.yytops.yysize; yys += 1)
{
yy_state_t yystate = yystack.yytops.yystates[yys]->yylrState;
const short* yyconflicts;
int yyaction = yygetLRActions (yystate, yytoken_to_shift,
&yyconflicts);
/* Note that yyconflicts were handled by yyprocessOneStack. */
YY_DPRINTF ((stderr, "On stack %ld, ", YY_CAST (long, yys)));
YY_SYMBOL_PRINT ("shifting", yytoken_to_shift, &yylval, &yylloc);
yyglrShift (&yystack, yys, yyaction, yyposn,
&yylval);
YY_DPRINTF ((stderr, "Stack %ld now in state %d\n",
YY_CAST (long, yys),
yystack.yytops.yystates[yys]->yylrState));
}
if (yystack.yytops.yysize == 1)
{
YYCHK1 (yyresolveStack (&yystack));
YY_DPRINTF ((stderr, "Returning to deterministic operation.\n"));
yycompressStack (&yystack);
break;
}
}
continue;
yyuser_error:
yyrecoverSyntaxError (&yystack);
yyposn = yystack.yytops.yystates[0]->yyposn;
}
yyacceptlab:
yyresult = 0;
goto yyreturnlab;
yybuglab:
YY_ASSERT (yyfalse);
goto yyabortlab;
yyabortlab:
yyresult = 1;
goto yyreturnlab;
yyexhaustedlab:
yyerror (YY_("memory exhausted"));
yyresult = 2;
goto yyreturnlab;
yyreturnlab:
if (yychar != YYEMPTY)
yydestruct ("Cleanup: discarding lookahead",
YYTRANSLATE (yychar), &yylval);
/* If the stack is well-formed, pop the stack until it is empty,
destroying its entries as we go. But free the stack regardless
of whether it is well-formed. */
if (yystack.yyitems)
{
yyGLRState** yystates = yystack.yytops.yystates;
if (yystates)
{
YYPTRDIFF_T yysize = yystack.yytops.yysize;
YYPTRDIFF_T yyk;
for (yyk = 0; yyk < yysize; yyk += 1)
if (yystates[yyk])
{
while (yystates[yyk])
{
yyGLRState *yys = yystates[yyk];
if (yys->yypred != YY_NULLPTR)
yydestroyGLRState ("Cleanup: popping", yys);
yystates[yyk] = yys->yypred;
yystack.yynextFree -= 1;
yystack.yyspaceLeft += 1;
}
break;
}
}
yyfreeGLRStack (&yystack);
}
return yyresult;
}
/* DEBUGGING ONLY */
#if YYDEBUG
/* Print *YYS and its predecessors. */
static void
yy_yypstack (yyGLRState* yys)
{
if (yys->yypred)
{
yy_yypstack (yys->yypred);
YY_FPRINTF ((stderr, " -> "));
}
YY_FPRINTF ((stderr, "%d@%ld", yys->yylrState, YY_CAST (long, yys->yyposn)));
}
/* Print YYS (possibly NULL) and its predecessors. */
static void
yypstates (yyGLRState* yys)
{
if (yys == YY_NULLPTR)
YY_FPRINTF ((stderr, ""));
else
yy_yypstack (yys);
YY_FPRINTF ((stderr, "\n"));
}
/* Print the stack #YYK. */
static void
yypstack (yyGLRStack* yystackp, YYPTRDIFF_T yyk)
{
yypstates (yystackp->yytops.yystates[yyk]);
}
/* Print all the stacks. */
static void
yypdumpstack (yyGLRStack* yystackp)
{
#define YYINDEX(YYX) \
YY_CAST (long, \
((YYX) \
? YY_REINTERPRET_CAST (yyGLRStackItem*, (YYX)) - yystackp->yyitems \
: -1))
yyGLRStackItem* yyp;
for (yyp = yystackp->yyitems; yyp < yystackp->yynextFree; yyp += 1)
{
YY_FPRINTF ((stderr, "%3ld. ",
YY_CAST (long, yyp - yystackp->yyitems)));
if (*YY_REINTERPRET_CAST (yybool *, yyp))
{
YY_ASSERT (yyp->yystate.yyisState);
YY_ASSERT (yyp->yyoption.yyisState);
YY_FPRINTF ((stderr, "Res: %d, LR State: %d, posn: %ld, pred: %ld",
yyp->yystate.yyresolved, yyp->yystate.yylrState,
YY_CAST (long, yyp->yystate.yyposn),
YYINDEX (yyp->yystate.yypred)));
if (! yyp->yystate.yyresolved)
YY_FPRINTF ((stderr, ", firstVal: %ld",
YYINDEX (yyp->yystate.yysemantics.yyfirstVal)));
}
else
{
YY_ASSERT (!yyp->yystate.yyisState);
YY_ASSERT (!yyp->yyoption.yyisState);
YY_FPRINTF ((stderr, "Option. rule: %d, state: %ld, next: %ld",
yyp->yyoption.yyrule - 1,
YYINDEX (yyp->yyoption.yystate),
YYINDEX (yyp->yyoption.yynext)));
}
YY_FPRINTF ((stderr, "\n"));
}
YY_FPRINTF ((stderr, "Tops:"));
{
YYPTRDIFF_T yyi;
for (yyi = 0; yyi < yystackp->yytops.yysize; yyi += 1)
YY_FPRINTF ((stderr, "%ld: %ld; ", YY_CAST (long, yyi),
YYINDEX (yystackp->yytops.yystates[yyi])));
YY_FPRINTF ((stderr, "\n"));
}
#undef YYINDEX
}
#endif
#undef yylval
#undef yychar
#undef yynerrs
#line 1542 "cplusplus.y"
static void yyerror(const char *s)
{
fprintf(stderr, "%d: %s\n", lineno, s);
}
int main(int argc, char**argv){
lineno = 1;
extern FILE *yyin;
if (argc!=2){
fprintf(stderr, "usage: %s \n", argv[0]);
return -1;
}
yyin=fopen(argv[1], "r");
if (yyin){
if (yyparse()==0){
printf("success!\n");
}else{
printf("failure\n");
}
fclose(yyin);
}else{
perror(argv[1]);
return -2;
}
return 0;
}